Luigit
repositories / smith

smith

There are many coding harnesses - but this one is fast

owned by admin

.system/phases/SMH-PHASE-AIA1DB7F-post-1-0/index.md

Raw
Rendered preview

id: SMH-PHASE-AIA1DB7F type: phase title: "Post-1.0" label: post-1.0

Post-1.0

Sub-mission

Grow Smith as a dependable coding-agent app, Rust library ecosystem, and long-lived plugin host. Keep users' existing plugins working while improving implementation and introducing new contracts.

Priorities

  1. Security and session integrity over compatibility in explicitly announced emergencies.
  2. Existing plugin behavior and Rust SemVer guarantees over API cleanup.
  3. Current dependencies and latest stable Rust without accidental contract breaks.
  4. New capabilities through compatible evolution or independently versioned plugin worlds.

Decision defaults

Concern Posture
Releases App and workspace crates share one Smith release version.
Rust APIs Ordinary SemVer across workspace library APIs; breaking changes require a Smith major release.
Plugin world Stable contract begins at 1.0.0; world versions are independent of Smith releases.
Compatibility Existing compiled plugins remain usable across Smith releases, including Smith major upgrades.
New worlds World 2 and later may coexist with earlier worlds; introducing one never retires another.
Evolution Stabilized contracts preserve backward compatibility within each world major.
Deprecations Reserved for serious security or correctness emergencies, not routine cleanup.
Retirement Explicitly announced emergency exceptions only; continued availability and retirement timing decided per case, with no fixed timetable.
Migration Emergency guidance names impact, replacement, and migration instructions; built docs and doctor deprecator expose that guidance.
Compiler Latest stable Rust; library consumers must keep their compiler current regardless of edition.
Dependencies Upgrades preserve Rust and plugin contracts; engine version changes alone do not determine Smith or world major versions.
Quality Required gates include Rust compatibility and previously built plugin behavior, alongside sandbox and session safety.
Debt Ordinary cleanup never justifies removing supported plugin contracts.

Non-goals

  • Permanent compatibility for Rust APIs across Smith major releases.
  • Historical Rust compiler support.
  • Routine plugin-world retirement or fixed deprecation expiry.
  • Preserving exploitable behavior at the expense of security.

Exit criteria

This is an ongoing operating epoch, not a delivery milestone.

  • Any replacement posture explicitly accounts for existing Rust SemVer and permanent plugin-support obligations.
  • Prior compiled plugins remain verified on the replacement host, except individually announced emergency retirements.
---
id: SMH-PHASE-AIA1DB7F
type: phase
title: "Post-1.0"
label: post-1.0
---

# Post-1.0

## Sub-mission

Grow Smith as a dependable coding-agent app, Rust library ecosystem, and long-lived plugin host.
Keep users' existing plugins working while improving implementation and introducing new contracts.

## Priorities

1. Security and session integrity over compatibility in explicitly announced emergencies.
2. Existing plugin behavior and Rust SemVer guarantees over API cleanup.
3. Current dependencies and latest stable Rust without accidental contract breaks.
4. New capabilities through compatible evolution or independently versioned plugin worlds.

## Decision defaults

| Concern | Posture |
| --- | --- |
| Releases | App and workspace crates share one Smith release version. |
| Rust APIs | Ordinary SemVer across workspace library APIs; breaking changes require a Smith major release. |
| Plugin world | Stable contract begins at 1.0.0; world versions are independent of Smith releases. |
| Compatibility | Existing compiled plugins remain usable across Smith releases, including Smith major upgrades. |
| New worlds | World 2 and later may coexist with earlier worlds; introducing one never retires another. |
| Evolution | Stabilized contracts preserve backward compatibility within each world major. |
| Deprecations | Reserved for serious security or correctness emergencies, not routine cleanup. |
| Retirement | Explicitly announced emergency exceptions only; continued availability and retirement timing decided per case, with no fixed timetable. |
| Migration | Emergency guidance names impact, replacement, and migration instructions; built docs and doctor deprecator expose that guidance. |
| Compiler | Latest stable Rust; library consumers must keep their compiler current regardless of edition. |
| Dependencies | Upgrades preserve Rust and plugin contracts; engine version changes alone do not determine Smith or world major versions. |
| Quality | Required gates include Rust compatibility and previously built plugin behavior, alongside sandbox and session safety. |
| Debt | Ordinary cleanup never justifies removing supported plugin contracts. |

## Non-goals

- Permanent compatibility for Rust APIs across Smith major releases.
- Historical Rust compiler support.
- Routine plugin-world retirement or fixed deprecation expiry.
- Preserving exploitable behavior at the expense of security.

## Exit criteria

This is an ongoing operating epoch, not a delivery milestone.

- Any replacement posture explicitly accounts for existing Rust SemVer and permanent plugin-support obligations.
- Prior compiled plugins remain verified on the replacement host, except individually announced emergency retirements.