Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 8 additions & 5 deletions .trinity/seals/PackedVsa.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
{
"gen_hash_c": "sha256:02d9240f377735a9a3e8ab05da682a9610490880ee79bd9edddffe88fb645c47",
"gen_hash_c": "sha256:c05243afea9598e74c0b41e4fb3a4d0fd091d41796caad5b96bf8dae7da8eac1",
"gen_hash_rust": "sha256:ae30a257e81fbf476174ae61df025762289614d34b5bd91f373b1592af9baf36",
"gen_hash_verilog": "sha256:0c05f89b537e501cd2d5e7c38b6c49587bc3a0159ac6dadd26bd3974178ac75a",
"gen_hash_zig": "sha256:f7090e24397090e9fe6f92f4ed5ebc0a867fdf0a2e6f41cdd09dd758a529a8ce",
"gen_hash_zig": "sha256:28a8373e97c59c6c90e643e70177c07e3867456ff5e99c18a8a20a9dcda96c0d",
"module": "PackedVsa",
"ring": 12,
"sealed_at": "2026-10-02T11:05:31Z",
"spec_hash": "sha256:de3bd1528985961dffbadb97bba497c1e6ee11e46c802a7b49e068e65805b1d1",
"spec_path": "specs/vsa/packed_vsa.t27"
"sealed_at": "2026-10-03T10:16:51Z",
"spec_hash": "sha256:d183deaaa03d88a80f9a93539f8bc24329f8a8c4b8e43a29e11fd52f71a3337f",
"spec_path": "specs/vsa/packed_vsa.t27",
"tests": {
"blocked": "does not compile: /var/folders/jz/zcjlxjps7gs81jtkwvkbryzc0000gn/T/t27c-test-report-packed_vsa-55085/spec.zig:26:5: error: variables must be initialized"
}
}
13 changes: 8 additions & 5 deletions .trinity/seals/SDK.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@
{
"gen_hash_c": "sha256:72c5638ab0d078348b88e0c969ebf3dbce74b4018b544c45eb5fbd3cfa3cf043",
"gen_hash_c": "sha256:e1619d2c7384c506010ee3f8db4330e14518830168c61b183be37ad579dccd3d",
"gen_hash_rust": "sha256:813822ab10be13d1b2386678c9ad8130df2333769dfef9cea72dbe50e9b2cff3",
"gen_hash_verilog": "sha256:f40f4a52f962969176a47a31c6ebbc6a55c016f71257041b8c949ac89d81b754",
"gen_hash_zig": "sha256:ed02c5fe7a08d514a4f2617c25e89048087c21dc5615a6f9ada9c628df197a6d",
"gen_hash_zig": "sha256:b77206ded101634b2d5802fa49d66e790e78baf15614ba96345ff21e47931502",
"module": "SDK",
"ring": 12,
"sealed_at": "2026-09-08T01:03:30Z",
"spec_hash": "sha256:7843aca460336f24ba9026067e1e642e110cb6d2a995064bf9613eaed662c115",
"spec_path": "specs/vsa/sdk.t27"
"sealed_at": "2026-10-03T10:16:51Z",
"spec_hash": "sha256:41cb5bde9a464e6243cff0eefdd91bb0931ffd452217ec6f6357c974196e34e7",
"spec_path": "specs/vsa/sdk.t27",
"tests": {
"blocked": "does not compile: /var/folders/jz/zcjlxjps7gs81jtkwvkbryzc0000gn/T/t27c-test-report-sdk-55130/spec.zig:23:11: error: use of undeclared identifier 'hybrid_arithmetic'"
}
}
13 changes: 8 additions & 5 deletions .trinity/seals/vsa_PackedVsa.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
{
"gen_hash_c": "sha256:02d9240f377735a9a3e8ab05da682a9610490880ee79bd9edddffe88fb645c47",
"gen_hash_c": "sha256:c05243afea9598e74c0b41e4fb3a4d0fd091d41796caad5b96bf8dae7da8eac1",
"gen_hash_rust": "sha256:ae30a257e81fbf476174ae61df025762289614d34b5bd91f373b1592af9baf36",
"gen_hash_verilog": "sha256:0c05f89b537e501cd2d5e7c38b6c49587bc3a0159ac6dadd26bd3974178ac75a",
"gen_hash_zig": "sha256:f7090e24397090e9fe6f92f4ed5ebc0a867fdf0a2e6f41cdd09dd758a529a8ce",
"gen_hash_zig": "sha256:28a8373e97c59c6c90e643e70177c07e3867456ff5e99c18a8a20a9dcda96c0d",
"module": "PackedVsa",
"ring": 12,
"sealed_at": "2026-10-02T11:05:31Z",
"sealed_at": "2026-10-03T10:16:51Z",
"sealed_by": "t27c-bootstrap@0.4.0",
"spec_hash": "sha256:de3bd1528985961dffbadb97bba497c1e6ee11e46c802a7b49e068e65805b1d1",
"spec_path": "specs/vsa/packed_vsa.t27"
"spec_hash": "sha256:d183deaaa03d88a80f9a93539f8bc24329f8a8c4b8e43a29e11fd52f71a3337f",
"spec_path": "specs/vsa/packed_vsa.t27",
"tests": {
"blocked": "does not compile: /var/folders/jz/zcjlxjps7gs81jtkwvkbryzc0000gn/T/t27c-test-report-packed_vsa-55085/spec.zig:26:5: error: variables must be initialized"
}
}
15 changes: 9 additions & 6 deletions .trinity/seals/vsa_SDK.json
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
{
"gen_hash_c": "sha256:72c5638ab0d078348b88e0c969ebf3dbce74b4018b544c45eb5fbd3cfa3cf043",
"gen_hash_c": "sha256:e1619d2c7384c506010ee3f8db4330e14518830168c61b183be37ad579dccd3d",
"gen_hash_rust": "sha256:813822ab10be13d1b2386678c9ad8130df2333769dfef9cea72dbe50e9b2cff3",
"gen_hash_verilog": "sha256:f40f4a52f962969176a47a31c6ebbc6a55c016f71257041b8c949ac89d81b754",
"gen_hash_zig": "sha256:ed02c5fe7a08d514a4f2617c25e89048087c21dc5615a6f9ada9c628df197a6d",
"gen_hash_zig": "sha256:b77206ded101634b2d5802fa49d66e790e78baf15614ba96345ff21e47931502",
"module": "SDK",
"ring": 12,
"sealed_at": "2026-09-08T01:03:30Z",
"sealed_by": "t27c-bootstrap@0.2.0",
"spec_hash": "sha256:7843aca460336f24ba9026067e1e642e110cb6d2a995064bf9613eaed662c115",
"spec_path": "specs/vsa/sdk.t27"
"sealed_at": "2026-10-03T10:16:51Z",
"sealed_by": "t27c-bootstrap@0.4.0",
"spec_hash": "sha256:41cb5bde9a464e6243cff0eefdd91bb0931ffd452217ec6f6357c974196e34e7",
"spec_path": "specs/vsa/sdk.t27",
"tests": {
"blocked": "does not compile: /var/folders/jz/zcjlxjps7gs81jtkwvkbryzc0000gn/T/t27c-test-report-sdk-55130/spec.zig:23:11: error: use of undeclared identifier 'hybrid_arithmetic'"
}
}
21 changes: 21 additions & 0 deletions docs/now/2026-10-03-vsa-checks-in-t27-notation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
# NOW -- vsa checks in t27 notation (2026-10-03)

## What was read

- `t27c parse-complete` on master 8fdf7155: `specs/vsa/packed_vsa.t27` discarded 19 tokens (lines 151-153), `specs/vsa/sdk.t27` 56 (lines 537-542).
- packed_vsa test `packed_cosine_self_similarity_is_one` ended in `then sim ≈ 1.0`; the test fell back whole and `t27c gen` emitted it empty.
- sdk invariant `hypervector_negate_flips_all_trits` used a C-style `for (i = 0; i < 100; i += 1)` loop; `t27c gen` emitted `NOT CHECKED -- body was not lowered (T43)`.

## What changed

- `sim ≈ 1.0` is `abs(sim - 1.0) < 1e-6`, with a comment that the cosine of a vector with itself is 1 up to rounding.
- The loop is `for (0..100) |i| { ... }` over the same 100 indices, body unchanged (`assert t1 == -t2`).
- `t27c gen` now emits both checks; the `NOT CHECKED` marker in sdk is gone.
- The four seals were regenerated with the t27c built from this tree (`seal --verify`: all hashes MATCH). Both `parse-no-discard` entries left `docs/reports/suite_expectations.json`; `t27c suite --ratchet --corpus-only` is CLEAN.

## Not verified

- `t27c test-report` is BLOCKED on both specs on master and here alike (`variables must be initialized` in packed_vsa, undeclared `hybrid_arithmetic` in sdk). `zig ast-check` reports the same error set before and after (9 and 28). The new checks are in the Zig output, but none of them ran.
- The tolerance 1e-6 is a choice: the spec said only "approximately".

Closes #5738
23 changes: 0 additions & 23 deletions docs/reports/suite_expectations.json
Original file line number Diff line number Diff line change
Expand Up @@ -1222,29 +1222,6 @@
"bdd-block-fallback": 26,
"brace-body/in-fallback": 14
}
},
{
"path": "specs/vsa/packed_vsa.t27",
"phase": "parse-no-discard",
"reason": "moved from `parse` to `parse-no-discard` (2026-10-02, #5497): the spec parses now and fails one phase later. Was: Expected LBrace, got Semicolon (';')",
"issue": 1959,
"expires": "2026-11-30",
"discard_tokens": 19,
"discard_by_channel": {
"bdd-block-fallback": 19
}
},
{
"path": "specs/vsa/sdk.t27",
"phase": "parse-no-discard",
"reason": "top-level drop-recovery discards tokens; parser reaches EOF so `parse` reports success (T42)",
"issue": 1959,
"expires": "2026-11-30",
"discard_tokens": 56,
"discard_by_channel": {
"bdd-block-fallback": 26,
"brace-body/in-fallback": 30
}
}
],
"_why_entries_fell": "151 -> 133 (2026-10-02, #5497): 51 entries whose specs now pass every phase were removed (the ratchet reported each as an UNEXPECTED PASS); 6 specs that parse now and fail one phase later were re-keyed to that phase; 5 discard pins moved DOWN or only re-split their channels; 33 failures of ported specs merged while the gate was red were added under #5549, whose ports are to be redone. The cap follows the count down so nothing can hide in the slack. 29 core specs that began discarding tokens after bee edits were repaired, not recorded (#5572, #5575).",
Expand Down
3 changes: 2 additions & 1 deletion specs/vsa/packed_vsa.t27
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,8 @@ module PackedVsa {
// Verify: Self-similarity equals 1.0
given vec = randomPackedVector(100, 999)
and sim = packedCosineSimilarity(&vec, &vec)
then sim ≈ 1.0
// "approximately 1.0": the cosine of a vector with itself, up to rounding.
then abs(sim - 1.0) < 1e-6

test packed_cosine_orthogonal_is_zero
// Verify: Orthogonal vectors have similarity ~0
Expand Down
3 changes: 2 additions & 1 deletion specs/vsa/sdk.t27
Original file line number Diff line number Diff line change
Expand Up @@ -536,7 +536,8 @@ module SDK {
// Negate flips all trits
const a = hypervector_random(100, 123);
when result = hypervector_negate(a)
then for (i = 0; i < 100; i += 1) {
// Every one of the 100 trits.
for (0..100) |i| {
const t1 = a.data.get(i);
const t2 = result.data.get(i);
assert t1 == -t2;
Expand Down
Loading