Skip to content

test(tick): class-dynamics registration, declaration surface, world 1 and the frozen mirror (TickDynamics Task 2, PR A) - #696

Merged
percy-raskova merged 4 commits into
devfrom
feature/class-dynamics-port
Aug 22, 2026
Merged

test(tick): class-dynamics registration, declaration surface, world 1 and the frozen mirror (TickDynamics Task 2, PR A)#696
percy-raskova merged 4 commits into
devfrom
feature/class-dynamics-port

Conversation

@percy-raskova

Copy link
Copy Markdown
Owner

Summary

Task 2 of the TickDynamics class-dynamics port train (#669; plan docs/superpowers/plans/2026-08-18-tickdynamics-port.md rev 2.1; Tasks 0/1 already landed in dev). Ports Feature 016 — the class-dynamics engine (src/babylon/domain/economics/dynamics/), explicitly NOT all of @4.0 (the plan §0.1 boundary).

  • Registers class-dynamics in babylon-tick's systems set (genuinely new — zero prior hits, red-probed: E-LOAD-002 before, green after)
  • World 1 (class-dynamics-conformance.bscn): the CrisisPhase defenum in landed order (ADR195 ordinal parity test), the §4.2 field roster, the §4.5 46-defconst canonical block with frozen file:line provenance, six nodes incl. the D136 dual-membership vector and the orphan class
  • The primary frozen mirror (class_dynamics_conformance.py), run twice for F11: frozen wage·s² vs repaired wage·s — the 33.33× repair factor demonstrated on both counties; DefaultClassTransitionEngine corroboration agrees silently
  • The header-only class-dynamics.bsl pack carrying the SPIKE RESULTS block (the dossier §10's deferred copy)
  • bsl_fuel_report.rs's SOLO_PACKS gains the class-dynamics entry (enumeration-sentinel parity)
  • Content corpus digest re-pinned 84 → 86 (additive only; every pre-existing row byte-identical)

Drift noted

Plan §4.5 says "seven" amplifier multipliers exceed 1.0; the frozen table contains eight (1.2 twice). Documented in the scenario header.

Gates

rust:check green (fmt/clippy/test/doc incl. the 28 pre-existing tick goldens, all byte-identical); qa:regression + vault byte-identical; red-then-green observed per TDD.

Co-Authored-By: Kimi Code noreply@moonshot.cn

percy-raskova and others added 2 commits August 22, 2026 13:19
… and the frozen mirror

Body can be brief; the task only requires the subject and the trailer.
Co-Authored-By: Kimi Code <noreply@moonshot.cn>
… 1 (86 pinned)

The Task 2 commit added two content files; the corpus pin table goes
84 → 86. Value-mismatch-free re-pin: every pre-existing row's digest is
byte-identical, the two new rows are the additions.

Co-Authored-By: Kimi Code <noreply@moonshot.cn>
Copilot AI lite review requested due to automatic review settings August 22, 2026 17:29

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 Approval recommended

The changes are additive and low-risk (content + registration + tests), with only minor doc/naming nits identified.

Pull request overview

Ports TickDynamics Feature-016’s class-dynamics “declaration + registration + world-1 conformance surface” into the Rust babylon-tick content/test estate, establishing a deterministic scenario and guardrails for subsequent rule-pack tasks in the port train (#669).

Changes:

  • Register the new class-dynamics system namespace and include it in the fuel-report enumeration.
  • Add “World 1” conformance scenario content (.bscn) plus a frozen Python mirror script for arithmetic corroboration.
  • Add Rust conformance tests that validate scenario hydration, enum ordinal parity, canonical constants, and anti-pattern guards for the pack.
File summaries
File Description
rust/crates/babylon-tick/tests/class_dynamics_conformance.rs New conformance/guard test suite for the class-dynamics world and pack.
rust/crates/babylon-tick/src/lib.rs Registers class-dynamics in the system namespace set.
rust/crates/babylon-tick/src/bin/bsl_fuel_report.rs Adds class-dynamics to SOLO_PACKS so fuel reporting/sentinels cover it.
rust/crates/babylon-tick/content/scenarios/class-dynamics-conformance.bscn Introduces World 1 declaration surface (fields, consts, nodes/edges) for the pack.
rust/crates/babylon-tick/content/scenarios/class_dynamics_conformance.py Frozen mirror/corroboration script for world-1 arithmetic and the F11 repair demonstration.
rust/crates/babylon-tick/content/rules/class-dynamics.bsl Header-only rule pack placeholder carrying the recorded spike results.
rust/crates/babylon-bsl/tests/content_corpus_digests.rs Re-pins corpus digests to include the new .bsl and .bscn files.
Review details
  • Files reviewed: 7/7 changed files
  • Comments generated: 2
  • Review effort level: Lite

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +251 to +256
/// Cross-world constant-parity harness (Task 2 lands world 1 only; later
/// tasks extend the `scenarios` array). Every constant a world does not
/// deliberately vary must be byte-identical across worlds — a typo in one
/// world's canonical block cannot pass.
#[test]
fn the_constant_table_is_byte_identical_across_all_worlds() {

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 38d5f60: renamed to world1_constants_match_the_canonical_table_bit_exactly with the doc comment now stating the multi-world loop lands with later worlds.

Comment thread rust/crates/babylon-tick/src/lib.rs Outdated
Comment on lines +398 to +401
// The class-dynamics/* rule pack (Material Base @4.0's Feature-016
// class-dynamics engine — NOT all of @4.0; TickDynamics port train,
// issue #669, plan `docs/superpowers/plans/2026-08-18-tickdynamics-
// port.md`). Genuinely NEW registration — the Task 0 surface-facts

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 38d5f60: the path now sits contiguous on one unbackticked comment line.

percy-raskova and others added 2 commits August 22, 2026 13:51
…tiguous plan path

- the_constant_table_is_byte_identical_across_all_worlds →
  world1_constants_match_the_canonical_table_bit_exactly (the harness's
  multi-world loop lands with later worlds; the name now says what the
  test does today)
- lib.rs's registration comment keeps the plan path on one unbackticked
  line (a backticked path split across lines renders as
  "tickdynamics- port.md")

Co-Authored-By: Kimi Code <noreply@moonshot.cn>
…#696 CI)

The manifest-sync gate (Python reference suite — not covered by the
crate-scoped cargo loop) requires every content file claimed by a row:
the class-dynamics Task 2 files now have one. The fuel-report bin stays
OUT of `consumers` — the manifest's scanner is non-recursive by design
(src/*.rs + tests/*.rs top-level only; src/bin/ is invisible to it).

Co-Authored-By: Kimi Code <noreply@moonshot.cn>
@percy-raskova
percy-raskova merged commit ae5b261 into dev Aug 22, 2026
10 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.

2 participants