From a879a773f46433ca212de01f035087cc8bd413d5 Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Mon, 19 Oct 2026 09:57:02 +0700 Subject: [PATCH 1/8] lexer: "\xNN" in a string lowers to one byte, and every backend writes the byte back (Closes #10793) The string lexer kept "\xD0" as four characters, so a test such as assert "\xD0\x96".len == 2 failed at run time with no compiler diagnostic. It now lowers a backslash, x and exactly two hex digits to one byte, held as the char of the same value (U+0000..U+00FF). Any other \x keeps its old spelling. zig_escape writes bytes 0x00-0x1F and 0x7F-0xFF back as \xNN for Zig and Rust, or three-digit octal for C (a C \x escape swallows following hex digits) and Verilog. Rust writes non-ASCII text as \u{..} when the bytes are valid UTF-8 and emits compile_error! otherwise, since a str cannot hold a lone high byte. The Verilog escape chain collapses into zig_escape. specs/compiler/string_escapes.t27 pins the bytes; terminal.t27 stops claiming the escape is not lowered. The dead recover_to_stmt_boundary is deleted so the hand-written Rust shrinks (36 lines net -11). Co-Authored-By: Claude Sonnet 5.5 --- bootstrap/src/compiler.rs | 79 ++++++++++++----------------- bootstrap/src/lex_conform.rs | 6 +++ specs/compiler/string_escapes.t27 | 82 +++++++++++++++++++++++++++++++ specs/tri/utils/terminal.t27 | 4 +- 4 files changed, 121 insertions(+), 50 deletions(-) create mode 100644 specs/compiler/string_escapes.t27 diff --git a/bootstrap/src/compiler.rs b/bootstrap/src/compiler.rs index db441062ae..cae166f014 100644 --- a/bootstrap/src/compiler.rs +++ b/bootstrap/src/compiler.rs @@ -517,6 +517,13 @@ impl Lexer { b't' => s.push('\t'), b'\\' => s.push('\\'), b'"' => s.push('"'), + // #10793: `\xNN` (two hex digits) is one byte, held as the char of that value. + b'x' if (1..3).all(|i| self.peek_offset(i).is_ascii_hexdigit()) => { + let hex = |i| (self.peek_offset(i) as char).to_digit(16).unwrap_or(0); + s.push(char::from((hex(1) * 16 + hex(2)) as u8)); + self.advance(); + self.advance(); + } _ => { s.push('\\'); s.push(escaped as char); @@ -3642,44 +3649,6 @@ the parser used to read it as `{}` followed by a negation", Ok(()) } - /// Skip tokens to recover to next statement boundary (semicolon or closing brace) - #[allow(dead_code)] - fn recover_to_stmt_boundary(&mut self) { - let mut brace_depth: i32 = 0; - loop { - // W646: statement-level recovery is the second discard channel. - // Everything it walks past is a statement the AST never sees. - // W899: record the span too -- see the note in skip_brace_body. - if self.current.kind != TokenKind::Eof { - self.dropped_top_level_tokens += 1; - if self.dropped_spans.len() < 20000 { - self.dropped_spans - .push((self.current.line as u32, self.current.lexeme.clone())); - self.dropped_channels.push("stmt-recovery"); - } - } - match self.current.kind { - TokenKind::Eof => break, - TokenKind::Semicolon if brace_depth == 0 => { - self.advance(); - break; - } - TokenKind::RBrace if brace_depth == 0 => break, - TokenKind::LBrace => { - brace_depth += 1; - self.advance(); - } - TokenKind::RBrace => { - brace_depth -= 1; - self.advance(); - } - _ => { - self.advance(); - } - } - } - } - /// Parse a single statement inside a function body fn parse_body_stmt(&mut self) -> Result { // `defer ;` / `errdefer ;` -- Zig's scope-exit hook. Not @@ -8590,7 +8559,7 @@ impl Codegen { /// Re-escape a string the lexer already unescaped, so it can be written /// back between quotes. - fn zig_escape(raw: &str) -> String { + fn zig_escape(raw: &str, octal: bool) -> String { let mut out = String::with_capacity(raw.len()); for c in raw.chars() { match c { @@ -8599,12 +8568,30 @@ impl Codegen { '\n' => out.push_str("\\n"), '\r' => out.push_str("\\r"), '\t' => out.push_str("\\t"), + // #10793: a lexeme char is a byte (U+0000..U+00FF). Zig, Rust + // take `\xNN`; C and Verilog take octal (a C `\x` eats digits). + c if (c as u32) < 0x20 || (0x7f..=0xff).contains(&(c as u32)) => { + out.push_str(&match octal { + true => format!("\\{:03o}", c as u32), + false => format!("\\x{:02x}", c as u32), + }) + } _ => out.push(c), } } out } + /// A Rust `&str` literal for a lexeme of bytes: a `str` cannot hold a lone + /// byte above 0x7F, so non-ASCII must be valid UTF-8 (#10793). + fn rust_str_literal(raw: &str) -> String { + match String::from_utf8(raw.chars().map(|c| c as u32 as u8).collect()) { + Ok(text) if !raw.is_ascii() => format!("\"{}\"", text.escape_default()), + Err(_) => "compile_error!(\"string literal is not valid UTF-8\")".to_string(), + _ => format!("\"{}\"", Self::zig_escape(raw, false)), + } + } + fn zig_is_primitive(name: &str) -> bool { matches!( name, @@ -10366,7 +10353,7 @@ impl Codegen { // 154 escape sequences across 19 specs. The W576 lexer // conformance table records the unescaping as a boundary, // which is how this was found. - self.write(&format!("\"{}\"", Self::zig_escape(&node.value))); + self.write(&format!("\"{}\"", Self::zig_escape(&node.value, false))); } else { self.write(&node.value); } @@ -18173,11 +18160,7 @@ impl VerilogCodegen { // otherwise Yosys emits "unterminated string" / "unknown escape // sequence" warnings. if node.extra_kind == "string" { - let escaped = val - .replace('\\', "\\\\") - .replace('\n', "\\n") - .replace('\t', "\\t") - .replace('"', "\\\""); + let escaped = Codegen::zig_escape(val, true); self.write(&format!("\"{}\"", escaped)); return; } @@ -20275,7 +20258,7 @@ long double: fabsl, default: llabs)(x)", // a bare word is valid C. It lands in the output and fails // wherever it is used, or expands to something else entirely. let text = if child.extra_kind == "string" { - format!("\"{}\"", Codegen::zig_escape(&child.value)) + format!("\"{}\"", Codegen::zig_escape(&child.value, true)) } else { Self::c_literal(&child.value) }; @@ -22253,7 +22236,7 @@ long double: fabsl, default: llabs)(x)", // The lexer UNESCAPES as it reads, so the value here holds real // newlines and quotes; they have to be written back escaped. if node.extra_kind == "string" { - self.write(&format!("\"{}\"", Codegen::zig_escape(&node.value))); + self.write(&format!("\"{}\"", Codegen::zig_escape(&node.value, true))); return; } // Zig and Rust write `100_000_000`; C does not. The separator @@ -28798,7 +28781,7 @@ impl RustCodegen { // `let s = hello world;` and `const NAME : str = "trinity"` became // `pub const NAME: String = trinity;`. NodeKind::ExprLiteral if node.extra_kind == "string" => { - format!("\"{}\"", Codegen::zig_escape(&node.value)) + Codegen::rust_str_literal(&node.value) } NodeKind::ExprLiteral if node.value.starts_with('\'') => format!("b{}", node.value), // #8971: a u8 NodeKind::ExprLiteral => node.value.clone(), diff --git a/bootstrap/src/lex_conform.rs b/bootstrap/src/lex_conform.rs index c21605b4dd..47c41e7c4e 100644 --- a/bootstrap/src/lex_conform.rs +++ b/bootstrap/src/lex_conform.rs @@ -300,6 +300,12 @@ pub const CASES: &[Case] = &[ note: "BOUNDARY: \\n is unescaped in the lexeme, so a backend must RE-escape it", boundary: true, }, + Case { + input: "\"\\xD0\\x96\"", + expect: &[(TokenKind::String, "\u{d0}\u{96}")], + note: "BOUNDARY (#10793): \\xNN is one byte, held as the char of that value", + boundary: true, + }, ]; /// Run every case; return only those whose tokenisation differs. diff --git a/specs/compiler/string_escapes.t27 b/specs/compiler/string_escapes.t27 new file mode 100644 index 0000000000..2875f153f0 --- /dev/null +++ b/specs/compiler/string_escapes.t27 @@ -0,0 +1,82 @@ +// SPDX-License-Identifier: Apache-2.0 +; specs/compiler/string_escapes.t27 -- pins the \xNN string escape (#10793). +; -- +; The lexer lowers a backslash, x and exactly two hex digits to ONE byte of the literal. Before #10793 +; "\xD0\x96" kept all eight characters, so a test written with \xNN failed at run time while the +; compiler said nothing (found in t27#10788: UTF-8 ideas for the Cyrillic idea factory). +; -- +; How the byte survives each backend (bootstrap/src/compiler.rs): +; - the lexeme holds a byte as the char of the same value, U+0000..U+00FF; +; - Zig and Rust write it back as \xNN, C and Verilog as three-digit octal. A Rust str cannot hold a lone +; byte above 0x7F, so non-ASCII text must be valid UTF-8 (written as \u{..}); anything else is a +; compile_error! in the generated Rust. +; The tests below run through Zig (t27c test-report). The other backends are checked by the compiler's +; own unit tests and by the sweep of every spec that carries a string. +; -- +; A backslash-x that is not followed by two hex digits is NOT an escape and keeps its four characters. +; ASCII only (L3) +; phi^2 + 1/phi^2 = 3 | TRINITY + +module StringEscapes; + + // Zhe (U+0416) in UTF-8 is D0 96: two bytes, not eight characters. + test zhe_is_two_bytes { + const zhe = "\xD0\x96"; + assert zhe.len == 2; + assert zhe[0] == 208; + assert zhe[1] == 150; + } + + // The digits may be lower case, and one escape is one byte. + test lower_case_digits { + const lead = "\xd0"; + assert lead.len == 1; + assert lead[0] == 208; + } + + // A hex digit right after the escape is plain text: "\xD0A" is the bytes 208 and 65. + // (A C \x escape would swallow the A, which is why C uses octal.) + test digit_after_escape_is_text { + const mixed = "\xD0A"; + assert mixed.len == 2; + assert mixed[0] == 208; + assert mixed[1] == 65; + } + + // ESC [ 0 m: the ANSI reset sequence that specs/tri/utils/terminal.t27 used to spell as numbers. + test ansi_reset_is_four_bytes { + const reset = "\x1b[0m"; + assert reset.len == 4; + assert reset[0] == 27; + assert reset[1] == 91; + assert reset[2] == 48; + assert reset[3] == 109; + } + + // The ends of the byte range. + test byte_range_ends { + const ends = "\x7f\xff"; + assert ends.len == 2; + assert ends[0] == 127; + assert ends[1] == 255; + } + + // Not an escape: a non-hex digit, and fewer than two digits. The four characters stay. + test malformed_escape_is_kept { + const bad = "\xZZ"; + assert bad.len == 4; + assert bad[0] == 92; + assert bad[1] == 120; + assert bad[2] == 90; + assert bad[3] == 90; + } + + // The old escapes are unchanged. + test old_escapes_unchanged { + const old = "a\nb\t\\\""; + assert old.len == 6; + assert old[1] == 10; + assert old[3] == 9; + assert old[4] == 92; + assert old[5] == 34; + } diff --git a/specs/tri/utils/terminal.t27 b/specs/tri/utils/terminal.t27 index 27b032bf04..16bc6da09b 100644 --- a/specs/tri/utils/terminal.t27 +++ b/specs/tri/utils/terminal.t27 @@ -45,8 +45,8 @@ module TriTerminal; return true; } - // The ANSI reset sequence ESC [ 0 m as bytes: the string escape \x1b is not lowered - // by the backend, so the escape byte (27) is written as a number. + // The ANSI reset sequence ESC [ 0 m as bytes. The string escape \x1b is lowered to one + // byte since #10793 (specs/compiler/string_escapes.t27); this table keeps the numbers. const RESET_SEQUENCE : [4]u8 = [27, 91, 48, 109]; // reset() -> []const u8 From 549c8ced58264d045a1fd42f6ec8354d2bb0dfc3 Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Mon, 19 Oct 2026 09:59:22 +0700 Subject: [PATCH 2/8] t27c: move the compiler.rs seal for the \xNN lexer change (refs #10793) Co-Authored-By: Claude Sonnet 5.5 --- bootstrap/stage0/FROZEN_HASH | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bootstrap/stage0/FROZEN_HASH b/bootstrap/stage0/FROZEN_HASH index 4cf98fee59..69dd54a636 100644 --- a/bootstrap/stage0/FROZEN_HASH +++ b/bootstrap/stage0/FROZEN_HASH @@ -1 +1 @@ -fad12492937aa2196d2adbf560305e367f5dd1183a3107137d5bc0c1c26033ab bootstrap/src/compiler.rs +2a0ba9270b91e1444c3b535e67812d2a98d8126a3edee98cd9f6cbac83f85f30 bootstrap/src/compiler.rs From 47e0271e0ff35b8d93dc8e00e19b52ed9f91cf74 Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Mon, 19 Oct 2026 10:02:03 +0700 Subject: [PATCH 3/8] string_escapes.t27: read the literals through a call so the asserts run at run time (refs #10793) Co-Authored-By: Claude Sonnet 5.5 --- specs/compiler/string_escapes.t27 | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/specs/compiler/string_escapes.t27 b/specs/compiler/string_escapes.t27 index 2875f153f0..7b7f1b942a 100644 --- a/specs/compiler/string_escapes.t27 +++ b/specs/compiler/string_escapes.t27 @@ -19,9 +19,14 @@ module StringEscapes; + // The literal goes through a call so the asserts below run at run time, not at compile time. + fn text_of(s: []const u8) -> []const u8 { + return s; + } + // Zhe (U+0416) in UTF-8 is D0 96: two bytes, not eight characters. test zhe_is_two_bytes { - const zhe = "\xD0\x96"; + const zhe = text_of("\xD0\x96"); assert zhe.len == 2; assert zhe[0] == 208; assert zhe[1] == 150; @@ -29,7 +34,7 @@ module StringEscapes; // The digits may be lower case, and one escape is one byte. test lower_case_digits { - const lead = "\xd0"; + const lead = text_of("\xd0"); assert lead.len == 1; assert lead[0] == 208; } @@ -37,7 +42,7 @@ module StringEscapes; // A hex digit right after the escape is plain text: "\xD0A" is the bytes 208 and 65. // (A C \x escape would swallow the A, which is why C uses octal.) test digit_after_escape_is_text { - const mixed = "\xD0A"; + const mixed = text_of("\xD0A"); assert mixed.len == 2; assert mixed[0] == 208; assert mixed[1] == 65; @@ -45,7 +50,7 @@ module StringEscapes; // ESC [ 0 m: the ANSI reset sequence that specs/tri/utils/terminal.t27 used to spell as numbers. test ansi_reset_is_four_bytes { - const reset = "\x1b[0m"; + const reset = text_of("\x1b[0m"); assert reset.len == 4; assert reset[0] == 27; assert reset[1] == 91; @@ -55,7 +60,7 @@ module StringEscapes; // The ends of the byte range. test byte_range_ends { - const ends = "\x7f\xff"; + const ends = text_of("\x7f\xff"); assert ends.len == 2; assert ends[0] == 127; assert ends[1] == 255; @@ -63,7 +68,7 @@ module StringEscapes; // Not an escape: a non-hex digit, and fewer than two digits. The four characters stay. test malformed_escape_is_kept { - const bad = "\xZZ"; + const bad = text_of("\xZZ"); assert bad.len == 4; assert bad[0] == 92; assert bad[1] == 120; @@ -73,7 +78,7 @@ module StringEscapes; // The old escapes are unchanged. test old_escapes_unchanged { - const old = "a\nb\t\\\""; + const old = text_of("a\nb\t\\\""); assert old.len == 6; assert old[1] == 10; assert old[3] == 9; From a85011467ebe00799fcdd079b436dd286eae8408 Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Mon, 19 Oct 2026 10:06:15 +0700 Subject: [PATCH 4/8] seals: refresh TriLogging and TriTerminal, add StringEscapes (refs #10793) logging.t27 spells "\x1b[36m" and now emits the ESC byte; terminal.t27 changed a comment. Co-Authored-By: Claude Sonnet 5.5 --- .trinity/seals/TriLogging.json | 10 ++++---- .trinity/seals/TriTerminal.json | 4 ++-- .trinity/seals/compiler_StringEscapes.json | 28 ++++++++++++++++++++++ .trinity/seals/utils_TriLogging.json | 14 +++++------ .trinity/seals/utils_TriTerminal.json | 8 +++---- 5 files changed, 46 insertions(+), 18 deletions(-) create mode 100644 .trinity/seals/compiler_StringEscapes.json diff --git a/.trinity/seals/TriLogging.json b/.trinity/seals/TriLogging.json index 2a27e911ed..e43e1e0d57 100644 --- a/.trinity/seals/TriLogging.json +++ b/.trinity/seals/TriLogging.json @@ -1,11 +1,11 @@ { - "gen_hash_c": "sha256:3d4df16f98e5c132da31122529db5748193ff6ae991abd3fbed9241f08c70db5", - "gen_hash_rust": "sha256:f01ef5e088a39be0bb2a82a218f35bdbb74850f979c431af53928af397fa18ec", - "gen_hash_verilog": "sha256:ff4d69c51f98767ed6faa252f7a475825b3081054a054e37219c5fe789638709", - "gen_hash_zig": "sha256:cb57af52ef7a8f9c06298946b2fbc66de5b65b74a35af26a07e41cd47a98b5d7", + "gen_hash_c": "sha256:1fc9cbf8962cea0ccc4e860a8d5eb2a6cbfbefd233af57881d46f37595cc5fcd", + "gen_hash_rust": "sha256:30f7fc6b1a90ba20156a72f379e1214cd0fb5e50b80c8b38f1d6dd1b1427b10e", + "gen_hash_verilog": "sha256:bf79e75aa596f57038bd07a98d90e5f8d7e2224c2b673367073ba50bf4799709", + "gen_hash_zig": "sha256:106bc512c976eb7d5d733db64236ac992246658f565385b2a5199f83267f0857", "module": "TriLogging", "ring": 12, - "sealed_at": "2026-10-18T08:31:47Z", + "sealed_at": "2026-10-19T03:05:43Z", "spec_hash": "sha256:392e71d52d9e5c586f8470b1d50f860a2256f732b92e9c77951fb62417b4257f", "spec_path": "specs/tri/utils/logging.t27", "tests": { diff --git a/.trinity/seals/TriTerminal.json b/.trinity/seals/TriTerminal.json index 0a19a68992..04f084f3b3 100644 --- a/.trinity/seals/TriTerminal.json +++ b/.trinity/seals/TriTerminal.json @@ -18,9 +18,9 @@ "module": "TriTerminal", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-18T09:33:42Z", + "sealed_at": "2026-10-19T03:05:44Z", "sealed_by": "t27c-bootstrap@0.5.2", - "spec_hash": "sha256:4eabb226c4c859104c2638c2a7b7dde4c619b934bcc3a02ccbb794c3d7b2fbdb", + "spec_hash": "sha256:2d88e2c8a12d29bfbc0817e67da0c200479928250a6020dd925523f8429c936b", "spec_path": "specs/tri/utils/terminal.t27", "tests": { "failed": 0, diff --git a/.trinity/seals/compiler_StringEscapes.json b/.trinity/seals/compiler_StringEscapes.json new file mode 100644 index 0000000000..bacc8b7efa --- /dev/null +++ b/.trinity/seals/compiler_StringEscapes.json @@ -0,0 +1,28 @@ +{ + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", + "closure": [], + "config": "gen=c,rust,verilog,zig;tests=zig", + "gen_hash_c": "sha256:a6761d5b86edce8b3a2b29cb7f6b2dacd6a490bddae00d483df8b6606baf1c86", + "gen_hash_rust": "sha256:5c4526057c98c602b778f653977cb9aab418bb17af6cc45b6bff24e2b1294b3d", + "gen_hash_verilog": "sha256:5f343991ee2043ebf23e915595e3107f9680adad3592547e19f8498799e53b70", + "gen_hash_zig": "sha256:643ca64f614f136fbe5ded7ffbc86b03cb0fecb61c9b3d943a83a8794bf0b026", + "module": "StringEscapes", + "ring": 12, + "seal_schema": 2, + "sealed_at": "2026-10-19T03:05:40Z", + "sealed_by": "t27c-bootstrap@0.5.2", + "spec_hash": "sha256:ec4028eef6c55ff6998e9c241842f04ec6d2901a25b352ce92e7798a96741290", + "spec_path": "specs/compiler/string_escapes.t27", + "tests": { + "failed": 0, + "failing": [], + "forced": false, + "passed": 7, + "total": 7, + "vacuous": 0 + }, + "toolchain": { + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", + "zig": "0.16.0" + } +} \ No newline at end of file diff --git a/.trinity/seals/utils_TriLogging.json b/.trinity/seals/utils_TriLogging.json index 7af2399104..5312556cfe 100644 --- a/.trinity/seals/utils_TriLogging.json +++ b/.trinity/seals/utils_TriLogging.json @@ -1,5 +1,5 @@ { - "built_by": "t27c-bootstrap@0.5.2+c55be46c6", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [ { "spec": "specs/base/types.t27", @@ -11,14 +11,14 @@ } ], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:3d4df16f98e5c132da31122529db5748193ff6ae991abd3fbed9241f08c70db5", - "gen_hash_rust": "sha256:f01ef5e088a39be0bb2a82a218f35bdbb74850f979c431af53928af397fa18ec", - "gen_hash_verilog": "sha256:ff4d69c51f98767ed6faa252f7a475825b3081054a054e37219c5fe789638709", - "gen_hash_zig": "sha256:cb57af52ef7a8f9c06298946b2fbc66de5b65b74a35af26a07e41cd47a98b5d7", + "gen_hash_c": "sha256:1fc9cbf8962cea0ccc4e860a8d5eb2a6cbfbefd233af57881d46f37595cc5fcd", + "gen_hash_rust": "sha256:30f7fc6b1a90ba20156a72f379e1214cd0fb5e50b80c8b38f1d6dd1b1427b10e", + "gen_hash_verilog": "sha256:bf79e75aa596f57038bd07a98d90e5f8d7e2224c2b673367073ba50bf4799709", + "gen_hash_zig": "sha256:106bc512c976eb7d5d733db64236ac992246658f565385b2a5199f83267f0857", "module": "TriLogging", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-18T08:31:47Z", + "sealed_at": "2026-10-19T03:05:43Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:392e71d52d9e5c586f8470b1d50f860a2256f732b92e9c77951fb62417b4257f", "spec_path": "specs/tri/utils/logging.t27", @@ -26,7 +26,7 @@ "blocked": "does not compile: spec.zig:77:22: error: use of undeclared identifier 'tag'" }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/utils_TriTerminal.json b/.trinity/seals/utils_TriTerminal.json index 0a19a68992..5fb644fe8f 100644 --- a/.trinity/seals/utils_TriTerminal.json +++ b/.trinity/seals/utils_TriTerminal.json @@ -1,5 +1,5 @@ { - "built_by": "t27c-bootstrap@0.5.2+093bf4713", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [ { "spec": "specs/base/types.t27", @@ -18,9 +18,9 @@ "module": "TriTerminal", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-18T09:33:42Z", + "sealed_at": "2026-10-19T03:05:44Z", "sealed_by": "t27c-bootstrap@0.5.2", - "spec_hash": "sha256:4eabb226c4c859104c2638c2a7b7dde4c619b934bcc3a02ccbb794c3d7b2fbdb", + "spec_hash": "sha256:2d88e2c8a12d29bfbc0817e67da0c200479928250a6020dd925523f8429c936b", "spec_path": "specs/tri/utils/terminal.t27", "tests": { "failed": 0, @@ -31,7 +31,7 @@ "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file From d23a1117be5257fecc4c5db2b0f3733961178477 Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Mon, 19 Oct 2026 10:12:58 +0700 Subject: [PATCH 5/8] seals: reseal 28 specs whose non-ASCII string literals now keep their bytes (refs #10793) The old backends wrote each source byte of a non-ASCII literal as its own UTF-8 char (double encoding: S3 with a superscript became two mojibake chars). Zig and Rust now write the bytes back, so the gen hashes move. Co-Authored-By: Claude Sonnet 5.5 --- .trinity/seals/MAC_Testbench.json | 10 ++--- .trinity/seals/PhiRatio.json | 10 ++--- .trinity/seals/PhiUniversalAttractor.json | 8 ++-- .trinity/seals/SacredVerification.json | 13 +++--- .trinity/seals/TestRunner.json | 10 ++--- .trinity/seals/TriToT27Converter.json | 10 ++--- .trinity/seals/UART_Testbench.json | 12 +++--- .../seals/crons_cron_trinity_brain_ci.json | 17 ++++---- .../seals/github::tests::e2e_full_flow.json | 11 +++-- .../seals/math_PhiUniversalAttractor.json | 28 ++++++++++--- .trinity/seals/numeric_PhiRatio.json | 14 +++---- .../seals/physics_SacredVerification.json | 32 +++++++++++--- .trinity/seals/runner.json | 10 ++--- .trinity/seals/scripts_gen_w328.json | 10 ++--- .../scripts_port::scripts::gen_w718.json | 10 ++--- .../scripts_port::test_agent_bridge.json | 14 +++---- .trinity/seals/skills_skill_t27_phi_loop.json | 17 ++++---- .../seals/skills_skill_t27_wave_audit.json | 17 ++++---- .../skills_skill_trinity_board_sync.json | 17 ++++---- .../seals/skills_skill_trinity_cloud.json | 17 ++++---- .../seals/skills_skill_trinity_doctor.json | 17 ++++---- .../skills_skill_trinity_farm_garden.json | 17 ++++---- .../seals/skills_skill_trinity_god_mode.json | 17 ++++---- .../seals/skills_skill_trinity_scholar.json | 17 ++++---- .../seals/skills_skill_trinity_status.json | 17 ++++---- .../seals/skills_skill_trinity_tech_tree.json | 17 ++++---- .trinity/seals/skills_skill_trinity_tri.json | 17 ++++---- .../seals/skills_skill_trinity_ux_wave.json | 17 ++++---- .trinity/seals/skills_skill_trinity_wave.json | 17 ++++---- ...::trios::crates::trios_cli::src::main.json | 14 +++---- ...ios::doctor::rings::SILVER_RING_DR_00.json | 17 ++++---- .trinity/seals/test_framework_runner.json | 16 +++---- .trinity/seals/testbench_MAC_Testbench.json | 14 +++---- .trinity/seals/testbench_UART_Testbench.json | 31 ++++++++++---- .../tests_github::tests::e2e_full_flow.json | 42 ++++++++++++++++--- .trinity/seals/tools_TriToT27Converter.json | 14 +++---- .trinity/seals/tri_port::farm_telegram.json | 14 +++---- 37 files changed, 354 insertions(+), 248 deletions(-) diff --git a/.trinity/seals/MAC_Testbench.json b/.trinity/seals/MAC_Testbench.json index 8c763d723c..802c10cd2a 100644 --- a/.trinity/seals/MAC_Testbench.json +++ b/.trinity/seals/MAC_Testbench.json @@ -1,11 +1,11 @@ { - "gen_hash_c": "sha256:b76b8de04cd855f1bfaa5d9573d615c152df042a6a52c233c0fa8f83a8ddea42", - "gen_hash_rust": "sha256:7846ed1dce2b508d8677c4e62a0516d240cd88e109e3f6eeee799928b8e55450", - "gen_hash_verilog": "sha256:9cab81dcdc6b62afe3b481d26ee1ea47ab2c776af8358624acdb6a0433f29e09", - "gen_hash_zig": "sha256:3313a2d4b4c2fb91e4bd95501d08d02dfa284d1f4c96996f47fb354ecc264193", + "gen_hash_c": "sha256:7d669dbf7f4bab654f68ebdaa0e7cc83fdec1c770ce2904b1598f2c9a39971ea", + "gen_hash_rust": "sha256:256004d973046f9dd48727a33c9fc440780fe663ee7f0fcbfb8a2f2f72bb046d", + "gen_hash_verilog": "sha256:5efa2b177da89ebb37656627521e1e75bbe49778b8e98bb627dae3439bec0006", + "gen_hash_zig": "sha256:726abffae8d0dd6d4785dea768c6306944df37978396b9fcc7eb67ca4ac46104", "module": "MAC_Testbench", "ring": 12, - "sealed_at": "2026-10-11T10:43:12Z", + "sealed_at": "2026-10-19T03:12:27Z", "spec_hash": "sha256:af060b6e5cdb2ffe1de0a47995b2c621139367174cf85237d8217aa929af10f7", "spec_path": "specs/fpga/testbench/mac_tb.t27", "tests": { diff --git a/.trinity/seals/PhiRatio.json b/.trinity/seals/PhiRatio.json index 727110051e..58cfb77c1c 100644 --- a/.trinity/seals/PhiRatio.json +++ b/.trinity/seals/PhiRatio.json @@ -1,11 +1,11 @@ { - "gen_hash_c": "sha256:6242cb61582d3504bcaad31ad6f0b682da88c2c732f8d38e68b537e848efb655", - "gen_hash_rust": "sha256:ace5d84ffff2231d995373a7d328d3159f24874c6c1a570e7cde1692a7fcbfe3", - "gen_hash_verilog": "sha256:594ea1276e4f400e6ef0837d28734bc86371888a8f671786a6b9f96e4527348b", - "gen_hash_zig": "sha256:155fb000befdc19be1dfd39a27dd015d84dd0bc26217e7c8c8d2aeeb981baf83", + "gen_hash_c": "sha256:9931bf6463196b15f6d4a784cbd9ec7e7f68fa905e9b2c5a33c5e5cfd242cee3", + "gen_hash_rust": "sha256:2f7ca7862432251f78b9d856fc3244641de283b30cb205aa84394d0e7713168c", + "gen_hash_verilog": "sha256:6cd8098e6e47bf662b0a504059bfa848cb634d3910ae68c0d1c3ead541e319de", + "gen_hash_zig": "sha256:5e9ae13bf2a970b6c7fcdef312d9fdf09a70ff7b3b8c82806cbd468a6e8b3b55", "module": "PhiRatio", "ring": 12, - "sealed_at": "2026-10-11T09:24:24Z", + "sealed_at": "2026-10-19T03:12:30Z", "spec_hash": "sha256:33e64567c76e19612918723667d2aaa3440f605197977d099a00495d532805e8", "spec_path": "specs/numeric/phi_ratio.t27", "tests": { diff --git a/.trinity/seals/PhiUniversalAttractor.json b/.trinity/seals/PhiUniversalAttractor.json index 6006f94e02..cd5d4f683e 100644 --- a/.trinity/seals/PhiUniversalAttractor.json +++ b/.trinity/seals/PhiUniversalAttractor.json @@ -1,11 +1,11 @@ { - "gen_hash_c": "sha256:8472d36edf5dec4584f5ef046f67c4263d7a626fea0c3805d348d5118c6b13f7", - "gen_hash_rust": "sha256:174f5703e84d6a5f8a075af931590aa5e96db47e04aedec5208ca36cd240c4ee", + "gen_hash_c": "sha256:5148e760b9f7cfbfde4ac4c5c40a0aca711fd8c4df7a87753cf4aced4544983b", + "gen_hash_rust": "sha256:c50838763d82a1a416341b853e2845272281a3dbd9863af35b28067a460f9a8d", "gen_hash_verilog": "sha256:57cc672e29d6b8b23a4b66343155520fe6d890ffb46c38ec621e66ca6d857a5b", - "gen_hash_zig": "sha256:573639ed208d12a0a435d01243fc294812f1b8550b9b4db1e3abc32ad72be783", + "gen_hash_zig": "sha256:eeef6b5886383e5f6fdc201b7aa16eec9ba2fbb0591972380db068130c13cc61", "module": "PhiUniversalAttractor", "ring": 12, - "sealed_at": "2026-10-07T16:18:27Z", + "sealed_at": "2026-10-19T03:12:29Z", "spec_hash": "sha256:0ebe9c61b2849ccae8ef607e8a3773b316cc43e2441a5d01c4a5aec6d4d162d9", "spec_path": "specs/math/phi_universal_attractor.t27", "tests": { diff --git a/.trinity/seals/SacredVerification.json b/.trinity/seals/SacredVerification.json index da68666b68..1a979eec4c 100644 --- a/.trinity/seals/SacredVerification.json +++ b/.trinity/seals/SacredVerification.json @@ -1,11 +1,14 @@ { - "gen_hash_c": "sha256:c29f119a480a8665b9295cb240578a8fd16d40c5f3f0c09e7c04191db4fa76c3", - "gen_hash_rust": "sha256:cd01259b3081abf9024cf3f53b4690090c96446db7f3108c95026daf0a7424d8", + "gen_hash_c": "sha256:3ba9b0ce939b5e90a87a0fe5448e7cd1e40e47fce3b380737048ebfd00ecc4df", + "gen_hash_rust": "sha256:cb3e0776b6db4f0d2ec4a49f4c0b0db0f565ff2d6c9630316356c55784ce17ec", "gen_hash_verilog": "sha256:1817097113f09289d7a347bb8b743faa39a9c6b82ab0c158a2058b0ac03e82ec", - "gen_hash_zig": "sha256:e366439ab8d4fe966acf421937ab0091f28785ea3406b523dc3a56976e54c79c", + "gen_hash_zig": "sha256:e475e54ce82077c445f43cd062754ef3e0e158087b64da1441c48f4fa9fa4f7c", "module": "SacredVerification", "ring": 12, - "sealed_at": "2026-09-08T14:07:51Z", + "sealed_at": "2026-10-19T03:12:31Z", "spec_hash": "sha256:fe6ff2cc8fb17534f6cbd181a4af31750729533339cbf99889aff1a06bd09151", - "spec_path": "specs/physics/sacred_verification.t27" + "spec_path": "specs/physics/sacred_verification.t27", + "tests": { + "blocked": "does not compile: spec.zig:53:145: error: use of undeclared identifier 'EXACT'" + } } \ No newline at end of file diff --git a/.trinity/seals/TestRunner.json b/.trinity/seals/TestRunner.json index a137364357..4f820465b9 100644 --- a/.trinity/seals/TestRunner.json +++ b/.trinity/seals/TestRunner.json @@ -1,11 +1,11 @@ { - "gen_hash_c": "sha256:6e77244454b333ba5227bb833a8c17dbd9d32f95d90a1132c6e39eabd0e383ec", - "gen_hash_rust": "sha256:08e01ce910eca40aabc8793bd6bf405e96e5ea12aa6e59b23d8ddf3785607a3d", - "gen_hash_verilog": "sha256:bc31fb46be22b95d35b765f9e6cb02a17e045ebc2ddd68abfd1118bfaf7a728d", - "gen_hash_zig": "sha256:85e6b94ee909b29fe54ddb1e397c2840bd7e2b38f684b490c1cdd864e056579b", + "gen_hash_c": "sha256:957df15f6610d63da85f5af04cc33cd3d57d2b63ab099ad86f55414c99f9af6d", + "gen_hash_rust": "sha256:98ec7afd32aeb4905f127e32658e6b6d97feac5ce61f8e72e58e3bce01173a80", + "gen_hash_verilog": "sha256:c0899238774459434ca98a79642a9da130ba318e9d0c1c2056069fb170381e09", + "gen_hash_zig": "sha256:a699c3841e03df32cd6cd107fd25b224572e0c21d32a91a0fae4a5fb456769e6", "module": "TestRunner", "ring": 12, - "sealed_at": "2026-10-10T15:02:09Z", + "sealed_at": "2026-10-19T03:12:40Z", "spec_hash": "sha256:430bfca8d5891151528caf595b22e48b2a3a3db77bfd14eb48056cff2fe150b2", "spec_path": "specs/test_framework/runner.t27", "tests": { diff --git a/.trinity/seals/TriToT27Converter.json b/.trinity/seals/TriToT27Converter.json index 953ebe02a2..36a57a7c17 100644 --- a/.trinity/seals/TriToT27Converter.json +++ b/.trinity/seals/TriToT27Converter.json @@ -1,11 +1,11 @@ { - "gen_hash_c": "sha256:fae12bbd66f8cc967138d84f3345613e9d320c20310673c6eec499d1da7984d6", - "gen_hash_rust": "sha256:9a8a91a551c9e1f871e3ff88934e7f7a6fa11933f103394a5051243efe8f7a44", - "gen_hash_verilog": "sha256:468652e9eb6dfb81d5f458a167088ef4e71375b2f9f39a283231b9b7fb909ab1", - "gen_hash_zig": "sha256:55e31d983e2b680a954fc50a9be20e8aaf7756df0a0bc1ccd4d0fca6f5036d2f", + "gen_hash_c": "sha256:49d20b2af332f64d6ad68770b9574a61f141d469a3ab5afe2838e2dd394d53f6", + "gen_hash_rust": "sha256:8a13269b17b62698c3858f317125e533fce51c123cb8f2ef2bba633d9e6aedba", + "gen_hash_verilog": "sha256:fa33c657e278aa9acd489c7774d2a88537229c1bbdf2947750d9fe72db038343", + "gen_hash_zig": "sha256:6db73673df0a9c6d6eabf5f2b5265225f285e984a0666a81d1e306b76d2535f4", "module": "TriToT27Converter", "ring": 12, - "sealed_at": "2026-10-11T10:29:38Z", + "sealed_at": "2026-10-19T03:12:41Z", "spec_hash": "sha256:15c930478ba3ea3f04a2793269bf874a32ae1842038905082a04eb9e41af0978", "spec_path": "specs/tools/tri_to_t27_converter.t27", "tests": { diff --git a/.trinity/seals/UART_Testbench.json b/.trinity/seals/UART_Testbench.json index 0921d175fd..0dffd592af 100644 --- a/.trinity/seals/UART_Testbench.json +++ b/.trinity/seals/UART_Testbench.json @@ -1,14 +1,14 @@ { - "gen_hash_c": "sha256:ecb4180353077decf9d986bbd04aa5ba1d7fdd2297cde21ee5151b48abf4d3b0", - "gen_hash_rust": "sha256:8e1dfd09aa471b2fb6e954146424512324a4187d2f993937f77b395b08bc7b6e", - "gen_hash_verilog": "sha256:d78a8cf66594934278057aa96d438c038d93cce08a39c7c0ff73af15e3c09430", - "gen_hash_zig": "sha256:22b1efae2e15c2c8d41541d938aa23a62513e317f7e7e54335de5baa6cfadeb1", + "gen_hash_c": "sha256:f23a99597da8bce4d54278b469237bdc69e31b538b12e278e6f196743802593b", + "gen_hash_rust": "sha256:da8ce156e6f4c1f8175464c125ac87c8302152f25153e0bee58a09c91e4caefb", + "gen_hash_verilog": "sha256:78522a7c7f317c14d01b6a06e09208f3818837112d64dd249242da9d7d250bfc", + "gen_hash_zig": "sha256:b1f0afca5981b56ed0f59e474783fc9a90e2329ae23f969c59972bb73e0eb646", "module": "UART_Testbench", "ring": 12, - "sealed_at": "2026-10-05T18:40:23Z", + "sealed_at": "2026-10-19T03:12:28Z", "spec_hash": "sha256:bcdf9d0b6752e6bf13d1bbd5114f9531f8f31b06ec9bb817aa192f8d918010ad", "spec_path": "specs/fpga/testbench/uart_tb.t27", "tests": { - "blocked": "does not compile: /tmp/t27c-test-report-uart_tb-754468/spec.zig:60:13: error: use of undeclared identifier 'uart_tx_ready'" + "blocked": "does not compile: spec.zig:60:13: error: use of undeclared identifier 'uart_tx_ready'" } } \ No newline at end of file diff --git a/.trinity/seals/crons_cron_trinity_brain_ci.json b/.trinity/seals/crons_cron_trinity_brain_ci.json index b684e0c677..d821ffc47d 100644 --- a/.trinity/seals/crons_cron_trinity_brain_ci.json +++ b/.trinity/seals/crons_cron_trinity_brain_ci.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:13b97f2deb19e59a41304e0dd98ae1847ee36d1913b77a196e68df4b379a779c", - "gen_hash_rust": "sha256:1571591e565c8543fc782dc4e239e3a7907fe9fb9cbdb25d4cad222cb2568ee1", - "gen_hash_verilog": "sha256:f8ff13224044430c578120cfdcc4d74ca781d6862743f46ba06cfc3c631d8745", - "gen_hash_zig": "sha256:6b51a6a392b94b33f4d0f73f82940c513c15eccefa8ba3f718a1c46b45eef2dd", + "gen_hash_c": "sha256:34b9b5cde6bf35e25d66c2a4679eb951c9d9225ce9ad410d04396c01f7cff9b7", + "gen_hash_rust": "sha256:2e77c84c45d628a4e86b15ff40a202d9f1683377abcca37aba2ef77544c5d857", + "gen_hash_verilog": "sha256:fd829f0c715d500f838be12270e0b28de610263dace2ba417b2e9225ae188211", + "gen_hash_zig": "sha256:c996b2c758c24d99aa3a7f8c1d76a30172115f846604c63a33d83826a552df76", "module": "cron_trinity_brain_ci", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T20:37:58Z", + "sealed_at": "2026-10-19T03:12:26Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:c53e1e54fff6eb62f70f89db9b903544127f0246f19a33d3e367d310e1ce1fb5", "spec_path": "specs/crons/trinity-brain-ci.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 4, - "total": 4 + "total": 4, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/github::tests::e2e_full_flow.json b/.trinity/seals/github::tests::e2e_full_flow.json index c405fe100c..630283bab0 100644 --- a/.trinity/seals/github::tests::e2e_full_flow.json +++ b/.trinity/seals/github::tests::e2e_full_flow.json @@ -1,11 +1,14 @@ { - "gen_hash_c": "sha256:d0d0b356c3eda251411c4532840135d077f8d51a0756c02cfdb0270ad31d85e4", + "gen_hash_c": "sha256:8ff5da1678c6ac5d7e5f74e4a37d158ce8e166a9d4d9170fea7ae4a7b7861278", "gen_hash_rust": "sha256:0a3efa9f6b1b98d56f8b026a17df711b7ebad4d177bb1ae3cfa5a7aed1791661", "gen_hash_verilog": "sha256:a5f40a1ce38a519d6f0b1be4bde6301b5943a15721445f4ad0b015fa8e298613", - "gen_hash_zig": "sha256:fe53b4ead4715211561143d48d4e603fa0258c142fdfd4a05710020af918dfba", + "gen_hash_zig": "sha256:29666db8889f711d7eabb6c7fdb4a85323e1033aee22ed03004c839fb0f717ba", "module": "github::tests::e2e_full_flow", "ring": 12, - "sealed_at": "2026-10-01T14:58:35Z", + "sealed_at": "2026-10-19T03:12:29Z", "spec_hash": "sha256:a6c009df1628597d6c964167b392aaaf2fab8c5360b421c54f31b3f9111899b4", - "spec_path": "specs/github/tests/e2e_full_flow.t27" + "spec_path": "specs/github/tests/e2e_full_flow.t27", + "tests": { + "blocked": "does not compile: spec.zig:27:19: error: use of undeclared identifier 'issues'" + } } \ No newline at end of file diff --git a/.trinity/seals/math_PhiUniversalAttractor.json b/.trinity/seals/math_PhiUniversalAttractor.json index 7373b573b1..acd7b437c5 100644 --- a/.trinity/seals/math_PhiUniversalAttractor.json +++ b/.trinity/seals/math_PhiUniversalAttractor.json @@ -1,16 +1,32 @@ { - "built_by": "t27c-bootstrap@0.4.0+3d289e0f6", - "gen_hash_c": "sha256:8472d36edf5dec4584f5ef046f67c4263d7a626fea0c3805d348d5118c6b13f7", - "gen_hash_rust": "sha256:174f5703e84d6a5f8a075af931590aa5e96db47e04aedec5208ca36cd240c4ee", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", + "closure": [ + { + "spec": "specs/math/constants.t27", + "spec_hash": "sha256:57187e7afda1d88167b2af0382ad7f0623aa6b269ba020a78e3ffeebba1161bb" + }, + { + "spec": "specs/math/sacred_physics.t27", + "spec_hash": "sha256:6f0c02de93fc908bcae88bd48037b8b06c54efe3fc0105ab09288fb2102e74d9" + } + ], + "config": "gen=c,rust,verilog,zig;tests=zig", + "gen_hash_c": "sha256:5148e760b9f7cfbfde4ac4c5c40a0aca711fd8c4df7a87753cf4aced4544983b", + "gen_hash_rust": "sha256:c50838763d82a1a416341b853e2845272281a3dbd9863af35b28067a460f9a8d", "gen_hash_verilog": "sha256:57cc672e29d6b8b23a4b66343155520fe6d890ffb46c38ec621e66ca6d857a5b", - "gen_hash_zig": "sha256:573639ed208d12a0a435d01243fc294812f1b8550b9b4db1e3abc32ad72be783", + "gen_hash_zig": "sha256:eeef6b5886383e5f6fdc201b7aa16eec9ba2fbb0591972380db068130c13cc61", "module": "PhiUniversalAttractor", "ring": 12, - "sealed_at": "2026-10-07T16:18:27Z", - "sealed_by": "t27c-bootstrap@0.4.0", + "seal_schema": 2, + "sealed_at": "2026-10-19T03:12:29Z", + "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:0ebe9c61b2849ccae8ef607e8a3773b316cc43e2441a5d01c4a5aec6d4d162d9", "spec_path": "specs/math/phi_universal_attractor.t27", "tests": { "blocked": "does not compile: spec.zig:76:18: error: unused capture" + }, + "toolchain": { + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", + "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/numeric_PhiRatio.json b/.trinity/seals/numeric_PhiRatio.json index 86b21c95f7..d920c0606d 100644 --- a/.trinity/seals/numeric_PhiRatio.json +++ b/.trinity/seals/numeric_PhiRatio.json @@ -1,5 +1,5 @@ { - "built_by": "t27c-bootstrap@0.5.2+99236578d", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [ { "spec": "specs/math/constants.t27", @@ -11,14 +11,14 @@ } ], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:6242cb61582d3504bcaad31ad6f0b682da88c2c732f8d38e68b537e848efb655", - "gen_hash_rust": "sha256:ace5d84ffff2231d995373a7d328d3159f24874c6c1a570e7cde1692a7fcbfe3", - "gen_hash_verilog": "sha256:594ea1276e4f400e6ef0837d28734bc86371888a8f671786a6b9f96e4527348b", - "gen_hash_zig": "sha256:155fb000befdc19be1dfd39a27dd015d84dd0bc26217e7c8c8d2aeeb981baf83", + "gen_hash_c": "sha256:9931bf6463196b15f6d4a784cbd9ec7e7f68fa905e9b2c5a33c5e5cfd242cee3", + "gen_hash_rust": "sha256:2f7ca7862432251f78b9d856fc3244641de283b30cb205aa84394d0e7713168c", + "gen_hash_verilog": "sha256:6cd8098e6e47bf662b0a504059bfa848cb634d3910ae68c0d1c3ead541e319de", + "gen_hash_zig": "sha256:5e9ae13bf2a970b6c7fcdef312d9fdf09a70ff7b3b8c82806cbd468a6e8b3b55", "module": "PhiRatio", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-11T09:24:24Z", + "sealed_at": "2026-10-19T03:12:30Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:33e64567c76e19612918723667d2aaa3440f605197977d099a00495d532805e8", "spec_path": "specs/numeric/phi_ratio.t27", @@ -26,7 +26,7 @@ "blocked": "does not compile: spec.zig:104:18: error: remainder division with 'i64' and 'comptime_int': signed integers and floats must use @rem or @mod" }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/physics_SacredVerification.json b/.trinity/seals/physics_SacredVerification.json index b22071c628..ea4b825ff8 100644 --- a/.trinity/seals/physics_SacredVerification.json +++ b/.trinity/seals/physics_SacredVerification.json @@ -1,12 +1,32 @@ { - "gen_hash_c": "sha256:c29f119a480a8665b9295cb240578a8fd16d40c5f3f0c09e7c04191db4fa76c3", - "gen_hash_rust": "sha256:cd01259b3081abf9024cf3f53b4690090c96446db7f3108c95026daf0a7424d8", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", + "closure": [ + { + "spec": "specs/math/constants.t27", + "spec_hash": "sha256:57187e7afda1d88167b2af0382ad7f0623aa6b269ba020a78e3ffeebba1161bb" + }, + { + "spec": "specs/math/sacred_physics.t27", + "spec_hash": "sha256:6f0c02de93fc908bcae88bd48037b8b06c54efe3fc0105ab09288fb2102e74d9" + } + ], + "config": "gen=c,rust,verilog,zig;tests=zig", + "gen_hash_c": "sha256:3ba9b0ce939b5e90a87a0fe5448e7cd1e40e47fce3b380737048ebfd00ecc4df", + "gen_hash_rust": "sha256:cb3e0776b6db4f0d2ec4a49f4c0b0db0f565ff2d6c9630316356c55784ce17ec", "gen_hash_verilog": "sha256:1817097113f09289d7a347bb8b743faa39a9c6b82ab0c158a2058b0ac03e82ec", - "gen_hash_zig": "sha256:e366439ab8d4fe966acf421937ab0091f28785ea3406b523dc3a56976e54c79c", + "gen_hash_zig": "sha256:e475e54ce82077c445f43cd062754ef3e0e158087b64da1441c48f4fa9fa4f7c", "module": "SacredVerification", "ring": 12, - "sealed_at": "2026-09-08T14:07:51Z", - "sealed_by": "t27c-bootstrap@0.2.0", + "seal_schema": 2, + "sealed_at": "2026-10-19T03:12:31Z", + "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:fe6ff2cc8fb17534f6cbd181a4af31750729533339cbf99889aff1a06bd09151", - "spec_path": "specs/physics/sacred_verification.t27" + "spec_path": "specs/physics/sacred_verification.t27", + "tests": { + "blocked": "does not compile: spec.zig:53:145: error: use of undeclared identifier 'EXACT'" + }, + "toolchain": { + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", + "zig": "0.16.0" + } } \ No newline at end of file diff --git a/.trinity/seals/runner.json b/.trinity/seals/runner.json index 451b97640e..58a7dd3d0e 100644 --- a/.trinity/seals/runner.json +++ b/.trinity/seals/runner.json @@ -1,11 +1,11 @@ { - "gen_hash_c": "sha256:6e77244454b333ba5227bb833a8c17dbd9d32f95d90a1132c6e39eabd0e383ec", - "gen_hash_rust": "sha256:08e01ce910eca40aabc8793bd6bf405e96e5ea12aa6e59b23d8ddf3785607a3d", - "gen_hash_verilog": "sha256:bc31fb46be22b95d35b765f9e6cb02a17e045ebc2ddd68abfd1118bfaf7a728d", - "gen_hash_zig": "sha256:85e6b94ee909b29fe54ddb1e397c2840bd7e2b38f684b490c1cdd864e056579b", + "gen_hash_c": "sha256:957df15f6610d63da85f5af04cc33cd3d57d2b63ab099ad86f55414c99f9af6d", + "gen_hash_rust": "sha256:98ec7afd32aeb4905f127e32658e6b6d97feac5ce61f8e72e58e3bce01173a80", + "gen_hash_verilog": "sha256:c0899238774459434ca98a79642a9da130ba318e9d0c1c2056069fb170381e09", + "gen_hash_zig": "sha256:a699c3841e03df32cd6cd107fd25b224572e0c21d32a91a0fae4a5fb456769e6", "module": "runner", "ring": 12, - "sealed_at": "2026-10-10T15:02:09Z", + "sealed_at": "2026-10-19T03:12:40Z", "spec_hash": "sha256:430bfca8d5891151528caf595b22e48b2a3a3db77bfd14eb48056cff2fe150b2", "spec_path": "specs/test_framework/runner.t27", "tests": { diff --git a/.trinity/seals/scripts_gen_w328.json b/.trinity/seals/scripts_gen_w328.json index d2f7e3ca30..affea6e88f 100644 --- a/.trinity/seals/scripts_gen_w328.json +++ b/.trinity/seals/scripts_gen_w328.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+d2c8e7d41", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:2128b1d00b8f4639f51a205539a6bfa4ab06659438f44d8baaf47d197fd13252", + "gen_hash_c": "sha256:e110cfc6b6cbafbe2984e9a2307d303890bb3b649b1d4ec239ce0073d7160c2e", "gen_hash_rust": "sha256:a95ffed31fe2314d029157d8227613437a38a0cb92406899f495a41e2407d433", "gen_hash_verilog": "sha256:566d4f3581079707eaa7c40623cb8419a49203ffc3ec383ac649fc010ebd2942", - "gen_hash_zig": "sha256:a85d0435b260a3fb941335e92589118cf81167ffe23cd4ead514959871825df7", + "gen_hash_zig": "sha256:eb16ffea71bdd12e9fce2e8e5754f5f88f0e13b44f07a8c3f9d16fc00c4e561b", "module": "gen_w328", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-18T05:42:25Z", + "sealed_at": "2026-10-19T03:12:32Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:be96ad16fb996b0c248a4f85308f82b6eab33f11187cc66d8996634e90354267", "spec_path": "specs/port/scripts/gen_w328.t27", @@ -22,7 +22,7 @@ "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/scripts_port::scripts::gen_w718.json b/.trinity/seals/scripts_port::scripts::gen_w718.json index 0af3c6c309..e165330af9 100644 --- a/.trinity/seals/scripts_port::scripts::gen_w718.json +++ b/.trinity/seals/scripts_port::scripts::gen_w718.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+d2c8e7d41", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:857e931dc6d37e2dbf5690371d18d786c767413d70dbd077ed46c59b5b4e0af4", + "gen_hash_c": "sha256:c8afa16c888f42bc0622d86e08f1e620de1fd1a0cf3eeae7ae5fca448db75677", "gen_hash_rust": "sha256:a2112eae9e7e93b7c3d4b369883e5e553dedac2d76656a0e713ef494c005738f", "gen_hash_verilog": "sha256:4a63ba26bc18f65ec3496d2e87c8ffd44f40d081677c1ec31e6d1f00f35938e3", - "gen_hash_zig": "sha256:6fb1375e12ae52179885afc98553a132e72d1997173231b7f3e8af0cf180a05b", + "gen_hash_zig": "sha256:ece065cebc10c27e63562e9f7b527300f6b7462cfa6982bab0cd5ed9614ea725", "module": "port::scripts::gen_w718", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-18T05:42:33Z", + "sealed_at": "2026-10-19T03:12:32Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:0cd51c7a7be3e9ff21cae26d455f0acd67bae8e677b9359ca95fbb12c0f4f530", "spec_path": "specs/port/scripts/gen_w718.t27", @@ -22,7 +22,7 @@ "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/scripts_port::test_agent_bridge.json b/.trinity/seals/scripts_port::test_agent_bridge.json index 367bcee234..2ceff4b8c2 100644 --- a/.trinity/seals/scripts_port::test_agent_bridge.json +++ b/.trinity/seals/scripts_port::test_agent_bridge.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+cc19d1fcd", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:481ef0d35b869a038ae2f57755a1e11d4ad58212bbe5182b1e998979b0406eeb", - "gen_hash_rust": "sha256:4c14013c87601e27b034d934142065aeabb9e63ce2e7e2ec8dfebf9dd9bdc3ed", - "gen_hash_verilog": "sha256:3074de3467ceca4dffca1e8c43253337a14edc511a4720ef3d11d71fe608ca19", - "gen_hash_zig": "sha256:9670d385f48abd115d2289a33e98e7f0b7f8bdf15ccabc846a518ceebf82a651", + "gen_hash_c": "sha256:a7d470267565ed34be25b4689c1ebd87c98def47ef59ed3dcc0598f2c1e19364", + "gen_hash_rust": "sha256:695b0050acfe587116661038b14e2456bd6972c4cf913e552bf40baf676abbdd", + "gen_hash_verilog": "sha256:834e140e0c1637bf38654b1e277bb44849e4250a4d482b4771a9b0142f2d5bba", + "gen_hash_zig": "sha256:bae56473d417fe5a29bb96da24f0e4fb35fac20fb271364049f5bae8a2f66d3c", "module": "port::test_agent_bridge", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-11T10:29:27Z", + "sealed_at": "2026-10-19T03:12:32Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:d9c508a2c55864b9922d04777ea5ae419ef741ae598e6a6d1025793e86d12826", "spec_path": "specs/port/scripts/test-agent-bridge.t27", @@ -22,7 +22,7 @@ "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_t27_phi_loop.json b/.trinity/seals/skills_skill_t27_phi_loop.json index 0a78d37475..a4d7871383 100644 --- a/.trinity/seals/skills_skill_t27_phi_loop.json +++ b/.trinity/seals/skills_skill_t27_phi_loop.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:5eeb6fa88cd17c56cc0ad838b097b6836ce48ad0f1b3175d6eeb519115831bb5", - "gen_hash_rust": "sha256:efd5e3eeda48a6d2e37fe7c1b203f617c6b9d7afef2ea1ccf7876e98d2f4d52e", - "gen_hash_verilog": "sha256:c86c0f9c27fd82f445fbf8024fc13be4a297d9e5ea89f0f1cd44de1248a5c09a", - "gen_hash_zig": "sha256:d266a3f877fe2f9b5432291bea28325ca5e0caff7c75df9c4406642e7f9b0d2e", + "gen_hash_c": "sha256:0b5153001425317461d4fb754aeb12397414d562a495cb7dffb1d05dd5be3e7e", + "gen_hash_rust": "sha256:22b6334ee94051cf85235dc27aa955918ad45edf75d64192286901d2fd1263fe", + "gen_hash_verilog": "sha256:ebc19be50bd91e2876c1ccda6c2a56fcf13b4d9e913ac4385e4e02edf0a90d15", + "gen_hash_zig": "sha256:949d72136978cb857c9cafd7d12ef511a94c470f12f1f17051da4562f88f2444", "module": "skill_t27_phi_loop", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:27:34Z", + "sealed_at": "2026-10-19T03:12:34Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:2947c8377fc3fc1beab6d1feffd31c8fd3457127fe9ec0986a07337611c52eb9", "spec_path": "specs/skills/t27-phi-loop.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_t27_wave_audit.json b/.trinity/seals/skills_skill_t27_wave_audit.json index a25b56feba..4c4256123f 100644 --- a/.trinity/seals/skills_skill_t27_wave_audit.json +++ b/.trinity/seals/skills_skill_t27_wave_audit.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+270f47dfb", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:45f180a58f1cbaac48329312b6c14ac15158085e199b9590691957f97724117b", - "gen_hash_rust": "sha256:e610d3b4872d944a41c5cad8f18bc484866e6fe640aca2cfbf01c011d385551e", - "gen_hash_verilog": "sha256:3c4e2ef42617fd4d9681313fd70fb59f90c140a2c481411df3dec8b2f41e8e25", - "gen_hash_zig": "sha256:ce80de8fda90526702521ed9301ccac56a58d78f3ae0f53ca7306d013f0ee0ef", + "gen_hash_c": "sha256:030adb4e7aa26cb7de86376efe788fa19e679a6b8a0f7c39aee40f32d3a47d3d", + "gen_hash_rust": "sha256:fe0084fe4aefae2b63915b659c1f4e6ea70c77c5491c41c0f103d378d02a9083", + "gen_hash_verilog": "sha256:3c8fec0150d4316b31299850255d278c9bd531eefa2df8f59af093f5f0f0bd3e", + "gen_hash_zig": "sha256:a5cf8d6f77c12c409d78503dfcc2d11b14a705b1b9a433a4cb1d42edb83c1675", "module": "skill_t27_wave_audit", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-10T16:38:21Z", + "sealed_at": "2026-10-19T03:12:35Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:245d1f7183deb5e7a5b4c6eff37439a168e3473ad53487ec208e7a2bd5944ef4", "spec_path": "specs/skills/t27-wave-audit.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_board_sync.json b/.trinity/seals/skills_skill_trinity_board_sync.json index 07f8092e13..2edf238858 100644 --- a/.trinity/seals/skills_skill_trinity_board_sync.json +++ b/.trinity/seals/skills_skill_trinity_board_sync.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:ef4acb619369c786c3c52a9f6982d66be2f96bbfee88aca94ecc8da3c0f79499", - "gen_hash_rust": "sha256:629130cf44a411170c381a07585801f985510ddc883fb1aefae0ec2dd306a3a0", - "gen_hash_verilog": "sha256:9c81eb984361e704a7620de548ea638a0c7222a7683eb4394f7d1b790e6544c4", - "gen_hash_zig": "sha256:5dcd8b9f78e1323a5862a68d925ddf723d7ed2635eb12b9c6affd491e7562a64", + "gen_hash_c": "sha256:f85df37664572b849bee17005a066eef9aefa908cd203a0c5db173dfa2f39b9c", + "gen_hash_rust": "sha256:f4b52dff7e1b76aec82d858ffefed89f7c5e666134dadb896b22864960ae26bf", + "gen_hash_verilog": "sha256:d0b9eece20bf66ca2384823e7840d9831445dd25024d9106e63c510e4d663b46", + "gen_hash_zig": "sha256:309ed6801ea3451509358f4a85a25ae5273e62aa116387d4e3198b0b375f8288", "module": "skill_trinity_board_sync", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:27:51Z", + "sealed_at": "2026-10-19T03:12:35Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:8f3b9c62587fe6736e6ed98253670ec84b25a4a36a3a0f3490fee75ec4c8ed0d", "spec_path": "specs/skills/trinity-board-sync.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_cloud.json b/.trinity/seals/skills_skill_trinity_cloud.json index fef6fee004..3169c2899b 100644 --- a/.trinity/seals/skills_skill_trinity_cloud.json +++ b/.trinity/seals/skills_skill_trinity_cloud.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:106780bf68bf423d4edfd6dffc8e0ae4a96e89c58ae78af7fa121cd401846022", - "gen_hash_rust": "sha256:607b0cd30f427ed9d0ee979f345fdd6432e227da8a9789ed656f6d272afdaebd", - "gen_hash_verilog": "sha256:be4eeb251ce0221ea69f585b2c2091ef63007baf45d2163b892c4e2beef54a6c", - "gen_hash_zig": "sha256:7b31ddb60423353f796689ab84f9f90af0c9711db7f4450c130601fc7af4b40f", + "gen_hash_c": "sha256:cce690af1642698a62f4e1d685f111423e80422c1eb60940a20ce86ab6056822", + "gen_hash_rust": "sha256:67bd7417d08f8936ffe6788d824ee45e97537bebf70af01bee75c1b7890c488b", + "gen_hash_verilog": "sha256:ee4621fb7d97c4f38582bc66fb82ef17e73a20d74ccae2d89f6c9d0291f84759", + "gen_hash_zig": "sha256:91132bb12c5e6bb37a05fb45becbb7a113efa94e45b417e517a68504f0b8f8ba", "module": "skill_trinity_cloud", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:27:53Z", + "sealed_at": "2026-10-19T03:12:35Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:2f2964de58b997ab7e87d403de0ea8a45035aa6910e20f1077e4f6833a633800", "spec_path": "specs/skills/trinity-cloud.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_doctor.json b/.trinity/seals/skills_skill_trinity_doctor.json index b884f0497a..3dc2fbfd6d 100644 --- a/.trinity/seals/skills_skill_trinity_doctor.json +++ b/.trinity/seals/skills_skill_trinity_doctor.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:4fe4cd6922b5f6a57cb5216f471392cbd17ea5045b2d3497b857d70dfd751c03", - "gen_hash_rust": "sha256:20f9e1a4c74f4a75aee6769b369763dba9dafebec7843ea96195601df4bd1edd", - "gen_hash_verilog": "sha256:92d61167966a17ceed4e9186103dc1bb9eacb2238bd71879ecc62ad3e1df121e", - "gen_hash_zig": "sha256:aa627612dde5332ef78fba51dc33e5bba67ad1acb6383362b89aa342de5eca6b", + "gen_hash_c": "sha256:e43455340fc717811b24d4d184ac19235fc5e45119a8224aaee3fca0ac51174a", + "gen_hash_rust": "sha256:b827fa37ce9707fd61c4ad8a34a279fd33cad3fc36a3716e0d55cea5367d1076", + "gen_hash_verilog": "sha256:b13224e34f202b4806e53ab69b3d033e23b55f5505cc6dd10098f0652390bd7c", + "gen_hash_zig": "sha256:9070c2a06848b0cf9f36f611eb3275a2851d58c30229e230637de67a9fe62e8e", "module": "skill_trinity_doctor", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:27:57Z", + "sealed_at": "2026-10-19T03:12:36Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:4bd2aa04a629fdbcd6b8a52120767934fbf64bcbb93bf873107d1633b11d52eb", "spec_path": "specs/skills/trinity-doctor.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_farm_garden.json b/.trinity/seals/skills_skill_trinity_farm_garden.json index a9d906791f..f696727ebb 100644 --- a/.trinity/seals/skills_skill_trinity_farm_garden.json +++ b/.trinity/seals/skills_skill_trinity_farm_garden.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:3d00a1b4d146bc53b0b22ade379569cd183018553279af555586dbd425dea416", - "gen_hash_rust": "sha256:4417b6887cc2b9b2f8fbd37a6dc5f08338cfaa99950dc109b67c5821fe42dd71", - "gen_hash_verilog": "sha256:83ef0a1acb3fed9806d027c6bd751d86807c57d45af81f1255353d33a2728324", - "gen_hash_zig": "sha256:2e481929976f01d611646137453e74499394376db72ba88a37646ab9e5155a26", + "gen_hash_c": "sha256:d9cd8d304c8d2b5ebe577b8db4179ff5e02dd732821f60c537d3e591897f0a61", + "gen_hash_rust": "sha256:b1e411ea317848dfd760a2c382c78920dac3beb56a16a80252ae830b367036f3", + "gen_hash_verilog": "sha256:410a0305170d9db4cfca236a0b4e6ac8ef5e6ec98c10a871b0f661e65b1dc75e", + "gen_hash_zig": "sha256:ecff4b055dc1ddeff32f7af85cc65ed0bdf33e84e6b86b174afd50b3e8bef9ce", "module": "skill_trinity_farm_garden", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:27:59Z", + "sealed_at": "2026-10-19T03:12:36Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:13e02e452a46857eea28405fe6edcdf0c66f8f6fcea4dd4b53185088e0e2cdad", "spec_path": "specs/skills/trinity-farm-garden.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_god_mode.json b/.trinity/seals/skills_skill_trinity_god_mode.json index d6be2b0914..0277c95c7f 100644 --- a/.trinity/seals/skills_skill_trinity_god_mode.json +++ b/.trinity/seals/skills_skill_trinity_god_mode.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:48dfd7c41f80196e38dc9a1cc7c87189550fa733cab110fade0efe4561aba916", - "gen_hash_rust": "sha256:5e80023c67b3bd04ace5a78ca6e9e81871cb5b462f59522899b11700c108af82", - "gen_hash_verilog": "sha256:a1dda69738f453fe9f8576d36e7756aab9ccad108d06c943e54a5340b6791834", - "gen_hash_zig": "sha256:fef5261e163594ea37b806035ab4c9759f123a20e2a8f591f40c3505fa7c02ce", + "gen_hash_c": "sha256:929e5738707b9ff546734db4131da178427b24ecd931989e48e67b644beea5b5", + "gen_hash_rust": "sha256:6e0a966e083d7ce53b21ffaf00c7d59b79f0ec6a1f4f8e1d119455795ee3a051", + "gen_hash_verilog": "sha256:cd145c872f2723e3687dd0668b6dcb8cabcfb29ba3107344ea004fe6cb050ade", + "gen_hash_zig": "sha256:5acfb5032a9a4f8a5eac6b2ef92938130e01e3bdf4fb87e7ecc711fea64e0e4a", "module": "skill_trinity_god_mode", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:28:04Z", + "sealed_at": "2026-10-19T03:12:37Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:cc73bd18af4282e8923a64045a5e71425ae807224b320c8d1c3ea63750b690e4", "spec_path": "specs/skills/trinity-god-mode.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_scholar.json b/.trinity/seals/skills_skill_trinity_scholar.json index aaa954fee1..9de2826484 100644 --- a/.trinity/seals/skills_skill_trinity_scholar.json +++ b/.trinity/seals/skills_skill_trinity_scholar.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:698a75d88ff22a24ca05d4ce3945c1a9f33729fd32a4967bdbfcbf9432bb2bad", - "gen_hash_rust": "sha256:bcfbd39b3437e111a0670f05694e009cd073a73049aabaa6b0efd7e626b8bbc9", - "gen_hash_verilog": "sha256:5ffbcaa94fcc712a1a39abcced9b07359d48f527af41eb15c65e38f2bf4c7ca4", - "gen_hash_zig": "sha256:3e70da28db338f6cdf8261040688ae86feb480c6e689733de2a7ead858630278", + "gen_hash_c": "sha256:a5d37aa73a98743216207b75d814bbc194e7c0e8a0debf14b324ffa1d2c4bf30", + "gen_hash_rust": "sha256:e4994ebebe242d9653942f28a0fcb725de9ae28f81febadf042f8f71166aa76e", + "gen_hash_verilog": "sha256:2b1d2b289e4ffc31e3b8a6f12e56f1638c12b376e19e88f0bf82dcd9d4e124be", + "gen_hash_zig": "sha256:2f9847368c1c9fb0363fd0b81d740db1150ef7410999600fdb8a37e71c86b056", "module": "skill_trinity_scholar", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:28:15Z", + "sealed_at": "2026-10-19T03:12:37Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:36dede4d73686b4b1a5cb0810b374392e7da10da3815723f7f3983676708286a", "spec_path": "specs/skills/trinity-scholar.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_status.json b/.trinity/seals/skills_skill_trinity_status.json index 5f24ba279b..1c2bc61811 100644 --- a/.trinity/seals/skills_skill_trinity_status.json +++ b/.trinity/seals/skills_skill_trinity_status.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:e5b74e6875cc5908297e764814ed9c89dc1d42503f17ab40d35640552ce81235", - "gen_hash_rust": "sha256:76ad48295f9d8c08878d5961b29374a598d2e6f5030cfc2e49f3d56dede0a924", - "gen_hash_verilog": "sha256:5130c28d5862e68bfa2f44ed1b7038f7a4b9a30b1f3eb6bc84aae9314e7a6e68", - "gen_hash_zig": "sha256:62192aa5403c3da08c139c7d1de79dac4ba1107fb2bcf40e78f24810f9f7a62b", + "gen_hash_c": "sha256:c517b9cbd139ca220dc34e161d82259f031fb4a4c01b5cc721e4d3ff295e087c", + "gen_hash_rust": "sha256:2cc9a8e65a9705449a440dc3db2523ba189687edba8ec7a747ad3baf3c6b20c1", + "gen_hash_verilog": "sha256:a9b3484f05e865ea6b086c7d04489041fccad5a4c8325bf26c8831db50eb85bd", + "gen_hash_zig": "sha256:1846213b5a4004c18abe9bd879d1fb27fc7cc1d6016f4e285eca9a00736c7c6f", "module": "skill_trinity_status", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:28:17Z", + "sealed_at": "2026-10-19T03:12:38Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:108cb9a0d517f76b9aad1adfe67ffe8a00f33958ec9ad16b4424774c056707a8", "spec_path": "specs/skills/trinity-status.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_tech_tree.json b/.trinity/seals/skills_skill_trinity_tech_tree.json index 4564592443..a019a62f51 100644 --- a/.trinity/seals/skills_skill_trinity_tech_tree.json +++ b/.trinity/seals/skills_skill_trinity_tech_tree.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:41a286c4e06f152d09332c1693093663965b11abba2924c48ab8168e4cca64b2", - "gen_hash_rust": "sha256:d874e1a84caca17ab76e3b1bb5a65f611d54cf2b102a1d05371dba419eaae383", - "gen_hash_verilog": "sha256:9d5590ccb855f5b3884bf1264522e37c52ed2cbb00db66f2c50bbbb67a3cc338", - "gen_hash_zig": "sha256:710f5885c2c5d1946b74944d2f23e56cb0dbd449c975efc278a6b42851de3b5c", + "gen_hash_c": "sha256:65332ca8ff7b360a0ce5bb7a077b5e8c936be7d9e7b5e8235aa2ef0d0d533568", + "gen_hash_rust": "sha256:165ce80eaef5ba14f0c6de9605905379ad3702bfcf66f799bc5cd9f7666ee234", + "gen_hash_verilog": "sha256:a63f5eed41e7eea6d1d46fc8fe42d1a370347ff83fb21541773ec81981b441f4", + "gen_hash_zig": "sha256:5e9eb9bbe1dc63776e6b437f8a021a34f0720914fb69a2f11e3e8a1909ee0617", "module": "skill_trinity_tech_tree", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:28:20Z", + "sealed_at": "2026-10-19T03:12:38Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:5d4397246ac8d9138dfb1f090e8b2cd725bdc51c3feb9458c9a40cd94e249fca", "spec_path": "specs/skills/trinity-tech-tree.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_tri.json b/.trinity/seals/skills_skill_trinity_tri.json index b1f8043424..69fe6f8004 100644 --- a/.trinity/seals/skills_skill_trinity_tri.json +++ b/.trinity/seals/skills_skill_trinity_tri.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:e2dae8967015f891e5df8e1df1ce53aa75c6c8dfdef8562661697e35542e7043", - "gen_hash_rust": "sha256:b94b2aa9b08d9b6217946866ae04fb3fa0c19e96c220f43b185f7bc6064fccce", - "gen_hash_verilog": "sha256:4aa044a972b461ade5cf46381efd492aa04453d581fe218c9ac8913212b5a90f", - "gen_hash_zig": "sha256:29b7161047628cf5abb40046c1ad98488d3ffb0a46d9039be50bec804973a544", + "gen_hash_c": "sha256:80b67acb9c05306c069c734dcceeb627a62b010c8669718adfebae435fac0b79", + "gen_hash_rust": "sha256:f3534e3a0ff4355b913204346f7a82b119f39db3e85f747e34087f4e90c95c49", + "gen_hash_verilog": "sha256:a03bd811c6eb135decece2e29de3a2d439f5dbd262a742cab146f8b8d151cc63", + "gen_hash_zig": "sha256:0347902eea49697584fb80836332755828b96a89c4af40ea71a164106d71e49c", "module": "skill_trinity_tri", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:28:25Z", + "sealed_at": "2026-10-19T03:12:38Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:f5745e534cf2b1cbd94152f382bf9493b9c95680d1eecf504bbc2bac9932ff9c", "spec_path": "specs/skills/trinity-tri.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_ux_wave.json b/.trinity/seals/skills_skill_trinity_ux_wave.json index 61fea4676d..4dd092fd4c 100644 --- a/.trinity/seals/skills_skill_trinity_ux_wave.json +++ b/.trinity/seals/skills_skill_trinity_ux_wave.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:da2cce7f3fc2c7b0a40cad4b7dcc353ec259d00f49b847d128bc31f83dd5471e", - "gen_hash_rust": "sha256:9e2a68d6a2fa73a7b516e281b1f296693f865d239bc29450e60f2cdaed3cdb55", - "gen_hash_verilog": "sha256:7c1c74b996d5de3db820c12d52a5a9b10f284170ac53841104c53d2a885cf27a", - "gen_hash_zig": "sha256:11b556e4d25605d807b57682aaa8cff441b3c8ead90f103562d357fdb8af8b8f", + "gen_hash_c": "sha256:3803e078133f2e88ecbd5f66b74c8a2aa5a0ea1de850caa6c949ef85def19c6d", + "gen_hash_rust": "sha256:374e267538b0c71edeafc1aa48db17c63d87c1e7f22ae32be53e9b6267d08350", + "gen_hash_verilog": "sha256:87fd11806238fcb547463f52733b77d7205aa58ea78fa36f3a3c27c80b38c2ba", + "gen_hash_zig": "sha256:999fd956d3c84f5c35442867a7361bc18feda19b56974bfa9c4f25760cfea07a", "module": "skill_trinity_ux_wave", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:28:29Z", + "sealed_at": "2026-10-19T03:12:39Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:fd7e84554fbbb0d76cdb8e743d6a5d4bce830610e418aa40753dda1cb4041495", "spec_path": "specs/skills/trinity-ux-wave.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/skills_skill_trinity_wave.json b/.trinity/seals/skills_skill_trinity_wave.json index 513889e1e5..c91ccc6f11 100644 --- a/.trinity/seals/skills_skill_trinity_wave.json +++ b/.trinity/seals/skills_skill_trinity_wave.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:a8ba902ecac541f75d31424437e0e04931ee8cbc95e365d8a8fba449c2a0468a", - "gen_hash_rust": "sha256:87e3cc35e7f9dfabddbc45d6717ffa46386974aa79717b35c1c933ef76ec1b95", - "gen_hash_verilog": "sha256:bf970840c5b869bfe21a718531bf3b7356194f591c4f8e68f56822fa3bc0bb45", - "gen_hash_zig": "sha256:5ad30b759ddb4cfcda5cebe38ab49eb1cf528f44f47e82a9eb6a5e87329cf3f7", + "gen_hash_c": "sha256:7564172e67f0858299c7c59b4436b529bf91e13e4050085350d93f398a837e1a", + "gen_hash_rust": "sha256:9039039338f44e09007fb64bb944a84df16fcc126b3b430535eac5a2edeb3e15", + "gen_hash_verilog": "sha256:27cd93d849502a05bbca1c75b63e6f780831726b06ac878b67e43e3eb8e3d0ea", + "gen_hash_zig": "sha256:85f762a6107dc5bb2a1fd73bf52b42c85fa209c300eb51e51ead7d1f9c2f454d", "module": "skill_trinity_wave", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:28:36Z", + "sealed_at": "2026-10-19T03:12:39Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:ae00822d305ede57405b9a13ec6dc3d238dc0797418e2caad9b38777c77bbbbc", "spec_path": "specs/skills/trinity-wave.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/src_port::trios::crates::trios_cli::src::main.json b/.trinity/seals/src_port::trios::crates::trios_cli::src::main.json index 48b8b17310..d2a445fe58 100644 --- a/.trinity/seals/src_port::trios::crates::trios_cli::src::main.json +++ b/.trinity/seals/src_port::trios::crates::trios_cli::src::main.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+d2c8e7d41", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:7ce8cf338f90db81ca43cb8205dc6ed1f14656faac926840792c0d1065519a3a", - "gen_hash_rust": "sha256:0df0b10e73732d8a1ab44a784f6eed1e8f2bc7fdd8e852e4df39b820a6a74cca", - "gen_hash_verilog": "sha256:b4ef22e2d8eebe2def28fe61e72231e4c8f5c403c34d47aacba360268a0b2c88", - "gen_hash_zig": "sha256:e17ff10df0411230fd5c09fd6e313b740aa93dc3133c654fd9490b5c49bd4862", + "gen_hash_c": "sha256:398f4930b4a2efbbea66af0efafdd235e08119c8d9af4e52acad27f60e0110f0", + "gen_hash_rust": "sha256:5c1137e5361759668e89592cdeb2f63de4de8c71ed95189383a254588900b8d1", + "gen_hash_verilog": "sha256:36d5f453fd44af129ce3e8bf70e6e6a7fc307ca81329bf95cc874ff7008ad2aa", + "gen_hash_zig": "sha256:28a42a7ae5af0e7a890b91723309ac68f156a8acbcdf886936d681dd3c932354", "module": "port::trios::crates::trios_cli::src::main", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-18T05:06:15Z", + "sealed_at": "2026-10-19T03:12:33Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:72fdb35b23aa482642e78c01c621aa508cc687d7a998e17f04269e080cb1beb3", "spec_path": "specs/port/trios/crates/trios-cli/src/main.t27", @@ -22,7 +22,7 @@ "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/src_port::trios::doctor::rings::SILVER_RING_DR_00.json b/.trinity/seals/src_port::trios::doctor::rings::SILVER_RING_DR_00.json index 377c2919c2..b28e5ee0e7 100644 --- a/.trinity/seals/src_port::trios::doctor::rings::SILVER_RING_DR_00.json +++ b/.trinity/seals/src_port::trios::doctor::rings::SILVER_RING_DR_00.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+0d573722c", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:cae4915d04bf45f1bc41342e767d7e5a97aaa62690325cce66b2c10b65b60dd9", - "gen_hash_rust": "sha256:9659f88b2869ef004f78c7d5aee4ca686991c2f409011f65b76a4639dd5a7fc5", - "gen_hash_verilog": "sha256:952ad2827d5c7821cf410a6c30cc6e14b2c6da0a0987ab40ee68b657c5b01f21", - "gen_hash_zig": "sha256:cec44181646041557bd9755f734316b1729310188a82d8e046cef72879cce282", + "gen_hash_c": "sha256:409da62ffa4bd700f123e7d9cc4f7170d49757ac0485ba195935169bfbef8835", + "gen_hash_rust": "sha256:d2918d08844e444f7accd28262169b0db59644844c9c6aa40aca1bf66f05a3e0", + "gen_hash_verilog": "sha256:4af300fe82e19fc8b66b328725e3f31fb3a3abffb61c9e1ab68165f3a9ef1a66", + "gen_hash_zig": "sha256:a01131b4f55194ca518052ee9b61df224077165cd0807b147f6d5d9ef09a8e67", "module": "port::trios::doctor::rings::SILVER_RING_DR_00", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-09T21:23:18Z", + "sealed_at": "2026-10-19T03:12:34Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:6a7e8e422c54b9bb03ff53dfe609f053e1e53149a524bf40d8a403e3a17bd7d1", "spec_path": "specs/port/trios/crates/trios-doctor/rings/SILVER-RING-DR-00/src/lib.t27", @@ -18,10 +18,11 @@ "failing": [], "forced": false, "passed": 1, - "total": 1 + "total": 1, + "vacuous": 0 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/test_framework_runner.json b/.trinity/seals/test_framework_runner.json index 5fb306a9ff..0f9506a325 100644 --- a/.trinity/seals/test_framework_runner.json +++ b/.trinity/seals/test_framework_runner.json @@ -1,20 +1,20 @@ { - "built_by": "t27c-bootstrap@0.5.2+f1f8a6980", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [ { "spec": "specs/test_framework/core.t27", - "spec_hash": "sha256:2c2d722efca0235f6d0735fe72990d09d352e8912d72c44cbe5daac873b81a4b" + "spec_hash": "sha256:68c75cec91662f560cff0c12a9fd4c9918aca9367c31051938a067e36db026de" } ], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:6e77244454b333ba5227bb833a8c17dbd9d32f95d90a1132c6e39eabd0e383ec", - "gen_hash_rust": "sha256:08e01ce910eca40aabc8793bd6bf405e96e5ea12aa6e59b23d8ddf3785607a3d", - "gen_hash_verilog": "sha256:bc31fb46be22b95d35b765f9e6cb02a17e045ebc2ddd68abfd1118bfaf7a728d", - "gen_hash_zig": "sha256:85e6b94ee909b29fe54ddb1e397c2840bd7e2b38f684b490c1cdd864e056579b", + "gen_hash_c": "sha256:957df15f6610d63da85f5af04cc33cd3d57d2b63ab099ad86f55414c99f9af6d", + "gen_hash_rust": "sha256:98ec7afd32aeb4905f127e32658e6b6d97feac5ce61f8e72e58e3bce01173a80", + "gen_hash_verilog": "sha256:c0899238774459434ca98a79642a9da130ba318e9d0c1c2056069fb170381e09", + "gen_hash_zig": "sha256:a699c3841e03df32cd6cd107fd25b224572e0c21d32a91a0fae4a5fb456769e6", "module": "runner", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-10T15:02:09Z", + "sealed_at": "2026-10-19T03:12:40Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:430bfca8d5891151528caf595b22e48b2a3a3db77bfd14eb48056cff2fe150b2", "spec_path": "specs/test_framework/runner.t27", @@ -22,7 +22,7 @@ "blocked": "does not compile: spec.zig:84:29: error: unused function parameter" }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/testbench_MAC_Testbench.json b/.trinity/seals/testbench_MAC_Testbench.json index 091e951e76..bdd8238d62 100644 --- a/.trinity/seals/testbench_MAC_Testbench.json +++ b/.trinity/seals/testbench_MAC_Testbench.json @@ -1,5 +1,5 @@ { - "built_by": "t27c-bootstrap@0.5.2+cc19d1fcd", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [ { "spec": "specs/base/types.t27", @@ -11,14 +11,14 @@ } ], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:b76b8de04cd855f1bfaa5d9573d615c152df042a6a52c233c0fa8f83a8ddea42", - "gen_hash_rust": "sha256:7846ed1dce2b508d8677c4e62a0516d240cd88e109e3f6eeee799928b8e55450", - "gen_hash_verilog": "sha256:9cab81dcdc6b62afe3b481d26ee1ea47ab2c776af8358624acdb6a0433f29e09", - "gen_hash_zig": "sha256:3313a2d4b4c2fb91e4bd95501d08d02dfa284d1f4c96996f47fb354ecc264193", + "gen_hash_c": "sha256:7d669dbf7f4bab654f68ebdaa0e7cc83fdec1c770ce2904b1598f2c9a39971ea", + "gen_hash_rust": "sha256:256004d973046f9dd48727a33c9fc440780fe663ee7f0fcbfb8a2f2f72bb046d", + "gen_hash_verilog": "sha256:5efa2b177da89ebb37656627521e1e75bbe49778b8e98bb627dae3439bec0006", + "gen_hash_zig": "sha256:726abffae8d0dd6d4785dea768c6306944df37978396b9fcc7eb67ca4ac46104", "module": "MAC_Testbench", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-11T10:43:12Z", + "sealed_at": "2026-10-19T03:12:27Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:af060b6e5cdb2ffe1de0a47995b2c621139367174cf85237d8217aa929af10f7", "spec_path": "specs/fpga/testbench/mac_tb.t27", @@ -26,7 +26,7 @@ "blocked": "does not compile: spec.zig:28:12: error: use of undeclared identifier 'TernaryWord'" }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/testbench_UART_Testbench.json b/.trinity/seals/testbench_UART_Testbench.json index 04b4e7abcf..24c6a2a657 100644 --- a/.trinity/seals/testbench_UART_Testbench.json +++ b/.trinity/seals/testbench_UART_Testbench.json @@ -1,15 +1,32 @@ { - "gen_hash_c": "sha256:ecb4180353077decf9d986bbd04aa5ba1d7fdd2297cde21ee5151b48abf4d3b0", - "gen_hash_rust": "sha256:8e1dfd09aa471b2fb6e954146424512324a4187d2f993937f77b395b08bc7b6e", - "gen_hash_verilog": "sha256:d78a8cf66594934278057aa96d438c038d93cce08a39c7c0ff73af15e3c09430", - "gen_hash_zig": "sha256:22b1efae2e15c2c8d41541d938aa23a62513e317f7e7e54335de5baa6cfadeb1", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", + "closure": [ + { + "spec": "specs/base/types.t27", + "spec_hash": "sha256:3c2fb2a2edf20e90bc76798fb5d12690b2f60fc0f5bbf2f6052936e22d6e62e2" + }, + { + "spec": "specs/fpga/uart.t27", + "spec_hash": "sha256:fe0d857d25e5dd7668b5a2ee59ea39ee5369a7ed269ae56d6634bac4a341936a" + } + ], + "config": "gen=c,rust,verilog,zig;tests=zig", + "gen_hash_c": "sha256:f23a99597da8bce4d54278b469237bdc69e31b538b12e278e6f196743802593b", + "gen_hash_rust": "sha256:da8ce156e6f4c1f8175464c125ac87c8302152f25153e0bee58a09c91e4caefb", + "gen_hash_verilog": "sha256:78522a7c7f317c14d01b6a06e09208f3818837112d64dd249242da9d7d250bfc", + "gen_hash_zig": "sha256:b1f0afca5981b56ed0f59e474783fc9a90e2329ae23f969c59972bb73e0eb646", "module": "UART_Testbench", "ring": 12, - "sealed_at": "2026-10-05T18:40:23Z", - "sealed_by": "t27c-bootstrap@0.4.0", + "seal_schema": 2, + "sealed_at": "2026-10-19T03:12:28Z", + "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:bcdf9d0b6752e6bf13d1bbd5114f9531f8f31b06ec9bb817aa192f8d918010ad", "spec_path": "specs/fpga/testbench/uart_tb.t27", "tests": { - "blocked": "does not compile: /tmp/t27c-test-report-uart_tb-754468/spec.zig:60:13: error: use of undeclared identifier 'uart_tx_ready'" + "blocked": "does not compile: spec.zig:60:13: error: use of undeclared identifier 'uart_tx_ready'" + }, + "toolchain": { + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", + "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/tests_github::tests::e2e_full_flow.json b/.trinity/seals/tests_github::tests::e2e_full_flow.json index 7280fa19f2..78c20f6023 100644 --- a/.trinity/seals/tests_github::tests::e2e_full_flow.json +++ b/.trinity/seals/tests_github::tests::e2e_full_flow.json @@ -1,12 +1,44 @@ { - "gen_hash_c": "sha256:d0d0b356c3eda251411c4532840135d077f8d51a0756c02cfdb0270ad31d85e4", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", + "closure": [ + { + "spec": "specs/github/auth.t27", + "spec_hash": "sha256:4a02c3cd0fb34f6e9576d52e96910bc2937ffa3f921f315dd8887ec66f3776e5" + }, + { + "spec": "specs/github/comments.t27", + "spec_hash": "sha256:7ea2370c5b1c69d599af13bb3956130320593d3aa72db524671aa7ac35e35604" + }, + { + "spec": "specs/github/issues.t27", + "spec_hash": "sha256:64d4d76ec19c214697c0f859f52391ebdd6f12947954308e51f49390b46d1ec4" + }, + { + "spec": "specs/github/prs.t27", + "spec_hash": "sha256:4e466319eaaca9d8dded516b01c4e044793adcf2dc0fd6b21baf29244e53b5f9" + }, + { + "spec": "specs/tri/sync.t27", + "spec_hash": "missing" + } + ], + "config": "gen=c,rust,verilog,zig;tests=zig", + "gen_hash_c": "sha256:8ff5da1678c6ac5d7e5f74e4a37d158ce8e166a9d4d9170fea7ae4a7b7861278", "gen_hash_rust": "sha256:0a3efa9f6b1b98d56f8b026a17df711b7ebad4d177bb1ae3cfa5a7aed1791661", "gen_hash_verilog": "sha256:a5f40a1ce38a519d6f0b1be4bde6301b5943a15721445f4ad0b015fa8e298613", - "gen_hash_zig": "sha256:fe53b4ead4715211561143d48d4e603fa0258c142fdfd4a05710020af918dfba", + "gen_hash_zig": "sha256:29666db8889f711d7eabb6c7fdb4a85323e1033aee22ed03004c839fb0f717ba", "module": "github::tests::e2e_full_flow", "ring": 12, - "sealed_at": "2026-10-01T14:58:35Z", - "sealed_by": "t27c-bootstrap@0.4.0", + "seal_schema": 2, + "sealed_at": "2026-10-19T03:12:29Z", + "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:a6c009df1628597d6c964167b392aaaf2fab8c5360b421c54f31b3f9111899b4", - "spec_path": "specs/github/tests/e2e_full_flow.t27" + "spec_path": "specs/github/tests/e2e_full_flow.t27", + "tests": { + "blocked": "does not compile: spec.zig:27:19: error: use of undeclared identifier 'issues'" + }, + "toolchain": { + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", + "zig": "0.16.0" + } } \ No newline at end of file diff --git a/.trinity/seals/tools_TriToT27Converter.json b/.trinity/seals/tools_TriToT27Converter.json index 3a39366d96..d2bda8b732 100644 --- a/.trinity/seals/tools_TriToT27Converter.json +++ b/.trinity/seals/tools_TriToT27Converter.json @@ -1,5 +1,5 @@ { - "built_by": "t27c-bootstrap@0.5.2+cc19d1fcd", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [ { "spec": "specs/base/types.t27", @@ -7,14 +7,14 @@ } ], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:fae12bbd66f8cc967138d84f3345613e9d320c20310673c6eec499d1da7984d6", - "gen_hash_rust": "sha256:9a8a91a551c9e1f871e3ff88934e7f7a6fa11933f103394a5051243efe8f7a44", - "gen_hash_verilog": "sha256:468652e9eb6dfb81d5f458a167088ef4e71375b2f9f39a283231b9b7fb909ab1", - "gen_hash_zig": "sha256:55e31d983e2b680a954fc50a9be20e8aaf7756df0a0bc1ccd4d0fca6f5036d2f", + "gen_hash_c": "sha256:49d20b2af332f64d6ad68770b9574a61f141d469a3ab5afe2838e2dd394d53f6", + "gen_hash_rust": "sha256:8a13269b17b62698c3858f317125e533fce51c123cb8f2ef2bba633d9e6aedba", + "gen_hash_verilog": "sha256:fa33c657e278aa9acd489c7774d2a88537229c1bbdf2947750d9fe72db038343", + "gen_hash_zig": "sha256:6db73673df0a9c6d6eabf5f2b5265225f285e984a0666a81d1e306b76d2535f4", "module": "TriToT27Converter", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-11T10:29:38Z", + "sealed_at": "2026-10-19T03:12:41Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:15c930478ba3ea3f04a2793269bf874a32ae1842038905082a04eb9e41af0978", "spec_path": "specs/tools/tri_to_t27_converter.t27", @@ -22,7 +22,7 @@ "blocked": "does not compile: spec.zig:82:19: error: use of undeclared identifier 'trim'" }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file diff --git a/.trinity/seals/tri_port::farm_telegram.json b/.trinity/seals/tri_port::farm_telegram.json index 61ecacb999..c30435443c 100644 --- a/.trinity/seals/tri_port::farm_telegram.json +++ b/.trinity/seals/tri_port::farm_telegram.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+d2c8e7d41", + "built_by": "t27c-bootstrap@0.5.2+549c8ced5", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", - "gen_hash_c": "sha256:17fb312235cdc116804a3fd61aea3548c7d69d65ba666e12448c5d76bba07efb", - "gen_hash_rust": "sha256:9da6b67f8743a1334d397caf2322d8159a294f81b3232773ad9aa8b0733a7ad5", - "gen_hash_verilog": "sha256:d9eda71c8b46d774c47aaad60d7a2350d70a5bf8b2c92b5224309b886d99730b", - "gen_hash_zig": "sha256:3be933dbb3867ead82443ec5b46b954a90b1fe0249ad2258988942319e3fd513", + "gen_hash_c": "sha256:5a01c70b929bc2d9615fdd40a936b2b35d38fe3312842eafafc351a71656e582", + "gen_hash_rust": "sha256:9e1b5e4d3516d118f4a7bf73cd427d9f9ac75ac2a2e451fdab75111cc4a12bb7", + "gen_hash_verilog": "sha256:26ff643e9bc8ef7ea8623cbf2c8844f7c6994dd749571bb4072c03e96360d36b", + "gen_hash_zig": "sha256:c98325cc65d07d435a2d57bc486d2c73b01c26680cf6728152bc815769e5809c", "module": "port::farm_telegram", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-18T05:05:11Z", + "sealed_at": "2026-10-19T03:12:33Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:c209cfbe22b50e03a79dff285ef58b381d980ad6494c6e0657cdca0e51f52f99", "spec_path": "specs/port/trinity/src/tri/farm_telegram.t27", @@ -22,7 +22,7 @@ "vacuous": 1 }, "toolchain": { - "test_runner": "sha256:1982ae948e24d00c5d221ccec12dfce1eb01204b53e37b0f857f93b16d64629d", + "test_runner": "sha256:8512b80da533b79289110fca4a65f3336abd7a059ca4b72ea595d5e33ff8ad10", "zig": "0.16.0" } } \ No newline at end of file From d7374e1d4faec545e0b634cb89603efe27fa103f Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Mon, 19 Oct 2026 10:34:10 +0700 Subject: [PATCH 6/8] seals: reseal the three specs master changed under the merge (refs #10793) Co-Authored-By: Claude Sonnet 5.5 --- .trinity/seals/TestRunner.json | 4 ++-- .trinity/seals/TriLogging.json | 4 ++-- .trinity/seals/runner.json | 4 ++-- .trinity/seals/scripts_port::test_agent_bridge.json | 6 +++--- .trinity/seals/test_framework_runner.json | 6 +++--- .trinity/seals/utils_TriLogging.json | 6 +++--- 6 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.trinity/seals/TestRunner.json b/.trinity/seals/TestRunner.json index 4f820465b9..b27a856038 100644 --- a/.trinity/seals/TestRunner.json +++ b/.trinity/seals/TestRunner.json @@ -1,11 +1,11 @@ { "gen_hash_c": "sha256:957df15f6610d63da85f5af04cc33cd3d57d2b63ab099ad86f55414c99f9af6d", - "gen_hash_rust": "sha256:98ec7afd32aeb4905f127e32658e6b6d97feac5ce61f8e72e58e3bce01173a80", + "gen_hash_rust": "sha256:691462796d99b1782312ac451e479f09b1ce27e4a814ff1979ed4857bd84e8e9", "gen_hash_verilog": "sha256:c0899238774459434ca98a79642a9da130ba318e9d0c1c2056069fb170381e09", "gen_hash_zig": "sha256:a699c3841e03df32cd6cd107fd25b224572e0c21d32a91a0fae4a5fb456769e6", "module": "TestRunner", "ring": 12, - "sealed_at": "2026-10-19T03:12:40Z", + "sealed_at": "2026-10-19T03:34:02Z", "spec_hash": "sha256:430bfca8d5891151528caf595b22e48b2a3a3db77bfd14eb48056cff2fe150b2", "spec_path": "specs/test_framework/runner.t27", "tests": { diff --git a/.trinity/seals/TriLogging.json b/.trinity/seals/TriLogging.json index e43e1e0d57..49f2f13665 100644 --- a/.trinity/seals/TriLogging.json +++ b/.trinity/seals/TriLogging.json @@ -1,11 +1,11 @@ { "gen_hash_c": "sha256:1fc9cbf8962cea0ccc4e860a8d5eb2a6cbfbefd233af57881d46f37595cc5fcd", - "gen_hash_rust": "sha256:30f7fc6b1a90ba20156a72f379e1214cd0fb5e50b80c8b38f1d6dd1b1427b10e", + "gen_hash_rust": "sha256:aefff94dfd5e37f1cacebcff04eb9e455c3b26e6f80c92c7ec04a991fead4f87", "gen_hash_verilog": "sha256:bf79e75aa596f57038bd07a98d90e5f8d7e2224c2b673367073ba50bf4799709", "gen_hash_zig": "sha256:106bc512c976eb7d5d733db64236ac992246658f565385b2a5199f83267f0857", "module": "TriLogging", "ring": 12, - "sealed_at": "2026-10-19T03:05:43Z", + "sealed_at": "2026-10-19T03:34:03Z", "spec_hash": "sha256:392e71d52d9e5c586f8470b1d50f860a2256f732b92e9c77951fb62417b4257f", "spec_path": "specs/tri/utils/logging.t27", "tests": { diff --git a/.trinity/seals/runner.json b/.trinity/seals/runner.json index 58a7dd3d0e..ad29d57f31 100644 --- a/.trinity/seals/runner.json +++ b/.trinity/seals/runner.json @@ -1,11 +1,11 @@ { "gen_hash_c": "sha256:957df15f6610d63da85f5af04cc33cd3d57d2b63ab099ad86f55414c99f9af6d", - "gen_hash_rust": "sha256:98ec7afd32aeb4905f127e32658e6b6d97feac5ce61f8e72e58e3bce01173a80", + "gen_hash_rust": "sha256:691462796d99b1782312ac451e479f09b1ce27e4a814ff1979ed4857bd84e8e9", "gen_hash_verilog": "sha256:c0899238774459434ca98a79642a9da130ba318e9d0c1c2056069fb170381e09", "gen_hash_zig": "sha256:a699c3841e03df32cd6cd107fd25b224572e0c21d32a91a0fae4a5fb456769e6", "module": "runner", "ring": 12, - "sealed_at": "2026-10-19T03:12:40Z", + "sealed_at": "2026-10-19T03:34:02Z", "spec_hash": "sha256:430bfca8d5891151528caf595b22e48b2a3a3db77bfd14eb48056cff2fe150b2", "spec_path": "specs/test_framework/runner.t27", "tests": { diff --git a/.trinity/seals/scripts_port::test_agent_bridge.json b/.trinity/seals/scripts_port::test_agent_bridge.json index 2ceff4b8c2..02a05ca96a 100644 --- a/.trinity/seals/scripts_port::test_agent_bridge.json +++ b/.trinity/seals/scripts_port::test_agent_bridge.json @@ -1,15 +1,15 @@ { - "built_by": "t27c-bootstrap@0.5.2+549c8ced5", + "built_by": "t27c-bootstrap@0.5.2+2e1818ec2", "closure": [], "config": "gen=c,rust,verilog,zig;tests=zig", "gen_hash_c": "sha256:a7d470267565ed34be25b4689c1ebd87c98def47ef59ed3dcc0598f2c1e19364", - "gen_hash_rust": "sha256:695b0050acfe587116661038b14e2456bd6972c4cf913e552bf40baf676abbdd", + "gen_hash_rust": "sha256:25c1cd47bb14af86bcefcaceda02eb5ee51719cb433369f8e1a7464398a2a029", "gen_hash_verilog": "sha256:834e140e0c1637bf38654b1e277bb44849e4250a4d482b4771a9b0142f2d5bba", "gen_hash_zig": "sha256:bae56473d417fe5a29bb96da24f0e4fb35fac20fb271364049f5bae8a2f66d3c", "module": "port::test_agent_bridge", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-19T03:12:32Z", + "sealed_at": "2026-10-19T03:34:01Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:d9c508a2c55864b9922d04777ea5ae419ef741ae598e6a6d1025793e86d12826", "spec_path": "specs/port/scripts/test-agent-bridge.t27", diff --git a/.trinity/seals/test_framework_runner.json b/.trinity/seals/test_framework_runner.json index 0f9506a325..3e65da8a45 100644 --- a/.trinity/seals/test_framework_runner.json +++ b/.trinity/seals/test_framework_runner.json @@ -1,5 +1,5 @@ { - "built_by": "t27c-bootstrap@0.5.2+549c8ced5", + "built_by": "t27c-bootstrap@0.5.2+2e1818ec2", "closure": [ { "spec": "specs/test_framework/core.t27", @@ -8,13 +8,13 @@ ], "config": "gen=c,rust,verilog,zig;tests=zig", "gen_hash_c": "sha256:957df15f6610d63da85f5af04cc33cd3d57d2b63ab099ad86f55414c99f9af6d", - "gen_hash_rust": "sha256:98ec7afd32aeb4905f127e32658e6b6d97feac5ce61f8e72e58e3bce01173a80", + "gen_hash_rust": "sha256:691462796d99b1782312ac451e479f09b1ce27e4a814ff1979ed4857bd84e8e9", "gen_hash_verilog": "sha256:c0899238774459434ca98a79642a9da130ba318e9d0c1c2056069fb170381e09", "gen_hash_zig": "sha256:a699c3841e03df32cd6cd107fd25b224572e0c21d32a91a0fae4a5fb456769e6", "module": "runner", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-19T03:12:40Z", + "sealed_at": "2026-10-19T03:34:02Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:430bfca8d5891151528caf595b22e48b2a3a3db77bfd14eb48056cff2fe150b2", "spec_path": "specs/test_framework/runner.t27", diff --git a/.trinity/seals/utils_TriLogging.json b/.trinity/seals/utils_TriLogging.json index 5312556cfe..678a80fdff 100644 --- a/.trinity/seals/utils_TriLogging.json +++ b/.trinity/seals/utils_TriLogging.json @@ -1,5 +1,5 @@ { - "built_by": "t27c-bootstrap@0.5.2+549c8ced5", + "built_by": "t27c-bootstrap@0.5.2+2e1818ec2", "closure": [ { "spec": "specs/base/types.t27", @@ -12,13 +12,13 @@ ], "config": "gen=c,rust,verilog,zig;tests=zig", "gen_hash_c": "sha256:1fc9cbf8962cea0ccc4e860a8d5eb2a6cbfbefd233af57881d46f37595cc5fcd", - "gen_hash_rust": "sha256:30f7fc6b1a90ba20156a72f379e1214cd0fb5e50b80c8b38f1d6dd1b1427b10e", + "gen_hash_rust": "sha256:aefff94dfd5e37f1cacebcff04eb9e455c3b26e6f80c92c7ec04a991fead4f87", "gen_hash_verilog": "sha256:bf79e75aa596f57038bd07a98d90e5f8d7e2224c2b673367073ba50bf4799709", "gen_hash_zig": "sha256:106bc512c976eb7d5d733db64236ac992246658f565385b2a5199f83267f0857", "module": "TriLogging", "ring": 12, "seal_schema": 2, - "sealed_at": "2026-10-19T03:05:43Z", + "sealed_at": "2026-10-19T03:34:03Z", "sealed_by": "t27c-bootstrap@0.5.2", "spec_hash": "sha256:392e71d52d9e5c586f8470b1d50f860a2256f732b92e9c77951fb62417b4257f", "spec_path": "specs/tri/utils/logging.t27", From ac3f5ae7c8164351d950c25a1c888ae3f1608f4e Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Mon, 19 Oct 2026 10:53:06 +0700 Subject: [PATCH 7/8] t27b: a string literal is one byte per char of the lexeme (refs #10793) The lexer holds a byte as the char of the same value, so the literal's length and bytes are the chars, not the UTF-8 of those chars. The t27b-native-ratchet job failed string_escapes zhe_is_two_bytes on it. Co-Authored-By: Claude Sonnet 5.5 --- cli/t27b/src/lower.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cli/t27b/src/lower.rs b/cli/t27b/src/lower.rs index 2571cd240b..b2d44eb48d 100644 --- a/cli/t27b/src/lower.rs +++ b/cli/t27b/src/lower.rs @@ -3600,7 +3600,7 @@ impl<'a> Lower<'a> { /// nothing is reported or emitted otherwise. fn peek_string(&mut self, n: &Node) -> R> { if n.kind == NodeKind::ExprLiteral { - return Ok((n.extra_kind == "string").then(|| n.value.len() as u64)); + return Ok((n.extra_kind == "string").then(|| n.value.chars().count() as u64)); } match self.lookup(&n.name) { Some(Binding::Const(Val::S(_, len))) => Ok(Some(len)), @@ -3885,7 +3885,7 @@ impl<'a> Lower<'a> { // The t27c lexer strips the quotes and unescapes, so the node holds // the string's own bytes (not trimmed: spaces are part of it). if n.extra_kind == "string" { - return Ok(self.string(n.value.as_bytes())); + return Ok(self.string(&n.value.chars().map(|c| c as u32 as u8).collect::>())); // #10793: one char per byte } let s = n.value.trim(); if s == "true" || s == "false" { From 06a60aaba6faed93580d8f1743f644484067f75d Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Mon, 19 Oct 2026 11:05:18 +0700 Subject: [PATCH 8/8] t27b ledger: list specs/compiler/string_escapes.t27 as pass (refs #10793) The ratchet runs the new spec and t27b passes it (one byte per char of the lexeme since ac3f5ae7c), so the ledger names it. The other UNLISTED rows in the run are master drift for the ledger steward and are not touched here. Co-Authored-By: Claude Sonnet 5.5 --- docs/reports/t27b_expectations.json | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/reports/t27b_expectations.json b/docs/reports/t27b_expectations.json index 1ad34bbed7..c2d1ec2962 100644 --- a/docs/reports/t27b_expectations.json +++ b/docs/reports/t27b_expectations.json @@ -240,6 +240,7 @@ {"path": "specs/compiler/rust_optional_returns.t27", "t27b": "pass"}, {"path": "specs/compiler/rust_tail_returns.t27", "t27b": "pass"}, {"path": "specs/compiler/rust_value_parameters.t27", "t27b": "pass"}, + {"path": "specs/compiler/string_escapes.t27", "t27b": "pass"}, {"path": "specs/compiler/test_report_exit.t27", "t27b": "pass"}, {"path": "specs/compiler/theory/isa_round_trip.t27", "t27b": "pass"}, {"path": "specs/compiler/theory/reproducible.t27", "t27b": "pass"},