You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
### Changed
6
6
7
-
-**The bounded TypeScript lane now proves the same-tree chain3 family in M54** — eligible `kind:function` roots may still use the helper-aware monotone-up lane from M46 and the same-tree wrapper lane from M52, and may now also classify to `function.wrapper.pipeline.chain3.v1` when they declare the exact same-tree local dep tuple `function.wrapper.pipeline.v1` then `function.arithmetic_leaf.monotone_up.v1` then `function.arithmetic_leaf.monotone_down_nonnegative.v1`. The lane remains Bun-only, atom-only, and additive to Rust proof; it still does not widen to molecule execution, generic multi-dep execution, seam kinds, nested chain3 closure members, cross-library TypeScript resolution, `spec validate --target-language`, or `spec export --target-language`.
7
+
-**The bounded TypeScript lane now admits cross-library helper imports in M55** — eligible `kind:function` roots may still use the helper-aware monotone-up lane from M46, the same-tree wrapper lane from M52, and the same-tree chain3 lane from M54. In M55, the one legal helper slot under the monotone-up lane may now resolve a sibling-library helper like `shared::money/round`, and bounded wrapper/chain3 closures may reuse that shared helper transitively once it is in the loaded tree. The lane remains Bun-only, atom-only, and additive to Rust proof; it still does not widen to molecule execution, generic multi-dep execution, seam kinds, direct cross-library wrapper roots, direct cross-library chain3 roots, nested chain3 closure members, `spec validate --target-language`, or `spec export --target-language`.
`spec` now exposes one bounded TypeScript execution lane. It is intentionally narrow:
53
53
54
54
- Bun is the only TypeScript prerequisite. The lane shells out to `bun`; no alternate Node, npm, or tsx contract is supported.
55
55
- Eligible roots are exactly `kind: function` specs that classify to `function.arithmetic_leaf.monotone_up.v1`, `function.wrapper.pipeline.v1`, or the bounded same-tree `function.wrapper.pipeline.chain3.v1`.
56
-
- Monotone-up roots may declare `deps: []` or exactly one direct local helper dep. That helper must classify to `function.helper.identity_passthrough.v1`, exist in the same loaded unit set and generated tree, and be the only direct dep of the current unit.
56
+
- Monotone-up roots may declare `deps: []` or exactly one direct helper dep. That helper must classify to `function.helper.identity_passthrough.v1`, author non-empty `body.typescript`, and exist in the loaded unit set and generated tree. In M55, that one helper dep may now be cross-library when it is referenced through `[libraries]` as a sibling import like `shared::money/round`.
57
57
- Wrapper roots must declare exactly two direct local deps in the same loaded unit set and generated tree. The ordered dep tuple is frozen to `function.arithmetic_leaf.monotone_down_nonnegative.v1` then `function.arithmetic_leaf.monotone_up.v1`, and both deps must author non-empty `body.typescript`.
58
58
- Chain3 roots must declare exactly three direct local deps in the same loaded unit set and generated tree. The ordered dep tuple is frozen to `function.wrapper.pipeline.v1` then `function.arithmetic_leaf.monotone_up.v1` then `function.arithmetic_leaf.monotone_down_nonnegative.v1`, and every direct dep must author non-empty `body.typescript`.
59
59
- Chain3 closure collection stays bounded. A same-tree wrapper may appear as a closure member under a chain3 root, but nested `function.wrapper.pipeline.chain3.v1` closure members remain unsupported.
@@ -70,19 +70,19 @@ spec test <path> --target-language typescript
70
70
spec status <unit-or-root> --target-language typescript
71
71
```
72
72
73
-
`spec status <unit-or-root> --target-language typescript` reports target-specific proof only. In M54, a root-level status over a mixed example like `examples/ecommerce` may stay non-green unless every unit in scope is either freshly proven in the bounded monotone-up, wrapper, or same-tree chain3 lane, or truthfully remains outside that lane.
73
+
`spec status <unit-or-root> --target-language typescript` reports target-specific proof only. In M55, a root-level status over a mixed example like `examples/ecommerce` or `examples/crosslib-app` may stay non-green unless every unit in scope is either freshly proven in the bounded monotone-up, wrapper, or same-tree chain3 lane, or truthfully remains outside that lane.
74
74
75
-
The generated helper filenames remain frozen in M54:
75
+
The generated helper filenames remain frozen in M55:
76
76
77
77
-`__spec_ts/runtime.ts`
78
78
-`__spec_ts/build_entry.ts`
79
79
-`__spec_ts/local_tests.ts`
80
80
81
-
Commands and surfaces that do not widen for M54:
81
+
Commands and surfaces that do not widen for M55:
82
82
83
83
-`spec validate` does not accept `--target-language`
84
84
-`spec export` does not accept `--target-language`
85
-
- This lane does not widen to molecule execution, generic multi-dep execution, seam kinds, cross-library TypeScript resolution, nested chain3 closure members, `spec validate --target-language`, or `spec export --target-language`.
85
+
- This lane does not widen to molecule execution, generic multi-dep execution, seam kinds, direct cross-library wrapper roots, direct cross-library chain3 roots, nested chain3 closure members, `spec validate --target-language`, or `spec export --target-language`.
Copy file name to clipboardExpand all lines: TODOS.md
+4-2Lines changed: 4 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -192,6 +192,8 @@
192
192
193
193
-[x]**Bounded same-tree chain3 TypeScript execution in `spec`** — Completed by M54 (2026-05-13). The bounded Bun-backed TypeScript lane now admits the same-tree `function.wrapper.pipeline.chain3.v1` family with the frozen direct local dep tuple `wrapper.pipeline -> monotone_up -> monotone_down_nonnegative`, while keeping proof additive, atom-only, and target-specific.
194
194
195
-
-[]**Cross-library TypeScript helper imports** — Deferred by the M46 review. Same-tree helper execution is enough to close the current product-family mismatch; cross-library target resolution is a different portability problem.
195
+
-[x]**Cross-library TypeScript helper imports** — Completed by M55 (2026-05-13). The bounded Bun-backed TypeScript lane now admits cross-library helper imports in the one legal helper slot for `function.arithmetic_leaf.monotone_up.v1`, and bounded wrapper/chain3 closures may reuse that shared helper transitively once it is in the loaded tree.
196
196
197
-
-[ ]**Generic multi-dependency TypeScript execution** — Deferred again after M54. The current lane is intentionally family-shaped: helper-aware monotone-up roots plus same-tree wrapper roots and same-tree chain3 roots only, not arbitrary dependency topologies.
197
+
-[ ]**Direct cross-library wrapper and chain3 TypeScript roots** — Deferred after M55. Cross-library helper imports are now allowed only in legal helper slots; direct wrapper root deps and direct chain3 root deps remain local-only.
198
+
199
+
-[ ]**Generic multi-dependency TypeScript execution** — Deferred again after M55. The current lane is intentionally family-shaped: helper-aware monotone-up roots, cross-library helper imports only in that legal helper slot, plus same-tree wrapper roots and same-tree chain3 roots only, not arbitrary dependency topologies.
0 commit comments