--- id: SMH-PHASE-A0RPUJ_Q type: phase title: "Prototype" label: proto --- # Prototype ## Operating posture Prove the plugin seam with real consumers. Grow the `smith:plugin` world organically from working verticals; revisit names, shapes, and structure freely. Gates and session safety laws never relax. ## Priorities 1. API discovery over API stability: signatures earn their shape from real consumers. 2. Dogfood parity: built-ins load through the same sandbox and effects. 3. Working verticals over breadth: one vendor end to end beats three half-done. 4. Fast plugin loop: scaffolding and dev-links keep edit-run cycles short. ## Decision defaults - Compatibility: none owed before 1.0; breaking changes are free, deprecation ceremony unnecessary — but the additive-only and world-versioning design stays in the spec so the plan for compatibility exists. - Migrations: plugin authors get no upgrade path pre-1.0. - Stability: host internals and world shape may churn without notice. - Quality: zero-warning, clippy-pedantic, test gates always on. - Experimentation: lives in `plugins/` and prototypes, never in core crates. - Debt: naming and glossary audits run at every world shape change. ## Non-goals - Public plugin ecosystem or third-party support. - Semver promises, stable WIT, or SDK crates. - Backward or forward compatibility guarantees. ## Exit criteria - A plugin-registered provider completes an eval turn with no native vendor adapter. - A subscription login flows end to end through the sandbox and secret proxy. - Every world interface has at least two real consumers and passes the naming and glossary audit. - The world is small enough to review in one sitting, preparing 1.0 stabilization.