Extract runtime directory resolution into starlang-runtime #33
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/star-lang!33
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "extract/runtime-directory-core"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Scope
Continue STAR-LANG-006's dependency-ordered extraction after PR #32 by moving the injected runtime-directory discovery/resolution boundary from
prototype/runtime-directory-prototype.lispinto finalstarlang-runtime.This slice follows the already-APPROVED STAR-LANG-004 service-discovery contract.
Final runtime authority
starlang-runtimenow owns:star://lookup over snapshots:alive :unknowncompatibility semanticsNo second registry
This does not add mutable directory storage or a global registry. The final runtime directory remains an injected
snapshotport exactly as STAR-LANG-004 specifies. Each resolution obtains a current snapshot from the caller-provided source.The existing local actor registry inside
starlang-runtimeremains a separate local execution mechanism; this slice does not merge or duplicate it.Prototype compatibility
prototype/runtime-directory-prototype.lispis reduced to:runtime-directory-errorNo independent snapshot validator or resolution algorithm remains in the prototype file.
Preserved failure distinctions
:alive nil→ typed unavailable condition:alive :unknownremains resolvable because the approved v1 contract rejects only explicitnilOut of scope
Extraction metrics
CI on final head
3655269adcca038af56be7774aae9b06dc59c7e9reports:prototype/**/*.lisp: 19,545 → 19,479 LOC (-66)prototype/runtime-directory-prototype.lisp: +37 / -103, net -66 linesstarlang-runtime/src/runtime-directory.lisp: 156 LOCValidation
GitHub Actions is green:
asdf:test-system :starlang-runtime✅ with direct runtime-directory coverage:unknown, duplicate entries, malformed metadata, backend failures, URI errors, and injected/no-global-cache behaviorasdf:test-system :starlang-prototype✅ — 34 standalone scripts, including existing service-URI and execution-mode integration testsnix flake check --print-build-logs✅Next slice
Inspect the deterministic dispatcher dependency knot before extraction. The dispatcher still relies on prototype-owned portable manifest/message-schema payload validation; do not make
starlang-runtimedepend on compiler/prototype internals. Extract or inject that portable schema boundary first if required, then move dispatcher coordination without replacing its transport/work queue with the per-actorstar-mailbox.