Productionize StarLang and retire prototype authority #47

Open
opened 2026-08-25 06:44:28 +00:00 by lost-rob0t · 0 comments
lost-rob0t commented 2026-08-25 06:44:28 +00:00 (Migrated from github.com)

Goal

Make StarLang a production language whose compiler, runtime, CLI, packaging, and release gates execute entirely through final star-* / starlang-* systems.

prototype/ may remain temporarily as compatibility/end-to-end coverage, but it must cease to own language/runtime behavior.

Hard definition of done

  • bash ci/check-prototype-migration.sh --require-final passes.
  • starlang-compiler owns the complete closed parser -> expansion -> validation -> normalized IR pipeline.
  • No .star source path uses the Common Lisp reader.
  • Research-conformance issue #6 is closed with permanent executable gates.
  • #4 lower camelCase and #5 binary64 float/canonical JSON contracts are complete.
  • Actor wire lifecycle, dispatcher, directory, supervision, journal/replay/idempotency, leases/fencing, and external dispatch are final-owned.
  • Real Sento integration evidence is green for shipped Sento behavior; fake ports do not count as actor-semantic evidence.
  • Nested actor ask uses a split-phase/non-deadlocking semantic contract.
  • The installed starlang command loads final systems rather than starlang-prototype and provides stable compile/check/run/version behavior.
  • Nix, ASDF, CI, canonical fixtures, generated bindings, license inventory, and SBOM all validate the same release commit.
  • README no longer describes prototype/ as authoritative.

Compiler critical path

  1. syntax objects, spans, diagnostics, parser resource limits;
  2. closed parser;
  3. macro expander;
  4. semantic validation + normalized IR;
  5. spec/domain compiler + digest/import policy;
  6. loader/effect adapters;
  7. bindings/manifests;
  8. public compile/check API and CLI.

Runtime critical path

  1. merge the concrete Sento boundary/evidence slice;
  2. finish wire command/reply/error/cancel lifecycle extraction;
  3. reconcile deterministic wire dispatcher and runtime directory with the final local actor path;
  4. extract supervision, journal/replay/idempotency, lease/fencing;
  5. finish external adapter dispatch and remote registration;
  6. eliminate remaining prototype runtime authority.

Tracking contract

ci/prototype-migration.tsv is the machine-readable implementation-authority ledger. A row becomes compat only after the final owner contains the behavior, final-system tests prove it independently, and the prototype file is forwarding/composition only (or is removed from the authoritative ASDF system).

See docs/PRODUCTION-READINESS.md.

## Goal Make StarLang a production language whose compiler, runtime, CLI, packaging, and release gates execute entirely through final `star-*` / `starlang-*` systems. `prototype/` may remain temporarily as compatibility/end-to-end coverage, but it must cease to own language/runtime behavior. ## Hard definition of done - [ ] `bash ci/check-prototype-migration.sh --require-final` passes. - [ ] `starlang-compiler` owns the complete closed parser -> expansion -> validation -> normalized IR pipeline. - [ ] No `.star` source path uses the Common Lisp reader. - [ ] Research-conformance issue #6 is closed with permanent executable gates. - [ ] #4 lower camelCase and #5 binary64 float/canonical JSON contracts are complete. - [ ] Actor wire lifecycle, dispatcher, directory, supervision, journal/replay/idempotency, leases/fencing, and external dispatch are final-owned. - [ ] Real Sento integration evidence is green for shipped Sento behavior; fake ports do not count as actor-semantic evidence. - [ ] Nested actor ask uses a split-phase/non-deadlocking semantic contract. - [ ] The installed `starlang` command loads final systems rather than `starlang-prototype` and provides stable compile/check/run/version behavior. - [ ] Nix, ASDF, CI, canonical fixtures, generated bindings, license inventory, and SBOM all validate the same release commit. - [ ] README no longer describes `prototype/` as authoritative. ## Compiler critical path 1. syntax objects, spans, diagnostics, parser resource limits; 2. closed parser; 3. macro expander; 4. semantic validation + normalized IR; 5. spec/domain compiler + digest/import policy; 6. loader/effect adapters; 7. bindings/manifests; 8. public compile/check API and CLI. ## Runtime critical path 1. merge the concrete Sento boundary/evidence slice; 2. finish wire command/reply/error/cancel lifecycle extraction; 3. reconcile deterministic wire dispatcher and runtime directory with the final local actor path; 4. extract supervision, journal/replay/idempotency, lease/fencing; 5. finish external adapter dispatch and remote registration; 6. eliminate remaining prototype runtime authority. ## Tracking contract `ci/prototype-migration.tsv` is the machine-readable implementation-authority ledger. A row becomes `compat` only after the final owner contains the behavior, final-system tests prove it independently, and the prototype file is forwarding/composition only (or is removed from the authoritative ASDF system). See `docs/PRODUCTION-READINESS.md`.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/star-lang#47
No description provided.