Skip to content

feat: implement capsule.compose@1 small-step reduction - #1264

Merged
Koh0920 merged 5 commits into
nightlyfrom
feat/compose-small-step-v1
Aug 13, 2026
Merged

feat: implement capsule.compose@1 small-step reduction#1264
Koh0920 merged 5 commits into
nightlyfrom
feat/compose-small-step-v1

Conversation

@Koh0920

@Koh0920 Koh0920 commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Goal

Given semantically valid child transition evidence, one sealed and valid C_init forks by interaction into two independently sealed futures:

  • C_init --name?"Alice"--> C_A1 --tau--> C_A2 --greeting!"Hello, Alice!"--> C_A3
  • C_init --name?"Bob"--> C_B1 --tau--> C_B2 --greeting!"Hello, Bob!"--> C_B3

All seven Composite Computations are content-addressed and structurally valid with the same external { name, greeting } boundary, without changing Capsule Core. Alice is not a default: C_A1 is the residual computation produced by the earlier name?"Alice" interaction.

Changes

  • Add pure generic small-step reducers for internal, connected, and exported child actions.
  • Require ValidatedComposite as reducer input: valid state → transition → candidate residual → seal → revalidate.
  • Reject same-node connections structurally; retain BoundaryVisibility::Internal separately from semantic Tau.
  • Model parent name as an exported input through NameProvider.input.
  • Fork Alice and Bob branches from the exact same C_init.
  • Preserve each input through NameProvider.nameGreeter.name synchronization and lift the corresponding greeting output.
  • Assert distinct branch identities and exact ReadyName(...) / ReadyGreeting(...) residual bytes.
  • Introduce no missing-input or default-name transition.

Validation

  • cargo test -p capsule-compose
  • cargo clippy -p capsule-compose --all-targets --all-features --locked -- -D warnings
  • cargo check --workspace --locked
  • cargo test --workspace --no-fail-fast (passed before this test-only canonical-scenario update)

@Koh0920
Koh0920 changed the base branch from feat/compose-semantics-v1 to nightly August 13, 2026 15:21
@Koh0920
Koh0920 marked this pull request as ready for review August 13, 2026 15:45
@Koh0920
Koh0920 merged commit 223e12f into nightly Aug 13, 2026
7 checks passed
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