Skip to content

Fork agent SCI state with Room worlds - #86

Merged
whilo merged 8 commits into
feat/canonical-inference-worldsfrom
feat/forkable-sci-worlds-stack
Sep 1, 2026
Merged

Fork agent SCI state with Room worlds#86
whilo merged 8 commits into
feat/canonical-inference-worldsfrom
feat/forkable-sci-worlds-stack

Conversation

@whilo

@whilo whilo commented Sep 1, 2026

Copy link
Copy Markdown
Member

Summary

  • compose each long-lived agent SCI interpreter as a forkable Spindel world component
  • select fork-local interpreter state, Room capabilities, environment, filesystem/Git, and Datahike connections through the active execution context
  • preserve retained pre-fork functions and FRP constructors while rebinding them to the child Room incarnation
  • isolate and dispose process-global scratch Datahike databases per interpreter world
  • make Room/context creation, hydration, publication, and unregister cleanup failure-atomic
  • extend the provider-free REPL harness to prove fork-local SCI vars and Datahike writes diverge from the parent

Lifecycle guarantees

  • one concurrent first allocation produces one ChatContext and one SCI component
  • fallible durable hydration completes before any ChatContext signal/component allocation
  • namespace-binding failure releases the newly registered component
  • Room unregister reservations close admission before process-local teardown
  • inbound attention arriving during hydration waits for complete cache publication
  • disposable-resource cleanup failure cannot skip SCI component unregister
  • fork registration fences run before atomic Room/topology publication

Verification

  • clojure -M:format
  • clojure -M:test --seed 2104642063 without provider credentials: 634 tests, 2,803 assertions, 0 failures
  • standalone harness build and all CircleCI jobs green
  • independent exact-head review of 3b25abc: no medium/high findings

Dependency order

This PR is stacked on #85 and temporarily pins the reviewed dependency commits so CI exercises the real combined stack:

  1. SCI forkable worlds: Add forkable SCI runtime worlds babashka/sci#1084; release candidate Release SCI 0.15.59 whilo/sci#2 (0.15.59)
  2. Spindel world components: feat: compose SCI as a forkable world component spindel#48
  3. this PR

After SCI and Spindel are released, replace both Git pins with their Maven coordinates before releasing Dvergr.

@whilo
whilo marked this pull request as ready for review September 1, 2026 20:30
@whilo
whilo merged commit 5a4d06c into feat/canonical-inference-worlds Sep 1, 2026
4 checks passed
whilo added a commit that referenced this pull request Sep 1, 2026
* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* Add versioned agent environment definitions

* Add verified environment attempt receipts (#82)

* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* Add recursive self-programming benchmark

* Add versioned agent environment definitions (#81)

* Add versioned agent environment definitions

* Add verified environment attempt receipts (#82)

* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* feat(ui): show semantic run activity

* Add causal Run inputs and self-programming benchmark (#80)

* Add recursive self-programming benchmark

* Add versioned agent environment definitions (#81)

* Add versioned agent environment definitions

* Add verified environment attempt receipts (#82)

* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* fix: reject stale completion after empty model response

* fix: scope empty-response retry to its run

* Show semantic Run activity in web and TUI (#79)

* feat(ui): show semantic run activity

* Add causal Run inputs and self-programming benchmark (#80)

* Add recursive self-programming benchmark

* Add versioned agent environment definitions (#81)

* Add versioned agent environment definitions

* Add verified environment attempt receipts (#82)

* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* feat: persist semantic work activity

* fix: preserve activity ownership and run provenance

* refactor: derive activity identity with hasch

* Reject stale completion after empty model responses (#78)

* fix: reject stale completion after empty model response

* fix: scope empty-response retry to its run

* Show semantic Run activity in web and TUI (#79)

* feat(ui): show semantic run activity

* Add causal Run inputs and self-programming benchmark (#80)

* Add recursive self-programming benchmark

* Add versioned agent environment definitions (#81)

* Add versioned agent environment definitions

* Add verified environment attempt receipts (#82)

* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* Benchmark conserved agent resource delegation

* Persist typed semantic work activity (#77)

* feat: persist semantic work activity

* fix: preserve activity ownership and run provenance

* refactor: derive activity identity with hasch

* Reject stale completion after empty model responses (#78)

* fix: reject stale completion after empty model response

* fix: scope empty-response retry to its run

* Show semantic Run activity in web and TUI (#79)

* feat(ui): show semantic run activity

* Add causal Run inputs and self-programming benchmark (#80)

* Add recursive self-programming benchmark

* Add versioned agent environment definitions (#81)

* Add versioned agent environment definitions

* Add verified environment attempt receipts (#82)

* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* Test nested agent race across isolated worlds

* Benchmark conserved agent resource delegation (#76)

* Benchmark conserved agent resource delegation

* Persist typed semantic work activity (#77)

* feat: persist semantic work activity

* fix: preserve activity ownership and run provenance

* refactor: derive activity identity with hasch

* Reject stale completion after empty model responses (#78)

* fix: reject stale completion after empty model response

* fix: scope empty-response retry to its run

* Show semantic Run activity in web and TUI (#79)

* feat(ui): show semantic run activity

* Add causal Run inputs and self-programming benchmark (#80)

* Add recursive self-programming benchmark

* Add versioned agent environment definitions (#81)

* Add versioned agent environment definitions

* Add verified environment attempt receipts (#82)

* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* feat: interpret structured conversational attention

* Make attention memory durable and replayable

* Make in-memory attention identity atomic

* Track applied attention dispositions

* Harden durable attention dispositions

* Close attention identity and correlation invariants

* Verify nested agent races across isolated Run worlds (#75)

* Test nested agent race across isolated worlds

* Benchmark conserved agent resource delegation (#76)

* Benchmark conserved agent resource delegation

* Persist typed semantic work activity (#77)

* feat: persist semantic work activity

* fix: preserve activity ownership and run provenance

* refactor: derive activity identity with hasch

* Reject stale completion after empty model responses (#78)

* fix: reject stale completion after empty model response

* fix: scope empty-response retry to its run

* Show semantic Run activity in web and TUI (#79)

* feat(ui): show semantic run activity

* Add causal Run inputs and self-programming benchmark (#80)

* Add recursive self-programming benchmark

* Add versioned agent environment definitions (#81)

* Add versioned agent environment definitions

* Add verified environment attempt receipts (#82)

* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
whilo added a commit that referenced this pull request Sep 1, 2026
* feat: expose structured work admission in sandbox

* fix: fence room work lifecycle by incarnation

* fix: bind work admission to room incarnation

* fix: reserve room lifecycle transitions

* fix: canonicalize sandbox room deletion

* feat: interpret structured conversational attention (#74)

* feat: interpret structured conversational attention

* Make attention memory durable and replayable

* Make in-memory attention identity atomic

* Track applied attention dispositions

* Harden durable attention dispositions

* Close attention identity and correlation invariants

* Verify nested agent races across isolated Run worlds (#75)

* Test nested agent race across isolated worlds

* Benchmark conserved agent resource delegation (#76)

* Benchmark conserved agent resource delegation

* Persist typed semantic work activity (#77)

* feat: persist semantic work activity

* fix: preserve activity ownership and run provenance

* refactor: derive activity identity with hasch

* Reject stale completion after empty model responses (#78)

* fix: reject stale completion after empty model response

* fix: scope empty-response retry to its run

* Show semantic Run activity in web and TUI (#79)

* feat(ui): show semantic run activity

* Add causal Run inputs and self-programming benchmark (#80)

* Add recursive self-programming benchmark

* Add versioned agent environment definitions (#81)

* Add versioned agent environment definitions

* Add verified environment attempt receipts (#82)

* Add verified environment attempt receipts

* Add composable verified evaluations (#83)

* Add composable verified evaluations

* Persist certified evaluation attempts (#84)

* Persist certified evaluation attempts

* Default SCI inference to canonical particle worlds (#85)

* Default inference to canonical particle worlds

* fix: keep native inference capabilities outside SCI

* chore: pin reviewed inference world substrate

* chore: pin hardened inference world substrate

* Fork agent SCI state with Room worlds (#86)

* feat: fork agent SCI state with room worlds

* fix: serialize interpreter world publication

* fix: make Room interpreter lifecycle atomic

* fix: hydrate before allocating agent signals

* test: tolerate cold persona room startup

* chore: align released harness substrate

* test: harden sandbox integration under load

* chore: remove legacy distributed substrate
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant