Canonical source and stable identity
Readable .spx remains the canonical Git representation. Explicit @id values identify declarations independently of supported display-name changes. The revision binds canonical source and the compiler-owned implicit prelude, not incidental source spans or a graph wire format.
Bounded context and compact projections
Context v1/v2 applies depth, node and byte budgets; v2 adds directional traversal. Task-oriented context and text, binary and model-text projections add focused exchange with replay checks. Smaller serialized output is not automatically fewer billed model tokens or better answers.
Semantic edits, not arbitrary rewrites
Inspect context, derive a candidate, preview impact, review, replay checks, then explicitly authorize application. The operation families now extend beyond renames to bounded expression replacement, structural changes and specified rebase/merge composition. Each protocol keeps its own revision, identity and operation limits.
Managed publication is a separate boundary
Managed workspace generations, candidate evidence, Project revision storage and MCP workflows retain explicit write and publication authority. Validation of multiple files is not an atomic update to arbitrary raw paths, Git or editors. The Rust embedding API supplies capped inputs, cancellation and opaque sessions, not unrestricted host access.
A broader everyday language
Admitted profiles include records, variants, classes, inheritance, generics, Option/Result, explicit mutation, loops, collections, iterators, function values and bounded closures. Text, bytes and the bundled library support useful small programs. Owning closure captures, general generic constraints and arbitrary feature combinations remain limited.
Ownership and replayable cleanup
Owned and borrowed values, cleanup plans, loan facts and selected resource/generic compositions are implemented. v0.5.0 adds direct owned String variant payloads, while generic String substitutions and nested owned-record variant payloads remain restricted. This is not a complete general lifetime system or a Rust compatibility claim.
Typed runtime Agents
Initialize, observe, propose, decode, authorize, execute and reduce. The checked reducer selects Continue, Complete, Suspend or Fail, with authorization repeated each turn. Compiled Proposal schemas constrain streaming and typed decoding before effect dispatch. Source Agent stages currently execute in the retained interpreter, not native/Wasm parity.
Budgets, durable recovery and model calls
Explicit host adapters supply credentials, transport and stores. Limits can cover calls, tokens, bytes, deadlines and quoted costs. Durable profiles acknowledge intent before dispatch and refuse uncertain redispatch. Generic host profiles support bounded retry/failover; the bound source-model route does not automatically retry or switch providers. Usage observations are not guaranteed invoices.
Application and economic-agent experiments
Checked HTTPS POST, Rust-host authentication/sessions and checkpointed jobs are separate integration profiles, not a full web framework. Economic Agents explore payment intents, simulation, approval and reconciliation with host-supplied wallets/signing. A model proposal is neither payment authority nor an exactly-once settlement guarantee.
Generated boundaries remain profile-specific
Project v8 carries Bytes and selected Option/Result forms; v9 adds flat owned records, v10 owned UTF-8 and v11 nested owned records. Generated native/Rust and npm/Wasm consumers, private transports and public generic metadata each have separate contracts. Toolchain release, package publication and public support are different decisions.