Scope Traps
Stack choice can hide product scope creep. Cut these before changing frameworks.
Common Traps
| Trap | Why it hurts | Better default |
|---|---|---|
| Cross-platform too early | Doubles QA and store work before product fit | Ship the strongest first platform |
| Sync too soon | Adds accounts, conflict handling, backend ops | Local-first plus export/import |
| AI as v1 bloat | Adds model/provider/tool complexity before core workflow | Rule-based or deterministic v1 |
| Framework tourism | Research replaces shipping | Pick a default and define gates |
| Store work underestimated | Review, signing, listings, screenshots, policies take real time | Package and submit smoke apps early |
| Native rewrite fantasy | Existing app loses momentum | Incrementally adopt platform SDKs where possible |
| Heavy service stack for personal app | Ops burden becomes the product | Single binary, local DB, static surface, or managed service |
| Unsandboxed plugins/tools | Security risk grows faster than features | Explicit tool boundaries and audit logs |
Solo-Dev Rule
One person should be able to update, test, package, and explain the stack after a month away. If not, the stack is too large for v1.
Cut Line
Before adding a second runtime, second app platform, backend, sync, or AI tooling, write:
User-visible value:
New release gate:
New failure mode:
Rollback plan:
Why this cannot wait: