From 55ba6dd0a1790b68b8c7b2d6b574d13cc36fe4a6 Mon Sep 17 00:00:00 2001 From: Dmitrii Vasilev Date: Sat, 3 Oct 2026 23:26:05 +0700 Subject: [PATCH 1/2] feat(website): every recording page ships session.gif, the one format X animates A tweet that links t27.ai/term/ID/ shows card.png: X renders a link card as a still image, and only an animated GIF attached to the tweet as media moves. An intent link cannot attach media, so the page now carries the GIF the owner attaches by hand. The ten published recordings gain session.gif, rendered by `tri cast gif ID --repo` inside X's animated-GIF limits (15 MB, 1280x1080, 350 frames, 300M pixels of w*h*frames). meta.json names it under "gif", and each page links it next to the preview card. Co-Authored-By: Claude Opus 5.5 --- .../website/public/term/devkit-flow/index.html | 2 +- apps/website/public/term/devkit-flow/meta.json | 1 + .../public/term/devkit-flow/session.gif | Bin 0 -> 169669 bytes .../public/term/tri-blog-list/index.html | 2 +- .../public/term/tri-blog-list/meta.json | 1 + .../public/term/tri-blog-list/session.gif | Bin 0 -> 59773 bytes .../public/term/tri-fpga-keycheck/index.html | 2 +- .../public/term/tri-fpga-keycheck/meta.json | 1 + .../public/term/tri-fpga-keycheck/session.gif | Bin 0 -> 68016 bytes .../public/term/tri-fpga-selftest/index.html | 2 +- .../public/term/tri-fpga-selftest/meta.json | 1 + .../public/term/tri-fpga-selftest/session.gif | Bin 0 -> 320793 bytes .../public/term/tri-fpga-specs/index.html | 2 +- .../public/term/tri-fpga-specs/meta.json | 1 + .../public/term/tri-fpga-specs/session.gif | Bin 0 -> 58922 bytes .../public/term/tri-game-selftest/index.html | 2 +- .../public/term/tri-game-selftest/meta.json | 1 + .../public/term/tri-game-selftest/session.gif | Bin 0 -> 21248 bytes .../public/term/tri-game-tick/index.html | 2 +- .../public/term/tri-game-tick/meta.json | 1 + .../public/term/tri-game-tick/session.gif | Bin 0 -> 19276 bytes .../public/term/tri-game-vault/index.html | 2 +- .../public/term/tri-game-vault/meta.json | 1 + .../public/term/tri-game-vault/session.gif | Bin 0 -> 15779 bytes .../public/term/tri-selftest/index.html | 2 +- .../website/public/term/tri-selftest/meta.json | 1 + .../public/term/tri-selftest/session.gif | Bin 0 -> 11858 bytes apps/website/public/term/x7-board/index.html | 2 +- apps/website/public/term/x7-board/meta.json | 1 + apps/website/public/term/x7-board/session.gif | Bin 0 -> 794702 bytes 30 files changed, 20 insertions(+), 10 deletions(-) create mode 100644 apps/website/public/term/devkit-flow/session.gif create mode 100644 apps/website/public/term/tri-blog-list/session.gif create mode 100644 apps/website/public/term/tri-fpga-keycheck/session.gif create mode 100644 apps/website/public/term/tri-fpga-selftest/session.gif create mode 100644 apps/website/public/term/tri-fpga-specs/session.gif create mode 100644 apps/website/public/term/tri-game-selftest/session.gif create mode 100644 apps/website/public/term/tri-game-tick/session.gif create mode 100644 apps/website/public/term/tri-game-vault/session.gif create mode 100644 apps/website/public/term/tri-selftest/session.gif create mode 100644 apps/website/public/term/x7-board/session.gif diff --git a/apps/website/public/term/devkit-flow/index.html b/apps/website/public/term/devkit-flow/index.html index 69505b1454..e8182c663d 100644 --- a/apps/website/public/term/devkit-flow/index.html +++ b/apps/website/public/term/devkit-flow/index.html @@ -85,7 +85,7 @@

tri devkit · the FPGA flow, layer by layer

$ tri devkit flow --build --out /tmp/devkit-flow/rec1 $ tri devkit impact --out /tmp/devkit-flow/rec1 --builds 20

Staged: the prompt and the typing. Real: every byte the commands printed, at the time they printed it. Any silence longer than 2 s is shown for 2 s, and the title bar says so while it happens. Edited: home directory shown as ~.

- + + + diff --git a/apps/website/public/term/t27-tri-census/meta.json b/apps/website/public/term/t27-tri-census/meta.json new file mode 100644 index 0000000000..3611581b2f --- /dev/null +++ b/apps/website/public/term/t27-tri-census/meta.json @@ -0,0 +1,21 @@ +{ + "id": "t27-tri-census", + "title": "tri census audit: every census, counted twice", + "desc": "Four census populations recounted another way all agree; three are named as uncheckable.", + "url": "https://t27.ai/term/t27-tri-census/", + "gif": "https://t27.ai/term/t27-tri-census/session.gif", + "post": null, + "recorded": "2026-10-03 16:18 UTC", + "real_s": 14.9, + "shown_s": 4.9, + "commands": [ + "tri census audit" + ], + "exit_codes": [ + "0" + ], + "redacted": [ + "home directory shown as ~" + ], + "published": "2026-10-03" +} diff --git a/apps/website/public/term/t27-tri-census/session.cast b/apps/website/public/term/t27-tri-census/session.cast new file mode 100644 index 0000000000..28e7c9b3db --- /dev/null +++ b/apps/website/public/term/t27-tri-census/session.cast @@ -0,0 +1,28 @@ +{"version": 2, "width": 104, "height": 30, "timestamp": 1791044306, "title": "t27 \u00b7 tri census audit", "commands": ["tri census audit"], "redacted": ["home directory shown as ~"]} +[0.0, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[0.4031, "o", "t"] +[0.4432, "o", "r"] +[0.4832, "o", "i"] +[0.5233, "o", " "] +[0.5614, "o", "c"] +[0.5966, "o", "e"] +[0.6366, "o", "n"] +[0.6725, "o", "s"] +[0.7117, "o", "u"] +[0.748, "o", "s"] +[0.7833, "o", " "] +[0.8198, "o", "a"] +[0.8598, "o", "u"] +[0.8968, "o", "d"] +[0.9341, "o", "i"] +[0.9697, "o", "t"] +[1.3149, "o", "\r\n"] +[1.3438, "o", "\r\n Each census prints a population. Each row below counts the same\r\n population a different way and subtracts. A counter sharing the\r\n census's own reader would agree by construction.\r\n\r\n census printed counted here population\r\n"] +[13.3799, "o", " unparsed report 1269 1269 .t27 files\r\n"] +[13.8277, "o", " quantifiers report 888 888 lines carrying a quantifier keyword\r\n"] +[13.9072, "o", " mods orphan 155 155 .rs under every workspace member\r\n"] +[13.929, "o", " lean vacuous 250 250 `theorem` lines in Completeness.lean\r\n\r\n AGREED. Every census speaks about the population it prints.\r\n\r\n Not checked here, and why -- because a page of green rows looks\r\n like coverage until somebody asks what is missing from it:\r\n\r\n seals hollow\r\n built and removed. Its counter tested json text for `\"spec_path\"`\r\n while the census parses that same field, so planting one more seal\r\n moved BOTH numbers to 1314 and the row stayed green. No input makes\r\n them disagree.\r\n\r\n types dup\r\n measured: a counter loose enough to be independent reads 1182 where\r\n the census reads 1180, and the two extra are `struct = 21,` -- enum\r\n members named `struct`, which the census correctly rejects. Any\r\n counter accurate enough to agree is a copy of its matcher.\r\n\r\n discard classify\r\n its population is parser events produced at run time, not artefacts\r\n on disk. Countin"] +[13.9291, "o", "g them a second way means running the same parser,\r\n"] +[13.9291, "o", " which is not a second opinion.\r\n"] +[13.9297, "x", "0"] +[14.9332, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] diff --git a/apps/website/public/term/t27-tri-census/session.gif b/apps/website/public/term/t27-tri-census/session.gif new file mode 100644 index 0000000000000000000000000000000000000000..0540bef68be4b701c5c1c668050a5654ecf94469 GIT binary patch literal 61774 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 z + + + + +tri competitors audit: the table, audited · Trinity S³AI + + + + + + + + + + + + + + + + + + + + +
+ +

tri competitors audit: the table, audited

+

168 records: 14 papers entered twice, 141 cite no score, 144 state zero at pass@1.

+
+
recorded 2026-10-03 16:18 UTCreal 2.6 sshown 2.6 sexit codes 0
+
$ tri competitors audit
+

Staged: the prompt and the typing. Real: every byte the commands printed, at the time they printed it. Any silence longer than 2 s is shown for 2 s, and the title bar says so while it happens. Edited: home directory shown as ~.

+ +
+ + + diff --git a/apps/website/public/term/t27-tri-competitors/meta.json b/apps/website/public/term/t27-tri-competitors/meta.json new file mode 100644 index 0000000000..9019cd6180 --- /dev/null +++ b/apps/website/public/term/t27-tri-competitors/meta.json @@ -0,0 +1,21 @@ +{ + "id": "t27-tri-competitors", + "title": "tri competitors audit: the table, audited", + "desc": "168 records: 14 papers entered twice, 141 cite no score, 144 state zero at pass@1.", + "url": "https://t27.ai/term/t27-tri-competitors/", + "gif": "https://t27.ai/term/t27-tri-competitors/session.gif", + "post": null, + "recorded": "2026-10-03 16:18 UTC", + "real_s": 2.6, + "shown_s": 2.6, + "commands": [ + "tri competitors audit" + ], + "exit_codes": [ + "0" + ], + "redacted": [ + "home directory shown as ~" + ], + "published": "2026-10-03" +} diff --git a/apps/website/public/term/t27-tri-competitors/session.cast b/apps/website/public/term/t27-tri-competitors/session.cast new file mode 100644 index 0000000000..9e13c5c6a0 --- /dev/null +++ b/apps/website/public/term/t27-tri-competitors/session.cast @@ -0,0 +1,30 @@ +{"version": 2, "width": 104, "height": 30, "timestamp": 1791044333, "title": "t27 \u00b7 tri competitors audit", "commands": ["tri competitors audit"], "redacted": ["home directory shown as ~"]} +[0.0, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[0.4051, "o", "t"] +[0.4452, "o", "r"] +[0.4819, "o", "i"] +[0.5219, "o", " "] +[0.5573, "o", "c"] +[0.5974, "o", "o"] +[0.6332, "o", "m"] +[0.6732, "o", "p"] +[0.709, "o", "e"] +[0.7491, "o", "t"] +[0.7891, "o", "i"] +[0.8292, "o", "t"] +[0.8652, "o", "o"] +[0.9053, "o", "r"] +[0.9435, "o", "s"] +[0.9855, "o", " "] +[1.0256, "o", "a"] +[1.0652, "o", "u"] +[1.1016, "o", "d"] +[1.1422, "o", "i"] +[1.1806, "o", "t"] +[1.5257, "o", "\r\n"] +[1.571, "o", "COMPETITOR TABLE -- specs/igla/coder/benchmark.t27\r\n\r\n records 168\r\n distinct function names 168 (0 redefinition(s))\r\n papers entered twice 14\r\n records citing no score 141 of 168\r\n stating zero at pass@1 144 (3 of them cite a nonzero score elsewhere)\r\n\r\n one paper, two competitors:\r\n arXiv:2603.08738 formal_rtl_competitor + formalrtl_competitor\r\n prints as FormalRTL\r\n arXiv:2603.27630 rtlseek_competitor + rtlseek_competitor_2\r\n prints as RTLSeek\r\n arXiv:2604.25183 kuleuven_ternary_competitor + ternary_lut_generator_competitor\r\n prints as KU-Leuven-Ternary / Ternary LUT Generator\r\n arXiv:2605.07782 ckt_formalizer_competitor + cktformalizer_competitor\r\n prints as CktFormalizer\r\n arXiv:2606.02358 chimera_competitor + chimera_competitor_2\r\n prints as CHIMERA\r\n arXiv:2606.04246 stepprm_rtl_competitor + stepprm_rtl_competitor_2 + stepprm_rtl_competitor_3 +"] +[1.571, "o", " stepprm_rtl_competitor_4\r\n prints as StepPRM-RTL\r\n arXiv:2606.05253 alpha_rtl_competitor + alpha_rtl_competitor_2 + alpha_rtl_competitor_update\r\n prints as Alpha-RTL\r\n arXiv:2606.05680 cass_rtl_competitor + cass_rtl_competitor_2 + cass_rtl_competitor_3\r\n prints as CASS-RTL\r\n arXiv:2606.06530 rtlscout_competitor + rtlscout_competitor_2 + rtlscout_competitor_3\r\n prints as RTLScout\r\n arXiv:2606.08976 rtlbenchls_competitor + rtlbenchls_competitor_2\r\n prints as RTL-BenchLS\r\n arXiv:2606.09867 estrtl_competitor + estrtl_competitor_2 + estrtl_competitor_3\r\n prints as EstRTL\r\n arXiv:2606.10285 openrtlset_competitor + openrtlset_competitor_2\r\n prints as OpenRTLSet\r\n arXiv:2606.13706 hiersva_competitor + hiersva_competitor_update\r\n prints as HierSVA\r\n arXiv:2606.15500 llm4rtl_2026_competitor + llm4rtl_2026_competitor_2 + llm4rtl_competitor + llm4rtl_comp"] +[1.5711, "o", "etitor_2\r\n"] +[1.5711, "o", " prints as LLM4RTL / LLM4RTL-2026\r\n\r\n A paper is attributed to a record only from the contiguous run of `///`\r\n lines directly above its `pub fn`. A wider window reads the previous\r\n record's citation as this one's: that window reported 16 papers here,\r\n and ten of them were the neighbour's.\r\n\r\n `pass_at_1: 0.0` is the value a record takes when there is no published\r\n score to cite -- the struct has no other way to say it. It is in range and\r\n it is what `compare_with_competitor` subtracts, so every one of those 144\r\n records yields our own score as the margin over it at pass@1. Read the\r\n two counts apart: 141 records cite nothing at any metric, and 3 state zero\r\n at pass@1 while citing a nonzero score at some OTHER k -- true citations\r\n that still read as zero to the default comparison.\r\n"] +[1.5717, "x", "0"] +[2.5737, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] diff --git a/apps/website/public/term/t27-tri-competitors/session.gif b/apps/website/public/term/t27-tri-competitors/session.gif new file mode 100644 index 0000000000000000000000000000000000000000..6485b39ca86784a5328e9a2e366f7a175857cccc GIT binary patch literal 49766 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

`^e-)#FgGvmsAj5E!fgLFsF+>+3dWMSw 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 literal 0 HcmV?d00001 diff --git a/apps/website/public/term/t27-tri-discard/card.png b/apps/website/public/term/t27-tri-discard/card.png new file mode 100644 index 0000000000000000000000000000000000000000..8240dcbacefdf2a87d2469ca1386ad5d68a6d817 GIT binary patch literal 71802 zcmc$`bySq?*EXzTfP$2Wf`D{M2vSl~N_VG(B11_xsDz|6NGl~FCEW-jB_J_$NhmRN z=X`tg_dM_Ot#5sQylcH{y|Y|5_dWM;&2^pUKKDM3V;|cfWyL3WSIMrPJ9iFGMp{z! z+_{Uz=gwVl#=ZdWG|`~0ojZT-oQ$NHy6YHf(nb5m@bHz5Qn@GR#Z**O2*1e^o|lrO zCF6;U7~x?E<_X%=Fnth2f1k`JF{dP+AgtsP$u&tSdhI5|M^a*9$`@~9nPT0z5jVLX z{?%@hOR)By)Twu>klVy$LiK)XwV>eJYKJFg#>Qgs)$rQ5o|orGu#m1F6JoEz-YHeh zMEalqutCPLK9JaGbRy#@_E@mxO}Ixf`c z_4R*`PXql0D1m@za2ra zoT2{MB+^mCPbiwYB+$%Wh1Nr5JHX83UayjEpgPSI_dG+dq`LFFC<|-DJ5xW zqIxEBcCHgf=9a+MhK9}KZ|81EjXs$jMiU3+s58J-QjMf(B6BKu5^gni5HBalDlV#|&+?jfV$ePL+z--c2h76kcWLjJ zSfm6>E5fSCIjG=qb8$ybcV&Hd>iQlSNAJhQ#T#{29J`eoSwgr*`R^pq`KjaCGQ^x! zb?1b0BqTM&_4RdG258=-NvJa$`rY4{-u~@<3S)qo{ebUw>!eVibn0ouXEvG7FXNx) zhK7cjnMcc3QncuE{awIEx43jEO0WcNKPZhkpCceHp&7o{73T*)Zl7 z-gN?(?Yjxd!CC6}NJe#X8KV2wd1D=DZdY?||L#_+J<3tZpcM7KLqhV*#)iF4S;5k- zRUzeJY$uPh)&r}NV&5zHQ;k08)(}zw0RcwEqI>u5J>b!|4)WMvW4m`Rrfb0m zeah#v)2U%&np`|TZMDzZPd%?v^ zLtApPC2L>CC=ko0)JdzdG@{Y>Dy=I!zfa59_+v!tO?LgNm%qf3`|Fdn=C-ydZ*6b$NEHc@T*ln`t1U>1$}g%Po6vBb zdFQxoQg1i={0PBMAoWXXOt-4ryLtL8m^-+jhIiRV-?+;IrFgl zd2%QQzam+X6!R=e-AxNSb}T76x`mz7YJ~HbKSDR;&zq!;Q$h2dJE;LylQpq=_V5s> zBt&UjM>HdAA-~N;RcD>J_T(}5|H#PG>GmA{ktYlV$r=>nmQ6Jp=+onQnhx9kjsj$j zkwt--Mr$=0{_U)IU-4F&r9_|k1Y8fFy9s2C&U0znl3WQnGQt_Qmm{llH^XU>6V^G! z%wu-qsg6ZfY70-%4^^w^at_Xl8qe~acN4hHMclUN9zJ|1B&6^9@u)!RO_xh6vFOhW8IjexG3fwJKQ;2X1t?Z`W4@XQLgCE$PmGm@Y4(f8& ztZ9fz*Jf95(#^LeoDI_9oLBMvv$0p&iuGvaS=89F;|N3G06sJi>4>wHW}q#3FZ+y6 z^}WlWw7h+F--eBe`ISiP?k~B|1{G9jebnz7R&AFHJm1-!`HH2mZh0i#7ssYoVKtg= z2~S5Kk&!`r9BxqSobu2qIPgnpDTjVlvD3=XHBxrzELEG1!|gwMdU{GJ56iud_o%#f zR9?Jb+K)_1N{WvsCG0TcD$$mgOc8W(c6L^jlWU2`)B)V|I1&nNrIc}EmC;pE!-9@{ zp52X%aK>o)=QFeJPT7fZgUGiP=C#W@c z8zpA*bUun+uEJ*W=wNg1|ZP z?Uc|SePz?uLf5Fvb&7}I&gOo1Yxy);41K;`=?@{Hn_Gd~Qj9)0+3v-{!m8fyO%}*_ zkLSETCCtmaxACh5C6~2i{l?dK)CYojw>^>;)hK$5;`SVXg=kXd7J}4xnq16&owP@@pw80J-%iC5}C`N60#x?$AFffW>ZUZTs^K-bzn>(5+78ZMfCf8TV(XS&`) zYsdYE9X|E{IH|joTx0p%!ZnYQ&`)?QV`9g14Mt6T?kP7$A{{z!F3wuN-{bxKa6Eg3{gsVm|-DN`3*ifX)q zdrNt*GF{Af#K$inK*ak*yF3O0*^Wc6?8WAQlIUc;hs(-Pf&LPo?bJlQ$NpSf__eE7 z6;mD}YhBiV{E)Ya74bS6EYOP&q!e-`ASNcJr0g-&wHhn4fTh`JBZXc5`Rn9Q{_vW{ zwdJ$rg}#A#o>vTK2Z-i_Z-ZZa-Y4XZsw>DH-3tt4Vh%Im$k%Ba^z%N5QVmz_)2KPa z_d5Dz`DYD5oFrB+O-J)vW%RNeLQZm0u>ULGx8$r(n>Q-sMX2_c^B0A%F%t68reS*M!3sTzn_=6K75w?AwA#G4gZo8BeKg^fAXS# z$snik{Is2}9*dCEovC=m^$&G&F+K_Dd;=a0oVRZWz#&X^v1iO;ba+@Y)pTv`@rrrN(-F>+pCS_Z$(` z;lL-ipT_(rgQ0V-1z*(B*_o2p>isN*i_o>&sw&i2d5EE*+sagZ?XpSZ*-?Hrv$d?8 z9BiFZt6#C*+;hv0W;TzllLm&2+P}-nUAnwWM>9rs%97MS|Ec4dj5LK_ zp0Su=fyHTfnfZd{FbCu=j<;&7x@M+QHibL#zm}fYW4-7h9n3tRkQC{0O=sjPEaLRL zjK{kj6QN_3A2)b*j6bA0aX-B!vw`QGsLS%RhH7y=Ykpm7h^Hg(veUYBpU>86(KBv~ zC3$-XdI#>jXBu(Iy|<3Xrk3_8kp&9BpU?l6m3#g(PO7!p!+-4N60CnF7v0Mm6;oO_ z-3rHDQ4G>4i@DdG^DPH8b~pYw;Z}Zv%43FjZ(>z{C!eDo3r9ys6_v;cOJBe)SFYc= zn+{bLpWDN<;NR!f~{>+I5!X@z?}DS!7rr_+n$`tC81kY|~pl zOf8g5%lN|)7 z#(I_VQ8t68Q@)noR4zqi^PSX01o>bJoSnc$6-w)n5308>U5aurCEE}Qqmrk-+MC|s z9CAICj*9Qdm}Ei7v!JSrk7*g#Y2}f3>a%sT(Cn}_^~zZmjMQj#NhY2DY6Bgu0jrs#nA_UV1XzUT{MWp96U=h$j};r!&& zTUX(7HEm$%Wv7R%@JUVy7Mr%Mkg;^`hT+FS8ex_ozX-=${46(Rd`6!=;8IrajWe_7 zy6?T(Q1sa$u#ju2^f?k!=US9mMgo?WXfs zmtT%1j&=FU0wTI^`aLww=j?FW2mP#wb#HAl$tPAx|U7Ch7!bXTW zamlh3PGM%{QvaFouAWIjA90J@l9J}L7AqW{PRBVOx!UsKTZ`W=v6U|bkUmcNh^8bU zggS-V8uX(sqW3$aUDSy@nmu`Dw*2+I9VVkX=XclZ#dD?H z)roMZm-euOPsEp+m7{s0rFCUZXj^-wczFzkL*A$<)16v8K~6o?&f9(C)ryUSV@%u( zXTrf{-!6VV=HTdPZ+#m5mdbl3o2|R6OVD-WZW4j6p5AtR7C(7jNXWHZj~?p3yr1(! zMfbBv@|<^UgnffjMZcTqVpnt}%ZxuAg_YSe&^&Z0N7bbTisM_zV2iG)$V&d|D-tHx zW9yB3hQ2lQHelCnH6yOu@Klds;5}_h5Qm(FY-UUhi!(x7R?;r$S%SO?ivSm zDgVK+xv4krtcL_bLmD*G2)5=dn4cJT(aY-Xy%3Xh+*{6<3<=b$=zk7Y0-U~v9cuy**rPt<-sKg$P{k# zo@$3b0oN&(QK$*vQXf8iz#(QRzP2GM{j;T|Wndt>k?ZyA*THI0m}C(1_KDm>B31pi zxOw{{#Q6esJ~va}njIB_Q0tgj{1@cRIFS&>seMj#SLLDj4t7JJj zFHr&Ks$A}DtBV80(*)2EHBrsY!^6YP%`GHUXWSBiy3mL|6I2qLaO8sA`uOoJjsiWsHd;9>YXx~^Pl7rXo#pvRFh4?E$ zi_ggjBh$=BBcy4_`ofDA&#y;EzE8cOyrZ+aTW4Q-Z{OiKLb9Oq%mMW{UDHhO{D9(h z*R;@3zoD>ermMQ&sJ@qAW#t*qCuSU^iM`Y--T9(CwzYeMCS5Uge&q~tSS0dmT-WqU zRL6@>bdDRxGH-AoM6JSMXyBr*{piqzvBu7$MBc$qT1@>JQGV1JnQbU87j$&tRlYMD zCK)*-E-{(ghP;s}Foio8 zFr6)Ad{O0YA37>O9<5RdVfg;Qo0CxGEBBb)2UItYgN2#Tk=bR6U}g_!HCuGlebnsQY1ouqt z9_wFieWDO^=Ad}fE9>f?sNCySp9qQiYMfRcuay}a&?-PC{LioS}rPs&3%dN%5oV?Uled$td?SLBoXg4_XCyFhs%tzDrV+tyd{i$ zjZBR`?*`uNKG?tZrBEgf-(&Y|W~$7dd_k1QOxv*_X@hg9h*s;WsRoX)q(R-%wy~M9 zqUn{m`rM^00>Xr(s36Gn@mZZaTZN*|>4T?zWlVkzX^(jBEq47Xy7`_*Yz%#k!d*&$ z6{_LR9e#wFq*6#`DVl3kC`I;}Bq)RQ#2H^YOeJaDRcKE4dS#R39Pilj4O2FWvI0$LXE3oM*Mo7H%Ei>MC zhnGo+Z@uXBK|0lHD4l-?I%i$-$oqoVO-a0!zEzL11AJXUty8r*ku|aJkJUFq(|fQB zzT@XJ?GeFI@SJS_9^6k~#vK)B)h|*RT)2~yG-do*+~`E|e*BAmYzueA)VufuY~%ZYHFjb=Mt4xb>aio|X80>DTYpw?D3-?{kQloiskB zQSJUVJ-D~LGEwbdU#-s`4_i-ldi8(m)s;dtK8%M7V~0s9JXRcfl@xNtJ}T_>SX$V* zsGDL@9a-FbiInJa6a_bNRENyHI5|pbpHT%9!j7rQuj!KW3k%2+(n)5&PM7o&jy%|47YCH4hKA1)2yGbtC6TwcNrPrC$c|Tz!T{xLW zpHdx%kBp1}0sBzxzJN`e_vR+u?@zMe!LW5LOZ2U(_eaOy z-@lj>{rj?W^{tq1lM;{2aqMMw-%?LK&g@SW{x6L`BJV3LQ()@N*nl*zU829=b#8H$ zk_*$pfY<+q!vBA?2cT|AbM4wS$$#qgjDfla&i`cH|J}Zr$YUdwcpMaX8K2S<%JnCu zG{ahF>yct(67^txDFgx$J2*c{P51lNsek*q4}i|=N<;H~Nd9yuecI^(YNc7A`>e_8 z<^I|vs&R61QbIyv!Tzw&pf-<=qkw_ubtmfe2K)Y%9rmV@>*vm4OFYgcLf^{OT|?$; z#a8&Nj+F<$C>jb-msFVAlv};LBqYxJh8j^i@oVB;LmzXxqLWt_SMGR4qQPpu~L-wk*qexQgE+xi88 zpLn)e{@YY(>}ecGsN_5db$fez85tP_V!6t0ZVxrO{ciZ5@Qhs=+CU4+5Tszu!T-Fa z_5bbHe7+}(&#!9GG&-tdcYaN$CXw>p;AfrEEV+2YYWs!0j3;hxZcy+4k#r?`6kdZA8fb_Cm^I&q}*Am|Jl z`I@b5ZRY0Yjjo%sfUiJ)5OUp^8O&7!`o)~tOy#-p6>b#NU!YRHv$L~p;Z)P`29SUR zPGj+U_uYeGysKAL5vbQ#S42*C)b?;#{Qdn;@bieilm>@{#5%_fy=SDSU%KJYviC?T zE-tR+E&gn6lYt2xB9>{+iAcnycwzjtF z=;)aDrk?H&8wm>uvCMWI{7Lg+(U{wuYy18k5sE}<{)e^1IY; zxTL#ez%x@*?&m+=7Z(@D#KeF^6%`eQLZPavs_@8pcTl5hbVRq8e+A3d@574K>`mFP z$@<=L>-0e_Tu6r3YcQB>=+5|>T({Q2|iltS7o3BenQWwz62&HmR;j0IdbKE%hz zkMV~{ro%l=S3A5l-%U?XH}XErf)kdP@3K0^!^|u*5Nu&#A?&{MbG=M{rKg|yx0smN zk?HUa?NZO(9lRo!o!I|Y#AC-DqR8=N_gv*c8{O()Aa?k za9$N{FBGOrlx}`h9;`Go3!+vmr)Qe>w(7M$U879YZR2o4a)qZ54;z@-p66gzU+Iz; z4=%|S8#E%!SFEAu?CdP>+R6U3k4Z_Q90hvc2mPt$rK>AHrT#m6l{LXgf~_PT%Q&$@ z0>w0u`m(Z^#(U-F;z#s;KqV5rT{O@~JP>nPNKlMU*BjASar-7~UGyq#3LMpuW7@gu zd2JR65h>3$-jfSaLlfs0P?k%Dt_z*93<`<2GOtg#DGe7IAfNkQx^yX64kPkSP8wJ; zg@%OzM*X1Pi9XvG&04qZO%>K)bpRa&Y3l_#O25gp*S>*(9>wk3xqG-x%9G{p41Not zxP;YJRdfstS0@IQL{HUIF>ACsTKXy5TJtS!xMJH>uPAzA<~+wAWtu)a;D#BwAmuYU$2BZ7SLZ4DFZsMe+tYd4A3O@p@yp-}!~~ z2^V2%A-ma&9(n3LejCtuh*^;f_bav-$d)zV)5XuVv9Xz0hP*E)BhyzNH9@7>7DjHK z^L@Fp6qnMWg~1Ol+VkVbpv5E#Wd%t}B1N?{-dWIb@k3d;#M|q+!lK0eEqpc;Iqrs8 zJEsPX-t}W$7i6)*A+zS!ye}Oa1gIi1$fJT?S7Opu~reaRfM zJj^6PVT+`k22mQ<-ct?a?$oo4p!1DnmxHj#wa@12j2nB(5lGdP;=97a2JKX9pA?b; z{%fO87Bj+kk~*b2N=(~29hM=ty^o8_KH9GaQlWh^GJSKNf>uD5~O%CBUm6pMu+|k>sq{j1(5)L{ua$M8AC)pxLlNC>f>#2)Z2C+D@ouCiO1kx~4 zyTVEbz6!da&@$jM`G$==jZIGe!F{>>&EIf5#60{G>l6~c$iWPjl2Wht>5+dx02wE>dObhzG2*PzCis;WPFxR;+oXR$;>_v3 zI&bgh>Use6x4y2<)61(Z^fqK*+W0Q?@w#Yh?G?aBJUq_OLiRe^+1%Jz94-9=LCJHv zsWfAeFx&IcZ7Z|Cr=M&ah|A&)2Z`M#Or@OSp^op8la&=07kA%ZTmAK`FJG$&%3Dqf z^T(VVX^Wl6?4!1}Hl_ERUweCd$H$MOl|)odQ|6+CTa5(EB_4xzOSdsjMnsfewgw!s zN(uH~EA`q1eIDI%M5|9$Ih^3$VT2NxGAF0*z}W*+P&UtKN)U3X_^XK*f1{cLJs zX{p0T!O~3RXpxpWk~;k|9$C&*J6&`K)Q^~Vy?c9mdBYb)PBtX!iN&*~$SEia%J(&+ zX~QYo45`m+9Z?LDy{u;~TH4oYG}6P`dwfc!(dg}kMQN)MZfk68d|99YVmj~S^a*il z(RaWUy9bCE(d##F-aKh@^YuxQX&K}S_KjX$UDdFCGErqmOLQ3=IMcRo?hW7WzF{;e7(_>aP0ndY%5(+Hai+!}nXP6$%Cnc&@=E17B>@V#! z1@X$%Stz*70uciYipe<#a*riN(I=&2Y3GrmW*}9`IAOnS8sN%Gp(hH8!Js3DRgznn zU9oLE)m$x317H~0Ify_gJ&Oq_$_eX*t&IJRTUK2Bp4U2Y%>T)|J2DHY>H%2~$Mv8d zy0El}-h7w;eP?MPR;0#tGd-ecqr!Up#<-=4NxCyx5T=iz@1h}Ocso-KXMzkJd#AOX zATpvoXOhsq+7n_1F`n-}p?nl|RrE&wo*_;Dm{Ojw^s!^J zA5PwQpA)4P9WE0o&M)#b0+w!;Y~8{s9BL1Gg$}4ppPheoC-ITfQHO?v3^+>mbajoF zTMk1jlf*}*YA>(;ab|8so?@yHv*(KmzG=^lX^VtxWqmEy?g|&Evw2-_{rs3t1q8UbwgA*9rHKgJ&j)_`#JIHO z$BI1U97&iMtFZ18ZGKxDm-BFFKgqU%aEnBbF0(vasol#)VnMm zE=fmFPPTAIYwYF%D8p38J#)JFNeRW;&oQFT<7^0B{dRnWOR|a!4+;_QHSwk9sLetCQh|+0oLT7b474N`* z5`d`wWad0TXAO5WbOK~65ztWq`l0589kDEsHe~ppcKjZK|ki$hTaco z0ZBYT9_4|(g98tnex;28U|}B1p?Np5+LPTsH5CYCuw~J*!abpKHgi*d6c4qaTsVSh z&4`sXUsev=3C~th@m>EGC>eh^28V~W2KL*(e}CM_D$soC^5ssXf-EH!Rgq&Hr&&8e z7QHBtsc_LV?WOMRKfNo2h}4TRb~3&$!-)3;S4DAI*qAqDUL*ohSnOjeua9q?#+)G9 z`F-hOQ(LKv`i(8m>FNC3_aQrFt!!%UHplmGR=jy<8*DdJi(cHc%yC9v9VJ}|ZTb08 z;t)Ux`k})rp!)p&C_6hl$s2d>eBKdh;RFOMeM_0WQ-dbEGO;OW7tfzD`re;88)@U3 zcGw`JdUuVLsP04_z)%Fe(_~#b^rvTB)*C4rIQNSJ4{{WdFE(7shM>O?+tV*3EPQ%$ z0(s@r!S7UI4@_*Rt7jhkesvxTBb%0e1pup+HhI2T7%B&XRaxT+B?K}rFK;ZthU{5b zeue17g3y#^^JW3jka1Z(N$_XGu)_UmkBQs^9#e6R_*Ea$vB;_!i zk-okG8%MH?p#bZ!%a&y2{a>ERNyH|lrmoG+aT_;ZMAmM{@(T#q;bXgR%$(1~&9oTI zQE?;7x5#{QXzsu({e#3@rr<^1uZ18bSRoC@bhBFlW!=o5mT2+u@u^E#@Dt>-`Ac)M zr)Pk<0b!&Nu$SEI#-wZo1!fx04ZStPToy}Q;f^b-=EYQYxdZhG>a-s9~Tc~kcZ69YFdH{jQ$jhs{bMy080kx3D znSN*7s%E#5+z2ZgREYuTd{JUCMfe*t_EEgCM|L}hun!JE&VxA{GqcQP)0OkD7OflKDm%$wO-URyqED5aTL1K>xvWp6 zu%JqaQRib)4&)+zeOmx%sB8J`EE3i>#W1U>i^g`CrFrcoAPCj6GHL ziyuhjSQnS>nLFLhX<+$(hT^BakHZZ5$Ho%T4a^EYL7aoaewWt^Z3l$?5P#OL;o}bv zP65ndQVc0F%6K5`EN;18kW3riG)T z!sC%WbYwbydISLhcsSA8-$b!}Tk-(x3M+uFU%J3j*B|F;$o}QiaBUz1 zkUlV%uY&UzgT>B%epnvbZzUX%qH`|jDlA^0UvX$QG1+TJ1#A$qZiHjX_VH{82e7Rl z-QAYRJRX|~e&jvrl0d1Dn@bOCCjl1+?W=gW^J%Vglec`IP!|3PPNG#>mrJT%cQfle z<2Z~8t9Z(lJ_3wr zcnh5$v=Zp)=>a8>0q^m8!`-;MGVGwo$;YQ8E&Y>+@eY?6cC9-s9P+HZJc?Kxp7IsW z$ApB0!e0xD*VWCxviB-w17l45sJOIsS1vsFIZc_pRc z-IE`koxz5R1FAs8jZJNu{37s*`sdusJKNh|Iyyd>VRiyZWBJ~ViDy@`?9|*n9e4~@ zl-YJ*dk}4eJTHEJAc94L&AA7g0}a1?FX;#2(BXVdoP4WdU$Z&#EqY(N(X=Q!I{GWt zJ3r;6KR=Y)#;-nXD6!*}28#d6C`?wchrF&Q_*7@r5eG%@@?SR&cM{le_&W(MRuDhd zDQZ?G7th{|{_$h#V$Rsq(e6sA3(i$L@MXb@^{s4ozp(xsF{2!g{ACTsE-eEvunpbC z4;tubdtO_SOFy=7^|I?hT8Mwzz$3-53EbY!-aHx!gu)hG$orN z30UqA{sj>F$$0%fEJyh&7I2b=bxK6X0Vho+hKJ+-1&xsenpWb{lAuyS$(WVNuW?zo ziI8~)X9&W$aJM%d-UcgaNH%{+>numZ0S!PwG)D|jg3_`wb%T0f4j^AAYQo+fZM5LC zKBT@uY~+&yDhIJ)fH5o~xv8n?FMkoB&X5;`#zO-Gf9|x|0!fmP zq={tW=2q+R7$B|pY>H85(a_z>FKWp9;rA2tn*w?4pmq=j0cdx0bo>%cMU7V$!NFdz zh-sSYLf0zWJ)xv-d{RS+(e|XVWhPfsbi*t0DTQW4|C3cNFNu;IA#=(g8LxaEOw$;y zaatwSH+_KU#GH!b)9hm3P)zt+)4S1{j#}6=2% z)7RGr=L+ODR%T|mgNaTqb22kAnkL4y z2VK*V64O{prcB+};UY&bK&#R>g*5E}iYNeVB!K7k2F~_`FvO4biRzZt3FWNCVT^w} z0G|reg#GsI+sTP%u6klxT3Sp@nQ7ZQkXIzFv)MA0ZEe?|b;TJ}+xr{82i*uz2RL2V zU;~gxw{Tos_MtV2p)x@Kfh?t_rn>vM#Y56luLNk3Yp?|lR9T4`kbYPMs2@nXc2K%5}UQvr4RSIb-3dad?(b`raJ!ZQ!L zlMzT^~RXKG^qea`HhU0k#bv!My0u@FE@Uxeqi5#OL zFptqY?LrQE5SnAgb8HU7C>6Q0s^CROcU=bj z*kb2)49}hOhG*daeU6~;e}By9zlUr7f7^twD#Pt|i_%L=x1l{1_yUeSGcz+P3FOM( zIt#Vy4ITq7xZ_P!-UlC{?Qu2#7qouX*QWtpK=%`FSHIEw^ji?IeyrJ>;>iq4&_NCvixxv87zZ>qN0d1O54yd^{a%gg0o+??k|GN zwnwkKl#TAc9#7!2O|7mzgv%Y^lP=s_EA15lqswHKohdz){9v5kLe+a#9?#9$R-kQZ zaOBAQD)EpG=U|7IKg0DwI3@{_g!8M<3-evM>I$ZzVI@!S76C9Vj+L_>+g9rveo{;U zeWl!D;5i_C$l1!Zq$38(@KRMxcTNIjC~@zDJOgo+Ir)PZoOZL4V6v$&0p`=t&|p1Y z0YdaChz2Ed=RP2+Yih`D-wtXu*(=@~iob?w$g=+YAm;nIpg>Jk71~+Z2WQCw4(g<9 zW92JXs61c({&5>MyaixF4FC;j5_XUmR)&j6NlE!EhpgaN!R)@;m(li7;;s6Av&VY< zFgSnf>goWEbS&7HCl%g2T94(hPXp#Otap!%i-UA=3ROOlw~N6K zS{DyB9^3T>x6VRSgP?D1vi5dBWQQ5BbdNn0H4P~IDE@Of_7Kltv+b=_V?T$9YE3_= zu=^mxl$AMxqXgQ9y79LCnL+jSr>DpJ;H@n&>RJbJ7Yc)H0y(*!rKM$-KPcUNFu@Ti z?Kso)8cJ$v_cD~kRUOz|U0s%&A+a_JbTkTc>VNyTGYYcU3i9%hVSAN1= z!NEZ=@u(kzVq!-pAI-;$CNOhvOb1W3;JqM zj-W-GChC*gNMa@aJ}r%-j++Vdz}~yd8dOwi)Di(GFg-!Ch6n=T|1Kd^3Mr>uFgF2& z^7Rn#IrF3meusJ8yrnG#1~KTb!}&Y}um}CW*0m})JRo~Ow=oazo?!Ghm^L80b!#L~ zgB4nTWo2dU?a~Fuish!aD%c+GdS)4>L`B)dm0>~!EMdjn81)5k3aIYT5lMdk9@@uW zXJ<_c6y}x^WRuvKnX94vL8ElER$IdyrCe~XGIQvxXfG*$M9Zyt9GdE{UcF+~DrCab zwHdEig$l;a#RXz5VfL7O9bFTcpJx;l$Y;rZ*TAHOn}7V?*32< z4~#pYH|KrL0C1J&xfKM4fl3`;$sk!+d z6zZg#Z@M^)J{@pPP7V_?$lr|Xwx9~$exy3ff})AvMa}!xkYtsi@Ibz7Zf+jAdJPvv zYUFAB>{;tj1?-SQ;sc#>1PPyBO4GZKV{uSRPsf^xMz+VxEVv;9v>Hx+l(?d$r3H?h zEIjDROnv(%$sVt#t6O0?yau8OEXurXV#GQ7BpzPg=X^=Au~`*Tc_dHc2X%w9ZEd8b z+ab%82kgVS2AN@PZS4v^r8)`?HaI$(wLPuZ^-{U@urBP(%rJzb1Mvb$wte?I$YlhP zV-o2s)Kd9tFMNE^5UZ?fFA83(F0X=oZ40i{Wn{jF(k4kselc3JHn{K!XI90?=;)=3 z7XimSE+5$XoJDs2Y%WMwD8Fuh$^-SyK-`<~qPHGTtLEkmF?3WOTzh~%FWY!VOZWQ% zc~;w31=j~Ly8j8R7f-KWzwYhrEeXKQ2Q^XxU=RjO;P_V9PB*|G$QBSlYPzk^6&f6T z0L^_hmS&rm07T(*K*f78kgWh^402Q}+fz$RkJ)cQAoG&kxG`90AjruHx`ibarhLr; z6SU{z%naw#rgM;MA-@4KXn_6#q%@dAv>E-9m6kRQ1t6$>Y6^PO(0Z5+B4&gkXA?_H zjBF3mgNXZ%bO{;cL6Z{gaM23b`h9FH5^w-GS6#j@b@XJ`dXd8`ZD2k~mdkVw0~aZ%pA#2gj+Nhi=Y_X-gFd?t zR1Uxna0KKP6lxupn%M~m2%egm-GKZ|OsuA^4xK?&H8qHDIY~fdJN8`iVC+3OH~{)2 z3?o(S@uF}kz(wF)HG3P1Ca})z;Sg@UMNmf| z4=|=f6tWsngOBiR|8#%47fv!<2)svDdxaK)D60~fur;W2-2@BP&3oDaw9eKbL;?=qsMa#UHpet^^eP^VhFmvJTse!}oV=LTCzv8$pc#egXjimOGD)nb-R4(2M=k zV;6e|Oj_`H5OpDFQEqHL0~hz?ZAyuP{LuJJc_aj?S9|&5Cx;=g>9%wkUf$W=T{x5e z>bwL;y(He(&j(Lq++%G*U~i>qQn<^|LkLV_5v(WT!I~3&R^(7Ppk1F=l~I0KR?QZw ztAG#Qp;q56_VfjX@Jc!q(KESL>hO9CL2)z574?MGr2dHK-(V*o#pdr`R2vOYuBkUXKU z?%Hz$ApSID5l8{Bl-$hBOORz{v7W1=zyG+|mJ$QrJYp4qW;eK1_srmD4NaspdweO6 z7RA?ALj~2(-$6fvvZ9{<@uuDtBo$p2*_M^Q^nx493Wu${^qu>;p9vR{1;))^gnK$B&ayqYUDSL=%gd{2Q3AWZi*tt$H|FslIyrIuoG^g!X>L5wZ7jH8 zn(w+n_$74XEW`4LKh>KZ{;DNHyn4O!K)io8jR?xX*gCYS1eaBv?uZI5|Ar`$Wuy|mqEe(ELNAQ#&zNTKJHO3?by$x>$98NMtE$^2Mr<0 z09nJyg<&Y#yZU%Yn-fr0q@<+8S(FkP(+^Oky)EM4L3a+|eB zz@{_M(?gv0OiY~2wuVg5bu>2yAoT3kCaMAP9v>Xg(bFFu9RV?dZNW~~(UR^HcP<-x zgtN5j{u#2d{3k`dp7Kswz}}3EPYy_pRw^~tCsoc4Rw#t)@x^rUZQLa@wvItDAQBG~ z#Rnz|1J1HaNl!mjsn;DQ1%k{A^UpZ0Co>=$LUo6VHUb$6bRYQE#DoO9eH91*iKR0M zn5=E(E(MurC{M!@+-DQta1ct5t^dBr4(NNxA9kvPeAxAdh}T11S85>jS+8^qqPc#MnUI8X z1nBamD_1;RT_36Saeq?I-!tgtjNi}D(>EZDAM#g3ZzsRs5M`9m;S{8 zt6K?231ku777qYiplB7l>@zDcs-1mjprhLXM=PLLR45tbJruvHujHedcQ@?=^P_~B zirK8h^-{5KB`X?v7EBMZgf@ELC+%mVzQVV6*&eh>_BJ?hrqjb2S?*;Q&b@kx|Irxi zvP6-~8@SHAyje?wx@9i_d1mcy`c7~h0m3mcF#+9ATCza5eD>zzU~cr->`3R&E;|O< z{e0knOlPeaW-K|szOJ-vb3^4b_&E`fZ3Hd+mb;^^0;8g%-FTWpvs<3a1bp z>hI?QjsL*|b)GhWtZK4N;0{_`n7fKZOjMODQ#p=$pkZdmB=M6)FBh(aB&4Fe1q_7x zB&q)NX%G`DD=YjidpthbgFp&l`Z_J_k49}ji`Zn#_B<7)pOi;;E{;8rxD;^_muT*9 zoZ`J1+5o?8s;G}49T7NtetiA<3vL-mdB8Fo+zD!s7SoIaxPmc{eL625d=rxp^4=_x zJyft(DX5Mpzv%4L@4_Ft!O<{eYf19msPX+ZirTd>u z0E-6x)QQPSfYMgx=8Qx^kO_rhS^^|K(1zug_DBi_ItYN&hGj#H+RwK`D=tuy1~zCf z&b{?X0^r!aWn|abm@bUh=c<{*=q;*Ub|$DkbsoC+hQ(h&*p^M~H%eh%S1 z5pDv>&CU*v!Z0LiXxV^rS5RQBtV|#nRA<5ihhz+qLqbk|JlhHlK>WS)_?W*2rN;(D z7g%LDHcu_v8|@&*WAEF88dqLY0&b-qxM%gZb4Q1VURxcEU%!3@st9AL(1-`<0a+(w z*!KQaT-=kh67N!72bmV-3Y;-(gtQ68eO*-5=9Lq1} zbl`bL`SGEiG~?jhV}#-cQY_GN+9&VkQ-hi>@p5u1KYe<5{7I2QV!eWisDB%LT0%lX z;HB4x_bRkt-s@OAdvajxfv|fvWm#PFcK0*$8fc?_ZrZ?XH%sgn#thjj`CEK(^%Rj5 zWCdk*tsIGzgvw)3-QmO^Lzf>@-T!ViQW3C|ViSkXE_wh)AE5?j<<;s;3Z4_jhN?W5fuM}ODViEvgr(nU+DAfTx7@^_|=HN+4 zi=f_O2tK&x*2Em3nvR37VV0^D{;H5s;H9Z;`2AgCcY#MkvVcEql{{J8d0;TdOu_>- zn7E*t>j+?P!nYW_^x*g8cHMZI)d~afPmPVg4lP551sNO&epM0X#ZmbKMB-Hx3P?zL zIT=D2>_31v&*r0*py3IxDkqTLHlci%meyM$Xpb{psbjUaz$sMHxC1TrV~mGLB!$~t z5n>p22$(5=z(Va=z}JAsdwzRJ?f|?_NKAAF`2ey#xN(f2kq8nhJm=DaDPy2CLo^Hr zN!$It1-^>26E~pdAe-Ud0v7e^{KR8O3K+n2otQ{k`svbc2R@j}AHoydxl;#2(BS@L zF9steyu>f$8=)V#>iO-%(QbnkDW$FL9Qa?mU0_hV2cVTo)cYQ19q6j{&a1kBH`9bY zvUeT@!nP+Fin6gOSZt)uk}8B_V^8$yVrhtpUabjW=i_sMCC#%orZUM~Q3{VJRCEt( z8Qcvi+8x*R-yG)nElx&1KjRF;agc_g_x7|ihI!%wP|Up20Sn<%f{|b-dWrAf1M0^1 zw1H6wBJmWEXlWT4KS9w3hbp*me)RS>x@|uPy3>#62YDO>omsb&yDMNn0b;rQ^P}&l zPv$_SVC?>OfPmN0gX5Q+dsfeZ;DPhR7WCP$ux@~X0QEr;yYbe8un#g6J%W1n@n z|0&RPbaWssFrA6<0m??^X<#HbCnr!zL2?tbx8H)cObEP!gR2lgZS}xXui^Uy-tUZM z#ayS(%>mdC#%CB41IcAgUcDqNnEcP}(9x9NN z#BG7TQ3@Q<_LJk9%bFb^34ucq3DG|@GXpvL1}SOjYdl11UHisctp=n* zh?F@Q%9N;tLKz}6MaVo4p=53_r%)kdnWxP2lp>Xc%tNA-GG$7L@P03?wfEZ3TF?7F z&*$^|`D5?3R^q;|`#g{HIKI;f7&PR`%)FAW=qZ<8*2*sfr5A5}JvKfc`fetaO~$k- zrhYZoltr#kY`R^0j46kY+0z~$R#mL?kY?7Mf{u!BJ31g@Na_v(OBvrJ585?X~ZUcJhNw|3PU zv3YH|`aVmCZ=7WDE~$si=mFZvxVYQO>+bCkEvSPpMmK;ppydwJ z&t)6}Uux*L2B;tZt_2}r%a70#bk&qC(%iqyYIYRDJ}rk1NK5*w|4OC{p{1H&k^UpX z%T7+)-KAWEOwTIXT^CR_Bfk4MH_1b1 zE$TR0ya3G-Qq!pmu515Um}KhqoSf15UrAmumw#7pO0F5b97^%0jjCV8u0BbydDFa> z`#HApt5cUAtb9yZ$p7q@Uejgc-lsKfa_ap_CobZL)eN2R+_^6_jQ*0gQt(Y~`>>MN zjX44Sz1a^{&s~~Gw(Ao*I9S5RpuTkbiM8@q(e(ux^|n^Yi?@hX%hY z?YHw(JT*wxTf;CPv1R&g#8$Fq(nCX@k`9uJWlRo|_$ybrMH~Da?(C=^BB>QU`BT&M zhNSpV^WuU8{wHJyVINZtBd0xi=IogV<4Feb_@+aZJqtFCo61bu`;|C9?Rwwlb)NVq z_5myRzMb>G{))ysi_TGz6E|(jrGM{jb>wQim2hzWWd*WS9){1|i&e^OYHhif@1xV( z*7e(`j;l$6i}S(<#7??2*Z15`xx}F_!jZvWG z$gxaFSB}#-%Ud+^V&aqLgBkrdj~NO-@0K$eElIg7S7gWCpZa3piH4bZ>ArJOZzM!U zBIsOMJT&s`%0u$}XCxN`isyp|w4puncslH<^74*!>h?}yd*HNfG z$GVO|twE1AqBVQNXxE+BK_l|Q2SiVbI9}?miE{LoGa(-Kx(r?Iv_t#Y6Y|8RrGo>9 z=cMo=8*jWs=2QFY+u`$x7u`n2#Vie!;%n=F4q1F-7LoUmHfy!$BFT4;Oxk!mg72b^oQlU&^Y7$o(EW{8Nc$LnbjG{AL_9V@#~c54y{jD zKXWQUi!b11yT7=N*4%Bc9hL(jzCNmgiM6zFDX#6I{$~|r5zkdCG=z@bb9m57?IlRt z)_G+{_jH5OU4Qe+?UXHDvGslT6KwBJYLorE;VFJbXK*-rUA|EK4(GIwM@I|e3@25$ zszotA^lVUDu77?1On>~DF|PN{NA16L7)Fr|o%3lcr4@^~v+6oJzw>~E;wrmEU)1QG zsQyppHt(YxKNUrV$FZ_5=6<&tiz|~cn;4Bm1w4*Ks;?pirN^FYI`8^1W$q|Cd$blr3g@ zP8X>Z#}uToWc*)dvQW0<2&hk8pV;~4cBZuSR|ZPT1LATn%_A2n8vV^4XUh$<+1lzH+K+tdU%6wZ*abyW{F}|a_nmylQT912oi}|%@pk7X+knIbs@{t} z{%PSqtj5j+J`7m;9&|a{Ra%;XPvz+rvX;x6!#m~4X1|fTP6bWuyk`^dAq9|fZ6VoR z7Uq-=Rd0+=p2=UmvS~xU+C_&Q4p9tN1A?nll0`l)nKwPE;@&Mvb1p1;B~lZ_)uKXr~vo^A0y=AqXnC>bZ7V?obS zPe_55RlRpHrkPN^w4lBWA7GxwBM4MXyitg*a}CeI{1^b z8-;8YFUcv|IXGE9{4Fu|zLd03XSC)0R%sixBQxrPJi-3v$~uAvQ+~4v@Mm|~Rq}1w z%|tZfmSc?cmje_WVd>>DA!gYsD?xdvjfC6XEQtQvPM6QSPOcU23&+Fhm3*2o0dT+6 z_6T=pXt58@r#~-0BxEl7&d|KhV#Y?gN;kd4s^?D1^Vzptqwi(k>833;e5*IBEBslw zcp&GP)EzcqZ2 zZ}Ii%rBhe9e`xJqeiLhYDe>I9SK__9axRK8mBa_Xy|=tnc26^|#bpb(*xc6BByjs= zBw63Mm&vt{+F@B)?F{Fq#rTw%KTaEsw*m>rvW?sBR|#buEXv>anSR+N(pErPTCPmU zaG%GX<6n1$6yCd?+>&iI`{~Hm<><$nuJ50+eb+hjDp|=nOiXI9?B2F_3GoxghDpiF zikZ3D?^5MH%(`rLC`#RTvXJMR;RHqKVph7Y>euKP(O@TYd<1(O{Y<4>wLH}a0-H>g zwf0fn6teYBy%XOh%bVKVtHx$ku76zTV}tFAx(0V*E<^j3Bp@+SHqjm^`W z`7Ig7xm$XBMI8;|r+)hL8{Z>$l3*D*bo8Em4l}Xxt5klM`7I+mf{G(-tqMV3BU!{C zI668S6&B{RXU#D0otJpr?rqUiu&K#ON$L++5=(yt%F=~xUOREeC5Rt&Wk+-M#dL}g zGS*+Gcg)S-*ZrYuLFe?}2F<2vD{;3$Kr&88{E&55odsCbmmZ$_^)Di^nVCHQgCFw0 z=wbf*SMui%`OA0M<#22@|Gr!Ph-7p2n_IundOf%ks?sB~8q4uRacGs})*G9pM2VDU zKMl*9tgNhXZ)ePpin+}h(>;eeAvZdUIm#093Vg|u==ZGf==LXmULNpb_2Szl8a;YB zVKTgBHKnDu%!H|9QXxSzXGN#_OLyw7OzSw!>{Pwg%>Zek8L6W?lq~2aOMb@jEel0fzP)q)Ox5qh zU5ZXevjw%Osi|i-*{uDjbtGCOJWb!M*sJ9p%%;xS=-vAH$V6jqq*bCJ|AeOIwt%|! zhuKl%*>b=4?qVr?Bh2gM#J1<~iGiQ;64@z5UTyO`He_*z%F_AL3z>)b`ECAo=hm&Q zOBNX8=zK?@FowhhZ8*Mw=e){lIFK{e-9*WD>ilE(bF87#Cr_4@m2r8zss__M;P3Ab zF#%>a40ED~4|94R1<(K)iYW-+y1GW71Fv5Pc?`6-!{{M#D=-l1P)PQADqTQs6$}O* zJ1~@!)t`rPatu~xq$jGXs)F0n2O?ryhp7*kAcXhgP+arySb@61D0+BpaXoqax~3*U zJ8W!pRGx<4SiN3iZ1~5a42$%iE1y?YS~|2Wk~9Z`;;$cO^_XO77kU(`c=z`1BZAQR z1Dp~vfAb!47@P>P$x{!T*A_7r#E(L zc6GY~H?8*a0!aqE7ZBu8k3|Hi6`tMynW~0>4TsI4soA{Q4-8vF1RuZZ%GC2}(5Q@Ih>KxD?a&rf| zAyGj718F>z$+i3t5N1S!PJLZpuTpunzV^inKLa`@CZ?E@hT$0lnv5|_UywTwIHK2_%SmCl{csfC~~C%^e*UVH}%fs65d~Hm=)#ZNS)nS zC~5Gub0<$Y;4j_X97Hi#NBZIIg|_BT?|c`%PH>I9VmkCl=Gva&$s6nkI&7jHj_eUr zqM2@VXSy`+LXcY5h~W!(52q<1j|(h0+}qu4{_4`& zY73#z6jj<%Uvqw0MnW;=gNMa%m(xT>6s+eV&kTF1^s-y+1`-R&E!FjhXMp}46cNdZ zc?sZz^Y$$;k{w2Dfc}6KL*A(d)*Whp|KZn>2L&S^0n)OJC@Cz&>indK3B9D%GE=x1 zA&k>=bDt+zAbVh2N*NUViZScwCD^0^*k1g&Y1>*b$5rpC#*h$&Y{m4OB8a!0TNw_v znAj<_viYdJAkUBv`ZR5Ad1=tGs6c8c zN&<%7fQ%4N2xhqK+$k^s!sc(7ot>Q-7@`5Q0Oro5vTWG#HY6kjk}$rrxmRONoM7I8 z^E~+0tz@k(x1lYx`!AT$>lT`;n3{eD%VmFmZ9x!WB>v}4H7Z!NHO~%M+}T?-x4R~D zNnb1`WGTn_Nkb3cJ6X@WDVxX6$K0av5WUSiky68>e#NJ0GU1xorL&NQIDr6y90bKV zqnX8cvQ#bKu#W6h9dZV#PS-{4PPcI}d<#?;TA%>w zJ5f>PNHs$`nd|ZqZ|FfPJ(tU+SxL8VC)nm~l*HRSZa29az{*S@`OuQwikN2>U9Y1rAMH7@$(%D>7wEO?|`WbLV$ z#|v-I$oTn^ZmE`er8oFj6SD3DV@*b--!D7@tPsnGBmYk*=a10`U{6SYW4h*-rdT&9 z_XDIIpk4slYtIC3MSvTxO=p>b@E=3fMW)~1)HDI91$5iIO7VX-4ss*QI27?vG)pKf zGP1a3WL|*Z(k-=TVPpFUp(u_E5kRNnMMXtGOD#cioI3R!z?#|X`|*e6+F{DMx40I5 zF_#SMgki!*6pWgxdoNKAx6NKsJ{ zp7PJl4{|I%;0zTYZ-Ye1^05y72$UqM7 z-nrAv!h#Di&s{lKUfH&!1{&WLh}VfF9zv1P0Zsj*NBhAyu%sKgyZ;1Qn&Bn!7E(DB z;!C;>PoJ`2odIeM3o)!ZNBRMlL)aV2BEYrc@X9MFP^*|iL813e*R3c%LpWWup#%ZO ze3F%NDIZ0KymrHe4V5kb`nBxdNS(9vzySuKaJkp&eBIPGs->DcK;a+aD^6xE7rF_r!-zNoG_@zSQ5V*oba~ zaKk1hBnS!$q74$Z>qp6YRBHH-Z5ek`anvJpC0ICp4anQbJ9|DyPpoK5!;pj6BAy91 z7ne#O_0r^>J5*WGQ2deClJ63FSzCMKX0_odl%_81ee`IU2oMkV7_?oKFd@HMnxBMd z^{iEMjG#%NG%L{zrmLmq=jTJv^I>S{B=-#oo&vMAv-Sg7yyi~c^JfdqTVV5!!EqiM zN=ZxG33{~XbhcjAQ68StFS{jJ^NWfUPoG|b1jo$EN(U%C45W?s1*8O6@Uh;yefu(K zAbWd~En6yZxaZ{wP#zH#O-)Y50hOLL5 zAM`>PG@Gy^fcti$6Wo>3}1wQWN>1l5&W@8 zXmEl&CHX{LSkFP?yv8UHNjz+JS)w z26ReFO0DiCkQ*~Cwbs?ac>+_5zds7xJwzO7Jn8K{dhnnlJWsO@m+!{J?4EFq(3XIy z6&Ca}-#@r7eDEW$Ewt>Azi<%w^jO2C5s-dR$5G6v%gG)*f{bPIT2M%wd%dA@@60Lw zdGzu)LQ_By7$(n`(Ho+(&$(ZM%H@UJ01!i&YN<`|8zBC(8b{T&DjsHL<|9WU-&spb z4q60rLT7K)pwg@nHnn+^V16vIQ--64&Q)ELfkuzYG>+=Sq&Bq_-lf+Q%b ziN>u$;r#jCOToVy%gY;#AX))o@&hdMTq646!a^ai%@gD2_R~T-dOy|N&20%>-k1s# zE0ozNB)iDdUtwWeZKQ;?}MU?f4f^&)XS<_v3-EvwOR(qLV`h0+t`Ua{)@WRhXJEk#U;HTe@jM zDh1Vlnd^5;M1G;ChfWVWGEFbMJq+YIgn`MbTuU=Ze;khvY;d3JF@vE4(O9DP@7Hmi z-}-qZQW_FG(3m}5Up{@J2yMO4{%ZW!!Q!nPg13wh6S`$@kI0yq{deoBCx?x;BIDWM zK8|>jKI?yIl#@j};T=IxSXl&EG;Cqa0NC2}Aaw^FNf2+YhC~lu78bP9{?4vc9dEk} zJNvBTwpp6}lP4e1%;o+aZ ze1W*WcjXe;#U%UKBurn&hCYA(Oqe$hofyp7UR4=?^WF83O|OjeF%?1Gb2^Xa=th0D zu!U%(&^$rM;p^vDK(C8Vw4FCaXjT4)RRy*Xbl)HnF}F_dM|6y0>oL0Hhmu>`EAVzN zL+PkmdIw3)VYW}&Ci$2HPvl}P3kayZy7lFCWNp)xLNsr4Cw6MPrBH-*uGN-xr18pl zK&a4zXF`!_&q8|>`a9|fdIX`I-QQp4n9BH;Z~uPC7MVq9{8~5OMOWX}Fme<<4FbJR zNTZ9yEA13=ehFKFvEVtV=dQ?Cx_-|<-A#FYEmd5)9V99G7Lci1taT+NuMe6_LB4*& z+rK&zDi=%=eGQ;KH6?A32m2PG)jsP*}F+`QkQV1tdnZl`{Grj{Kh^4XbQ z4y9)51VOj8`T-P`G6AO|YVUZGAVea)7~Elm7%UPMwg?IcXt5|j(?LWX`T4;k?30;E z@ZdDf3t^`8MC!l0`!P`iBkVJ*4zH!JC2-K3UDL4JLMk2T=!V-6nAzBjp7~Q27Z>BO zA=$P~Gs>jBsfkxq)D7VyHDgj_B9+9UbLAim%Rp)*JS)*LW)}p_Xa%H3Lj8AILBYw{ zxdhuv^zweuuVkY3>K9e%>zti3vNCXRVmVpv$}R%{0r3?u4;)>ISfC(&;U(ysjmDWZ z(UuxqRaJ$#7nAN@s(MU6-m}?QK!W7oI<)l9>F7ZDd<8QeIv#{Jgg((F^7F8(mVW%; z+N*`b58dP{wHZBRx`#`GS{+HCTW{o7fD#?*y1Bd^=eclNU7&mZ_HD%p&5+D^)~4_e)6NC-XgZ7#yQ$ld zlz2e(h@u93%f!?aP{azbB=y}vqeDYQfP5fRmSw*K3A+1_p@_ikM(-zeiHlv35#j3U z3N~KfYdN{Cr1r1#ntU_MIL>W#^?TB+a*B#XQcG2pn1v@l(8g65b85sHLQ>5D@bHwa z^vgs=beoMiX5yZpxmW3uQZ)>=E@z3j&>|N6&&-ADEpT$O0%F?Rg_dt+Ie z@pEZhr>3&kL`$RW*KgD~sm7?j_eZDzfv9N6QD-Eb|Mg0^lh($-KgqatB=i4!cjZ5k z?~kLSMC_XQ6@WYrgwCCkmWDH-NInoL4Et*Nk%BgSY3=vRl5DkucnnL{|JTK1m5M=> z>-qg3K4jjohN)b&_nESRn)yEw*OKE{-oR>r)gw7BAIB1*=YQ9Por?BQ0=lS)Si%hf z0~MxB?1uRGc=%@w1|IxlbDmtv^>;v4-H8H?#y^fT4hAZF1YZr%t|%R<^E+ht%paiR zY4$sq2ZyLlxN6`|oElnN8tmR3#L7m}7Th+D$edh? zfaADZ3FkE05qc)3$%zR@YU)p)KNmZGIg@wxNCs@k=P)i{q9d$9&M~pEP@6-}g9=w! zRRysLg{VIe7vbnQ zB+Kx_sA0!%E4@@LL`lJM1E z=gV4|@4lLP7A~>=XVEW2S3tdUEkM{#Nb$!RjUkg#$+NuBy1_0UE}uN!00CWrox_&@ z==`n@20{XbETB)27R*w+5ZVoP)C&*_VfjvtW=0KKx1?C(X-HPtpOSdGCzLVI&NlX%eN z8jnKZ8}wKaKjXnMmzpY|Z2K{!R@T00Zk~jf1ui$0*Hpj@(LE5}PENwqgk9CMF-esx z!uZvY!)2N|lYi(ofA2r>A`!OM($f2Gkr5GShjm$aW(rTX;Z;%ItOM2_Xz=CKRQL`r z>q94xkM$S+0&%B2*0v_BySQs0r31wuG8+!tZNqamY=*!eAKWkp>EwNML`=X4N3#jR-y0AK? z2e9eX@nmm$@bIJ>-ucz)Vz3`D@FG#*>HM0;CxqfLF*sr$B0B1xYR?X zgR|U~I8{c`1N?xNQYMJ51@^?bSm5{-<>kCO#gF9fa-dg3H$a@!tAPRMkO+|&$(F4h3~ok`3S;#1U?w{#S3$#| z+oMZTUg@5Z#w-741QvB;s%Whi)$C84<#;WK2BQ??`ET+Ta7J!xsmiVUk4EoSK>fu2#U5bvEz1ih%RPdDSbe4^xV#yfV1NA7Q$9 zQCFAO%n~E+QGUXdekkC8(gyE#O?E1X?>XQOVGVuu;stbmYSU^&v0;8KsD09fo=TD; zih_0hFe&lh0P+$4hp!KelE40exlhWUCGpok1LFGi54g1Oe-I{axARy01ZpLCAn=sQ zN=vY9?Rxwdh<{|g`!`lFV z{|kB<{)_4*3zck6UpK|T=KCH^7^)%=%aOJ(v1CyITo49;?CFru(2Jw(=>Q%X=;<#$ zfahWjV7>W37*7E02lAL|0IjaC+ceYz*8br>-tLRo#mhOh=taJT~Ea+1---K>+v4 z&No#Vuj(S{VC*ur$aQ8q_8g$kvT*e(D4efyExK{z_o~XnA%BN6IkUU*F+c-Lqz~X2 zh7IB3I1k)zD(G^FXrG%mqs82?@#wt*(hU@7p0Vk zl}^$3(7!;GTkhSubt|NCM#va4WvYNAoZ>)kaq;BQi-X=szJ4-n(fcSlc?i=3{wS+E z0iP3Qe6k*sWACn}7F*}|2M6y<0KrtCqr6-271QN7is?r$nZ#D&n3EXN>e_Z-%wGEW z!_l_>U%+X{t%ao}(W6I^>##)vDILd4{V2#;+1Znjm4JjdD z|G|TZbC?HCQ-Y0vA)S?EX#4elY*FexEKN)f!7zb-5b#X8dO7+b!X3c|Pc>p*kiv2G z>N;#l2zkLG041^?Yr=d6-UzLIMRc?dvMg+EvmuA?q&fm-!4o2Nv@+?lk1@U>SOM^0 zSpWRDZ#r0=FzEp@DKM-H#3Ci#E_wX;)ryKG1hpXrf=CNOg|r(GPoDOU8m%QFKLgS* zv=Pu(UYaV1(JZQltl!Vzv=Jy#FU1%slbbik56gAv_sh2AC-Kc!hL>3@q$9b zuEP1_UuXECMeQ9yc>YSXE&B>*G$te)K%kPBBU5aj=)XlqZ|~c;1s4hBe)lcuQ>Vy+ zgL{k3bwl^L9uqrp!J~a}l2l$l2G0WixQ<{Lau=Z`_V*|Gc?IV*Y92ZLUa6pPQ5NMBQiOca0KeKvjVy18Enze4DrKB63%;9K))$zO@&}Osl-5 z&ElD9_e#vwLj^&LfS&9A=^x$se?czy z0;^>Mxr-y5r%7=DPXY*phBi^eCx!1~$S8qqe&mz8l@L^Vyf@ws|6Hhn*EU3yRJZ zEF?z*2)H&dzp#)T-X};1hrT`53X9dIT$xQUrlbkC$nK*xet>9*>7>}NZCw{L}@@bd( zT6p|e^iV)>XZI*26HD}vg{(`$i|QVLuS7hN*Xjx^++nip0IM{<*HP0kbrh56tEAe= z9}&sy2&Cab+$nC~#JQHTn2s|}bkm7caU6>e_5TY%&}S*h8Y*Pf8AR<{g;)zQ#^2w- z-_81}sp%92Ih{8O7;J$@j~wwpNyUkU_c%LqDhH=CWhgcnEGr;-yXR4?vFr9z1+?GR zKIZs2NP%OlEwvey*y+GD++ncB4CER4o%vqv`kh;ZYYQdUyWeEVBDTU3mF^_>thE&Z z>LG4Da8}hReb3y!YWm}2Et5{xcO;iZ4mxh!V5@2Ov!yL+8)96x(F@}2=fI>7#ROS( zwCju1W7md8NQVaWqg-o1+KR$;1ksVju5)6@vCTVMiL)f80_EYi^u`+*+!8e*Eg5;3 z08pKC9xuM??L~<3b5I~wCr(@o={XFdpNNI{m1W=rUq5cYgfq%j>V=?23G?hfcJ4zC z2g}YQDslZUc@o%c;9iV}?XNDIBew|+KF~-jcw3T_O|S#dClO%jTpI`%3>2UbZ_^3X zKq>{^4{-PRN7^5!A8BNE0_DIt=3Ey!?Q^!k^cD^&TwG;iZS4vW024-s30g$vF!>ud zZiIdQc;xbUH(oPLi1-e$@RU4Z@L zeeRS%Ls~W>5bk#oL`TB`H->`?DHL$HuL5l37T4Z- z;^E9Yc_DB@_(HM^fLMZ3kNzC$vF!s$FHAVRp|VJM!a<*1YKupRE%^tF3Umtz!3(*+ zg~|#6afOp9K$?n)NdmU@Ikh;dfMEpdp_1KBsW;VpboOc5eFzYCb}uYk!MD-VAF*g< z_cZ_~BF*i53LqtL3_&KqjLj8jT^D(HZX=ssh+JWI#S_U5f<11FW_ zy06{dxq_$BW-FXI^SNof;f9Crwa#>D?kw?+1L7Sr0GJ#d90-G=`$sg~1g5#+O6rap zLStp>_Yrq`0anFD3N9Epy8}96um*8)7ocB;X=B27bH$2EGR9?Hr48sFHda~eQ_8)4nNcIxiyUj+zr}4L#&l7@IRzo2jbQXia^p2NG$`Z2Ksqp-g z5*b2Sa&@YEZ7#!~{Q;jsCAx+vK-|TGZ@?EbE>s4vg(RQLUz+y#8tmS)heiVK{`;-o z*8+pPixK~hvVzWtovI#86Ebk5a+Hog`^I&Bsu*fQ(OQ1Y(DIXLb%;cih074BmR{A8 z_Q=q2f4GQ{&GP`$e75X_UI0|ZAt1~+t0vlz8_*G{4jAEPDP9i+qv$jTbZesU^!O( zkzH<|4;ca?wXMJOOAK^haC;9~X; zIG{m@YWQ!&9DkpF3Q=|Cbr{i6;7ErM75mw=InKt^^tpb*9Tc(Wu=pXgw_Pm%{CBbs zAuLkAgd7mO99v_can-%I^pk(qxjtD0X&z{BAO6v%$b;|(GtEfy9*%_SaN@j{T0!xJwW}I6%4;5E1$n6BCoz!xw9iKzw0V$OgXi8L%h#BTefT z^a@}+e8vS=JhF--0ZWtDA{>)w@t`_D$wgD>fAc03m~D$(5-Yhmf5=8^FqIqTm7)%0 zyq%t(cXo2>E3(?@N$9iy3^g_(k1saX0}4mL(p6j z=&tKPbF&?~8?+^ucN)R)51;&+Sg+;|LB_@D?y$f_zr4W}A2Y)B~S85oe@Z2-a!z$&&4gRnKl z&AOVz)bbwm5I}#he;waKodjg~E!zH~3BDDN#(~#Bhk&5ItF1M{!vGoj*yS5X#JuIQ z`i_;{OwGsW#o5@Tz9&Ki_4vv(_V;=TLhlGPXI6L{{Z}Nwd6Vt{uAqehn21fm!CDtc zGcH3cAPWn`%$PwF0x1(p80 zJV?^FyKN+b&5qiH?-SQH$~+_<^_+LcEx7cihh6ay=FeB2%oEA7)+y zeeh#vSVPnHoKE-l(zmkYaN8R4^$O&6IuOWFqUSrn!Qrc?$I?E_6=w7@EdgsAyg2-$ zXTRo1xw)I27L36hA3}ss zBQ_5deOPPIo%?}U9bNwyRJ)YY>F?lppHl>)Qw;MkPSm>Ila(eShS2V6Wohq?XxJ$H z?Ef+rDHt2GQxX9OS3J5kyzPEHEq!-yYfUvN!d{M}r(m_IzMdrkxD`oITuLLV%{!Qx ziKK)Elm%qoe}X=KsITj1qx;-AJtgqp{8dhF?hKX0O(ndmsp=CWDH#6<7dS3)JNLZ} zWKu_(%I_af;t0TQmO_C*enLfss9P(P0PirS;&Kdg~;l} zGY7g4*#6O#Hgz~wE?yLv7eqe^m4Y-tQe)hs1_4%G*$fUWLdh}F7vbNocl#q>C@#$+ zbhZc%AZ;E-N<`yEzpRWYW`$_suekL1>|^&b(B)NC9v3b!Q*!CKw`nsK&0n6e{`Ej) z+|dXV4}_S7RObe)XkNA$=M zA^`<48qmzJ``laz6uHrZdFO}%Hkha93O3(Y{hhmazvivi!wp+9v6zR^MgjJ)MniLc zQ$m;mha2W(==n>XsaLZ){w=yrp#`)5rbrwM?awVDgAX11V<>=e)f5scfGMEUCD6!Y zHZgYRSba>}{rXkOUzHr`o}=&IBQYx%OnK}a;cjJSaWBAyM7Y3GzvA*Of20q71(*=q zU1Z)Oxt|t5b}ru!ta0)L+}ea)LFh(N)dp`AKxF}nU=&CXA*`;dEbc)ZpyK>O>=DOP z9CyEuw8;chAsv$d0Wc2_tFHo%bhw)jMbMtBN%mZF7D8;4=d`r}>O1fO*~wf;_x%20 zV8569f>CCXIG`dm_oi!48b@zQxcJY`diQvf+JxKIN3o!r9D!sw0)kLV-T1Wa9c1%!v6 zK$wtfL8uRL&NUXlSmnB|%=lk*8TdRfz5x&&8QS>zzimPu zT|^>-tH&LWI3>yr+%K{e|11AdX2JLmf{ehiV&E+(s^dodPzORIPxB%oP&xs~Jn&h0 z_B#*fI^Q3-y?eTid~HmGazdTS zTJmhGX?}eSr~>pK28N8oEc>@x zS&iYtMFW2BzZ+*NTbcF7t^WK=$VN^9LV~~;J7~udl7LP%%ffei8V4=!dHfRGO_n*k zU;5vFVO_s&kSSUb8F&1M5Q^}-0+&hG9WOGmvkPX%e_8h-Z_Q;vY`$Nrd3@6vuSO&) z5Z^%b+h=t#`|;@%k7K8j*B(Z&tnTyf?gdQkYut{XTLE@0GNjNM%F4^*lFkQcw`jEJ zadu%?#R!53K-dWqXa7CkWCZU8ThWaGnW?Yn+wI%bHP@z_4AN@`U6<^xYr-S|5mmYU z2T8n9q6-H-Xl(q<6ZsxVN1exzAV!H~hbtxT^LEfY`zu+rNr`tB8m4!TJ#++iLcc68 zE8C3&6^t?2~+J+PMEK0fr^KKHQ< zj_iBVF@D!nH?=(7@Wsu|VtvuQL_?*xoM{FAa1Gus@5d$bHA#p>d(}-&8RH=%u z0j>cE+<_sI`IsLCY5Z?_saGu>Szrsm9FB;7Nr9b<$WJD82RK*q_z21uhXSE{^?>FB zarFkaTTqw?&nYFlo=sfC$Dvy=psKOdcw5585`%kH%F2$+ zJAA0|0nM7>w{da04HP zRxLi_cP>C7r9Rk4h+^tXSKGJYDf0=?SGWE~Fgg8?2&Vtdh!xfP|LusCE*@oQWntlh z4+?Av4{s$}3g9YPqUehF$q&NB1642Y3Iv*c>xteEurLM}5Lg&^5$`Q^RQ#%58;xWf zg+-0N&dQUS@kWqd(0QSD#2vlF&BHT>DH)@|dgsEFM$30xt|Cyx6cJZZ(KaM*_}li1=!sKljy*@G6KJWMeM|;k1Jg zd;S`hZq^yvT026zjELLpOR0b7n}V0yF*RW_K%_TDIj|~VD~Rb)p2cSSL#+ytB47W_ zN;WKmKh(!y{t!R>zl7gS?c@=E7Wur8b*Nk=|znsn&Z=X_?X>PC?C-Wb?L3pb8 z&%9qVRo|g6C|`2yRF~=ELt+ywoCfhhVs(^NQ*YR`2|`Y2lfu3+O0H0Z>KSnrZ3;KD z%kPRo<6gUbPNwaueaA{Ij?7rYw9q{Ce1sIGYN)%WhE+_=15Lu=y{P=IB7Q;I>Khe@ z9|kyXG~Wc zw|zC;{KE391Xzn6F5`zsvi~w~jU@hM-nz;?-FtuPXIer)Kw28NIrqHo@NdMh2n!JQ zUUTd%u2;>?CHeV=tLxBD7|)##WLR-R*M`o>bGmLPB*$>4L<$(40{H{4Cq}c)EKmhw zJ7E$gt~^mxL<$;z#7y41qCYfGFU~j^{d+Kr9Q$)H6S{}NZ0F$L2eV~dN?Mmew!H@1 znxOVz5?)nq5t@-@)!%Kb)S<8MX0+;1~AZP8r@Kr%O zP3S(Ob{;;&n1QBfI(E2OYC z12_*HxaDSsZWDk62Cb?2dE}F&0Gk;k=K&rCEzkFfcW>+KE#Rm@yf(m+)IlZ(YC9jG zp9V^AFcBaV7a^iHtL5+CU$`tcN3~hxWX2R#KpG%1)DL)-4mi(b{d>NnmO5~3J=y{| zD$Q_}bo42BKaY1Uq8Ax1T;nNq_#*yf!ZqzR9CpPkr$|bEGQSgf%WUx&rQ7J`Kg0u@%Vl9 zO|L#;77g5IFrH-&L5!ha_#SA&LB{m4U%`n5c~yr{M?VHW0DaB47@nDqp9Bx%-&Wi* zv$H!?@X?J7DeS{J2UPHaK8|{5HP5w)dH&Ld^?eOJ8n%FI^Wab*E@1EK=59Ki;Ix^U z>%6e~o(35E(4xMqBJT4UOkM22r}}gHLvU8eqIuv~%m^S$VV4lZWdU#AC`T%A*q>wt zofA2Dmt5AMM&~aIe9Nt(5-hs@e!aajn?Zgp%gBy4RI54JaEu`)Y!8z4K$o{~d%*ao z(O{ovG%67(i~1H|JR+iBPY{hWUqT5j=>q4!n(MGZCFj+=PXvh{C!E>CV7o z32QAm3ba;5#`RP<5Y$$mRtAa z|A%-V?5&vuM6l$fq>(^t;ON8AjLdrqd}0(74~w3G^@Lww6o;u+jF7%RlJiO{D&QdM zdHy^Fh$R$_YPz41O{|(ObolW72EDU@*YNj4fWm`rL`UoPee@)m)~+?8aE*~!LHPx-BPHAo34Z*Rl+H?N6b~dP5&NvG=lpYL$?awsk7EWj7C0)eL%qa(KUm74pTIk;@F934g<`g2f`I8dM-vbWDQ^!dA*zemXh_=_Fx zros>s_4&}bKZW~!a`x`-mC~#MK|#i527m=9)B8kVx{ttZR{Z2z*$70%?m?3a&kq_Y zJmWg375342d6a&;blG4p!9{QPvi>m!1}wV|c@_}j43{V19RP1e8{9q2)xWnJWAcBo zINpfS)EckG+|?O%Uk-MWrFi9P6pDVgvi*u5n$ zoZYtW34`3F=ezLlgsYeMKYab0_5yiEe6f4~`hWaNLzn-Y9m#&ScXs09>W*5~l?FwZNrO zbx0zRLe9Tlm58p|1a5KPXuTj2+Tf<#|l}rqW-`kNAb^6LMC?auo#LnQ9|{7eKC4o zot3?l7*Ya*gC%f-EGxQQS&~d)zS@wM(KEaeJdds6dQ?@VnkV8jQ4IldNm7tgZTP#3 z;7!A6dcdI|`*3w3F1H84Uk%;-n z_Y4s2=U#4JjM=HF_mN_{jex zO+CGdkr4#5&SC}wW+dnatve1moLl3#*|()7G%n88++21N40kiSCMzqnN4RX}Cx8O* zp~xwIy}JSk4=VNUqfRe-dZ6Gwo27}khcPiWBSgzWZUWNUEugdf6N=b?$9(Mbk7&&Z zfEzYow2iox9*o~A`@)YOWu>K$V1Ru3)Bv}zNXAb=xVx*wd^FIn7}*?>{?%(=XZNQB z57}yJc`kg?)H;Ti1wZ!OxpThypXtshoKgq3>D$e7;Y;f5?}eO! zt;0IUsa&6Tbwwl)4w{6Iru(28bZvY3^jbn19$ZT_N)8tfkCCeuiW-88uwUvwS_orV z+@Bmi*8CE_3y3tWFI+h8q(GI}B6UAJ{4(-}O^J}@UNP@uenEf;Rj7xChU)e)mT%sV zI|_6f9X`p}*?#{l(-opJVR}T5__SybMze&M%VuJ`M&GNDPRLTdp1p(lQS@3%Orr1nP5NN%x@Oq zY!a@HZwr1-S!i}`Vexjld|6Xn9Z{Bt4pB-H-jaiE)D*2m+CUxC<@ooWdd~ec~?9Z;kgUT1}jH&(m7~rQ5o7D@fr%{T9@e zabN@E%0Kq8V93SQS_IsanVAWRG!TALmhmPL2%>PyK<2sIKZhG_w$EVZ*X8r3XeC^h zEho-OMMQ?t%$f!#_Q3TH);3hu*vw1>>VvqCCj&Z}M3RM6L=>^Gq}8ln0);F+M1J=T!u&Ubj;Yj zgAm{)Bs7bfsIW0X3)*QYywHi?m+6)mE4uLXI`C8oy32#`;Z4{cgD>r!<*$Ws0}CPi zqt7gdTVEs2qFuXo0WbshlBUkBTPwcA%{WnF!nc>5y|k|ZDN0p{lw?$rW2L06mWBrNzhak|C-lS<WaMZd%Aa%ld3%#=z*BN^uS7L_$n4Dvc9iw-VJJ7C@VtV8 z$mB5#yu;|ZCg=!TtY*9&Xg2@`kHBC}+|W0*(z2p{hk}l-)T)aYCm%`>U^lp#AEu=Z zV}XB~maRlB?d|D7p$5^En4LX=H8`7%*Leo|32ZKy04W2Aix4o*W4FxqmzS4AkJSy% zHJ2Z=E69+kDSON{Rc1m54}$gU!M^VPw(u>_Yt<7CJ?81WvlzAb&6;+9{c^s{AvrOT z4boCEo$V~2F!&%R2G{h#_{F37h=iP+{ZZWWwZ|ue$JelrF;c-4O8bu=Yk3R4>*X_k zyb|e7bmE}Um;hO7>3ekStCkTvBkD%GTle4#r^vVXynz9NkoUlXFHgXg5_m*Be0(ob z#jq}(?oTv6-YlrCsd;L-1v>L2=bVB9N04~x+*z5KOJI8l?b_U+#rkW^M~_DJD zEJSIBtA93UA}zz!V~riv;r=~I@orsb&TSaj0{BIQpu`txa0nTIFE7QBj`%d zoP^1n0AvRE;O3rw?b-=|n7CwFKAHQ#0o0p4RS_S9yhEG^JW9&TwY!WD!t8x797|7N zpaEM-gIfb)cd;#Fkb(JkdYs2?npv7^)O9gk&z?bNo0pIv8LtfK6s~Jfr9L^}_I%HF zHHkM$oljc!6VEPFgz;!C79XyApKUO%zIm9J{>7H~E*4|q)y1xARqCOUk@_zt4nhr| z;*rRPdxyV>hR2!Q^W-7I4)m+zD5&=A(bd-OT`C+qKvMDA271)Fw|AEBAeD$KP`k`w z@5%xwCp^#PL|&;ABoCQ%DOMuQAb^4zQsG(`!|bk2yL63}1maf0AFKdaPDxLF~23Sep?I*{-;3jSC6x`4EoEZiW{FMdi57C>S z9B*rFg{4j$DJP(0U|+#XfQyI0Vx$?!G$T|>Xw?`QZI&W8CQdwIc6`e^lJHpkFY!hF=lFB|4^mC}Pg0GnW~HXBjbM#%VWw!_MtK-`y(!2^d>}dV!C<;@OY>n^0uGHZp5}80K%fFSq!D`+%?&n zb;2Ml0}~Kic8D=TmK|Kwmx0^TtOhCR?o`vWB|oPqDJYJs+>4FXEx9aK0>lEMy^9D% zNLB@enhYfbL?$g2xF3GbIt}~gcq?8$-pG~y@K`9a55xQin;cBque(4gsC`9I;3LPkj=~X0$o5)8ZT+?BnWF0IO?XJ5f=0WmN?#xqb^ z6coxjIt)xq114LrX;L{Y(IG6T!C(5uE+Q76>a&)C%0rg%CH<~rX!gK9vRD0pSU^Nr z7&_$Z6japI>iYV2CMF#wR-ngl_P+j%%a*{Jz%~}*z4E}jADl@FrzKo89&RTWm5wQi zNN|!=&@|(_;CiaD#wDp$>FIJyJKsEc@(}(YG@nnIuokYaoCmWu+$P}o`8Cw^DJdMT z1-ZE>ANEKE@(w`p1O8uKRQ^^r}l2nWAr2YNfx~rAs#Lz>)wp8AOb1I+L2EdJaE7UqwB5%U}hg7>f!NY+!O+@ z;|HIedhf*(eKF0at81S>uTZX?f4;(xA5am}O_EhXW)K2NFF7`9vVkifZ(+|StK!#0 z-nnCFXV-i%4thuxY8nVnu*3l6-K~d&$VE7lN5b9Vt;sRhW;$BhQ>mPMe9gFK;0tfn zv_1Q^8}i8soR*lt(OADWp}AS-9yN5^Pid~4p&57^q4xem zp|mYL*$i@Y`6r`fV(N)5mj`z%q5Hs}2}a8&-|-Bgn2D(Vc`{xZKKLvIgr=+G2*(r1 z5B8WH4n1WBC|HWh^}z@JnFLzTZ#A8TC>;^A{gF;N~-J3Td zE<}_LhA1pBK(2&3UQ@FZ&}pO*I@L-f%HY&P4Ath%n=?Bs0b5p?87ssc`#})O70!Gu z+WCFZUm{AT?MmPO>Fvz}a!lX;e}hJ4MoD9rA|w<-mNq3SOR{g3P!S_rMMan_VJec! zQp%Pkp_)`GdnhUuB3Y7(7Aft^?{(c_jODXD&-4420G?z{r=JHK?8yQxM_s&~sa-}FDTZNsuk-|hM

$wLBn5X(rO)qx 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 + + + + +tri discard top: what the parser throws away · Trinity S³AI + + + + + + + + + + + + + + + + + + + + +

+ +

tri discard top: what the parser throws away

+

67 specs lose 23,578 tokens to parser recovery, each held at its pinned bound.

+
+
recorded 2026-10-03 16:18 UTCreal 4.9 sshown 4.3 sexit codes 0
+
$ tri discard top
+

Staged: the prompt and the typing. Real: every byte the commands printed, at the time they printed it. Any silence longer than 2 s is shown for 2 s, and the title bar says so while it happens. Edited: home directory shown as ~.

+ +
+ + + diff --git a/apps/website/public/term/t27-tri-discard/meta.json b/apps/website/public/term/t27-tri-discard/meta.json new file mode 100644 index 0000000000..c2c0f63343 --- /dev/null +++ b/apps/website/public/term/t27-tri-discard/meta.json @@ -0,0 +1,21 @@ +{ + "id": "t27-tri-discard", + "title": "tri discard top: what the parser throws away", + "desc": "67 specs lose 23,578 tokens to parser recovery, each held at its pinned bound.", + "url": "https://t27.ai/term/t27-tri-discard/", + "gif": "https://t27.ai/term/t27-tri-discard/session.gif", + "post": null, + "recorded": "2026-10-03 16:18 UTC", + "real_s": 4.9, + "shown_s": 4.3, + "commands": [ + "tri discard top" + ], + "exit_codes": [ + "0" + ], + "redacted": [ + "home directory shown as ~" + ], + "published": "2026-10-03" +} diff --git a/apps/website/public/term/t27-tri-discard/session.cast b/apps/website/public/term/t27-tri-discard/session.cast new file mode 100644 index 0000000000..cee70c3c6b --- /dev/null +++ b/apps/website/public/term/t27-tri-discard/session.cast @@ -0,0 +1,22 @@ +{"version": 2, "width": 104, "height": 30, "timestamp": 1791044291, "title": "t27 \u00b7 tri discard top", "commands": ["tri discard top"], "redacted": ["home directory shown as ~"]} +[0.0, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[0.4046, "o", "t"] +[0.4447, "o", "r"] +[0.4847, "o", "i"] +[0.5247, "o", " "] +[0.5648, "o", "d"] +[0.6041, "o", "i"] +[0.6441, "o", "s"] +[0.6796, "o", "c"] +[0.7196, "o", "a"] +[0.7596, "o", "r"] +[0.7996, "o", "d"] +[0.8397, "o", " "] +[0.8796, "o", "t"] +[0.9197, "o", "o"] +[0.9586, "o", "p"] +[1.3027, "o", "\r\n"] +[3.9195, "o", " 67 spec(s) discard 23578 token(s)\r\n\r\n tokens pinned spec\r\n"] +[3.9195, "o", " 1813 1813 specs/igla/race/ternary_inference.t27\r\n 1566 1566 specs/igla/race/ternary_gemm.t27\r\n 1409 1409 specs/igla/race/systolic_ternary.t27\r\n 1139 1139 specs/igla/race/ternary_mac.t27\r\n 1069 1069 specs/igla/race/adder_tree.t27\r\n 1041 1041 specs/igla/race/systolic_array.t27\r\n 1007 1007 specs/igla/race/bram_weights.t27\r\n 757 757 specs/igla/race/gemm.t27\r\n 738 738 specs/igla/coder/bench_proxy.t27\r\n 647 647 specs/igla/coder/training.t27\r\n 628 628 specs/igla/race/rtl.t27\r\n 600 600 specs/igla/race/eda.t27\r\n 584 584 specs/igla/race/yosys.t27\r\n 560 560 specs/queen/brain_summaries.t27\r\n 521 521 specs/igla/coder/prm.t27\r\n ... and 52 more not shown (--n 0 for all)\r\n\r\n The pinned column is the ledger's bound, not a target. It moves\r\n only when `t27c suite --bless-expectations` re-measures.\r\n"] +[3.9201, "x", "0"] +[4.9205, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] diff --git a/apps/website/public/term/t27-tri-discard/session.gif b/apps/website/public/term/t27-tri-discard/session.gif new file mode 100644 index 0000000000000000000000000000000000000000..9f1eab4c9e1bb7e8f25632d2b404c0b9e0d96f55 GIT binary patch literal 39171 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

m$_xKp2= z=G9lB-dZ|TB3N@cQFk1d%bOKJi`BlmlZQC%3y6MjzZ=ET^lhOXZN~Svty9NZRMe zX2^>Rt~1%^*s-E@?e*?0k;Xr5yLj=GHH^ez6mx4P}E~5 zP7vz4c2d7AuXPEXgI)Vi&O&I;P$=)cc#PYur@tpn=8+d7ZD+v3i^YYooH%h=wdT{N zorcHa>S`oIW?;=>6veUV=;Y*N|6RNGg@)FMH??kFcLA=)KN7Ip(e=)rA&Z36Ain0# zWx&}dpDvOT64>Gd=1E;W53qXasVleC)Kyh+H9jmC1d$b~!?6~eIC+u;z>K0Zx15f* zYpI~2QBDiXD%M_g7u%iB120665^4+HAq0TIOfxP3dLSXWMXa6fB@rwu&_Zv z$%MDgoHp%wNlDuAkHiJcnlS^T@@cTM3m2;LxT7=!@d=8xrca*xwoF&twkkFz`EAbk zw?;SA2qFsEE?t%m>^)?m*feUf6;C7hHUf_@X$bCeQfDu0s)>(?Snpm#SHkF|LLlv2 z%bBoGZfl+P@0|ejA>Vb}C*#e8DgUO4o8iZVz6nauTM9kfot|^fE`vZ9YmMN!C%`u@ zMin;n?7yw^`{H7yjz)Yy6O)~u@=3-o8B# zYgv4}C)+EPIG24-AF>4?kuV8Tv7ugS(_$@fsr|OLFQxv9e$w^S1;AzZ0v$snAYQ+o zE*8u~W5}K4RK~Lve&lVV-8K^c| zS2ySB)A*>ULXN4HZu_ss7{|c@QSq=FYWL_P!pChifBu0Ps-cwd;?|vTDxaw7v61tT zNrfcOf_Kg}H>Z*WjE}#>4GNjsVno_6H^^Z2?8jKP1*h18D4Xc*FJ8YMFJUxc0?9XY zM?D75{}I6>*bR^INvp)P%LUtgJ};U%^8r)=&uesaG`SHP=uwtO4NSTjsCe~~W~crT z+@M)jp@YIxEW#0I`ltC#floSU9}+5~pr+;*X^%Q`&^Cq2^72FWPnZm;yH|O`A(coS z*+Nkem1kXCoOY_&cddH&?i~_|Hdu1QraGyEr%tI)&H~Ko7h0^r^o}%C3Ks%2Q16FC zf_Y7l;QllHaADoyAy`%a0f%K@<%N`@sk@Wct&Qn+e3u^FHkiWwS;y4Jr}Px{%cn`U zPPj)!uBD^1S2up#ge+mY&YmDX&=Gr~TpxN#-OKgx_1*cFJ2}f{2kFFLn)uURs2y}l zgpS-bFpW;OgY(LGt6`j_<(c;^J^j@2<9@MLg4+_zx+)ZQ7&@GSx+i=jSwPHIL|A&K z*St*4MG_-B`srxyWc&MZQ1~gi)KepL&tJUA+>IeVj~+beAbK3O)nI^%$|b13#fz0H zH2U;;$)>yqmNGdL_1*%a`}rm#y~jI5y+hh7B7asY!MbJS8a%pWDhu zVBbsM)>TrpW{qBjAt3O$ao;~}?ccSi?(Pv|ah`WqJ%v7EUH5XaG<9|GXrA12{q{nc z&##{rHG}+>moe%FrJJsH2IKj*afoiy-*8CK%}13cN%Zc$pYn)5Gx%Z+Q3pKClTJUcvUOv%_Ra~Mw>-6;8sGK=Od@A=Li=L#?k)U!r#G2RbCE*5qdW8|TQ z?X%O4nE@eFbGzbaL0?%@Ea4_C(0`te2rhR_eYM{wVC9#B(G3}wBHfTI`> z=zgzqBcc$5h;xY={pu@hUAjYuegv9IIiSw57pAbp z(eaU2RNd~&|GA#BZ%}fL+|m-Lh32Ux-_dJ&_0xTA)i={5$b_^RWG1VIjTak^UXl9U z4xZ-c30c-G&#sQ*T=uodr$S7eJ7Y}Ww|f+wSTa1LeYGAJQVbTpX2iG-6LTU1JOtVBp5Jw z!XW5t*Lm{eO8eA&@gI85Wx;PfQ_jsj0e-g+e65~l)B$*$N}JWb|i z%Ao6E{V6hw)7!!3hK7eLdd7Ag>3o<-TX*-7>Ar;m@dPa_>|ZSvDrNp_LT^;r35aFv z$!PgNVo`M}Z*6rIfK+t~aQq4=*VzHPL9_D9?nk-fg!p?$r?>?RW>^Ak5aRj#*Fy&54%06OE zX}c<^UOS2YR-ss)-DTa_*=VW!{j*rD6zUU9cISVuAfZ6suH&+01RBrPbnSk8S3-F3 z{{0Pv_k$lX;oux7lH=tMw;X9OSZly-3PK` zPv~`fHl`)#YkleqeDGmZZXEr20mKLN3}@x@npgogaI)=Z3YR2d)6M&VO}F=DJM#b# zkE{~BU|mDz`!CWzl+o4+m7#IO*@Ohkii69<(!cLsCvR%(Uaf6c;`a*%oj?w)Z^9+{ z#Ek0fHS2(#+N>8;1jml4(qsmoo31G@r+{zN6}=>CE9kZ0??yUE|5?;0n_6fZJjdYt z>Ga`@4*g^Enxg{7F3jy!xbephc47Yc^hQ}@NUq{YSFxf*%DO@_)~3yyH_7Baz#c8? zs*8f0AAw}P-I9|2`{Cy=4<9mw(QN2L=mvz=i$E5eBRNvzZlq{vFT5ckx{cUTfc8YU z>4UQC*QB^eAp4qUYAQ0hkCZ8Rctv)XlAbRn*l+9HPVcU1UR+N0O^Y^%H7iW)Q#IJ9 zJsdCZ3=Cwt7viZBl$UnTro0Zn ze(rU`V`t^AhBkfHH*5A>f3LMnyKA$ygog4_a&<~CubVcen!{vMBa7He=R0+kgVQcS zc>5mmTip=_9ADCY3gV#qcotL#4B)%qoONbufBP4uZ=%I9_pF=JP?|}6<00AO8(;Pp z?4!D}OZm&mTD51VsmSnIddljLACDckBKtN)j373GMon82mocEbg0?n7tgUm~Ze&Od z=W~~`OAP8=g^uEL`?2c2RGFJMchg>ZG+~^sAVqWBJU-K+cWs7Y?-S&%E`33v$aed@_cD(rELrb5O4+Z(+ zyJpX0&#&`1;!URC%C-UzvA)BAun|rRStPmfFTZLYJH^*rZ$BDh{L2rcWreU_du@67 z=QpSBrIO%=I3?P`5o=9$d$n;*Wrm^FWaJh-uKW=0a;iY1)0$R9wRn-s#Ae-Q{WbVQ zz5^KM=KKx{VNcFmfVnd-V;liPUMjjeuELFey02H1Z$ zf{Uo!uU|a^0Pzl%4iamedkv`l?dr4wW8TB#4ZfRl;S`ky4xin;^S*Z^#8<0}dZnBKbj2Vd2`J6W*r| z&pT`n{JYme12Bx?DKlowKuDk}<4Xcj+3_V~#*Crnfr4^(ui>&=dcGfO<4$L0=5;QR zPNE!rWGv)Aa1?`$%|=h%wrJU42}Xr*8XZ=Fz@AQf{`q>EMPEe#=}fIJOa#Zv$&8BF zd22AEv8vtN+`?V9PmRhrvp&zi;Y(hFb%>WA&&l49kOWHB9Q{$giZ5c-@8|SiR{2KA z32JvO$aLO3IRzyZ;fv>>IxD-Q1x{y6EJ^BIo$FQMa5*2Tr z;hYW~-^Xa;!~v?RyL2o5Qw-s-<}JtlFA#(pm+B1o_$MN!)+LgVUo6{cHiHs7`5d(XJtFh!_c5L zxvs9x-?rk$G?~7#TZ|svlIDq_srhhu(W_Ul#$}yjaLH9^r#ywqj~^rKN%+h-?7v8Y zXR(pjt8b{@9fojiau$!5l2~o-xd{=b=vC|zMk^_aBkj-3-nVCuK&Cyb0r5Q+6_v5i zbW{47hwVh%<;ht{&R%Ehj?$W(zGuj~vaZh;pEee|NFEFn&=$J9+byb)QByq2i`6XR zW-RpxE9p7z@m3zDtt{;(olVqq{ggZ9Ubm#3=N*lm9#SW0V+Hv}iFADllLXyd1CU~# zJ*$ylN+TbDN)^QhNT_QA|PAY<^?_>3ehq%ox?4qCPzf?Xium?W~zI zGqh603vo19NSZ)`qhP?~%;~{``*cdh{|+=5#dL5GI`>7g9Yw4_P!Pz{;NUq_URkm* zQ8S`u&2{sN_{u51aPi-*ZS;@#oK8`P(U8H*9Em!KdGl`vNgHLZpyE zjOwZjn}T)CPMB%>Xi>YD<|P(P*>UoQ?3$n(3qQb9(hgAPq$j?u$#OfGKgGTY|F)A( zIF94|UiM6&hHQgms^iuQtaFP~M&Jf^cCbIhxzp|!1=b%*8D-#|c#6JyCHe?ld(>bU zF0t{7rBB4KFc7~5)ucl~*J0)CeAYPP?(N&pvp3POGM84N&h&&CD#^i$*>o(Nr?8L= zd8WgYlaaZhC4qvCObeocz_hd+qsYVfdo7~DqK?~Z#>FH#R~IdGcu{RAFI`L$J3>g# z=+7Wr?y?_!rPS}Yoc`o(vM|&IRx$doiL_o>Nq;8N47U6~N2L9^>FK3$HPKl8(x6+i zYkaUj(-gi1Bc3^9Mwz-ttm%_WUq8Xmk7!UhQ6DXMHIV3S)G$=_2&m_79rTJ^x7aIJ zyxC-XQnrcC&rMD6dUxWYMCqL`Et-G#boHWEMRq3959mIpOqz6#S%og01XZM9eHu4H zus$hNkVQJHpZ^anTXOFSN9?DqJy%V(;LV#34A6Ea(DQ(&qksE#W9KIsNc9*tNllhI z+%8Zfbwci%3l>qC73rh4Wp;5fJTU9?BcCsitRQNrFY_;9Im}V(Rrv=Xd zLVi*(0AyAsE*2(Q4&1e2}O67+Lbk5JeDqvo;S$$=^4p&Gc{h?RoRsk z4tQ_O!%FHhGdZkb(RtioTisvPSkE6hm(eJo#OHD+c_bzy8^5=e-kG6=PGkb#xYuH@ z+<=Z-EjOV}V7LgqT*y>UMKQqUZ>XWRka2ftSFjl&U+CF8DM$De=i z4I1q4x}>F8aXie^AQby2P9VZi(UjlVZtWQPJ)GIp%|L`(e0_!ab0aNOHIt9ZMws5& zEg(04)cV<&G)cfko7lD)K_6xP}l-Flc)WQ`F{N%;^a9*QaRu+>?`U#SS4#oWLQ^r?(@|^Bx6(7G~)|>vI6G`%md~t+QZ@*g^e#CGkC*} z1IbNt!DeHFzQ!j0>LL1#zOV81zb(Q)9V4CPTrYNb-Qms%T(AoD_)utY%1$hFWZuQ3 zK5cQIM~3;6sB!nUG>IdVoHk|KeJx(&3^n`pi;TaJcO^J`+}Iy27dSeizQ4tui?Whh z(H^-xYdFMlHH4`!y@taAsGb>ocuq8u$yHgNIcWCjANz0h_03eBOW4A2n@1IwA6H2` zI+g-|Qkn+|D6i+?KC~aYu7{qQG?GjO7j3t7X5jlO3^HMlzv+6^Kb`rMt0mEmQnO@p z%LVD){fjp{rswu*@wPL#g`Q9SXXcn-AH~8$XT+m)Ef9fcY(hdk(^=sS-T;krisB>| ziw>5!>d~o%MAB_UX3OK58@1a)-E$pbO1~E2t%bg(#rDv93$~5RjAwy|Rroejw=uq6 zYKiO%f46$#XOYC6yLSbJ7YEnq`VZSVD@C`h>dS)wiJ8$>2&4vsVWuL3U;!*2d~jF3 z0ZGZkL=dA3+PWjt>szf}+ov_5B#8AZNcH*~FH+(tvJa-obe5CzD$I;PG%Mr>E!IdK z{?>e_w8%u}f0AF?AldC&%rTxWbk4NIz|=@JJ>H*xwC4>b^tm50=IR0Y6Wg7S=oUoS%OTN>b?I{*Dl|!E9hYOtZLf)7d{QuKEV&=Ur`m{91z406+qW- zxcmsvBzx=W4jw#BUYgV?zpX!Bl`dqk3&fx4+_^=3jMCEmp`oLeK2+12$ua}R2av$O zAknrh;cY~GTQA&&{I9Su>SH}=;M5rTZ{Cd5(Lo-_*b7F_GnN_)$q0mt7=RmH7+{yg z{H$5M`qIUVZor)^VaXD`b+!Q$3hD+c_3aC0{rSUoAL0DZ?=oUtrFA|q7^)Te5K z&%t18ZFOQp>S!asP0gy^534(Rs+>Ns6ty}aJU2fjnKKkLjxHHA4n2hy~o{@M%7rUHSRBSvBilEll1yKd1lV$~V!oR@@JK<$SlH{NzlY z{wFRCGwE-yb`_Q9BuQ%|{)iK04>oO*<0YYi47T=3_ZYBhL{WImA_*)mb|F>O)ynDl zn-8iOtI7JG+^T@d?o@R2t89m|-$(@=4SpjP93pNqLs=)Pv7H1*7J^)K6cMh5H-?3* zmDjstM^P5a9_k&nL4#~cQc7cN#H22(FDtjLmr7T50h0m0BtA;I? zR4`oYM7q|SXu~0%Pojp1<<7skw68o?wP?Wmz;Axl90jkPf9_K@naz?@#MXzrN=HLu z*O#?x@>9Cmyqz-Z)4w4h++}-F=0EGB+N>zkv0bruS2$TvQ||K82Pd}RS0a-v$nBZ? z#zqdA;xjTTYO~L-t{uMHR1lGUXOs+c=BYNm&m2CU$I&Q zcg;hGTgWI}0fx@kZV{qe6%-Dl>=$TkmUKP#btX<%jGPpD2r6m%?YGIZPCY+5FzL{VvGB{8M@9+6S zO620AnKfvk?l*dgec(2Q+k_asTxVHmIweZ8!l454No+D?_bOFk=_fTV{XwUHX3ylz zdq<4{4MAL%t!oW)(acOu%b5!&L=MfIi8&<&mC(BlHIUHuAqkk_ld32sSymL%9v+6; zlLoK*{i=Vqz<%oIS#;8N(pCL(jXHQF1C=AAMB|9jiK8PetzYgCpPmYfVY_+;G8+$8 zy%&_Z{UU1na>)*!8+{MzeDwOy`MEI1dub?ak1UsTfoMu|C1K5 zmX7A#y0mcZ`s_Cju!)4GKv^QLe;;y0-M&oPbWW2G0K1EcTNOlK^Kb<4! zUH*Qho-Gd!=-Vm@`6qPPZ$p|QHdxr1YCULT~vgWa6F};2y_>` zX7zFb5(2XXR{g%EBvrMgE=+}Y;FPN#u1a2VHhYxL5#QbG2#sX!n^#2s! zB=aHx}c5~8dt-x_6WMekUtIW-(?ioB*vplEO%>!0GUxtnvv>5f}%wS&GI(6SN=hbdr2Ts3-k zXz|q>Hx>i4j~qEtMn9MKAIqq`X@KK4?0Vxk+VW7lRId+~){mN}UUr039%+CL(I?|9B4ZQjv`S?&tLhN7S;c;UIec36i&i<>DT7LO=T8~DP3C2S*T)?~3P;a5q;R|#{@g$O zf?Uw_lITNMO&fDc-~;v7N&5*{B<7kaRT4ih6SS9t5Kq{je`G9DvayQHNy{rChg1~9 z#8heDk}&>YZS&lwN9QVh6TPnVw@8d%*`;5aUa0e?7T3}&|Mkrt22BpPF_vfS=XpeU zFP!q!hK!)IxU z&}5hB5fRpKQ+E(#&infcZ}k~Gh5q%`h#L;)tWrPyTuKncWR^Zf?y6NE5z#UF-CxS5 z74G;%;_)VD@qLUCK7Ie~^kR2Q2R&=7^VlLi)2dgkKA2A_t~ zhA-(2pSPD3$?3P8==nxqm`H4h#-zM8k_h+b#CEVNMwoW%(IYwVtVO^%ZN;1aH@BQv z2Hv>;jjD0+IjQ0A-o8b%HOtDI^^9GbnNT1TfCThq?E6 zR>ZWSsv5JG$e}!J%)JzIp>GKfzFO0Ud)DCV=2ck!I0AQp=Xq z`WX5y(#Kh~dHk-xK(iS$Zd6%$Gxi062jd2akb3-{oHa7~dtzvOr*nw}0z?cTQ-lR< zT)&=ZfbGOa^%vp^%gVsvx{>~g#BYo|Fl*Ny->p;VQ)}3Voe12{1GQXT9sFB*$j~iQ zXGWL`D+P{*^9xvmPm1s_cn|&^A}5zz@u760Q$yKB%}Z(>4IFd`Die?l=ET3tI?`UK z57&}R!4uiLSFe)y?{o3S5-z)cg-?-P4{G4~w%yO#M6 za;P6^4L^Js(zQ>Cj+nuiT9Y{oLRLCw?nY-0oR88nc} zb?bxn0NBv6$X8?B^q2?cxkJZZ5Z`fr2}^#%IknYHxrG?y-B6?7XY%D{TJ0tT;@|GFc1{>CL1poe zoL)t@{^0bg`8gO2v)ul3#VOMxWjSg(mG6MALPCQ_8joB%zcQmmxyEQOK^snpj%2%b zJx8z6Ragw1K)e8IWZS1EYTH;aqmEr~d;Y4wMCioY`_mh}=l$8#y_;pp5kE zhmJ0HAJ)=kyVLL6qtA$J#L~a2?^s;tpX~?;7|Q$+L&GFQl}ITTBRTO}g0b6D!6swn>=q? zX7|@?y07=-#bF=6_BfAMPnP#^v>YnDy;bwa9dF8HP?3&|*sU#9Ii`K7aYrQ%+7ua4#L% z?ceW6#&!NzJCglZb_NA02N)yz#s1G=myuK(``6SKviB>C!MN|-ylKt0#5v2Yrm@4! z-nw18H!ViteV(#1!M(cbU6}V1OV##^!kt1tZB*+GM#J2nTBK7T;7&=xNeI#L>sGe*i zb*%&4B8+QaW_?WU-l2t_VW%~{AD*%Tvvh{Sr4@8|eEJ2;we)hulv8fUh*j$59gwfL zc}E#i)w0K%^WNb8k%jI+Yr|`#M3lFU|I%7+*Q||y4z7sv`$KjAi(4wr?|&fy@AJLw zdbOK!9jIkIJZiB%<-U)Xm6My4buK)7k$V2X%Rl0%VAPcd1Cc`_!PU zVumX0-T-NdPcqOM_7?aq+xN0KSC}CKrFy)pqi~xcc#O9sBzD37-|Is5C83lXpw?v6_ z!s)+Ok3F4f6s>9cw}z+I3Nrc`T0J{-Ao42vA_U68Y2@6-5^|n8oN1-3$(6}rJlfR= zCSj0xj&VaV9#B1Ip1d>(eF#aS(GU@`fzX<Mm_L58;g z4`iG53lYicMl+je2jnnUo-8hUu1A)hTjyBLm~pss?-OspHa_R?btKz_FoMusyEKU6 z3Hv)rO85MQ3&O}i4ok19^>v-t`H<^QHDPTA5)AsVmDB4JPW=z7KaC%*SC#`J8;ktr z8gAz>)>m44R^MtB)`K1NsiU^26@Wr#_P0)L+_D9?1x?-k^vwADj{9ycn`3fI(? z?%2M){p2hdftKTLcyGM-=uuE41NIF4r%X|eX|f$vCBLLX!HYSWSx7sBH`C|ADppTgYn}T{t$_6a?4(DF^sCIw{O24ab?nE=0)y7 zl00*!ewJ1zUwFWkL&o#z$z{V<*Sbv`c_IJlbv zck4CBb;~Ur-2ppxOq(^UdVj-btf->|t2kV6RGs47i-O(_Q+}i0`>WntG*?337$31LvF-+gE9BzF~5BfU+`@ zgd5kdhaVY`^J4vz`6b=H#fVk*eSmRu?R~+sOWJ)K8W-$z`X;&M4wCu3Ug2=mzMS0^ zOq>u-d^PzI_*B!S@vkjSKzlvc@iw;LyLYk4a(GfTenBrXG`@qg*Q;|EEpse3B~3j?z@kO3pjL=y+dAT5&R9Id@Z1i2@BPw(#Fq!w zbwZ;}$g^SU<0Vr{%H>So)+Dux3l$RfyuKyuU9}jm9hdrei|1A4YQK0dPDSY)g%)8b zOfzwANF}<%tpA!H5uIVZkCTkl9>!&yzfMl_QM2gmAR)^8#i-c*W8~-e=vq9c=Rm9% z)SH+dDX_ejAL6Zn)Ie3E>`GQsO7|E^)Fh)SF`c0{1QKM^;4Bm|MJ0{8LGsxijX@H{ zk8dxyzG3stm&~tCHI2M-?5WY&0W&qEs+9#dZQ9w}X>GEygfnWtkJo`MLM+=ax!{$g zZrn-{r-BuC7v|KF1&1&db}4asAL)3CvN@Gj5s zAJ#4cCbj;wkK!9OP@84e2a&rAFGudyVF zL~p(^iZEp`4<+nk8=JIX%>txnwG{EK72w64ot&~M=IJJg?l^L!ATZ|q@*B;Xb)083 ze(a2a=Av=qYKpg9l|OC~{}BHV`3->gD8~^Hg+%=7(CMU%L#KnGe~)Tqfj4F@27)JO zRiPjkbcY50qS~`p25gk{xJioxB{6*2lf^hzN=oWUBtaFs-#t^_u!DjUhyc}g$IWQ` ziHZ?Y5_nPxGJEs;i!Gg^VQiT;#~|2b>RjZRQ{Lh3C-wVkza-!B;ay(hy{1(3_P+Aa zKO2hFc;ZAtXgAfjQZD*Re4Im;T09KH$bNtSaVGZx_!xITz3OV~f8Sz50~5KDxknHg zGLRt02z!{Q)bY>?$uSTm50tN8L`nJl6l2*yxn%BqKcD z!h|M3Ioi!Vdqz+qr>=sUUWK6!j|3yDh1dgm>9R?xdPllCgEoQ3Y~xJ$?=l{_@!9;s zx~6D{o`fM$II$rokzQ??m%V)I+|`ADCPWtaGVkItP&$#g6yxl)1o2m~ghdB;=+?Ef zLny({3JcfUt4xSbz%=0bL5PBtUoG`wz$ZD8;PAQG)-*V*ZuysAEj@{Qb;N!`!ByJx z8nM6x>!gpHGsM0OPtNfR0p?qRWCIj3mJrh;$to_7-V*O|STn0L_250N)HPP* z9Fmgv>{(cYZmXVE2?$`nCOPytInG3;!E)yKslOyS=9ckjeFBVcRv9fqTKEsb`m%~^2(M`3U&gMkwAGy5*So%KoR>g z08w$&-On$lA;FX3Dqg#FYr{ZeqOYe;Rqk$KU>{Oawqf*;W65?KyO?j=ov$~1XE1bY zV^V{o>c5=S&@Al#4M`1g>{091u6^cRolA`iQeA>JMkvF~ujTBuw&`dZ{UD_`{cQ2# zn3iraPh&!K8lN)@TKWy^){VpIw|~EtNYp%L1*bvRQW!z2xiB#qLed;Y zF4-!sBG*M8^753ia>RR=r7$U-s;B z4Hz}P_C>WJRY#@B`7;uyP=E*_=*20mu9R@n^2X`VF-^+ouS$*?vd7bp85u>Vwb;+T z#xd*|%qH+Pj^R$4I*#ePAsW`c;o+}vd~B5LcGj)bQtv#fs9)Q$H~=%Di}CPi`NIz| zI;XB&$)&(X8G;)SZ4@~mC>zVoG3}?H$(O?aaj&@7{AJ5hZLf{1pQ%Bt?l`m&1G0WP zF<>vOeS8PEl5U|&Wos{a*9~)j7H%(r_nx}eD{|w zjn9aXC_HB>A81ljKiu{L&CeT9$nOR<1@so5p8tLT4X9-4gq`ku<-SD|!G<8Nw8bL>|&yjzQ zfCspW@i|KorL*nX>bP`2EacHwH(h+pR95Hd+^){}uRAxz+@{X$eAvY0r(1Vmf=}JS zVm~RA1XQtPQ5;k$!fzzhnV#R@{r6o|7aAU8IRI8u@kOrybrm>4Y5XgD*?&r|R-xA; zY1@hxKe-S7@(<-|D2K|(d=jL3LOO!uGd|{hk53CWaw2r2MQfq(ni5>tH5C@4FvP9! z+~s&Xz1gN#na;|(B>i!w{)iAou(0Dv^FX$;+mUnFWWbQ+kw|^<6 z(DZXar*2FZHNEUq+WV`P4nbEgwG*AgVZ_(-nRe|CjlJDjN2_hqpZhLrQ|^# + + + + +tri lean: proofs that nothing compiles · Trinity S³AI + + + + + + + + + + + + + + + + + + + + +

+ +

tri lean: proofs that nothing compiles

+

12 Lean files, 15,553 lines and 4 sorry, are reached by no build root: nothing compiles them.

+
+
recorded 2026-10-03 16:18 UTCreal 4.7 sshown 4.7 sexit codes 0 0
+
$ tri lean vacuous +$ tri lean reach
+

Staged: the prompt and the typing. Real: every byte the commands printed, at the time they printed it. Any silence longer than 2 s is shown for 2 s, and the title bar says so while it happens. Edited: home directory shown as ~.

+ +
+ + + diff --git a/apps/website/public/term/t27-tri-lean/meta.json b/apps/website/public/term/t27-tri-lean/meta.json new file mode 100644 index 0000000000..7bb918ba84 --- /dev/null +++ b/apps/website/public/term/t27-tri-lean/meta.json @@ -0,0 +1,23 @@ +{ + "id": "t27-tri-lean", + "title": "tri lean: proofs that nothing compiles", + "desc": "12 Lean files, 15,553 lines and 4 sorry, are reached by no build root: nothing compiles them.", + "url": "https://t27.ai/term/t27-tri-lean/", + "gif": "https://t27.ai/term/t27-tri-lean/session.gif", + "post": null, + "recorded": "2026-10-03 16:18 UTC", + "real_s": 4.7, + "shown_s": 4.7, + "commands": [ + "tri lean vacuous", + "tri lean reach" + ], + "exit_codes": [ + "0", + "0" + ], + "redacted": [ + "home directory shown as ~" + ], + "published": "2026-10-03" +} diff --git a/apps/website/public/term/t27-tri-lean/session.cast b/apps/website/public/term/t27-tri-lean/session.cast new file mode 100644 index 0000000000..063d72669b --- /dev/null +++ b/apps/website/public/term/t27-tri-lean/session.cast @@ -0,0 +1,41 @@ +{"version": 2, "width": 104, "height": 30, "timestamp": 1791044330, "title": "t27 \u00b7 tri lean", "commands": ["tri lean vacuous", "tri lean reach"], "redacted": ["home directory shown as ~"]} +[0.0, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[0.4015, "o", "t"] +[0.4417, "o", "r"] +[0.4817, "o", "i"] +[0.5218, "o", " "] +[0.5598, "o", "l"] +[0.5998, "o", "e"] +[0.6398, "o", "a"] +[0.6799, "o", "n"] +[0.7181, "o", " "] +[0.7582, "o", "v"] +[0.7968, "o", "a"] +[0.8369, "o", "c"] +[0.877, "o", "u"] +[0.917, "o", "o"] +[0.9571, "o", "u"] +[0.9931, "o", "s"] +[1.3383, "o", "\r\n"] +[1.3802, "o", "VACUOUS COMPLETENESS THEOREMS\r\n\r\n models in the file 250\r\n with `functions := []` 114\r\n ...and an empty Env too 104\r\n counted by max_vacuous 44\r\n vacuous and INVISIBLE to it 70\r\n\r\n`max_vacuous` counts only models that ALSO disagree with the Rust classifier.\r\nA theorem about an empty module says nothing about its spec whether or not the\r\nclassifier happens to disagree, so the ratchet measures a subset of its own\r\nsubject -- and the number it reports looks like the number you care about.\r\n\r\nRead from the file's text. Only a Lean build can say what these theorems MEAN,\r\nand no workflow in this repository builds them (#2747).\r\n"] +[1.3806, "x", "0"] +[2.3849, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[2.7893, "o", "t"] +[2.8269, "o", "r"] +[2.8669, "o", "i"] +[2.907, "o", " "] +[2.9431, "o", "l"] +[2.9782, "o", "e"] +[3.0158, "o", "a"] +[3.0545, "o", "n"] +[3.0933, "o", " "] +[3.1347, "o", "r"] +[3.1747, "o", "e"] +[3.2148, "o", "a"] +[3.2506, "o", "c"] +[3.2869, "o", "h"] +[3.6326, "o", "\r\n"] +[3.6835, "o", "BUILD-GRAPH REACHABILITY (~/t27/.claude/worktrees/gif-animation-reposts-5eb60f/proofs/lean4/Trinity.lean)\r\n\r\n files lines sorry\r\n reached by the root 11 7651 1\r\n NOT reached 12 15553 4\r\n\r\nStranded -- present, shaped like proofs, compiled by nothing:\r\n Trinity.GoldenFloatRoundTrip 105 lines 3 sorry\r\n Trinity.IcarusLowerable.Ast 90 lines\r\n Trinity.IcarusLowerable.AstInduction 130 lines\r\n Trinity.IcarusLowerable.Completeness 4986 lines\r\n Trinity.IcarusLowerable.Emitter 221 lines\r\n Trinity.IcarusLowerable.Equivalence 2875 lines 1 sorry\r\n Trinity.IcarusLowerable.Lemmas 3444 lines\r\n Trinity.IcarusLowerable.Predicate 1005 lines\r\n Trinity.IcarusLowerable.Semantics 389 lines\r\n Trinity.IcarusLowerable.SemanticsTotal 546 lines\r\n Trinity.IcarusLowerable.Soundness 164"] +[3.6836, "o", "1 lines\r\n Trinity.IcarusLowerable.Verilog 121 lines\r\n\r\n`lake build` prints what it compiled and never what it skipped, so these produce\r\nno output at all -- not an error, not a warning. A build graph is a claim about\r\ncoverage that nothing prints, and the root file is the whole of the claim.\r\n\r\n4 of the 5 admitted proofs counted by `lean-proofs.yml` are in these files.\r\nThat gate greps the directory; the build compiles the closure. Its comment says\r\na `sorry` compiles -- for these it does not, because nothing compiles them.\r\n"] +[3.6841, "x", "0"] +[4.6848, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] diff --git a/apps/website/public/term/t27-tri-lean/session.gif b/apps/website/public/term/t27-tri-lean/session.gif new file mode 100644 index 0000000000000000000000000000000000000000..0c7ee8ad1b1d1ffb63fcde2396aa7ae5e8a4a193 GIT binary patch literal 66345 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

{P#JhvJ&)fq&t@O=qgW} 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 literal 0 HcmV?d00001 diff --git a/apps/website/public/term/t27-tri-misread/card.png b/apps/website/public/term/t27-tri-misread/card.png new file mode 100644 index 0000000000000000000000000000000000000000..fe970e9621a184e59317a8153feaaad5a16969ad GIT binary patch literal 60483 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 literal 0 HcmV?d00001 diff --git a/apps/website/public/term/t27-tri-misread/index.html b/apps/website/public/term/t27-tri-misread/index.html new file mode 100644 index 0000000000..aa46dded24 --- /dev/null +++ b/apps/website/public/term/t27-tri-misread/index.html @@ -0,0 +1,83 @@ + + + + + +tri misread: code that compiles and is wrong · Trinity S³AI + + + + + + + + + + + + + + + + + + + + +

+ +

tri misread: code that compiles and is wrong

+

1,144 of 1,156 specs generate; 41 spec-shape pairs are read wrongly with every gate green.

+
+
recorded 2026-10-03 16:18 UTCreal 25.0 sshown 4.2 sexit codes 0
+
$ tri misread
+

Staged: the prompt and the typing. Real: every byte the commands printed, at the time they printed it. Any silence longer than 2 s is shown for 2 s, and the title bar says so while it happens. Edited: home directory shown as ~.

+ +
+ + + diff --git a/apps/website/public/term/t27-tri-misread/meta.json b/apps/website/public/term/t27-tri-misread/meta.json new file mode 100644 index 0000000000..eb9d5f4f13 --- /dev/null +++ b/apps/website/public/term/t27-tri-misread/meta.json @@ -0,0 +1,21 @@ +{ + "id": "t27-tri-misread", + "title": "tri misread: code that compiles and is wrong", + "desc": "1,144 of 1,156 specs generate; 41 spec-shape pairs are read wrongly with every gate green.", + "url": "https://t27.ai/term/t27-tri-misread/", + "gif": "https://t27.ai/term/t27-tri-misread/session.gif", + "post": null, + "recorded": "2026-10-03 16:18 UTC", + "real_s": 25.0, + "shown_s": 4.2, + "commands": [ + "tri misread" + ], + "exit_codes": [ + "0" + ], + "redacted": [ + "home directory shown as ~" + ], + "published": "2026-10-03" +} diff --git a/apps/website/public/term/t27-tri-misread/session.cast b/apps/website/public/term/t27-tri-misread/session.cast new file mode 100644 index 0000000000..8b27964c6d --- /dev/null +++ b/apps/website/public/term/t27-tri-misread/session.cast @@ -0,0 +1,20 @@ +{"version": 2, "width": 104, "height": 30, "timestamp": 1791044286, "title": "t27 \u00b7 tri misread", "commands": ["tri misread"], "redacted": ["home directory shown as ~"]} +[0.0001, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[0.4034, "o", "t"] +[0.4434, "o", "r"] +[0.4813, "o", "i"] +[0.5214, "o", " "] +[0.5576, "o", "m"] +[0.595, "o", "i"] +[0.635, "o", "s"] +[0.6749, "o", "r"] +[0.7117, "o", "e"] +[0.7518, "o", "a"] +[0.7878, "o", "d"] +[1.1284, "o", "\r\n"] +[1.1864, "o", "\r\n the specs the compiler reads WRONGLY -- every gate green on all of them\r\n ------------------------------------------------------------------\r\n"] +[1.2187, "o", " control: all 5 shape(s) fired on the reproducer\r\n"] +[1.2345, "o", " corpus: 1156 spec(s) under specs\r\n\r\n"] +[23.9828, "o", " generated for 1144 of 1156 spec(s)\r\n\r\n 28 rust: `pub f: ,` field with no type\r\n 1 rust: `pub f: 0,` literal in type position\r\n 1 rust: `Vec<>` generic lost its parameter\r\n 1 c: `0 f;` literal in type position\r\n 10 rust: `pub a: Xb:Y,` bare colon inside a type\r\n\r\n Each of these parses and typechecks. The count above is a count of\r\n SPEC-SHAPE pairs, not of specs: one spec can carry more than one.\r\n `--list` names them.\r\n"] +[23.9836, "x", "0"] +[24.9866, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] diff --git a/apps/website/public/term/t27-tri-misread/session.gif b/apps/website/public/term/t27-tri-misread/session.gif new file mode 100644 index 0000000000000000000000000000000000000000..82818429c8d717f797f6c3af396109851b248311 GIT binary patch literal 36771 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 literal 0 HcmV?d00001 diff --git a/apps/website/public/term/t27-tri-prose/card.png b/apps/website/public/term/t27-tri-prose/card.png new file mode 100644 index 0000000000000000000000000000000000000000..452bbb62ec8ab767e9f48c466e8e86bb23a0912b GIT binary patch literal 54280 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 literal 0 HcmV?d00001 diff --git a/apps/website/public/term/t27-tri-prose/index.html b/apps/website/public/term/t27-tri-prose/index.html new file mode 100644 index 0000000000..f7e2a02db6 --- /dev/null +++ b/apps/website/public/term/t27-tri-prose/index.html @@ -0,0 +1,76 @@ + + + + + +tri prose report: prose, or code? · Trinity S³AI + + + + + + + + + + + + + + + + + + + + +
+ +

tri prose report: prose, or code?

+

11 specs refused at parse, 0 blocked only by prose, 23 broken on purpose as fixtures.

+
+
recorded 2026-10-03 16:18 UTCreal 14.4 sshown 4.3 sexit codes 0
+
$ tri prose report
+

Staged: the prompt and the typing. Real: every byte the commands printed, at the time they printed it. Any silence longer than 2 s is shown for 2 s, and the title bar says so while it happens. Edited: home directory shown as ~.

+ +
+ + + diff --git a/apps/website/public/term/t27-tri-prose/meta.json b/apps/website/public/term/t27-tri-prose/meta.json new file mode 100644 index 0000000000..643be568bb --- /dev/null +++ b/apps/website/public/term/t27-tri-prose/meta.json @@ -0,0 +1,21 @@ +{ + "id": "t27-tri-prose", + "title": "tri prose report: prose, or code?", + "desc": "11 specs refused at parse, 0 blocked only by prose, 23 broken on purpose as fixtures.", + "url": "https://t27.ai/term/t27-tri-prose/", + "gif": "https://t27.ai/term/t27-tri-prose/session.gif", + "post": null, + "recorded": "2026-10-03 16:18 UTC", + "real_s": 14.4, + "shown_s": 4.3, + "commands": [ + "tri prose report" + ], + "exit_codes": [ + "0" + ], + "redacted": [ + "home directory shown as ~" + ], + "published": "2026-10-03" +} diff --git a/apps/website/public/term/t27-tri-prose/session.cast b/apps/website/public/term/t27-tri-prose/session.cast new file mode 100644 index 0000000000..a6f6956b27 --- /dev/null +++ b/apps/website/public/term/t27-tri-prose/session.cast @@ -0,0 +1,22 @@ +{"version": 2, "width": 104, "height": 30, "timestamp": 1791044325, "title": "t27 \u00b7 tri prose report", "commands": ["tri prose report"], "redacted": ["home directory shown as ~"]} +[0.0, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[0.4051, "o", "t"] +[0.4451, "o", "r"] +[0.4836, "o", "i"] +[0.5219, "o", " "] +[0.5619, "o", "p"] +[0.5995, "o", "r"] +[0.6387, "o", "o"] +[0.6788, "o", "s"] +[0.7188, "o", "e"] +[0.7539, "o", " "] +[0.793, "o", "r"] +[0.8301, "o", "e"] +[0.8697, "o", "p"] +[0.9095, "o", "o"] +[0.9471, "o", "r"] +[0.9871, "o", "t"] +[1.3295, "o", "\r\n"] +[13.4434, "o", " specs refused at PARSE 11\r\n ... refused at a LATER stage 13 (they parse)\r\n broken ON PURPOSE under fixtures/ 23 (detector inputs, not debt)\r\n ... blocked ONLY by prose 0\r\n ... blocked by code 11\r\n\r\n --fix comments those lines, preserving the text exactly. It is a\r\n STATEMENT that the prose was documentation and not a declaration\r\n someone half-wrote. Read the diff: every changed line must be the\r\n old line with `// ` in front, and nothing else.\r\n"] +[13.4439, "x", "0"] +[14.45, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] diff --git a/apps/website/public/term/t27-tri-prose/session.gif b/apps/website/public/term/t27-tri-prose/session.gif new file mode 100644 index 0000000000000000000000000000000000000000..0b488613ab907e70aca6e629453425cac9c71290 GIT binary patch literal 26058 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≠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 DJw$PA literal 0 HcmV?d00001 diff --git a/apps/website/public/term/t27-tri-seals/index.html b/apps/website/public/term/t27-tri-seals/index.html new file mode 100644 index 0000000000..bbcd620057 --- /dev/null +++ b/apps/website/public/term/t27-tri-seals/index.html @@ -0,0 +1,95 @@ + + + + + +tri seals: hollow seals that pass every check · Trinity S³AI + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/apps/website/public/term/t27-tri-seals/meta.json b/apps/website/public/term/t27-tri-seals/meta.json new file mode 100644 index 0000000000..f419585bf5 --- /dev/null +++ b/apps/website/public/term/t27-tri-seals/meta.json @@ -0,0 +1,23 @@ +{ + "id": "t27-tri-seals", + "title": "tri seals: hollow seals that pass every check", + "desc": "31 of 1,428 seals record no output (16 specs); 3 of those are missing from the debt ledger.", + "url": "https://t27.ai/term/t27-tri-seals/", + "gif": "https://t27.ai/term/t27-tri-seals/session.gif", + "post": null, + "recorded": "2026-10-03 16:18 UTC", + "real_s": 4.9, + "shown_s": 4.9, + "commands": [ + "tri seals fresh", + "tri seals hollow" + ], + "exit_codes": [ + "0", + "0" + ], + "redacted": [ + "home directory shown as ~" + ], + "published": "2026-10-03" +} diff --git a/apps/website/public/term/t27-tri-seals/session.cast b/apps/website/public/term/t27-tri-seals/session.cast new file mode 100644 index 0000000000..4780326990 --- /dev/null +++ b/apps/website/public/term/t27-tri-seals/session.cast @@ -0,0 +1,45 @@ +{"version": 2, "width": 104, "height": 30, "timestamp": 1791044311, "title": "t27 \u00b7 tri seals", "commands": ["tri seals fresh", "tri seals hollow"], "redacted": ["home directory shown as ~"]} +[0.0, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[0.4037, "o", "t"] +[0.4438, "o", "r"] +[0.4801, "o", "i"] +[0.5202, "o", " "] +[0.5602, "o", "s"] +[0.6002, "o", "e"] +[0.6371, "o", "a"] +[0.6771, "o", "l"] +[0.7171, "o", "s"] +[0.7559, "o", " "] +[0.7954, "o", "f"] +[0.8355, "o", "r"] +[0.8755, "o", "e"] +[0.9155, "o", "s"] +[0.9538, "o", "h"] +[1.2968, "o", "\r\n"] +[1.3249, "o", " target/release/t27c FRESH <- used\r\n bootstrap/target/release/t27c absent\r\n target/debug/t27c absent\r\n\r\n The binary a seal check would use is newer than bootstrap/src, so a\r\n reading taken now is a reading of THIS source. Any other binary\r\n listed above is not consulted and its age decides nothing.\r\n"] +[1.3252, "x", "0"] +[2.3303, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[2.7321, "o", "t"] +[2.7715, "o", "r"] +[2.8201, "o", "i"] +[2.8617, "o", " "] +[2.9017, "o", "s"] +[2.937, "o", "e"] +[2.9771, "o", "a"] +[3.0171, "o", "l"] +[3.0561, "o", "s"] +[3.0931, "o", " "] +[3.1328, "o", "h"] +[3.1704, "o", "o"] +[3.2104, "o", "l"] +[3.2505, "o", "l"] +[3.2898, "o", "o"] +[3.3278, "o", "w"] +[3.6704, "o", "\r\n"] +[3.8904, "o", " seals that claim no generation 31 of 1428\r\n distinct specs behind them 16\r\n\r\n A hollow seal passes every SEAL check. spec_hash matches the file,\r\n so `seals fresh` is green. `none` equals `none`, so `seals drift`\r\n reports zero. The file exists, so Seal Coverage counts the spec as\r\n covered. The one thing it does not record is the output.\r\n\r\n Most of these are already written down as debt elsewhere -- the\r\n reconciliation below says how many. The seal side is where the same\r\n fact reads as health.\r\n"] +[3.8905, "o", "\r\n against tools/specs_generate_baseline.txt, which calls each line a debt\r\n 13 already recorded there\r\n 3 hollow seal, NOT in the ledger\r\n"] +[3.8905, "o", " 1 in the ledger with no hollow seal\r\n\r\n sealed, but not a spec 3\r\n"] +[3.8905, "o", " docs/nona-03-manifest/PHI_LOOP_CONTRACT.md\r\n docs/nona-03-manifest/SOUL.md\r\n specs/sandbox/sandbox.tri\r\n\r\n where they are\r\n 4 specs/physics\r\n"] +[3.8905, "o", " 2 docs/nona-03-manifest\r\n 2 specs/ar\r\n 2 specs/benchmarks\r\n 2 specs/test_framework\r\n 1 examples/fpga\r\n 1 specs/api\r\n 1 specs/conformance\r\n 1 specs/sandbox\r\n\r\n --why runs the compiler on each and groups the errors: it turns\r\n 16 specs into the handful of parser gaps behind them.\r\n"] +[3.8914, "x", "0"] +[4.8965, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] diff --git a/apps/website/public/term/t27-tri-seals/session.gif b/apps/website/public/term/t27-tri-seals/session.gif new file mode 100644 index 0000000000000000000000000000000000000000..1898a5646d8665dee243b9005f24167e86851572 GIT binary patch literal 43831 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%0Ap?FV^ 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ℜ;m<^>XcfC7;4J)b;*$riExX|rysX1+)^G$ zO+R}hrM2vf-ju?iFJOXgDz5bA)x!6mR=}$0?Nt1%8nbLZS4&!OKc?eUd5`5O75$Ir z*J(-Cq=lcO$=K~#d{6$dSyJV1xQ$JNtxFJR4!pcPk>7_Gx%Ynkn_oDInOvxs;LIpa0W!sW?O>6tle-dQ=u zgop>acyYjVc|E^pA836%v9D`@SB=2}Xd>eE=4;zvil_#k)L6z|_jV?CUjwB77)<&K zw!@UTbb-BOihD!tGD?!bUg_fI;fdW$SP)BOMyK7qkHyP+Wj0{JZxeVCp7&P8nP&vG zP^o$luZ`JszC6hguRx2PD8m7w$vz3LJeYnJ@CEF7%Pd%{8J@fylaxwrDL8eOdLfb` zJ;L;CWhA{y7}!Fq*wc`4TAPEP^Uy3k&kZf1S^-fG9VAaBE$tuKKlKJ#&>BoQw=-lL zW_D=1n2 zKbKT{Wq&#+d0#u!z$ucD$Vu)3R?;lq_Kq^R8P3;_(UYTNuhRQUMN{YPV3_JhZU|!& zQK%Q}Y9o(|qRk^bFH_3PgRVn9iL3?fK+BlIojT>1Pvy$IqsamCyT|HvOpjGWaT=>* zngL;%6L1lEy?@OIBcLWWpo%D~D9dccV7e5_YX_;1V8T_8KERO%WLdsO3d#p-fC8Bq6)HlCqYNHOA_jASEyU?X!^ zBl~S5T%n1(D>)(!=CrCrWkt*)#Y>aJ{W=q_%!&~3-45|lmxySI1~OQ;G&AFj?jc&p zg_uckoJy-C|F}4oVcsXK=8`y1Q9v6zS|=enI}(G4QE2_<-C8Z29wZ;Kz$|pl_d$Ar ze{}{Pw15c9@9?gmQG4^A6SvEy+3I_i^t#Jo)4y+LH=WalRi$;s*u*fWR+kZgd8ezF zKcmoARzr)!6uy4)j>@Ei(@5{!K#A1o?iLgnaQ&grR{BL06jw8sEcaj6M8&Wn`G<$m zS-Op8Cibo2cyChTS4j3yTH~Kj;WoA$d&kDq|8<9kbz`r3pan)l`JW#6>dqPKALzf| zsV30x0Z{c2N(RCiXmWvG!{G5_o{N0MzoDs~!$@G)4?E7fz^8Xowx6;T#HJTZ)Gcqb zOrbG|_Bl!kmWqzElXCN6+KB$v5AZ1-Ggd$NLYAG1G@Rzbibxuk!3Ni3YZY&@?fPIb zaW#r>wdz}pfy)eioa!GkIVT>eiW;b_vIChD5Q@!t0J+6(+nh(H$KhyAP8m1)c6UNk zY#yCk-s3+E>l2s!x_WmYS0i_9W&z7$mj-+KeVLK6#0~>#!dDYyjZP!F=YE@;?9Hx$z8>eK{k@_*_U!`_YlMZ) zf$3lFt-LBC-~^gQjVt_=>=HXR+mj&mqG(kt94-2lH&?uuC+*B!l66)1=p$vRX?%0X z*lkf3kR=;aotwc-wf(XCd&fnce6jsX&F+W%>vc?=<;ahh3zKCTf`q91hzbcG1 zmfe(jkKze?W5L8Abz_2K&NXU!Ae{hP9O?^@oGLg>76psyOCmFrjiUKXL|Si%stj{( zgYdm7(a-`Qj^#rr+r#8WAM zxH{e(%2!EI{&;h~zt9y*tZQCS9 zoRe*`{O^8FBe4sxT`IciY9m#XBfdOJgJ-}lLw~D%Gs8$N=m ztt42CjzgYM%YUegm#{#o%e#b&Tah>hLfZqeQsQ>>}e?~|^AS6jp1o%I? K=zlF;r0_p2S6=i0 literal 0 HcmV?d00001 diff --git a/apps/website/public/term/t27-tri-vectors/card.png b/apps/website/public/term/t27-tri-vectors/card.png new file mode 100644 index 0000000000000000000000000000000000000000..f150feedddc7b94738b8248809e56885aa2e3b6c GIT binary patch literal 80149 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 UeM#||mZ7NZ+@qAEc<`_P2Ubp)mjD0& literal 0 HcmV?d00001 diff --git a/apps/website/public/term/t27-tri-vectors/index.html b/apps/website/public/term/t27-tri-vectors/index.html new file mode 100644 index 0000000000..a701e2118c --- /dev/null +++ b/apps/website/public/term/t27-tri-vectors/index.html @@ -0,0 +1,94 @@ + + + + + +tri vectors debt: tests that are prose · Trinity S³AI + + + + + + + + + + + + + + + + + + + + +
+ +

tri vectors debt: tests that are prose

+

34 vector files, 512 cases: 2 files executed, 8 debt, 24 prose-only; 19% carry data.

+
+
recorded 2026-10-03 16:18 UTCreal 2.4 sshown 2.4 sexit codes 0
+
$ tri vectors debt
+

Staged: the prompt and the typing. Real: every byte the commands printed, at the time they printed it. Any silence longer than 2 s is shown for 2 s, and the title bar says so while it happens. Edited: home directory shown as ~.

+ +
+ + + diff --git a/apps/website/public/term/t27-tri-vectors/meta.json b/apps/website/public/term/t27-tri-vectors/meta.json new file mode 100644 index 0000000000..9d398ab2c3 --- /dev/null +++ b/apps/website/public/term/t27-tri-vectors/meta.json @@ -0,0 +1,21 @@ +{ + "id": "t27-tri-vectors", + "title": "tri vectors debt: tests that are prose", + "desc": "34 vector files, 512 cases: 2 files executed, 8 debt, 24 prose-only; 19% carry data.", + "url": "https://t27.ai/term/t27-tri-vectors/", + "gif": "https://t27.ai/term/t27-tri-vectors/session.gif", + "post": null, + "recorded": "2026-10-03 16:18 UTC", + "real_s": 2.4, + "shown_s": 2.4, + "commands": [ + "tri vectors debt" + ], + "exit_codes": [ + "0" + ], + "redacted": [ + "home directory shown as ~" + ], + "published": "2026-10-03" +} diff --git a/apps/website/public/term/t27-tri-vectors/session.cast b/apps/website/public/term/t27-tri-vectors/session.cast new file mode 100644 index 0000000000..2bc8f02caa --- /dev/null +++ b/apps/website/public/term/t27-tri-vectors/session.cast @@ -0,0 +1,57 @@ +{"version": 2, "width": 104, "height": 30, "timestamp": 1791044335, "title": "t27 \u00b7 tri vectors debt", "commands": ["tri vectors debt"], "redacted": ["home directory shown as ~"]} +[0.0, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] +[0.4052, "o", "t"] +[0.4453, "o", "r"] +[0.4853, "o", "i"] +[0.5211, "o", " "] +[0.5589, "o", "v"] +[0.5947, "o", "e"] +[0.6321, "o", "c"] +[0.6712, "o", "t"] +[0.7113, "o", "o"] +[0.7513, "o", "r"] +[0.7893, "o", "s"] +[0.8267, "o", " "] +[0.8641, "o", "d"] +[0.9041, "o", "e"] +[0.9393, "o", "b"] +[0.9793, "o", "t"] +[1.3241, "o", "\r\n"] +[1.3737, "o", "vector file cases data verdict\r\n"] +[1.3739, "o", "fpga_apb_bridge.json 18 0 prose-only (no data at all)\r\n"] +[1.3741, "o", "fpga_assembler.json 19 0 prose-only (no data at all)\r\n"] +[1.3743, "o", "fpga_axi4.json 16 0 prose-only (no data at all)\r\n"] +[1.3745, "o", "fpga_bootrom.json 6 0 prose-only (no data at all)\r\n"] +[1.3747, "o", "fpga_bridge.json 11 11 debt (has data, no runner)\r\n"] +[1.3749, "o", "fpga_clock_domain.json 12 0 prose-only (no data at all)\r\n"] +[1.375, "o", "fpga_crossopt.json 6 0 prose-only (no data at all)\r\n"] +[1.3759, "o", "fpga_cts.json 15 0 prose-only (no data at all)\r\n"] +[1.3763, "o", "fpga_dft.json 17 0 prose-only (no data at all)\r\n"] +[1.3766, "o", "fpga_e2e_demo.json 16 0 prose-only (no data at all)\r\n"] +[1.3767, "o", "fpga_fifo.json 18 0 prose-only (no data at all)\r\n"] +[1.3769, "o", "fpga_formal.json 18 0 prose-only (no data at all)\r\n"] +[1.3771, "o", "fpga_gf16_accel.json 27 0 prose-only (no data at all)\r\n"] +[1.3772, "o", "fpga_hir.json 26 0 prose-only (no data at all)\r\n"] +[1.3773, "o", "fpga_hw_types.json 22 0 prose-only (no data at all)\r\n"] +[1.3779, "o", "fpga_linker.json 17 0 prose-only (no data at all)\r\n"] +[1.3781, "o", "fpga_mac_vectors.json 21 21 executed\r\n"] +[1.3782, "o", "fpga_memory.json 15 0 prose-only (no data at all)\r\n"] +[1.3784, "o", "fpga_partition.json 12 0 prose-only (no data at all)\r\n"] +[1.3786, "o", "fpga_placement.json 14 0 prose-only (no data at all)\r\n"] +[1.3791, "o", "fpga_power.json 15 0 prose-only (no data at all)\r\n"] +[1.3802, "o", "fpga_power_analysis.json 9 9 debt (has data, no runner)\r\n"] +[1.3804, "o", "fpga_router.json 19 0 prose-only (no data at all)\r\n"] +[1.3805, "o", "fpga_simulator.json 13 0 prose-only (no data at all)\r\n"] +[1.3806, "o", "fpga_spi.json 8 8 executed\r\n"] +[1.3807, "o", "fpga_ternary_isa.json 29 0 prose-only (no data at all)\r\n"] +[1.3811, "o", "fpga_testbench_mac_tb.json 10 10 debt (has data, no runner)\r\n"] +[1.3813, "o", "fpga_testbench_top_tb.json 4 4 debt (has data, no runner)\r\n"] +[1.3816, "o", "fpga_testbench_uart_tb.json 7 7 debt (has data, no runner)\r\n"] +[1.3817, "o", "fpga_timing.json 24 0 prose-only (no data at all)\r\n"] +[1.3818, "o", "fpga_top_level.json 7 7 debt (has data, no runner)\r\n"] +[1.3819, "o", "fpga_uart.json 7 7 debt (has data, no runner)\r\n"] +[1.3819, "o", "fpga_vcd_conformance_compare.json 16 16 debt (has data, no runner)\r\n"] +[1.382, "o", "fpga_vcd_trace.json 18 0 prose-only (no data at all)\r\n\r\n2 executed, 8 debt, 24 prose-only (34 files); 512 cases, 100 carrying data (19%).\r\n"] +[1.382, "o", "PROSE-ONLY is the majority and the important number: those cases carry\r\nan id and a sentence, no inputs and no expected values, so no runner\r\ncan ever execute them as written -- they are documentation shaped like\r\ntests. DEBT is executable in principle and blocked by numbered defects\r\n(#2410 slices, #2413 test emission). Neither counts as coverage.\r\n"] +[1.3826, "x", "0"] +[2.3858, "o", "\u001b[38;2;255;215;0mt27 $ \u001b[0m"] diff --git a/apps/website/public/term/t27-tri-vectors/session.gif b/apps/website/public/term/t27-tri-vectors/session.gif new file mode 100644 index 0000000000000000000000000000000000000000..50fdd491ca163e2c3f14f147afe638c3151975cd GIT binary patch literal 50638 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 literal 0 HcmV?d00001 diff --git a/apps/website/public/tools/spec-tools.json b/apps/website/public/tools/spec-tools.json index 561a4d9d01..6ae63412d4 100644 --- a/apps/website/public/tools/spec-tools.json +++ b/apps/website/public/tools/spec-tools.json @@ -1 +1 @@ -{"collisions":[{"name":"cell","t27":"gHashTag/t27:tri/cell","trinity":"gHashTag/trinity:tri/cell"},{"name":"doctor","t27":"gHashTag/t27:tri/doctor","trinity":"gHashTag/trinity:tri/doctor"},{"name":"experience","t27":"gHashTag/t27:tri/experience","trinity":"gHashTag/trinity:tri/experience"},{"name":"fmt","t27":"gHashTag/t27:tri/fmt","trinity":"gHashTag/trinity:tri/fmt"},{"name":"fpga","t27":"gHashTag/t27:tri/fpga","trinity":"gHashTag/trinity:tri/fpga"},{"name":"gen","t27":"gHashTag/t27:tri/gen","trinity":"gHashTag/trinity:tri/gen"},{"name":"loop","t27":"gHashTag/t27:tri/loop","trinity":"gHashTag/trinity:tri/loop"},{"name":"pr","t27":"gHashTag/t27:tri/pr","trinity":"gHashTag/trinity:tri/pr"},{"name":"serve","t27":"gHashTag/t27:tri/serve","trinity":"gHashTag/trinity:tri/serve"},{"name":"status","t27":"gHashTag/t27:tri/status","trinity":"gHashTag/trinity:tri/status"},{"name":"test","t27":"gHashTag/t27:tri/test","trinity":"gHashTag/trinity:tri/test"},{"name":"verdict","t27":"gHashTag/t27:tri/verdict","trinity":"gHashTag/trinity:tri/verdict"}],"compilerWasmSha256":"bb39b9a5ca412a2695ab6a20a54e222933e10edaf08ef053670e4974d08f113f","contentSha256":"fc91ecce112d38ad7923369db6524036359d43b733704189babdee04f482716b","counts":{"byRepo":{"gHashTag/BrowserOS":295,"gHashTag/t27":58,"gHashTag/trinity":254},"byWitness":{"help-output":1,"registry-export":29,"runtime":0,"source-parse":577},"collisions":12,"enabled":607,"mcp":11,"mcpExternal":6,"mcpTools":255,"mcpWithTools":6,"schema2":607,"specs":607,"tri":596,"triActions":146,"triWithActions":44,"trinityTri":249,"triosTri":295,"typecheckOk":607,"withAgents":6,"withCast":10,"withSkills":5},"generatedAt":"2026-10-03T13:38:42.661Z","groups":{"mcpByRepo":{"gHashTag/t27":["mcp/gitbutler","mcp/inngest-dev","mcp/notebooklm","mcp/t27-traceability","mcp/tri-mcp","mcp/tri-ssot"],"gHashTag/trinity":["mcp/needle","mcp/neon","mcp/railway-mcp-server","mcp/trinity","mcp/zig-docs"]},"triByAgent":{"-":["gHashTag/BrowserOS:tri/ab","gHashTag/BrowserOS:tri/accept-rate","gHashTag/BrowserOS:tri/agree","gHashTag/BrowserOS:tri/anom","gHashTag/BrowserOS:tri/anomalies","gHashTag/BrowserOS:tri/author","gHashTag/BrowserOS:tri/backlog","gHashTag/BrowserOS:tri/blog","gHashTag/BrowserOS:tri/board","gHashTag/BrowserOS:tri/boundary","gHashTag/BrowserOS:tri/brief-gate","gHashTag/BrowserOS:tri/cast","gHashTag/BrowserOS:tri/channel","gHashTag/BrowserOS:tri/chat","gHashTag/BrowserOS:tri/ci-diff","gHashTag/BrowserOS:tri/clocks","gHashTag/BrowserOS:tri/close-done","gHashTag/BrowserOS:tri/container","gHashTag/BrowserOS:tri/coverage","gHashTag/BrowserOS:tri/cycle","gHashTag/BrowserOS:tri/cycle-anom","gHashTag/BrowserOS:tri/cycle-anomalies","gHashTag/BrowserOS:tri/cycle-dash","gHashTag/BrowserOS:tri/cycle-doctor","gHashTag/BrowserOS:tri/cycle-html","gHashTag/BrowserOS:tri/cycle-log","gHashTag/BrowserOS:tri/cycle-note","gHashTag/BrowserOS:tri/cycle-repair","gHashTag/BrowserOS:tri/cycle-sense","gHashTag/BrowserOS:tri/dash","gHashTag/BrowserOS:tri/dash2","gHashTag/BrowserOS:tri/deploy-wait","gHashTag/BrowserOS:tri/devkit","gHashTag/BrowserOS:tri/drift","gHashTag/BrowserOS:tri/driver","gHashTag/BrowserOS:tri/exposure","gHashTag/BrowserOS:tri/facts","gHashTag/BrowserOS:tri/failures","gHashTag/BrowserOS:tri/feed","gHashTag/BrowserOS:tri/fence","gHashTag/BrowserOS:tri/fields","gHashTag/BrowserOS:tri/flaky","gHashTag/BrowserOS:tri/forked-files","gHashTag/BrowserOS:tri/fp-check","gHashTag/BrowserOS:tri/fpga","gHashTag/BrowserOS:tri/fpga-audit","gHashTag/BrowserOS:tri/fpga-batch","gHashTag/BrowserOS:tri/fpga-batch-cosim","gHashTag/BrowserOS:tri/fpga-batch-rehearsal","gHashTag/BrowserOS:tri/fpga-budget","gHashTag/BrowserOS:tri/fpga-build","gHashTag/BrowserOS:tri/fpga-claim","gHashTag/BrowserOS:tri/fpga-cost","gHashTag/BrowserOS:tri/fpga-decode","gHashTag/BrowserOS:tri/fpga-derive","gHashTag/BrowserOS:tri/fpga-fire","gHashTag/BrowserOS:tri/fpga-firelog","gHashTag/BrowserOS:tri/fpga-flash","gHashTag/BrowserOS:tri/fpga-genscore","gHashTag/BrowserOS:tri/fpga-hole","gHashTag/BrowserOS:tri/fpga-hostnet","gHashTag/BrowserOS:tri/fpga-ioclients","gHashTag/BrowserOS:tri/fpga-jtag","gHashTag/BrowserOS:tri/fpga-keep","gHashTag/BrowserOS:tri/fpga-keycheck","gHashTag/BrowserOS:tri/fpga-lesson","gHashTag/BrowserOS:tri/fpga-loopcheck","gHashTag/BrowserOS:tri/fpga-loopstate","gHashTag/BrowserOS:tri/fpga-next","gHashTag/BrowserOS:tri/fpga-pins","gHashTag/BrowserOS:tri/fpga-prcheck","gHashTag/BrowserOS:tri/fpga-push","gHashTag/BrowserOS:tri/fpga-quiet","gHashTag/BrowserOS:tri/fpga-rehearse","gHashTag/BrowserOS:tri/fpga-release","gHashTag/BrowserOS:tri/fpga-repin","gHashTag/BrowserOS:tri/fpga-restore","gHashTag/BrowserOS:tri/fpga-run","gHashTag/BrowserOS:tri/fpga-runlog","gHashTag/BrowserOS:tri/fpga-rxcap","gHashTag/BrowserOS:tri/fpga-rxer","gHashTag/BrowserOS:tri/fpga-seeds","gHashTag/BrowserOS:tri/fpga-selftest","gHashTag/BrowserOS:tri/fpga-specs","gHashTag/BrowserOS:tri/fpga-stamps","gHashTag/BrowserOS:tri/fpga-status","gHashTag/BrowserOS:tri/fpga-steps","gHashTag/BrowserOS:tri/fpga-task","gHashTag/BrowserOS:tri/fpga-tmpcheck","gHashTag/BrowserOS:tri/fpga-tools","gHashTag/BrowserOS:tri/fpga-tristate","gHashTag/BrowserOS:tri/fpga-txhold","gHashTag/BrowserOS:tri/fpga-usb","gHashTag/BrowserOS:tri/fpga-watch-clients","gHashTag/BrowserOS:tri/fpga-wire","gHashTag/BrowserOS:tri/game","gHashTag/BrowserOS:tri/game-activity","gHashTag/BrowserOS:tri/game-anomalies","gHashTag/BrowserOS:tri/game-bar","gHashTag/BrowserOS:tri/game-bees","gHashTag/BrowserOS:tri/game-blog","gHashTag/BrowserOS:tri/game-branch","gHashTag/BrowserOS:tri/game-cadence","gHashTag/BrowserOS:tri/game-claim","gHashTag/BrowserOS:tri/game-clock","gHashTag/BrowserOS:tri/game-close","gHashTag/BrowserOS:tri/game-contract","gHashTag/BrowserOS:tri/game-copy","gHashTag/BrowserOS:tri/game-dash","gHashTag/BrowserOS:tri/game-events","gHashTag/BrowserOS:tri/game-feed","gHashTag/BrowserOS:tri/game-finding","gHashTag/BrowserOS:tri/game-foundation","gHashTag/BrowserOS:tri/game-gate","gHashTag/BrowserOS:tri/game-gates","gHashTag/BrowserOS:tri/game-ingest","gHashTag/BrowserOS:tri/game-iterate","gHashTag/BrowserOS:tri/game-lesson","gHashTag/BrowserOS:tri/game-lessons","gHashTag/BrowserOS:tri/game-local","gHashTag/BrowserOS:tri/game-measure","gHashTag/BrowserOS:tri/game-merged","gHashTag/BrowserOS:tri/game-models","gHashTag/BrowserOS:tri/game-next","gHashTag/BrowserOS:tri/game-objects","gHashTag/BrowserOS:tri/game-plan","gHashTag/BrowserOS:tri/game-prove","gHashTag/BrowserOS:tri/game-release","gHashTag/BrowserOS:tri/game-report","gHashTag/BrowserOS:tri/game-round","gHashTag/BrowserOS:tri/game-selftest","gHashTag/BrowserOS:tri/game-served","gHashTag/BrowserOS:tri/game-ship","gHashTag/BrowserOS:tri/game-site","gHashTag/BrowserOS:tri/game-spike","gHashTag/BrowserOS:tri/game-status","gHashTag/BrowserOS:tri/game-task","gHashTag/BrowserOS:tri/game-tick","gHashTag/BrowserOS:tri/game-vault","gHashTag/BrowserOS:tri/game-verdicts","gHashTag/BrowserOS:tri/game-verify","gHashTag/BrowserOS:tri/game-wire","gHashTag/BrowserOS:tri/game-writers","gHashTag/BrowserOS:tri/handover","gHashTag/BrowserOS:tri/handover-116-archived","gHashTag/BrowserOS:tri/heal","gHashTag/BrowserOS:tri/help","gHashTag/BrowserOS:tri/holds","gHashTag/BrowserOS:tri/idle","gHashTag/BrowserOS:tri/iter","gHashTag/BrowserOS:tri/iter-anchors","gHashTag/BrowserOS:tri/iter-dash","gHashTag/BrowserOS:tri/iter-log","gHashTag/BrowserOS:tri/iter-render","gHashTag/BrowserOS:tri/iter-unlock","gHashTag/BrowserOS:tri/jobs","gHashTag/BrowserOS:tri/jobs-anomalies","gHashTag/BrowserOS:tri/jobs-board","gHashTag/BrowserOS:tri/jobs-check","gHashTag/BrowserOS:tri/jobs-dash","gHashTag/BrowserOS:tri/jobs-drafts","gHashTag/BrowserOS:tri/jobs-guards","gHashTag/BrowserOS:tri/jobs-journal","gHashTag/BrowserOS:tri/jobs-leads","gHashTag/BrowserOS:tri/jobs-lesson","gHashTag/BrowserOS:tri/jobs-next","gHashTag/BrowserOS:tri/jobs-owed","gHashTag/BrowserOS:tri/jobs-run","gHashTag/BrowserOS:tri/jobs-show","gHashTag/BrowserOS:tri/judge-calibration","gHashTag/BrowserOS:tri/judge-packet","gHashTag/BrowserOS:tri/land","gHashTag/BrowserOS:tri/latency","gHashTag/BrowserOS:tri/learn","gHashTag/BrowserOS:tri/lease","gHashTag/BrowserOS:tri/lesson","gHashTag/BrowserOS:tri/lesson-orphans","gHashTag/BrowserOS:tri/live-verify","gHashTag/BrowserOS:tri/live-wait","gHashTag/BrowserOS:tri/locks","gHashTag/BrowserOS:tri/loop","gHashTag/BrowserOS:tri/loop-coverage","gHashTag/BrowserOS:tri/loop-lesson","gHashTag/BrowserOS:tri/loop-selftest","gHashTag/BrowserOS:tri/mix","gHashTag/BrowserOS:tri/morning","gHashTag/BrowserOS:tri/mutants-logic-refresh","gHashTag/BrowserOS:tri/needs-you","gHashTag/BrowserOS:tri/next","gHashTag/BrowserOS:tri/proof","gHashTag/BrowserOS:tri/prov","gHashTag/BrowserOS:tri/proven","gHashTag/BrowserOS:tri/providers","gHashTag/BrowserOS:tri/push-work","gHashTag/BrowserOS:tri/queue","gHashTag/BrowserOS:tri/reach","gHashTag/BrowserOS:tri/reap","gHashTag/BrowserOS:tri/reap-finished","gHashTag/BrowserOS:tri/reap-local","gHashTag/BrowserOS:tri/regress","gHashTag/BrowserOS:tri/regression","gHashTag/BrowserOS:tri/rejudge","gHashTag/BrowserOS:tri/rescue","gHashTag/BrowserOS:tri/salvage","gHashTag/BrowserOS:tri/selftest","gHashTag/BrowserOS:tri/share-modules","gHashTag/BrowserOS:tri/silent-loop","gHashTag/BrowserOS:tri/skills","gHashTag/BrowserOS:tri/spec-diag","gHashTag/BrowserOS:tri/stale-escalations","gHashTag/BrowserOS:tri/status","gHashTag/BrowserOS:tri/swarm","gHashTag/BrowserOS:tri/t27-gen","gHashTag/BrowserOS:tri/t27-parity","gHashTag/BrowserOS:tri/t27-tri","gHashTag/BrowserOS:tri/tb","gHashTag/BrowserOS:tri/tb-deploy","gHashTag/BrowserOS:tri/tb-lint","gHashTag/BrowserOS:tri/tb-verify","gHashTag/BrowserOS:tri/tc-abpair","gHashTag/BrowserOS:tri/tc-arena","gHashTag/BrowserOS:tri/tc-ask","gHashTag/BrowserOS:tri/tc-audit","gHashTag/BrowserOS:tri/tc-board","gHashTag/BrowserOS:tri/tc-card","gHashTag/BrowserOS:tri/tc-catalog","gHashTag/BrowserOS:tri/tc-cathead","gHashTag/BrowserOS:tri/tc-ceiling","gHashTag/BrowserOS:tri/tc-comptime","gHashTag/BrowserOS:tri/tc-contract","gHashTag/BrowserOS:tri/tc-coreleak","gHashTag/BrowserOS:tri/tc-cpuft","gHashTag/BrowserOS:tri/tc-cpuft-cmp","gHashTag/BrowserOS:tri/tc-cpuft-collect","gHashTag/BrowserOS:tri/tc-curve","gHashTag/BrowserOS:tri/tc-diffjudge","gHashTag/BrowserOS:tri/tc-disc","gHashTag/BrowserOS:tri/tc-draft","gHashTag/BrowserOS:tri/tc-gpuft","gHashTag/BrowserOS:tri/tc-honest","gHashTag/BrowserOS:tri/tc-loop","gHashTag/BrowserOS:tri/tc-maskcheck","gHashTag/BrowserOS:tri/tc-mutant3","gHashTag/BrowserOS:tri/tc-mutscore","gHashTag/BrowserOS:tri/tc-pair","gHashTag/BrowserOS:tri/tc-podwait","gHashTag/BrowserOS:tri/tc-prefill","gHashTag/BrowserOS:tri/tc-reach","gHashTag/BrowserOS:tri/tc-relabel","gHashTag/BrowserOS:tri/tc-remote","gHashTag/BrowserOS:tri/tc-restore","gHashTag/BrowserOS:tri/tc-retrieve","gHashTag/BrowserOS:tri/tc-rounds","gHashTag/BrowserOS:tri/tc-seen","gHashTag/BrowserOS:tri/tc-soundness","gHashTag/BrowserOS:tri/tc-speed","gHashTag/BrowserOS:tri/tc-sync","gHashTag/BrowserOS:tri/tc-t27bench","gHashTag/BrowserOS:tri/tc-t27mask","gHashTag/BrowserOS:tri/tc-t27selfcheck","gHashTag/BrowserOS:tri/tc-taxonomy","gHashTag/BrowserOS:tri/tc-val","gHashTag/BrowserOS:tri/tg-dialogs","gHashTag/BrowserOS:tri/tg-msg","gHashTag/BrowserOS:tri/tg-search","gHashTag/BrowserOS:tri/tg-unread","gHashTag/BrowserOS:tri/tg-who","gHashTag/BrowserOS:tri/trend","gHashTag/BrowserOS:tri/trinity-report","gHashTag/BrowserOS:tri/two-views","gHashTag/BrowserOS:tri/unpark","gHashTag/BrowserOS:tri/unverdicted","gHashTag/BrowserOS:tri/unwired","gHashTag/BrowserOS:tri/verdict-audit","gHashTag/BrowserOS:tri/verdicts","gHashTag/BrowserOS:tri/verify","gHashTag/BrowserOS:tri/vibee-feed","gHashTag/BrowserOS:tri/wave","gHashTag/BrowserOS:tri/wave-plan","gHashTag/BrowserOS:tri/which-board","gHashTag/BrowserOS:tri/why","gHashTag/BrowserOS:tri/x7-audit","gHashTag/BrowserOS:tri/x7-bench","gHashTag/BrowserOS:tri/x7-board","gHashTag/BrowserOS:tri/x7-claim","gHashTag/BrowserOS:tri/x7-fasm","gHashTag/BrowserOS:tri/x7-lesson","gHashTag/BrowserOS:tri/x7-mutate","gHashTag/BrowserOS:tri/x7-next","gHashTag/BrowserOS:tri/x7-part","gHashTag/BrowserOS:tri/x7-refs","gHashTag/BrowserOS:tri/x7-release","gHashTag/BrowserOS:tri/x7-status","gHashTag/BrowserOS:tri/x7-task","gHashTag/BrowserOS:tri/x7-writer","gHashTag/trinity:tri/agents-bench","gHashTag/trinity:tri/agents-demo","gHashTag/trinity:tri/all","gHashTag/trinity:tri/amygdala","gHashTag/trinity:tri/analyze","gHashTag/trinity:tri/auto-bench","gHashTag/trinity:tri/auto-demo","gHashTag/trinity:tri/autocomplete","gHashTag/trinity:tri/batched-bench","gHashTag/trinity:tri/batched-demo","gHashTag/trinity:tri/bench","gHashTag/trinity:tri/bench-suite","gHashTag/trinity:tri/bench-verdict","gHashTag/trinity:tri/bio","gHashTag/trinity:tri/blindspots","gHashTag/trinity:tri/brain","gHashTag/trinity:tri/build","gHashTag/trinity:tri/cache-bench","gHashTag/trinity:tri/cache-demo","gHashTag/trinity:tri/capsec-bench","gHashTag/trinity:tri/capsec-demo","gHashTag/trinity:tri/cell","gHashTag/trinity:tri/chain","gHashTag/trinity:tri/chat","gHashTag/trinity:tri/check","gHashTag/trinity:tri/chem","gHashTag/trinity:tri/chimera","gHashTag/trinity:tri/chord","gHashTag/trinity:tri/clara","gHashTag/trinity:tri/clean","gHashTag/trinity:tri/cloud","gHashTag/trinity:tri/cluster-bench","gHashTag/trinity:tri/cluster-demo","gHashTag/trinity:tri/code","gHashTag/trinity:tri/commands","gHashTag/trinity:tri/commit","gHashTag/trinity:tri/comms-bench","gHashTag/trinity:tri/comms-demo","gHashTag/trinity:tri/completion","gHashTag/trinity:tri/conscious","gHashTag/trinity:tri/consensus-bench","gHashTag/trinity:tri/consensus-demo","gHashTag/trinity:tri/constants","gHashTag/trinity:tri/context","gHashTag/trinity:tri/context-bench","gHashTag/trinity:tri/context-demo","gHashTag/trinity:tri/context-load","gHashTag/trinity:tri/contract-bench","gHashTag/trinity:tri/contract-demo","gHashTag/trinity:tri/convert","gHashTag/trinity:tri/core","gHashTag/trinity:tri/cosmos","gHashTag/trinity:tri/dashboard","gHashTag/trinity:tri/deadline-bench","gHashTag/trinity:tri/deadline-demo","gHashTag/trinity:tri/deck","gHashTag/trinity:tri/decompose","gHashTag/trinity:tri/depin","gHashTag/trinity:tri/deploy","gHashTag/trinity:tri/dev","gHashTag/trinity:tri/diff","gHashTag/trinity:tri/dispatch","gHashTag/trinity:tri/distributed","gHashTag/trinity:tri/dm","gHashTag/trinity:tri/doc","gHashTag/trinity:tri/docs-gen","gHashTag/trinity:tri/doctor","gHashTag/trinity:tri/dtxn-bench","gHashTag/trinity:tri/dtxn-demo","gHashTag/trinity:tri/enrich","gHashTag/trinity:tri/eval","gHashTag/trinity:tri/event","gHashTag/trinity:tri/events","gHashTag/trinity:tri/eventsrc-bench","gHashTag/trinity:tri/eventsrc-demo","gHashTag/trinity:tri/evolve","gHashTag/trinity:tri/experience","gHashTag/trinity:tri/experiment","gHashTag/trinity:tri/explain","gHashTag/trinity:tri/faculty","gHashTag/trinity:tri/farm","gHashTag/trinity:tri/fedlearn-bench","gHashTag/trinity:tri/fedlearn-demo","gHashTag/trinity:tri/fib","gHashTag/trinity:tri/finetune-bench","gHashTag/trinity:tri/finetune-demo","gHashTag/trinity:tri/fix","gHashTag/trinity:tri/fmt","gHashTag/trinity:tri/forge","gHashTag/trinity:tri/forge-bench","gHashTag/trinity:tri/forge-verdict","gHashTag/trinity:tri/formula","gHashTag/trinity:tri/fpga","gHashTag/trinity:tri/fpga-demo","gHashTag/trinity:tri/frequency","gHashTag/trinity:tri/full-cycle","gHashTag/trinity:tri/gematria","gHashTag/trinity:tri/gen","gHashTag/trinity:tri/git","gHashTag/trinity:tri/golden-chain","gHashTag/trinity:tri/govern","gHashTag/trinity:tri/governor-bench","gHashTag/trinity:tri/governor-demo","gHashTag/trinity:tri/graphql","gHashTag/trinity:tri/gravity","gHashTag/trinity:tri/habenula","gHashTag/trinity:tri/hardware","gHashTag/trinity:tri/harmony","gHashTag/trinity:tri/help","gHashTag/trinity:tri/holo","gHashTag/trinity:tri/identity","gHashTag/trinity:tri/igla","gHashTag/trinity:tri/info","gHashTag/trinity:tri/init","gHashTag/trinity:tri/install","gHashTag/trinity:tri/intelligence","gHashTag/trinity:tri/issue","gHashTag/trinity:tri/job","gHashTag/trinity:tri/job-artifacts","gHashTag/trinity:tri/job-cancel","gHashTag/trinity:tri/job-list","gHashTag/trinity:tri/job-logs","gHashTag/trinity:tri/job-status","gHashTag/trinity:tri/kaggle","gHashTag/trinity:tri/launch","gHashTag/trinity:tri/lint","gHashTag/trinity:tri/log","gHashTag/trinity:tri/loop","gHashTag/trinity:tri/loop-decide","gHashTag/trinity:tri/lucas","gHashTag/trinity:tri/math","gHashTag/trinity:tri/math-agent","gHashTag/trinity:tri/math-diff","gHashTag/trinity:tri/math-doctor","gHashTag/trinity:tri/math-explain","gHashTag/trinity:tri/math-table","gHashTag/trinity:tri/math-verify","gHashTag/trinity:tri/mcp","gHashTag/trinity:tri/memory-bench","gHashTag/trinity:tri/memory-demo","gHashTag/trinity:tri/mesh","gHashTag/trinity:tri/metrics","gHashTag/trinity:tri/mmo-bench","gHashTag/trinity:tri/mmo-demo","gHashTag/trinity:tri/mu","gHashTag/trinity:tri/multi-cluster","gHashTag/trinity:tri/multimodal-bench","gHashTag/trinity:tri/multimodal-demo","gHashTag/trinity:tri/music","gHashTag/trinity:tri/needle","gHashTag/trinity:tri/needle-check","gHashTag/trinity:tri/needle-search","gHashTag/trinity:tri/neuro","gHashTag/trinity:tri/notify","gHashTag/trinity:tri/observe-bench","gHashTag/trinity:tri/observe-demo","gHashTag/trinity:tri/ofc","gHashTag/trinity:tri/omega","gHashTag/trinity:tri/omega-evolve","gHashTag/trinity:tri/omega-phase","gHashTag/trinity:tri/orch-bench","gHashTag/trinity:tri/orch-demo","gHashTag/trinity:tri/ouroboros","gHashTag/trinity:tri/particles","gHashTag/trinity:tri/patent","gHashTag/trinity:tri/persist-bench","gHashTag/trinity:tri/persist-demo","gHashTag/trinity:tri/phi","gHashTag/trinity:tri/phi-series","gHashTag/trinity:tri/phoenix","gHashTag/trinity:tri/pipeline","gHashTag/trinity:tri/pipeline-demo","gHashTag/trinity:tri/plan","gHashTag/trinity:tri/plugin-bench","gHashTag/trinity:tri/plugin-demo","gHashTag/trinity:tri/pr","gHashTag/trinity:tri/priority-bench","gHashTag/trinity:tri/priority-demo","gHashTag/trinity:tri/qcd","gHashTag/trinity:tri/quantum","gHashTag/trinity:tri/queen","gHashTag/trinity:tri/rag-bench","gHashTag/trinity:tri/rag-demo","gHashTag/trinity:tri/railway","gHashTag/trinity:tri/reason","gHashTag/trinity:tri/refactor","gHashTag/trinity:tri/registry-validate","gHashTag/trinity:tri/release","gHashTag/trinity:tri/release-cosmic","gHashTag/trinity:tri/reputation","gHashTag/trinity:tri/research","gHashTag/trinity:tri/resonance","gHashTag/trinity:tri/sacred","gHashTag/trinity:tri/sacred-const","gHashTag/trinity:tri/sandbox-bench","gHashTag/trinity:tri/sandbox-demo","gHashTag/trinity:tri/scale","gHashTag/trinity:tri/search","gHashTag/trinity:tri/sebo","gHashTag/trinity:tri/self","gHashTag/trinity:tri/serve","gHashTag/trinity:tri/sim","gHashTag/trinity:tri/sparc","gHashTag/trinity:tri/spawn-bench","gHashTag/trinity:tri/spawn-demo","gHashTag/trinity:tri/spec-create","gHashTag/trinity:tri/specexec-bench","gHashTag/trinity:tri/specexec-demo","gHashTag/trinity:tri/spiral","gHashTag/trinity:tri/stats","gHashTag/trinity:tri/status","gHashTag/trinity:tri/storm","gHashTag/trinity:tri/stream-bench","gHashTag/trinity:tri/stream-demo","gHashTag/trinity:tri/stress","gHashTag/trinity:tri/string","gHashTag/trinity:tri/swarm","gHashTag/trinity:tri/sync-check","gHashTag/trinity:tri/system","gHashTag/trinity:tri/task","gHashTag/trinity:tri/test","gHashTag/trinity:tri/test-repl","gHashTag/trinity:tri/time","gHashTag/trinity:tri/token","gHashTag/trinity:tri/tooluse-bench","gHashTag/trinity:tri/tooluse-demo","gHashTag/trinity:tri/toxic-verdict","gHashTag/trinity:tri/trace","gHashTag/trinity:tri/train","gHashTag/trinity:tri/tvc-demo","gHashTag/trinity:tri/tvc-stats","gHashTag/trinity:tri/ui","gHashTag/trinity:tri/unified-bench","gHashTag/trinity:tri/unified-demo","gHashTag/trinity:tri/verdict","gHashTag/trinity:tri/verify","gHashTag/trinity:tri/version","gHashTag/trinity:tri/vision-bench","gHashTag/trinity:tri/vision-demo","gHashTag/trinity:tri/voice-bench","gHashTag/trinity:tri/voice-demo","gHashTag/trinity:tri/vsa","gHashTag/trinity:tri/wallet","gHashTag/trinity:tri/waveform","gHashTag/trinity:tri/workflow-bench","gHashTag/trinity:tri/workflow-demo","gHashTag/trinity:tri/worksteal-bench","gHashTag/trinity:tri/worksteal-demo","gHashTag/trinity:tri/zenodo","tri/abandoned","tri/census","tri/ci","tri/competitors","tri/discard","tri/doctor","tri/elab","tri/emit","tri/fleet","tri/fmt","tri/fpga","tri/gates","tri/harness","tri/health","tri/hooks","tri/issues","tri/jumps","tri/kinds","tri/lean","tri/ledgers","tri/loop","tri/merging","tri/misread","tri/mods","tri/mutate","tri/now","tri/one-away","tri/orphaned","tri/pr","tri/prose","tri/quantifiers","tri/red","tri/reseal","tri/rtl","tri/seals","tri/serve","tri/skill","tri/status","tri/sweep","tri/synth","tri/topic","tri/types","tri/unparsed","tri/vectors","tri/vsim","tri/window","tri/worktrees"],"C":["tri/gen"],"E":["tri/experience"],"T":["tri/gen","tri/test"],"V":["tri/test","tri/verdict"],"W":["tri/cell"]},"triByRepo":{"gHashTag/BrowserOS":["gHashTag/BrowserOS:tri/ab","gHashTag/BrowserOS:tri/accept-rate","gHashTag/BrowserOS:tri/agree","gHashTag/BrowserOS:tri/anom","gHashTag/BrowserOS:tri/anomalies","gHashTag/BrowserOS:tri/author","gHashTag/BrowserOS:tri/backlog","gHashTag/BrowserOS:tri/blog","gHashTag/BrowserOS:tri/board","gHashTag/BrowserOS:tri/boundary","gHashTag/BrowserOS:tri/brief-gate","gHashTag/BrowserOS:tri/cast","gHashTag/BrowserOS:tri/channel","gHashTag/BrowserOS:tri/chat","gHashTag/BrowserOS:tri/ci-diff","gHashTag/BrowserOS:tri/clocks","gHashTag/BrowserOS:tri/close-done","gHashTag/BrowserOS:tri/container","gHashTag/BrowserOS:tri/coverage","gHashTag/BrowserOS:tri/cycle","gHashTag/BrowserOS:tri/cycle-anom","gHashTag/BrowserOS:tri/cycle-anomalies","gHashTag/BrowserOS:tri/cycle-dash","gHashTag/BrowserOS:tri/cycle-doctor","gHashTag/BrowserOS:tri/cycle-html","gHashTag/BrowserOS:tri/cycle-log","gHashTag/BrowserOS:tri/cycle-note","gHashTag/BrowserOS:tri/cycle-repair","gHashTag/BrowserOS:tri/cycle-sense","gHashTag/BrowserOS:tri/dash","gHashTag/BrowserOS:tri/dash2","gHashTag/BrowserOS:tri/deploy-wait","gHashTag/BrowserOS:tri/devkit","gHashTag/BrowserOS:tri/drift","gHashTag/BrowserOS:tri/driver","gHashTag/BrowserOS:tri/exposure","gHashTag/BrowserOS:tri/facts","gHashTag/BrowserOS:tri/failures","gHashTag/BrowserOS:tri/feed","gHashTag/BrowserOS:tri/fence","gHashTag/BrowserOS:tri/fields","gHashTag/BrowserOS:tri/flaky","gHashTag/BrowserOS:tri/forked-files","gHashTag/BrowserOS:tri/fp-check","gHashTag/BrowserOS:tri/fpga","gHashTag/BrowserOS:tri/fpga-audit","gHashTag/BrowserOS:tri/fpga-batch","gHashTag/BrowserOS:tri/fpga-batch-cosim","gHashTag/BrowserOS:tri/fpga-batch-rehearsal","gHashTag/BrowserOS:tri/fpga-budget","gHashTag/BrowserOS:tri/fpga-build","gHashTag/BrowserOS:tri/fpga-claim","gHashTag/BrowserOS:tri/fpga-cost","gHashTag/BrowserOS:tri/fpga-decode","gHashTag/BrowserOS:tri/fpga-derive","gHashTag/BrowserOS:tri/fpga-fire","gHashTag/BrowserOS:tri/fpga-firelog","gHashTag/BrowserOS:tri/fpga-flash","gHashTag/BrowserOS:tri/fpga-genscore","gHashTag/BrowserOS:tri/fpga-hole","gHashTag/BrowserOS:tri/fpga-hostnet","gHashTag/BrowserOS:tri/fpga-ioclients","gHashTag/BrowserOS:tri/fpga-jtag","gHashTag/BrowserOS:tri/fpga-keep","gHashTag/BrowserOS:tri/fpga-keycheck","gHashTag/BrowserOS:tri/fpga-lesson","gHashTag/BrowserOS:tri/fpga-loopcheck","gHashTag/BrowserOS:tri/fpga-loopstate","gHashTag/BrowserOS:tri/fpga-next","gHashTag/BrowserOS:tri/fpga-pins","gHashTag/BrowserOS:tri/fpga-prcheck","gHashTag/BrowserOS:tri/fpga-push","gHashTag/BrowserOS:tri/fpga-quiet","gHashTag/BrowserOS:tri/fpga-rehearse","gHashTag/BrowserOS:tri/fpga-release","gHashTag/BrowserOS:tri/fpga-repin","gHashTag/BrowserOS:tri/fpga-restore","gHashTag/BrowserOS:tri/fpga-run","gHashTag/BrowserOS:tri/fpga-runlog","gHashTag/BrowserOS:tri/fpga-rxcap","gHashTag/BrowserOS:tri/fpga-rxer","gHashTag/BrowserOS:tri/fpga-seeds","gHashTag/BrowserOS:tri/fpga-selftest","gHashTag/BrowserOS:tri/fpga-specs","gHashTag/BrowserOS:tri/fpga-stamps","gHashTag/BrowserOS:tri/fpga-status","gHashTag/BrowserOS:tri/fpga-steps","gHashTag/BrowserOS:tri/fpga-task","gHashTag/BrowserOS:tri/fpga-tmpcheck","gHashTag/BrowserOS:tri/fpga-tools","gHashTag/BrowserOS:tri/fpga-tristate","gHashTag/BrowserOS:tri/fpga-txhold","gHashTag/BrowserOS:tri/fpga-usb","gHashTag/BrowserOS:tri/fpga-watch-clients","gHashTag/BrowserOS:tri/fpga-wire","gHashTag/BrowserOS:tri/game","gHashTag/BrowserOS:tri/game-activity","gHashTag/BrowserOS:tri/game-anomalies","gHashTag/BrowserOS:tri/game-bar","gHashTag/BrowserOS:tri/game-bees","gHashTag/BrowserOS:tri/game-blog","gHashTag/BrowserOS:tri/game-branch","gHashTag/BrowserOS:tri/game-cadence","gHashTag/BrowserOS:tri/game-claim","gHashTag/BrowserOS:tri/game-clock","gHashTag/BrowserOS:tri/game-close","gHashTag/BrowserOS:tri/game-contract","gHashTag/BrowserOS:tri/game-copy","gHashTag/BrowserOS:tri/game-dash","gHashTag/BrowserOS:tri/game-events","gHashTag/BrowserOS:tri/game-feed","gHashTag/BrowserOS:tri/game-finding","gHashTag/BrowserOS:tri/game-foundation","gHashTag/BrowserOS:tri/game-gate","gHashTag/BrowserOS:tri/game-gates","gHashTag/BrowserOS:tri/game-ingest","gHashTag/BrowserOS:tri/game-iterate","gHashTag/BrowserOS:tri/game-lesson","gHashTag/BrowserOS:tri/game-lessons","gHashTag/BrowserOS:tri/game-local","gHashTag/BrowserOS:tri/game-measure","gHashTag/BrowserOS:tri/game-merged","gHashTag/BrowserOS:tri/game-models","gHashTag/BrowserOS:tri/game-next","gHashTag/BrowserOS:tri/game-objects","gHashTag/BrowserOS:tri/game-plan","gHashTag/BrowserOS:tri/game-prove","gHashTag/BrowserOS:tri/game-release","gHashTag/BrowserOS:tri/game-report","gHashTag/BrowserOS:tri/game-round","gHashTag/BrowserOS:tri/game-selftest","gHashTag/BrowserOS:tri/game-served","gHashTag/BrowserOS:tri/game-ship","gHashTag/BrowserOS:tri/game-site","gHashTag/BrowserOS:tri/game-spike","gHashTag/BrowserOS:tri/game-status","gHashTag/BrowserOS:tri/game-task","gHashTag/BrowserOS:tri/game-tick","gHashTag/BrowserOS:tri/game-vault","gHashTag/BrowserOS:tri/game-verdicts","gHashTag/BrowserOS:tri/game-verify","gHashTag/BrowserOS:tri/game-wire","gHashTag/BrowserOS:tri/game-writers","gHashTag/BrowserOS:tri/handover","gHashTag/BrowserOS:tri/handover-116-archived","gHashTag/BrowserOS:tri/heal","gHashTag/BrowserOS:tri/help","gHashTag/BrowserOS:tri/holds","gHashTag/BrowserOS:tri/idle","gHashTag/BrowserOS:tri/iter","gHashTag/BrowserOS:tri/iter-anchors","gHashTag/BrowserOS:tri/iter-dash","gHashTag/BrowserOS:tri/iter-log","gHashTag/BrowserOS:tri/iter-render","gHashTag/BrowserOS:tri/iter-unlock","gHashTag/BrowserOS:tri/jobs","gHashTag/BrowserOS:tri/jobs-anomalies","gHashTag/BrowserOS:tri/jobs-board","gHashTag/BrowserOS:tri/jobs-check","gHashTag/BrowserOS:tri/jobs-dash","gHashTag/BrowserOS:tri/jobs-drafts","gHashTag/BrowserOS:tri/jobs-guards","gHashTag/BrowserOS:tri/jobs-journal","gHashTag/BrowserOS:tri/jobs-leads","gHashTag/BrowserOS:tri/jobs-lesson","gHashTag/BrowserOS:tri/jobs-next","gHashTag/BrowserOS:tri/jobs-owed","gHashTag/BrowserOS:tri/jobs-run","gHashTag/BrowserOS:tri/jobs-show","gHashTag/BrowserOS:tri/judge-calibration","gHashTag/BrowserOS:tri/judge-packet","gHashTag/BrowserOS:tri/land","gHashTag/BrowserOS:tri/latency","gHashTag/BrowserOS:tri/learn","gHashTag/BrowserOS:tri/lease","gHashTag/BrowserOS:tri/lesson","gHashTag/BrowserOS:tri/lesson-orphans","gHashTag/BrowserOS:tri/live-verify","gHashTag/BrowserOS:tri/live-wait","gHashTag/BrowserOS:tri/locks","gHashTag/BrowserOS:tri/loop","gHashTag/BrowserOS:tri/loop-coverage","gHashTag/BrowserOS:tri/loop-lesson","gHashTag/BrowserOS:tri/loop-selftest","gHashTag/BrowserOS:tri/mix","gHashTag/BrowserOS:tri/morning","gHashTag/BrowserOS:tri/mutants-logic-refresh","gHashTag/BrowserOS:tri/needs-you","gHashTag/BrowserOS:tri/next","gHashTag/BrowserOS:tri/proof","gHashTag/BrowserOS:tri/prov","gHashTag/BrowserOS:tri/proven","gHashTag/BrowserOS:tri/providers","gHashTag/BrowserOS:tri/push-work","gHashTag/BrowserOS:tri/queue","gHashTag/BrowserOS:tri/reach","gHashTag/BrowserOS:tri/reap","gHashTag/BrowserOS:tri/reap-finished","gHashTag/BrowserOS:tri/reap-local","gHashTag/BrowserOS:tri/regress","gHashTag/BrowserOS:tri/regression","gHashTag/BrowserOS:tri/rejudge","gHashTag/BrowserOS:tri/rescue","gHashTag/BrowserOS:tri/salvage","gHashTag/BrowserOS:tri/selftest","gHashTag/BrowserOS:tri/share-modules","gHashTag/BrowserOS:tri/silent-loop","gHashTag/BrowserOS:tri/skills","gHashTag/BrowserOS:tri/spec-diag","gHashTag/BrowserOS:tri/stale-escalations","gHashTag/BrowserOS:tri/status","gHashTag/BrowserOS:tri/swarm","gHashTag/BrowserOS:tri/t27-gen","gHashTag/BrowserOS:tri/t27-parity","gHashTag/BrowserOS:tri/t27-tri","gHashTag/BrowserOS:tri/tb","gHashTag/BrowserOS:tri/tb-deploy","gHashTag/BrowserOS:tri/tb-lint","gHashTag/BrowserOS:tri/tb-verify","gHashTag/BrowserOS:tri/tc-abpair","gHashTag/BrowserOS:tri/tc-arena","gHashTag/BrowserOS:tri/tc-ask","gHashTag/BrowserOS:tri/tc-audit","gHashTag/BrowserOS:tri/tc-board","gHashTag/BrowserOS:tri/tc-card","gHashTag/BrowserOS:tri/tc-catalog","gHashTag/BrowserOS:tri/tc-cathead","gHashTag/BrowserOS:tri/tc-ceiling","gHashTag/BrowserOS:tri/tc-comptime","gHashTag/BrowserOS:tri/tc-contract","gHashTag/BrowserOS:tri/tc-coreleak","gHashTag/BrowserOS:tri/tc-cpuft","gHashTag/BrowserOS:tri/tc-cpuft-cmp","gHashTag/BrowserOS:tri/tc-cpuft-collect","gHashTag/BrowserOS:tri/tc-curve","gHashTag/BrowserOS:tri/tc-diffjudge","gHashTag/BrowserOS:tri/tc-disc","gHashTag/BrowserOS:tri/tc-draft","gHashTag/BrowserOS:tri/tc-gpuft","gHashTag/BrowserOS:tri/tc-honest","gHashTag/BrowserOS:tri/tc-loop","gHashTag/BrowserOS:tri/tc-maskcheck","gHashTag/BrowserOS:tri/tc-mutant3","gHashTag/BrowserOS:tri/tc-mutscore","gHashTag/BrowserOS:tri/tc-pair","gHashTag/BrowserOS:tri/tc-podwait","gHashTag/BrowserOS:tri/tc-prefill","gHashTag/BrowserOS:tri/tc-reach","gHashTag/BrowserOS:tri/tc-relabel","gHashTag/BrowserOS:tri/tc-remote","gHashTag/BrowserOS:tri/tc-restore","gHashTag/BrowserOS:tri/tc-retrieve","gHashTag/BrowserOS:tri/tc-rounds","gHashTag/BrowserOS:tri/tc-seen","gHashTag/BrowserOS:tri/tc-soundness","gHashTag/BrowserOS:tri/tc-speed","gHashTag/BrowserOS:tri/tc-sync","gHashTag/BrowserOS:tri/tc-t27bench","gHashTag/BrowserOS:tri/tc-t27mask","gHashTag/BrowserOS:tri/tc-t27selfcheck","gHashTag/BrowserOS:tri/tc-taxonomy","gHashTag/BrowserOS:tri/tc-val","gHashTag/BrowserOS:tri/tg-dialogs","gHashTag/BrowserOS:tri/tg-msg","gHashTag/BrowserOS:tri/tg-search","gHashTag/BrowserOS:tri/tg-unread","gHashTag/BrowserOS:tri/tg-who","gHashTag/BrowserOS:tri/trend","gHashTag/BrowserOS:tri/trinity-report","gHashTag/BrowserOS:tri/two-views","gHashTag/BrowserOS:tri/unpark","gHashTag/BrowserOS:tri/unverdicted","gHashTag/BrowserOS:tri/unwired","gHashTag/BrowserOS:tri/verdict-audit","gHashTag/BrowserOS:tri/verdicts","gHashTag/BrowserOS:tri/verify","gHashTag/BrowserOS:tri/vibee-feed","gHashTag/BrowserOS:tri/wave","gHashTag/BrowserOS:tri/wave-plan","gHashTag/BrowserOS:tri/which-board","gHashTag/BrowserOS:tri/why","gHashTag/BrowserOS:tri/x7-audit","gHashTag/BrowserOS:tri/x7-bench","gHashTag/BrowserOS:tri/x7-board","gHashTag/BrowserOS:tri/x7-claim","gHashTag/BrowserOS:tri/x7-fasm","gHashTag/BrowserOS:tri/x7-lesson","gHashTag/BrowserOS:tri/x7-mutate","gHashTag/BrowserOS:tri/x7-next","gHashTag/BrowserOS:tri/x7-part","gHashTag/BrowserOS:tri/x7-refs","gHashTag/BrowserOS:tri/x7-release","gHashTag/BrowserOS:tri/x7-status","gHashTag/BrowserOS:tri/x7-task","gHashTag/BrowserOS:tri/x7-writer"],"gHashTag/t27":["tri/abandoned","tri/cell","tri/census","tri/ci","tri/competitors","tri/discard","tri/doctor","tri/elab","tri/emit","tri/experience","tri/fleet","tri/fmt","tri/fpga","tri/gates","tri/gen","tri/harness","tri/health","tri/hooks","tri/issues","tri/jumps","tri/kinds","tri/lean","tri/ledgers","tri/loop","tri/merging","tri/misread","tri/mods","tri/mutate","tri/now","tri/one-away","tri/orphaned","tri/pr","tri/prose","tri/quantifiers","tri/red","tri/reseal","tri/rtl","tri/seals","tri/serve","tri/skill","tri/status","tri/sweep","tri/synth","tri/test","tri/topic","tri/types","tri/unparsed","tri/vectors","tri/verdict","tri/vsim","tri/window","tri/worktrees"],"gHashTag/trinity":["gHashTag/trinity:tri/agents-bench","gHashTag/trinity:tri/agents-demo","gHashTag/trinity:tri/all","gHashTag/trinity:tri/amygdala","gHashTag/trinity:tri/analyze","gHashTag/trinity:tri/auto-bench","gHashTag/trinity:tri/auto-demo","gHashTag/trinity:tri/autocomplete","gHashTag/trinity:tri/batched-bench","gHashTag/trinity:tri/batched-demo","gHashTag/trinity:tri/bench","gHashTag/trinity:tri/bench-suite","gHashTag/trinity:tri/bench-verdict","gHashTag/trinity:tri/bio","gHashTag/trinity:tri/blindspots","gHashTag/trinity:tri/brain","gHashTag/trinity:tri/build","gHashTag/trinity:tri/cache-bench","gHashTag/trinity:tri/cache-demo","gHashTag/trinity:tri/capsec-bench","gHashTag/trinity:tri/capsec-demo","gHashTag/trinity:tri/cell","gHashTag/trinity:tri/chain","gHashTag/trinity:tri/chat","gHashTag/trinity:tri/check","gHashTag/trinity:tri/chem","gHashTag/trinity:tri/chimera","gHashTag/trinity:tri/chord","gHashTag/trinity:tri/clara","gHashTag/trinity:tri/clean","gHashTag/trinity:tri/cloud","gHashTag/trinity:tri/cluster-bench","gHashTag/trinity:tri/cluster-demo","gHashTag/trinity:tri/code","gHashTag/trinity:tri/commands","gHashTag/trinity:tri/commit","gHashTag/trinity:tri/comms-bench","gHashTag/trinity:tri/comms-demo","gHashTag/trinity:tri/completion","gHashTag/trinity:tri/conscious","gHashTag/trinity:tri/consensus-bench","gHashTag/trinity:tri/consensus-demo","gHashTag/trinity:tri/constants","gHashTag/trinity:tri/context","gHashTag/trinity:tri/context-bench","gHashTag/trinity:tri/context-demo","gHashTag/trinity:tri/context-load","gHashTag/trinity:tri/contract-bench","gHashTag/trinity:tri/contract-demo","gHashTag/trinity:tri/convert","gHashTag/trinity:tri/core","gHashTag/trinity:tri/cosmos","gHashTag/trinity:tri/dashboard","gHashTag/trinity:tri/deadline-bench","gHashTag/trinity:tri/deadline-demo","gHashTag/trinity:tri/deck","gHashTag/trinity:tri/decompose","gHashTag/trinity:tri/depin","gHashTag/trinity:tri/deploy","gHashTag/trinity:tri/dev","gHashTag/trinity:tri/diff","gHashTag/trinity:tri/dispatch","gHashTag/trinity:tri/distributed","gHashTag/trinity:tri/dm","gHashTag/trinity:tri/doc","gHashTag/trinity:tri/docs-gen","gHashTag/trinity:tri/doctor","gHashTag/trinity:tri/dtxn-bench","gHashTag/trinity:tri/dtxn-demo","gHashTag/trinity:tri/enrich","gHashTag/trinity:tri/eval","gHashTag/trinity:tri/event","gHashTag/trinity:tri/events","gHashTag/trinity:tri/eventsrc-bench","gHashTag/trinity:tri/eventsrc-demo","gHashTag/trinity:tri/evolve","gHashTag/trinity:tri/experience","gHashTag/trinity:tri/experiment","gHashTag/trinity:tri/explain","gHashTag/trinity:tri/faculty","gHashTag/trinity:tri/farm","gHashTag/trinity:tri/fedlearn-bench","gHashTag/trinity:tri/fedlearn-demo","gHashTag/trinity:tri/fib","gHashTag/trinity:tri/finetune-bench","gHashTag/trinity:tri/finetune-demo","gHashTag/trinity:tri/fix","gHashTag/trinity:tri/fmt","gHashTag/trinity:tri/forge","gHashTag/trinity:tri/forge-bench","gHashTag/trinity:tri/forge-verdict","gHashTag/trinity:tri/formula","gHashTag/trinity:tri/fpga","gHashTag/trinity:tri/fpga-demo","gHashTag/trinity:tri/frequency","gHashTag/trinity:tri/full-cycle","gHashTag/trinity:tri/gematria","gHashTag/trinity:tri/gen","gHashTag/trinity:tri/git","gHashTag/trinity:tri/golden-chain","gHashTag/trinity:tri/govern","gHashTag/trinity:tri/governor-bench","gHashTag/trinity:tri/governor-demo","gHashTag/trinity:tri/graphql","gHashTag/trinity:tri/gravity","gHashTag/trinity:tri/habenula","gHashTag/trinity:tri/hardware","gHashTag/trinity:tri/harmony","gHashTag/trinity:tri/help","gHashTag/trinity:tri/holo","gHashTag/trinity:tri/identity","gHashTag/trinity:tri/igla","gHashTag/trinity:tri/info","gHashTag/trinity:tri/init","gHashTag/trinity:tri/install","gHashTag/trinity:tri/intelligence","gHashTag/trinity:tri/issue","gHashTag/trinity:tri/job","gHashTag/trinity:tri/job-artifacts","gHashTag/trinity:tri/job-cancel","gHashTag/trinity:tri/job-list","gHashTag/trinity:tri/job-logs","gHashTag/trinity:tri/job-status","gHashTag/trinity:tri/kaggle","gHashTag/trinity:tri/launch","gHashTag/trinity:tri/lint","gHashTag/trinity:tri/log","gHashTag/trinity:tri/loop","gHashTag/trinity:tri/loop-decide","gHashTag/trinity:tri/lucas","gHashTag/trinity:tri/math","gHashTag/trinity:tri/math-agent","gHashTag/trinity:tri/math-diff","gHashTag/trinity:tri/math-doctor","gHashTag/trinity:tri/math-explain","gHashTag/trinity:tri/math-table","gHashTag/trinity:tri/math-verify","gHashTag/trinity:tri/mcp","gHashTag/trinity:tri/memory-bench","gHashTag/trinity:tri/memory-demo","gHashTag/trinity:tri/mesh","gHashTag/trinity:tri/metrics","gHashTag/trinity:tri/mmo-bench","gHashTag/trinity:tri/mmo-demo","gHashTag/trinity:tri/mu","gHashTag/trinity:tri/multi-cluster","gHashTag/trinity:tri/multimodal-bench","gHashTag/trinity:tri/multimodal-demo","gHashTag/trinity:tri/music","gHashTag/trinity:tri/needle","gHashTag/trinity:tri/needle-check","gHashTag/trinity:tri/needle-search","gHashTag/trinity:tri/neuro","gHashTag/trinity:tri/notify","gHashTag/trinity:tri/observe-bench","gHashTag/trinity:tri/observe-demo","gHashTag/trinity:tri/ofc","gHashTag/trinity:tri/omega","gHashTag/trinity:tri/omega-evolve","gHashTag/trinity:tri/omega-phase","gHashTag/trinity:tri/orch-bench","gHashTag/trinity:tri/orch-demo","gHashTag/trinity:tri/ouroboros","gHashTag/trinity:tri/particles","gHashTag/trinity:tri/patent","gHashTag/trinity:tri/persist-bench","gHashTag/trinity:tri/persist-demo","gHashTag/trinity:tri/phi","gHashTag/trinity:tri/phi-series","gHashTag/trinity:tri/phoenix","gHashTag/trinity:tri/pipeline","gHashTag/trinity:tri/pipeline-demo","gHashTag/trinity:tri/plan","gHashTag/trinity:tri/plugin-bench","gHashTag/trinity:tri/plugin-demo","gHashTag/trinity:tri/pr","gHashTag/trinity:tri/priority-bench","gHashTag/trinity:tri/priority-demo","gHashTag/trinity:tri/qcd","gHashTag/trinity:tri/quantum","gHashTag/trinity:tri/queen","gHashTag/trinity:tri/rag-bench","gHashTag/trinity:tri/rag-demo","gHashTag/trinity:tri/railway","gHashTag/trinity:tri/reason","gHashTag/trinity:tri/refactor","gHashTag/trinity:tri/registry-validate","gHashTag/trinity:tri/release","gHashTag/trinity:tri/release-cosmic","gHashTag/trinity:tri/reputation","gHashTag/trinity:tri/research","gHashTag/trinity:tri/resonance","gHashTag/trinity:tri/sacred","gHashTag/trinity:tri/sacred-const","gHashTag/trinity:tri/sandbox-bench","gHashTag/trinity:tri/sandbox-demo","gHashTag/trinity:tri/scale","gHashTag/trinity:tri/search","gHashTag/trinity:tri/sebo","gHashTag/trinity:tri/self","gHashTag/trinity:tri/serve","gHashTag/trinity:tri/sim","gHashTag/trinity:tri/sparc","gHashTag/trinity:tri/spawn-bench","gHashTag/trinity:tri/spawn-demo","gHashTag/trinity:tri/spec-create","gHashTag/trinity:tri/specexec-bench","gHashTag/trinity:tri/specexec-demo","gHashTag/trinity:tri/spiral","gHashTag/trinity:tri/stats","gHashTag/trinity:tri/status","gHashTag/trinity:tri/storm","gHashTag/trinity:tri/stream-bench","gHashTag/trinity:tri/stream-demo","gHashTag/trinity:tri/stress","gHashTag/trinity:tri/string","gHashTag/trinity:tri/swarm","gHashTag/trinity:tri/sync-check","gHashTag/trinity:tri/system","gHashTag/trinity:tri/task","gHashTag/trinity:tri/test","gHashTag/trinity:tri/test-repl","gHashTag/trinity:tri/time","gHashTag/trinity:tri/token","gHashTag/trinity:tri/tooluse-bench","gHashTag/trinity:tri/tooluse-demo","gHashTag/trinity:tri/toxic-verdict","gHashTag/trinity:tri/trace","gHashTag/trinity:tri/train","gHashTag/trinity:tri/tvc-demo","gHashTag/trinity:tri/tvc-stats","gHashTag/trinity:tri/ui","gHashTag/trinity:tri/unified-bench","gHashTag/trinity:tri/unified-demo","gHashTag/trinity:tri/verdict","gHashTag/trinity:tri/verify","gHashTag/trinity:tri/version","gHashTag/trinity:tri/vision-bench","gHashTag/trinity:tri/vision-demo","gHashTag/trinity:tri/voice-bench","gHashTag/trinity:tri/voice-demo","gHashTag/trinity:tri/vsa","gHashTag/trinity:tri/wallet","gHashTag/trinity:tri/waveform","gHashTag/trinity:tri/workflow-bench","gHashTag/trinity:tri/workflow-demo","gHashTag/trinity:tri/worksteal-bench","gHashTag/trinity:tri/worksteal-demo","gHashTag/trinity:tri/zenodo"]}},"i18n":[{"bundle":"apps/website/i18n/agents.ru.json","coverage":{"n":92,"total":607},"enabled":true,"fields":["SUMMARY","NAME"],"locale":"ru","missing":["gHashTag/BrowserOS:tri/ab","gHashTag/BrowserOS:tri/accept-rate","gHashTag/BrowserOS:tri/agree","gHashTag/BrowserOS:tri/anom","gHashTag/BrowserOS:tri/anomalies","gHashTag/BrowserOS:tri/author","gHashTag/BrowserOS:tri/backlog","gHashTag/BrowserOS:tri/blog","gHashTag/BrowserOS:tri/board","gHashTag/BrowserOS:tri/boundary","gHashTag/BrowserOS:tri/brief-gate","gHashTag/BrowserOS:tri/cast","gHashTag/BrowserOS:tri/channel","gHashTag/BrowserOS:tri/chat","gHashTag/BrowserOS:tri/ci-diff","gHashTag/BrowserOS:tri/clocks","gHashTag/BrowserOS:tri/close-done","gHashTag/BrowserOS:tri/container","gHashTag/BrowserOS:tri/coverage","gHashTag/BrowserOS:tri/cycle","gHashTag/BrowserOS:tri/cycle-anom","gHashTag/BrowserOS:tri/cycle-anomalies","gHashTag/BrowserOS:tri/cycle-dash","gHashTag/BrowserOS:tri/cycle-doctor","gHashTag/BrowserOS:tri/cycle-html","gHashTag/BrowserOS:tri/cycle-log","gHashTag/BrowserOS:tri/cycle-note","gHashTag/BrowserOS:tri/cycle-repair","gHashTag/BrowserOS:tri/cycle-sense","gHashTag/BrowserOS:tri/dash","gHashTag/BrowserOS:tri/dash2","gHashTag/BrowserOS:tri/deploy-wait","gHashTag/BrowserOS:tri/devkit","gHashTag/BrowserOS:tri/drift","gHashTag/BrowserOS:tri/driver","gHashTag/BrowserOS:tri/exposure","gHashTag/BrowserOS:tri/facts","gHashTag/BrowserOS:tri/failures","gHashTag/BrowserOS:tri/feed","gHashTag/BrowserOS:tri/fence","gHashTag/BrowserOS:tri/fields","gHashTag/BrowserOS:tri/flaky","gHashTag/BrowserOS:tri/forked-files","gHashTag/BrowserOS:tri/fp-check","gHashTag/BrowserOS:tri/fpga","gHashTag/BrowserOS:tri/fpga-audit","gHashTag/BrowserOS:tri/fpga-batch","gHashTag/BrowserOS:tri/fpga-batch-cosim","gHashTag/BrowserOS:tri/fpga-batch-rehearsal","gHashTag/BrowserOS:tri/fpga-budget","gHashTag/BrowserOS:tri/fpga-build","gHashTag/BrowserOS:tri/fpga-claim","gHashTag/BrowserOS:tri/fpga-cost","gHashTag/BrowserOS:tri/fpga-decode","gHashTag/BrowserOS:tri/fpga-derive","gHashTag/BrowserOS:tri/fpga-fire","gHashTag/BrowserOS:tri/fpga-firelog","gHashTag/BrowserOS:tri/fpga-flash","gHashTag/BrowserOS:tri/fpga-genscore","gHashTag/BrowserOS:tri/fpga-hole","gHashTag/BrowserOS:tri/fpga-hostnet","gHashTag/BrowserOS:tri/fpga-ioclients","gHashTag/BrowserOS:tri/fpga-jtag","gHashTag/BrowserOS:tri/fpga-keep","gHashTag/BrowserOS:tri/fpga-keycheck","gHashTag/BrowserOS:tri/fpga-lesson","gHashTag/BrowserOS:tri/fpga-loopcheck","gHashTag/BrowserOS:tri/fpga-loopstate","gHashTag/BrowserOS:tri/fpga-next","gHashTag/BrowserOS:tri/fpga-pins","gHashTag/BrowserOS:tri/fpga-prcheck","gHashTag/BrowserOS:tri/fpga-push","gHashTag/BrowserOS:tri/fpga-quiet","gHashTag/BrowserOS:tri/fpga-rehearse","gHashTag/BrowserOS:tri/fpga-release","gHashTag/BrowserOS:tri/fpga-repin","gHashTag/BrowserOS:tri/fpga-restore","gHashTag/BrowserOS:tri/fpga-run","gHashTag/BrowserOS:tri/fpga-runlog","gHashTag/BrowserOS:tri/fpga-rxcap","gHashTag/BrowserOS:tri/fpga-rxer","gHashTag/BrowserOS:tri/fpga-seeds","gHashTag/BrowserOS:tri/fpga-selftest","gHashTag/BrowserOS:tri/fpga-specs","gHashTag/BrowserOS:tri/fpga-stamps","gHashTag/BrowserOS:tri/fpga-status","gHashTag/BrowserOS:tri/fpga-steps","gHashTag/BrowserOS:tri/fpga-task","gHashTag/BrowserOS:tri/fpga-tmpcheck","gHashTag/BrowserOS:tri/fpga-tools","gHashTag/BrowserOS:tri/fpga-tristate","gHashTag/BrowserOS:tri/fpga-txhold","gHashTag/BrowserOS:tri/fpga-usb","gHashTag/BrowserOS:tri/fpga-watch-clients","gHashTag/BrowserOS:tri/fpga-wire","gHashTag/BrowserOS:tri/game","gHashTag/BrowserOS:tri/game-activity","gHashTag/BrowserOS:tri/game-anomalies","gHashTag/BrowserOS:tri/game-bar","gHashTag/BrowserOS:tri/game-bees","gHashTag/BrowserOS:tri/game-blog","gHashTag/BrowserOS:tri/game-branch","gHashTag/BrowserOS:tri/game-cadence","gHashTag/BrowserOS:tri/game-claim","gHashTag/BrowserOS:tri/game-clock","gHashTag/BrowserOS:tri/game-close","gHashTag/BrowserOS:tri/game-contract","gHashTag/BrowserOS:tri/game-copy","gHashTag/BrowserOS:tri/game-dash","gHashTag/BrowserOS:tri/game-events","gHashTag/BrowserOS:tri/game-feed","gHashTag/BrowserOS:tri/game-finding","gHashTag/BrowserOS:tri/game-foundation","gHashTag/BrowserOS:tri/game-gate","gHashTag/BrowserOS:tri/game-gates","gHashTag/BrowserOS:tri/game-ingest","gHashTag/BrowserOS:tri/game-iterate","gHashTag/BrowserOS:tri/game-lesson","gHashTag/BrowserOS:tri/game-lessons","gHashTag/BrowserOS:tri/game-local","gHashTag/BrowserOS:tri/game-measure","gHashTag/BrowserOS:tri/game-merged","gHashTag/BrowserOS:tri/game-models","gHashTag/BrowserOS:tri/game-next","gHashTag/BrowserOS:tri/game-objects","gHashTag/BrowserOS:tri/game-plan","gHashTag/BrowserOS:tri/game-prove","gHashTag/BrowserOS:tri/game-release","gHashTag/BrowserOS:tri/game-report","gHashTag/BrowserOS:tri/game-round","gHashTag/BrowserOS:tri/game-selftest","gHashTag/BrowserOS:tri/game-served","gHashTag/BrowserOS:tri/game-ship","gHashTag/BrowserOS:tri/game-site","gHashTag/BrowserOS:tri/game-spike","gHashTag/BrowserOS:tri/game-status","gHashTag/BrowserOS:tri/game-task","gHashTag/BrowserOS:tri/game-tick","gHashTag/BrowserOS:tri/game-vault","gHashTag/BrowserOS:tri/game-verdicts","gHashTag/BrowserOS:tri/game-verify","gHashTag/BrowserOS:tri/game-wire","gHashTag/BrowserOS:tri/game-writers","gHashTag/BrowserOS:tri/handover","gHashTag/BrowserOS:tri/handover-116-archived","gHashTag/BrowserOS:tri/heal","gHashTag/BrowserOS:tri/help","gHashTag/BrowserOS:tri/holds","gHashTag/BrowserOS:tri/idle","gHashTag/BrowserOS:tri/iter","gHashTag/BrowserOS:tri/iter-anchors","gHashTag/BrowserOS:tri/iter-dash","gHashTag/BrowserOS:tri/iter-log","gHashTag/BrowserOS:tri/iter-render","gHashTag/BrowserOS:tri/iter-unlock","gHashTag/BrowserOS:tri/jobs","gHashTag/BrowserOS:tri/jobs-anomalies","gHashTag/BrowserOS:tri/jobs-board","gHashTag/BrowserOS:tri/jobs-check","gHashTag/BrowserOS:tri/jobs-dash","gHashTag/BrowserOS:tri/jobs-drafts","gHashTag/BrowserOS:tri/jobs-guards","gHashTag/BrowserOS:tri/jobs-journal","gHashTag/BrowserOS:tri/jobs-leads","gHashTag/BrowserOS:tri/jobs-lesson","gHashTag/BrowserOS:tri/jobs-next","gHashTag/BrowserOS:tri/jobs-owed","gHashTag/BrowserOS:tri/jobs-run","gHashTag/BrowserOS:tri/jobs-show","gHashTag/BrowserOS:tri/judge-calibration","gHashTag/BrowserOS:tri/judge-packet","gHashTag/BrowserOS:tri/land","gHashTag/BrowserOS:tri/latency","gHashTag/BrowserOS:tri/learn","gHashTag/BrowserOS:tri/lease","gHashTag/BrowserOS:tri/lesson","gHashTag/BrowserOS:tri/lesson-orphans","gHashTag/BrowserOS:tri/live-verify","gHashTag/BrowserOS:tri/live-wait","gHashTag/BrowserOS:tri/locks","gHashTag/BrowserOS:tri/loop","gHashTag/BrowserOS:tri/loop-coverage","gHashTag/BrowserOS:tri/loop-lesson","gHashTag/BrowserOS:tri/loop-selftest","gHashTag/BrowserOS:tri/mix","gHashTag/BrowserOS:tri/morning","gHashTag/BrowserOS:tri/mutants-logic-refresh","gHashTag/BrowserOS:tri/needs-you","gHashTag/BrowserOS:tri/next","gHashTag/BrowserOS:tri/proof","gHashTag/BrowserOS:tri/prov","gHashTag/BrowserOS:tri/proven","gHashTag/BrowserOS:tri/providers","gHashTag/BrowserOS:tri/push-work","gHashTag/BrowserOS:tri/queue","gHashTag/BrowserOS:tri/reach","gHashTag/BrowserOS:tri/reap","gHashTag/BrowserOS:tri/reap-finished","gHashTag/BrowserOS:tri/reap-local","gHashTag/BrowserOS:tri/regress","gHashTag/BrowserOS:tri/regression","gHashTag/BrowserOS:tri/rejudge","gHashTag/BrowserOS:tri/rescue","gHashTag/BrowserOS:tri/salvage","gHashTag/BrowserOS:tri/selftest","gHashTag/BrowserOS:tri/share-modules","gHashTag/BrowserOS:tri/silent-loop","gHashTag/BrowserOS:tri/skills","gHashTag/BrowserOS:tri/spec-diag","gHashTag/BrowserOS:tri/stale-escalations","gHashTag/BrowserOS:tri/status","gHashTag/BrowserOS:tri/swarm","gHashTag/BrowserOS:tri/t27-gen","gHashTag/BrowserOS:tri/t27-parity","gHashTag/BrowserOS:tri/t27-tri","gHashTag/BrowserOS:tri/tb","gHashTag/BrowserOS:tri/tb-deploy","gHashTag/BrowserOS:tri/tb-lint","gHashTag/BrowserOS:tri/tb-verify","gHashTag/BrowserOS:tri/tc-abpair","gHashTag/BrowserOS:tri/tc-arena","gHashTag/BrowserOS:tri/tc-ask","gHashTag/BrowserOS:tri/tc-audit","gHashTag/BrowserOS:tri/tc-board","gHashTag/BrowserOS:tri/tc-card","gHashTag/BrowserOS:tri/tc-catalog","gHashTag/BrowserOS:tri/tc-cathead","gHashTag/BrowserOS:tri/tc-ceiling","gHashTag/BrowserOS:tri/tc-comptime","gHashTag/BrowserOS:tri/tc-contract","gHashTag/BrowserOS:tri/tc-coreleak","gHashTag/BrowserOS:tri/tc-cpuft","gHashTag/BrowserOS:tri/tc-cpuft-cmp","gHashTag/BrowserOS:tri/tc-cpuft-collect","gHashTag/BrowserOS:tri/tc-curve","gHashTag/BrowserOS:tri/tc-diffjudge","gHashTag/BrowserOS:tri/tc-disc","gHashTag/BrowserOS:tri/tc-draft","gHashTag/BrowserOS:tri/tc-gpuft","gHashTag/BrowserOS:tri/tc-honest","gHashTag/BrowserOS:tri/tc-loop","gHashTag/BrowserOS:tri/tc-maskcheck","gHashTag/BrowserOS:tri/tc-mutant3","gHashTag/BrowserOS:tri/tc-mutscore","gHashTag/BrowserOS:tri/tc-pair","gHashTag/BrowserOS:tri/tc-podwait","gHashTag/BrowserOS:tri/tc-prefill","gHashTag/BrowserOS:tri/tc-reach","gHashTag/BrowserOS:tri/tc-relabel","gHashTag/BrowserOS:tri/tc-remote","gHashTag/BrowserOS:tri/tc-restore","gHashTag/BrowserOS:tri/tc-retrieve","gHashTag/BrowserOS:tri/tc-rounds","gHashTag/BrowserOS:tri/tc-seen","gHashTag/BrowserOS:tri/tc-soundness","gHashTag/BrowserOS:tri/tc-speed","gHashTag/BrowserOS:tri/tc-sync","gHashTag/BrowserOS:tri/tc-t27bench","gHashTag/BrowserOS:tri/tc-t27mask","gHashTag/BrowserOS:tri/tc-t27selfcheck","gHashTag/BrowserOS:tri/tc-taxonomy","gHashTag/BrowserOS:tri/tc-val","gHashTag/BrowserOS:tri/tg-dialogs","gHashTag/BrowserOS:tri/tg-msg","gHashTag/BrowserOS:tri/tg-search","gHashTag/BrowserOS:tri/tg-unread","gHashTag/BrowserOS:tri/tg-who","gHashTag/BrowserOS:tri/trend","gHashTag/BrowserOS:tri/trinity-report","gHashTag/BrowserOS:tri/two-views","gHashTag/BrowserOS:tri/unpark","gHashTag/BrowserOS:tri/unverdicted","gHashTag/BrowserOS:tri/unwired","gHashTag/BrowserOS:tri/verdict-audit","gHashTag/BrowserOS:tri/verdicts","gHashTag/BrowserOS:tri/verify","gHashTag/BrowserOS:tri/vibee-feed","gHashTag/BrowserOS:tri/wave","gHashTag/BrowserOS:tri/wave-plan","gHashTag/BrowserOS:tri/which-board","gHashTag/BrowserOS:tri/why","gHashTag/BrowserOS:tri/x7-audit","gHashTag/BrowserOS:tri/x7-bench","gHashTag/BrowserOS:tri/x7-board","gHashTag/BrowserOS:tri/x7-claim","gHashTag/BrowserOS:tri/x7-fasm","gHashTag/BrowserOS:tri/x7-lesson","gHashTag/BrowserOS:tri/x7-mutate","gHashTag/BrowserOS:tri/x7-next","gHashTag/BrowserOS:tri/x7-part","gHashTag/BrowserOS:tri/x7-refs","gHashTag/BrowserOS:tri/x7-release","gHashTag/BrowserOS:tri/x7-status","gHashTag/BrowserOS:tri/x7-task","gHashTag/BrowserOS:tri/x7-writer","gHashTag/trinity:tri/agents-bench","gHashTag/trinity:tri/agents-demo","gHashTag/trinity:tri/all","gHashTag/trinity:tri/amygdala","gHashTag/trinity:tri/analyze","gHashTag/trinity:tri/auto-bench","gHashTag/trinity:tri/auto-demo","gHashTag/trinity:tri/autocomplete","gHashTag/trinity:tri/batched-bench","gHashTag/trinity:tri/batched-demo","gHashTag/trinity:tri/bench-suite","gHashTag/trinity:tri/bench-verdict","gHashTag/trinity:tri/brain","gHashTag/trinity:tri/build","gHashTag/trinity:tri/cache-bench","gHashTag/trinity:tri/cache-demo","gHashTag/trinity:tri/capsec-bench","gHashTag/trinity:tri/capsec-demo","gHashTag/trinity:tri/cell","gHashTag/trinity:tri/chain","gHashTag/trinity:tri/chat","gHashTag/trinity:tri/check","gHashTag/trinity:tri/chem","gHashTag/trinity:tri/chimera","gHashTag/trinity:tri/chord","gHashTag/trinity:tri/clara","gHashTag/trinity:tri/clean","gHashTag/trinity:tri/cloud","gHashTag/trinity:tri/cluster-bench","gHashTag/trinity:tri/cluster-demo","gHashTag/trinity:tri/code","gHashTag/trinity:tri/commands","gHashTag/trinity:tri/commit","gHashTag/trinity:tri/comms-bench","gHashTag/trinity:tri/comms-demo","gHashTag/trinity:tri/completion","gHashTag/trinity:tri/consensus-bench","gHashTag/trinity:tri/consensus-demo","gHashTag/trinity:tri/context","gHashTag/trinity:tri/context-bench","gHashTag/trinity:tri/context-demo","gHashTag/trinity:tri/context-load","gHashTag/trinity:tri/contract-bench","gHashTag/trinity:tri/contract-demo","gHashTag/trinity:tri/convert","gHashTag/trinity:tri/core","gHashTag/trinity:tri/deadline-bench","gHashTag/trinity:tri/deadline-demo","gHashTag/trinity:tri/deck","gHashTag/trinity:tri/decompose","gHashTag/trinity:tri/depin","gHashTag/trinity:tri/deploy","gHashTag/trinity:tri/dev","gHashTag/trinity:tri/diff","gHashTag/trinity:tri/dispatch","gHashTag/trinity:tri/distributed","gHashTag/trinity:tri/dm","gHashTag/trinity:tri/doc","gHashTag/trinity:tri/docs-gen","gHashTag/trinity:tri/doctor","gHashTag/trinity:tri/dtxn-bench","gHashTag/trinity:tri/dtxn-demo","gHashTag/trinity:tri/enrich","gHashTag/trinity:tri/eval","gHashTag/trinity:tri/event","gHashTag/trinity:tri/events","gHashTag/trinity:tri/eventsrc-bench","gHashTag/trinity:tri/eventsrc-demo","gHashTag/trinity:tri/evolve","gHashTag/trinity:tri/experience","gHashTag/trinity:tri/experiment","gHashTag/trinity:tri/explain","gHashTag/trinity:tri/faculty","gHashTag/trinity:tri/farm","gHashTag/trinity:tri/fedlearn-bench","gHashTag/trinity:tri/fedlearn-demo","gHashTag/trinity:tri/finetune-bench","gHashTag/trinity:tri/finetune-demo","gHashTag/trinity:tri/fix","gHashTag/trinity:tri/fmt","gHashTag/trinity:tri/forge","gHashTag/trinity:tri/forge-bench","gHashTag/trinity:tri/forge-verdict","gHashTag/trinity:tri/formula","gHashTag/trinity:tri/fpga-demo","gHashTag/trinity:tri/frequency","gHashTag/trinity:tri/full-cycle","gHashTag/trinity:tri/gen","gHashTag/trinity:tri/git","gHashTag/trinity:tri/golden-chain","gHashTag/trinity:tri/governor-bench","gHashTag/trinity:tri/governor-demo","gHashTag/trinity:tri/graphql","gHashTag/trinity:tri/gravity","gHashTag/trinity:tri/habenula","gHashTag/trinity:tri/harmony","gHashTag/trinity:tri/help","gHashTag/trinity:tri/holo","gHashTag/trinity:tri/igla","gHashTag/trinity:tri/info","gHashTag/trinity:tri/init","gHashTag/trinity:tri/install","gHashTag/trinity:tri/intelligence","gHashTag/trinity:tri/issue","gHashTag/trinity:tri/job","gHashTag/trinity:tri/job-artifacts","gHashTag/trinity:tri/job-cancel","gHashTag/trinity:tri/job-list","gHashTag/trinity:tri/job-logs","gHashTag/trinity:tri/job-status","gHashTag/trinity:tri/kaggle","gHashTag/trinity:tri/launch","gHashTag/trinity:tri/lint","gHashTag/trinity:tri/log","gHashTag/trinity:tri/loop","gHashTag/trinity:tri/loop-decide","gHashTag/trinity:tri/math","gHashTag/trinity:tri/math-agent","gHashTag/trinity:tri/math-diff","gHashTag/trinity:tri/math-doctor","gHashTag/trinity:tri/math-explain","gHashTag/trinity:tri/math-table","gHashTag/trinity:tri/math-verify","gHashTag/trinity:tri/mcp","gHashTag/trinity:tri/memory-bench","gHashTag/trinity:tri/memory-demo","gHashTag/trinity:tri/metrics","gHashTag/trinity:tri/mmo-bench","gHashTag/trinity:tri/mmo-demo","gHashTag/trinity:tri/mu","gHashTag/trinity:tri/multi-cluster","gHashTag/trinity:tri/multimodal-bench","gHashTag/trinity:tri/multimodal-demo","gHashTag/trinity:tri/music","gHashTag/trinity:tri/neuro","gHashTag/trinity:tri/notify","gHashTag/trinity:tri/observe-bench","gHashTag/trinity:tri/observe-demo","gHashTag/trinity:tri/ofc","gHashTag/trinity:tri/omega-evolve","gHashTag/trinity:tri/omega-phase","gHashTag/trinity:tri/orch-bench","gHashTag/trinity:tri/orch-demo","gHashTag/trinity:tri/ouroboros","gHashTag/trinity:tri/patent","gHashTag/trinity:tri/persist-bench","gHashTag/trinity:tri/persist-demo","gHashTag/trinity:tri/phi-series","gHashTag/trinity:tri/phoenix","gHashTag/trinity:tri/pipeline","gHashTag/trinity:tri/pipeline-demo","gHashTag/trinity:tri/plan","gHashTag/trinity:tri/plugin-bench","gHashTag/trinity:tri/plugin-demo","gHashTag/trinity:tri/pr","gHashTag/trinity:tri/priority-bench","gHashTag/trinity:tri/priority-demo","gHashTag/trinity:tri/qcd","gHashTag/trinity:tri/queen","gHashTag/trinity:tri/rag-bench","gHashTag/trinity:tri/rag-demo","gHashTag/trinity:tri/railway","gHashTag/trinity:tri/reason","gHashTag/trinity:tri/refactor","gHashTag/trinity:tri/registry-validate","gHashTag/trinity:tri/release","gHashTag/trinity:tri/release-cosmic","gHashTag/trinity:tri/research","gHashTag/trinity:tri/resonance","gHashTag/trinity:tri/sacred","gHashTag/trinity:tri/sandbox-bench","gHashTag/trinity:tri/sandbox-demo","gHashTag/trinity:tri/scale","gHashTag/trinity:tri/search","gHashTag/trinity:tri/sebo","gHashTag/trinity:tri/self","gHashTag/trinity:tri/serve","gHashTag/trinity:tri/sim","gHashTag/trinity:tri/sparc","gHashTag/trinity:tri/spawn-bench","gHashTag/trinity:tri/spawn-demo","gHashTag/trinity:tri/spec-create","gHashTag/trinity:tri/specexec-bench","gHashTag/trinity:tri/specexec-demo","gHashTag/trinity:tri/stats","gHashTag/trinity:tri/status","gHashTag/trinity:tri/storm","gHashTag/trinity:tri/stream-bench","gHashTag/trinity:tri/stream-demo","gHashTag/trinity:tri/stress","gHashTag/trinity:tri/string","gHashTag/trinity:tri/sync-check","gHashTag/trinity:tri/system","gHashTag/trinity:tri/task","gHashTag/trinity:tri/test-repl","gHashTag/trinity:tri/time","gHashTag/trinity:tri/token","gHashTag/trinity:tri/tooluse-bench","gHashTag/trinity:tri/tooluse-demo","gHashTag/trinity:tri/toxic-verdict","gHashTag/trinity:tri/trace","gHashTag/trinity:tri/train","gHashTag/trinity:tri/tvc-demo","gHashTag/trinity:tri/tvc-stats","gHashTag/trinity:tri/ui","gHashTag/trinity:tri/unified-bench","gHashTag/trinity:tri/unified-demo","gHashTag/trinity:tri/verdict","gHashTag/trinity:tri/verify","gHashTag/trinity:tri/version","gHashTag/trinity:tri/vision-bench","gHashTag/trinity:tri/vision-demo","gHashTag/trinity:tri/voice-bench","gHashTag/trinity:tri/voice-demo","gHashTag/trinity:tri/waveform","gHashTag/trinity:tri/workflow-bench","gHashTag/trinity:tri/workflow-demo","gHashTag/trinity:tri/worksteal-bench","gHashTag/trinity:tri/worksteal-demo","gHashTag/trinity:tri/zenodo"],"scope":["specs/skills","specs/crons","specs/agents","specs/functions","specs/tools"],"sha256":"c8871fb4ccdef8fc3cc2937af5db0e307ab0b62f6a03ece9f4512851ffd64f04","spec":"specs/i18n/agents-ru.t27"}],"ladder":{"agents":27,"crons":33,"functions":28,"skills":26,"specs":1776,"tools":607},"legacy":{"mcp/gitbutler":"gHashTag/t27:mcp/gitbutler","mcp/inngest-dev":"gHashTag/t27:mcp/inngest-dev","mcp/needle":"gHashTag/trinity:mcp/needle","mcp/neon":"gHashTag/trinity:mcp/neon","mcp/notebooklm":"gHashTag/t27:mcp/notebooklm","mcp/railway-mcp-server":"gHashTag/trinity:mcp/railway-mcp-server","mcp/t27-traceability":"gHashTag/t27:mcp/t27-traceability","mcp/tri-mcp":"gHashTag/t27:mcp/tri-mcp","mcp/tri-ssot":"gHashTag/t27:mcp/tri-ssot","mcp/trinity":"gHashTag/trinity:mcp/trinity","mcp/zig-docs":"gHashTag/trinity:mcp/zig-docs","tri/abandoned":"gHashTag/t27:tri/abandoned","tri/cell":"gHashTag/t27:tri/cell","tri/census":"gHashTag/t27:tri/census","tri/ci":"gHashTag/t27:tri/ci","tri/competitors":"gHashTag/t27:tri/competitors","tri/discard":"gHashTag/t27:tri/discard","tri/doctor":"gHashTag/t27:tri/doctor","tri/elab":"gHashTag/t27:tri/elab","tri/emit":"gHashTag/t27:tri/emit","tri/experience":"gHashTag/t27:tri/experience","tri/fleet":"gHashTag/t27:tri/fleet","tri/fmt":"gHashTag/t27:tri/fmt","tri/fpga":"gHashTag/t27:tri/fpga","tri/gates":"gHashTag/t27:tri/gates","tri/gen":"gHashTag/t27:tri/gen","tri/harness":"gHashTag/t27:tri/harness","tri/health":"gHashTag/t27:tri/health","tri/hooks":"gHashTag/t27:tri/hooks","tri/issues":"gHashTag/t27:tri/issues","tri/jumps":"gHashTag/t27:tri/jumps","tri/kinds":"gHashTag/t27:tri/kinds","tri/lean":"gHashTag/t27:tri/lean","tri/ledgers":"gHashTag/t27:tri/ledgers","tri/loop":"gHashTag/t27:tri/loop","tri/merging":"gHashTag/t27:tri/merging","tri/misread":"gHashTag/t27:tri/misread","tri/mods":"gHashTag/t27:tri/mods","tri/mutate":"gHashTag/t27:tri/mutate","tri/now":"gHashTag/t27:tri/now","tri/one-away":"gHashTag/t27:tri/one-away","tri/orphaned":"gHashTag/t27:tri/orphaned","tri/pr":"gHashTag/t27:tri/pr","tri/prose":"gHashTag/t27:tri/prose","tri/quantifiers":"gHashTag/t27:tri/quantifiers","tri/red":"gHashTag/t27:tri/red","tri/reseal":"gHashTag/t27:tri/reseal","tri/rtl":"gHashTag/t27:tri/rtl","tri/seals":"gHashTag/t27:tri/seals","tri/serve":"gHashTag/t27:tri/serve","tri/skill":"gHashTag/t27:tri/skill","tri/status":"gHashTag/t27:tri/status","tri/sweep":"gHashTag/t27:tri/sweep","tri/synth":"gHashTag/t27:tri/synth","tri/test":"gHashTag/t27:tri/test","tri/topic":"gHashTag/t27:tri/topic","tri/types":"gHashTag/t27:tri/types","tri/unparsed":"gHashTag/t27:tri/unparsed","tri/vectors":"gHashTag/t27:tri/vectors","tri/verdict":"gHashTag/t27:tri/verdict","tri/vsim":"gHashTag/t27:tri/vsim","tri/window":"gHashTag/t27:tri/window","tri/worktrees":"gHashTag/t27:tri/worktrees"},"pin":{"ref":"93727f733e23baf032d54505095777f16676d70b","source":"public/agents/experience.json sources[t27].commit"},"schema":2,"tools":[{"aboutSource":".mcp.json entry; no tool list in this repository","agents":[],"cast":null,"config":".mcp.json","discarded":0,"env":["GITBUTLER_REPO"],"external":true,"family":"mcp","fields":{"ABOUT":"External GitButler MCP server launched as `but mcp`; the repository only registers it in .mcp.json.","ABOUT_SOURCE":".mcp.json entry; no tool list in this repository","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":".mcp.json","ENABLED":true,"ENV":["GITBUTLER_REPO"],"EXTERNAL":true,"FAMILY":"mcp","ID":"mcp/gitbutler","KIND":"tool","LAUNCH":"but mcp","QUALIFIED_ID":"gHashTag/t27:mcp/gitbutler","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"gitbutler","SERVER_VERSION":"","SOURCE":".mcp.json","TOOLS":[],"TOOLS_ABOUT":[],"TOOLS_INPUTS":[],"TOOLS_NOTE":"Tool list lives in the external `but` binary, not in this repository; nothing is listed rather than guessed.","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/gitbutler","inSpecCorpus":true,"launch":"but mcp","links":{"config":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.mcp.json","pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.mcp.json"},"messages":["no agent letter bound by a source","external package: tool list not in the repository"],"moduleName":"tool_mcp_gitbutler","name":{"en":"gitbutler"},"qualifiedId":"gHashTag/t27:mcp/gitbutler","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/gitbutler gitbutler external gitbutler mcp server launched as `but mcp`; the repository only registers it in .mcp.json.","server":"gitbutler","serverVersion":"","sha256":"488ff443b895b38f10748ab28238d7a9348819df4e53af1fa7adcc4bbacf3992","skills":[],"source":".mcp.json","specPath":"specs/tools/mcp/gitbutler.t27","summary":{"en":"External GitButler MCP server launched as `but mcp`; the repository only registers it in .mcp.json.","ru":"Внешний MCP-сервер GitButler, запускаемый как `but mcp`; репозиторий лишь регистрирует его в .mcp.json."},"tools":[],"toolsNote":"Tool list lives in the external `but` binary, not in this repository; nothing is listed rather than guessed.","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"serverInfo.title of the initialize answer plus specs/automation/inngest-queen-scheduler.t27","agents":[{"letter":"T","ok":true}],"cast":null,"config":"","discarded":0,"env":["INNGEST_SIGNING_KEY"],"external":true,"family":"mcp","fields":{"ABOUT":"MCP face of the self-hosted Inngest server (Railway project 999) that runs the Queen's crons and skills as functions of the app t27-queen; lists apps and functions, reads runs and traces, invokes, reruns and cancels.","ABOUT_SOURCE":"serverInfo.title of the initialize answer plus specs/automation/inngest-queen-scheduler.t27","AGENTS":["T"],"AGENTS_NOTE":"specs/agents/t.t27 TOOLS names mcp/inngest-dev: the Queen (Tau) holds the scheduler; a bee reaches it through the Queen's brief, not by its own registration.","CONFIG":"","ENABLED":true,"ENV":["INNGEST_SIGNING_KEY"],"EXTERNAL":true,"FAMILY":"mcp","ID":"mcp/inngest-dev","KIND":"tool","LAUNCH":"claude mcp add --transport http inngest-dev https://inngestinngest-production-c468.up.railway.app/mcp","QUALIFIED_ID":"gHashTag/t27:mcp/inngest-dev","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"inngest-dev","SERVER_VERSION":"1.0.0","SOURCE":"tools/list of https://inngestinngest-production-c468.up.railway.app/mcp (2026-09-13)","TOOLS":["cancel_run","get_app","get_apps","get_event_runs","get_function","get_run","get_run_status","get_run_trace","grep_docs","health","invoke_function","invoke_function_sync","list_docs","list_function_runs","list_functions","list_runs","poll_run_status","read_doc","rerun","send_event"],"TOOLS_ABOUT":["Cancels an in-progress function run","Fetches details for a single app, including sync metadata and function count","Lists active apps in the authenticated environment. Set archived to true to list archived apps instead.","Lists function runs triggered by a specific event","Fetches function configuration and status details for a function within an app","Fetches the canonical run summary for a single function run","Deprecated compatibility tool retained for existing dev server integrations. Use get_run and get_run_trace for new integrations. Parameters:","Fetches the trace tree for a single function run","Search documentation using exact string matching (grep). Useful for finding specific API names, error codes, or identifiers. Parameters: pat","Returns the health status of the API service","Invokes a function, executing the function either asynchronously or synchronously based on the mode parameter in the request body","Deprecated compatibility tool retained for existing dev server integrations. Use invoke_function for the shared asynchronous Cloud and dev s","List all available documentation categories and their document counts. No parameters required.","Lists runs for one function in the authenticated environment","Lists function configuration and status details for an app","Lists runs in the authenticated environment, optionally filtered by app and function IDs","Deprecated compatibility tool retained for existing dev server integrations. Use get_run for new integrations. Poll multiple function runs u","Read the full content of a specific documentation file. Parameters: path (required string - the doc file path relative to docs directory)","Creates a new run using the original run's triggering event data","Deprecated compatibility tool retained for existing dev server integrations. Send an event to the Inngest dev server and return the event ID"],"TOOLS_INPUTS":["runId","appId","archived,cursor,limit","cursor,eventId,includeOutput,limit","appId,functionId","includeOutput,runId","runId","includeOutput,runId","pattern,limit","","appId,data,functionId,idempotencyKey","functionId,data,user,timeout","","appId,cursor,from,functionId,includeOutput,isDeferred,limit,order,status,timeField,until","appId,cursor,limit","appId,cursor,from,functionId,includeOutput,isDeferred,limit,order,status,timeField,until","runIds,timeout,pollInterval","path","fromStep,runId","name,data,user,eventIdSeed"],"TOOLS_NOTE":"Recorded from the live tools/list, not from source: the server is the upstream inngest binary, its source is not in this repository. Measured 2026-09-13 without a key: health, get_apps and list_runs answer REST API v2 returned HTTP 401: Authentication failed; list_docs and grep_docs answer (173 documents). The REST-backed tools need Authorization: Bearer on the MCP request.","TRANSPORT":"http","WITNESS":"help-output"},"health":"ok","id":"mcp/inngest-dev","inSpecCorpus":true,"launch":"claude mcp add --transport http inngest-dev https://inngestinngest-production-c468.up.railway.app/mcp","links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/tools/list of https://inngestinngest-production-c468.up.railway.app/mcp (2026-09-13)"},"messages":["external package: tool list not in the repository"],"moduleName":"tool_mcp_inngest_dev","name":{"en":"inngest-dev"},"qualifiedId":"gHashTag/t27:mcp/inngest-dev","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/inngest-dev inngest-dev mcp face of the self-hosted inngest server (railway project 999) that runs the queen's crons and skills as functions of the app t27-queen; lists apps and functions, reads runs and traces, invokes, reruns and cancels. cancel_run cancels an in-progress function run get_app fetches details for a single app, including sync metadata and function count get_apps lists active apps in the authenticated environment. set archived to true to list archived apps instead. get_event_runs lists function runs triggered by a specific event get_function fetches function configuration and status details for a function within an app get_run fetches the canonical run summary for a single function run get_run_status deprecated compatibility tool retained for existing dev server integrations. use get_run and get_run_trace for new integrations. parameters: get_run_trace fetches the trace tree for a single function run grep_docs search documentation using exact string matching (grep). useful for finding specific api names, error codes, or identifiers. parameters: pat health returns the health status of the api service invoke_function invokes a function, executing the function either asynchronously or synchronously based on the mode parameter in the request body invoke_function_sync deprecated compatibility tool retained for existing dev server integrations. use invoke_function for the shared asynchronous cloud and dev s list_docs list all available documentation categories and their document counts. no parameters required. list_function_runs lists runs for one function in the authenticated environment list_functions lists function configuration and status details for an app list_runs lists runs in the authenticated environment, optionally filtered by app and function ids poll_run_status deprecated compatibility tool retained for existing dev server integrations. use get_run for new integrations. poll multiple function runs u read_doc read the full content of a specific documentation file. parameters: path (required string - the doc file path relative to docs directory) rerun creates a new run using the original run's triggering event data send_event deprecated compatibility tool retained for existing dev server integrations. send an event to the inngest dev server and return the event id t","server":"inngest-dev","serverVersion":"1.0.0","sha256":"a0aad75ce804fcc056130bab7bd9b40af7145467cb0f0b93ed1147a2c6b89f8e","skills":[],"source":"tools/list of https://inngestinngest-production-c468.up.railway.app/mcp (2026-09-13)","specPath":"specs/tools/mcp/inngest-dev.t27","summary":{"en":"MCP face of the self-hosted Inngest server (Railway project 999) that runs the Queen's crons and skills as functions of the app t27-queen; lists apps and functions, reads runs and traces, invokes, reruns and cancels.","ru":"MCP-лицо самостоятельно размещённого сервера Inngest (проект Railway 999), который исполняет кроны и скиллы Королевы как функции приложения t27-queen; перечисляет приложения и функции, читает запуски и трассы, запускает, перезапускает и отменяет."},"tools":[{"about":"Cancels an in-progress function run","inputs":["runId"],"name":"cancel_run"},{"about":"Fetches details for a single app, including sync metadata and function count","inputs":["appId"],"name":"get_app"},{"about":"Lists active apps in the authenticated environment. Set archived to true to list archived apps instead.","inputs":["archived","cursor","limit"],"name":"get_apps"},{"about":"Lists function runs triggered by a specific event","inputs":["cursor","eventId","includeOutput","limit"],"name":"get_event_runs"},{"about":"Fetches function configuration and status details for a function within an app","inputs":["appId","functionId"],"name":"get_function"},{"about":"Fetches the canonical run summary for a single function run","inputs":["includeOutput","runId"],"name":"get_run"},{"about":"Deprecated compatibility tool retained for existing dev server integrations. Use get_run and get_run_trace for new integrations. Parameters:","inputs":["runId"],"name":"get_run_status"},{"about":"Fetches the trace tree for a single function run","inputs":["includeOutput","runId"],"name":"get_run_trace"},{"about":"Search documentation using exact string matching (grep). Useful for finding specific API names, error codes, or identifiers. Parameters: pat","inputs":["pattern","limit"],"name":"grep_docs"},{"about":"Returns the health status of the API service","inputs":[],"name":"health"},{"about":"Invokes a function, executing the function either asynchronously or synchronously based on the mode parameter in the request body","inputs":["appId","data","functionId","idempotencyKey"],"name":"invoke_function"},{"about":"Deprecated compatibility tool retained for existing dev server integrations. Use invoke_function for the shared asynchronous Cloud and dev s","inputs":["functionId","data","user","timeout"],"name":"invoke_function_sync"},{"about":"List all available documentation categories and their document counts. No parameters required.","inputs":[],"name":"list_docs"},{"about":"Lists runs for one function in the authenticated environment","inputs":["appId","cursor","from","functionId","includeOutput","isDeferred","limit","order","status","timeField","until"],"name":"list_function_runs"},{"about":"Lists function configuration and status details for an app","inputs":["appId","cursor","limit"],"name":"list_functions"},{"about":"Lists runs in the authenticated environment, optionally filtered by app and function IDs","inputs":["appId","cursor","from","functionId","includeOutput","isDeferred","limit","order","status","timeField","until"],"name":"list_runs"},{"about":"Deprecated compatibility tool retained for existing dev server integrations. Use get_run for new integrations. Poll multiple function runs u","inputs":["runIds","timeout","pollInterval"],"name":"poll_run_status"},{"about":"Read the full content of a specific documentation file. Parameters: path (required string - the doc file path relative to docs directory)","inputs":["path"],"name":"read_doc"},{"about":"Creates a new run using the original run's triggering event data","inputs":["fromStep","runId"],"name":"rerun"},{"about":"Deprecated compatibility tool retained for existing dev server integrations. Send an event to the Inngest dev server and return the event ID","inputs":["name","data","user","eventIdSeed"],"name":"send_event"}],"toolsNote":"Recorded from the live tools/list, not from source: the server is the upstream inngest binary, its source is not in this repository. Measured 2026-09-13 without a key: health, get_apps and list_runs answer REST API v2 returned HTTP 401: Authentication failed; list_docs and grep_docs answer (173 documents). The REST-backed tools need Authorization: Bearer on the MCP request.","transport":"http","typecheckOk":true,"witness":"help-output"},{"aboutSource":".claude/mcp.json entry; no tool list in this repository","agents":[],"cast":null,"config":".claude/mcp.json","discarded":0,"env":["NOTEBOOKLM_STORAGE_STATE"],"external":true,"family":"mcp","fields":{"ABOUT":"External MCP server `notebooklm` registered in .claude/mcp.json; launched as `notebooklm-mcp`.","ABOUT_SOURCE":".claude/mcp.json entry; no tool list in this repository","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":".claude/mcp.json","ENABLED":true,"ENV":["NOTEBOOKLM_STORAGE_STATE"],"EXTERNAL":true,"FAMILY":"mcp","ID":"mcp/notebooklm","KIND":"tool","LAUNCH":"notebooklm-mcp --notebook-id auto","QUALIFIED_ID":"gHashTag/t27:mcp/notebooklm","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"notebooklm","SERVER_VERSION":"","SOURCE":".claude/mcp.json","TOOLS":[],"TOOLS_ABOUT":[],"TOOLS_INPUTS":[],"TOOLS_NOTE":"Tool list lives in the external package, not in this repository.","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/notebooklm","inSpecCorpus":true,"launch":"notebooklm-mcp --notebook-id auto","links":{"config":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.claude/mcp.json","pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.claude/mcp.json"},"messages":["no agent letter bound by a source","external package: tool list not in the repository"],"moduleName":"tool_mcp_notebooklm","name":{"en":"notebooklm"},"qualifiedId":"gHashTag/t27:mcp/notebooklm","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/notebooklm notebooklm external mcp server `notebooklm` registered in .claude/mcp.json; launched as `notebooklm-mcp`.","server":"notebooklm","serverVersion":"","sha256":"93548d18109d7be76e3c43ea298c9db0a335044e2bbb820d23606859c9939bdb","skills":[],"source":".claude/mcp.json","specPath":"specs/tools/mcp/notebooklm.t27","summary":{"en":"External MCP server `notebooklm` registered in .claude/mcp.json; launched as `notebooklm-mcp`.","ru":"Внешний MCP-сервер `notebooklm`, зарегистрированный в .claude/mcp.json; запускается как `notebooklm-mcp`."},"tools":[],"toolsNote":"Tool list lives in the external package, not in this repository.","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"derived from the tool and resource descriptions in scripts/mcp-traceability-server.js","agents":[],"cast":null,"config":".mcp.json","discarded":0,"env":["PROJECT_ROOT","ENFORCE_L1"],"external":false,"family":"mcp","fields":{"ABOUT":"MCP server over stdio that checks L1 TRACEABILITY (Closes #N) in commit messages and PR descriptions, generates compliant commit messages, validates branch names and serves the PHI LOOP stacked-branch template; resources expose the constitution and the L1 audit.","ABOUT_SOURCE":"derived from the tool and resource descriptions in scripts/mcp-traceability-server.js","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":".mcp.json","ENABLED":true,"ENV":["PROJECT_ROOT","ENFORCE_L1"],"EXTERNAL":false,"FAMILY":"mcp","ID":"mcp/t27-traceability","KIND":"tool","LAUNCH":"node scripts/mcp-traceability-server.js","QUALIFIED_ID":"gHashTag/t27:mcp/t27-traceability","REPO":"gHashTag/t27","RESOURCES":["docs/T27-CONSTITUTION.md","docs/l1-traceability-audit.md"],"RESOURCES_ABOUT":["Constitutional laws including L1 TRACEABILITY","Audit report for L1 TRACEABILITY compliance"],"SCHEMA":2,"SERVER":"t27-traceability","SERVER_VERSION":"1.0.0","SOURCE":"scripts/mcp-traceability-server.js","TOOLS":["check_traceability","generate_commit_message","validate_branch_name","get_phi_loop_template"],"TOOLS_ABOUT":["Check if a commit message or PR description complies with L1 TRACEABILITY (Closes #N required)","Generate a compliant commit message for t27 including required L1 TRACEABILITY reference","Validate branch name follows t27 naming conventions","Get PHI LOOP stacked branch template for ring development"],"TOOLS_INPUTS":["message","type,scope,description,issueNumber,invariantLaws,body","branchName","ringNumber"],"TOOLS_NOTE":"","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/t27-traceability","inSpecCorpus":true,"launch":"node scripts/mcp-traceability-server.js","links":{"config":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.mcp.json","pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/scripts/mcp-traceability-server.js"},"messages":["no agent letter bound by a source"],"moduleName":"tool_mcp_t27_traceability","name":{"en":"t27-traceability"},"qualifiedId":"gHashTag/t27:mcp/t27-traceability","repo":"gHashTag/t27","resources":[{"about":"Constitutional laws including L1 TRACEABILITY","path":"docs/T27-CONSTITUTION.md"},{"about":"Audit report for L1 TRACEABILITY compliance","path":"docs/l1-traceability-audit.md"}],"schema":2,"searchText":"mcp/t27-traceability t27-traceability mcp server over stdio that checks l1 traceability (closes #n) in commit messages and pr descriptions, generates compliant commit messages, validates branch names and serves the phi loop stacked-branch template; resources expose the constitution and the l1 audit. check_traceability check if a commit message or pr description complies with l1 traceability (closes #n required) generate_commit_message generate a compliant commit message for t27 including required l1 traceability reference validate_branch_name validate branch name follows t27 naming conventions get_phi_loop_template get phi loop stacked branch template for ring development","server":"t27-traceability","serverVersion":"1.0.0","sha256":"2496a572dc04d4f7e615f0d235fd6cda542d1a10caf6abc91ee4ef3a3e36da1e","skills":[],"source":"scripts/mcp-traceability-server.js","specPath":"specs/tools/mcp/t27-traceability.t27","summary":{"en":"MCP server over stdio that checks L1 TRACEABILITY (Closes #N) in commit messages and PR descriptions, generates compliant commit messages, validates branch names and serves the PHI LOOP stacked-branch template; resources expose the constitution and the L1 audit.","ru":"MCP-сервер по stdio, проверяющий L1 TRACEABILITY (Closes #N) в сообщениях коммитов и описаниях PR, генерирующий соответствующие сообщения коммитов, валидирующий имена веток и отдающий шаблон стековых веток PHI LOOP; ресурсы открывают конституцию и аудит L1."},"tools":[{"about":"Check if a commit message or PR description complies with L1 TRACEABILITY (Closes #N required)","inputs":["message"],"name":"check_traceability"},{"about":"Generate a compliant commit message for t27 including required L1 TRACEABILITY reference","inputs":["type","scope","description","issueNumber","invariantLaws","body"],"name":"generate_commit_message"},{"about":"Validate branch name follows t27 naming conventions","inputs":["branchName"],"name":"validate_branch_name"},{"about":"Get PHI LOOP stacked branch template for ring development","inputs":["ringNumber"],"name":"get_phi_loop_template"}],"toolsNote":"","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"derived from the tool descriptions in cli/tri-mcp/src/main.rs build_tools_list","agents":[],"cast":null,"config":"","discarded":0,"env":[],"external":false,"family":"mcp","fields":{"ABOUT":"Rust MCP server exposing the PHI LOOP tri commands as tools: status, skill begin/end, cell checkpoint/seal, gen, test, verdict, experience save, health.","ABOUT_SOURCE":"derived from the tool descriptions in cli/tri-mcp/src/main.rs build_tools_list","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":"","ENABLED":true,"ENV":[],"EXTERNAL":false,"FAMILY":"mcp","ID":"mcp/tri-mcp","KIND":"tool","LAUNCH":"cargo run -q -p tri-mcp (binary tri-mcp; JSON-RPC over stdio)","QUALIFIED_ID":"gHashTag/t27:mcp/tri-mcp","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"tri-mcp","SERVER_VERSION":"0.1.0","SOURCE":"cli/tri-mcp/src/main.rs","TOOLS":["tri_status","tri_skill_begin","tri_skill_end","tri_cell_checkpoint","tri_cell_seal","tri_gen","tri_test","tri_verdict","tri_experience_save","tri_health"],"TOOLS_ABOUT":["Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","Begins a new PHI LOOP skill session bound to an issue.","Ends the active PHI LOOP skill session.","Records a checkpoint step in the active cell.","Seals the active cell by computing a SHA-256 hash of its checkpoint history.","Generates backends from a .t27 spec file using t27c.","Runs tests for a .t27 spec file using t27c.","Checks for toxic regressions by analyzing swarm health metrics.","Saves an experience episode to the akashic log.","Returns queen and swarm health status from .trinity state."],"TOOLS_INPUTS":["","issue,description","","step","","spec_path","spec_path","","episode_type,summary,ring",""],"TOOLS_NOTE":"Not registered in .mcp.json at this commit; the server exists as the tri-mcp crate.","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/tri-mcp","inSpecCorpus":true,"launch":"cargo run -q -p tri-mcp (binary tri-mcp; JSON-RPC over stdio)","links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri-mcp/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_mcp_tri_mcp","name":{"en":"tri-mcp"},"qualifiedId":"gHashTag/t27:mcp/tri-mcp","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/tri-mcp tri-mcp rust mcp server exposing the phi loop tri commands as tools: status, skill begin/end, cell checkpoint/seal, gen, test, verdict, experience save, health. tri_status returns phi loop status including active skill, cell, issue binding, and uncommitted changes. tri_skill_begin begins a new phi loop skill session bound to an issue. tri_skill_end ends the active phi loop skill session. tri_cell_checkpoint records a checkpoint step in the active cell. tri_cell_seal seals the active cell by computing a sha-256 hash of its checkpoint history. tri_gen generates backends from a .t27 spec file using t27c. tri_test runs tests for a .t27 spec file using t27c. tri_verdict checks for toxic regressions by analyzing swarm health metrics. tri_experience_save saves an experience episode to the akashic log. tri_health returns queen and swarm health status from .trinity state.","server":"tri-mcp","serverVersion":"0.1.0","sha256":"ae32961a90fd40b66ecab5b4d20fea7d20293038c00c728d191d211a9576986e","skills":[],"source":"cli/tri-mcp/src/main.rs","specPath":"specs/tools/mcp/tri-mcp.t27","summary":{"en":"Rust MCP server exposing the PHI LOOP tri commands as tools: status, skill begin/end, cell checkpoint/seal, gen, test, verdict, experience save, health.","ru":"MCP-сервер на Rust, открывающий команды tri PHI LOOP как инструменты: status, skill begin/end, cell checkpoint/seal, gen, test, verdict, experience save, health."},"tools":[{"about":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","inputs":[],"name":"tri_status"},{"about":"Begins a new PHI LOOP skill session bound to an issue.","inputs":["issue","description"],"name":"tri_skill_begin"},{"about":"Ends the active PHI LOOP skill session.","inputs":[],"name":"tri_skill_end"},{"about":"Records a checkpoint step in the active cell.","inputs":["step"],"name":"tri_cell_checkpoint"},{"about":"Seals the active cell by computing a SHA-256 hash of its checkpoint history.","inputs":[],"name":"tri_cell_seal"},{"about":"Generates backends from a .t27 spec file using t27c.","inputs":["spec_path"],"name":"tri_gen"},{"about":"Runs tests for a .t27 spec file using t27c.","inputs":["spec_path"],"name":"tri_test"},{"about":"Checks for toxic regressions by analyzing swarm health metrics.","inputs":[],"name":"tri_verdict"},{"about":"Saves an experience episode to the akashic log.","inputs":["episode_type","summary","ring"],"name":"tri_experience_save"},{"about":"Returns queen and swarm health status from .trinity state.","inputs":[],"name":"tri_health"}],"toolsNote":"Not registered in .mcp.json at this commit; the server exists as the tri-mcp crate.","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"manifest.json description","agents":[],"cast":null,"config":".claude/mcp/tri-ssot/manifest.json","discarded":0,"env":[],"external":false,"family":"mcp","fields":{"ABOUT":"SSOT Integration for t27: GitHub Issues + PRs + Documentation -> NotebookLM","ABOUT_SOURCE":"manifest.json description","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":".claude/mcp/tri-ssot/manifest.json","ENABLED":true,"ENV":[],"EXTERNAL":false,"FAMILY":"mcp","ID":"mcp/tri-ssot","KIND":"tool","LAUNCH":"python3 -m contrib.backend.github.mcp_server","QUALIFIED_ID":"gHashTag/t27:mcp/tri-ssot","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"tri-ssot","SERVER_VERSION":"1.0.0","SOURCE":".claude/mcp/tri-ssot/manifest.json","TOOLS":["tri_issue","tri_pr","tri_docs","tri_sync","tri_search"],"TOOLS_ABOUT":["GitHub Issue management: create, update, list, close","GitHub PR management: create, merge, close, get status","Documentation management: upload to NotebookLM, sync, query","Unified sync: sync all entities (issues, prs, docs) with NotebookLM","Unified search across GitHub Issues, PRs, NotebookLM docs"],"TOOLS_INPUTS":["action,title,body,labels,issue_id,state","action,title,body,pr_id,issue_id","action,file_path,title","scope","query"],"TOOLS_NOTE":"The manifest names python3 -m contrib.backend.github.mcp_server, but the t27 tree at this commit has no contrib/backend/github/mcp_server.py (git ls-tree); the tool list is taken from the manifest alone (declared, not executed).","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/tri-ssot","inSpecCorpus":true,"launch":"python3 -m contrib.backend.github.mcp_server","links":{"config":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.claude/mcp/tri-ssot/manifest.json","pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.claude/mcp/tri-ssot/manifest.json"},"messages":["no agent letter bound by a source"],"moduleName":"tool_mcp_tri_ssot","name":{"en":"tri-ssot"},"qualifiedId":"gHashTag/t27:mcp/tri-ssot","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/tri-ssot tri-ssot ssot integration for t27: github issues + prs + documentation -> notebooklm tri_issue github issue management: create, update, list, close tri_pr github pr management: create, merge, close, get status tri_docs documentation management: upload to notebooklm, sync, query tri_sync unified sync: sync all entities (issues, prs, docs) with notebooklm tri_search unified search across github issues, prs, notebooklm docs","server":"tri-ssot","serverVersion":"1.0.0","sha256":"c5f2218c27d16037026e392844aee9dff023506272d7eb2ecae5c323be2994de","skills":[],"source":".claude/mcp/tri-ssot/manifest.json","specPath":"specs/tools/mcp/tri-ssot.t27","summary":{"en":"SSOT Integration for t27: GitHub Issues + PRs + Documentation -> NotebookLM","ru":"Интеграция SSOT для t27: GitHub Issues + PR + документация -> NotebookLM."},"tools":[{"about":"GitHub Issue management: create, update, list, close","inputs":["action","title","body","labels","issue_id","state"],"name":"tri_issue"},{"about":"GitHub PR management: create, merge, close, get status","inputs":["action","title","body","pr_id","issue_id"],"name":"tri_pr"},{"about":"Documentation management: upload to NotebookLM, sync, query","inputs":["action","file_path","title"],"name":"tri_docs"},{"about":"Unified sync: sync all entities (issues, prs, docs) with NotebookLM","inputs":["scope"],"name":"tri_sync"},{"about":"Unified search across GitHub Issues, PRs, NotebookLM docs","inputs":["query"],"name":"tri_search"}],"toolsNote":"The manifest names python3 -m contrib.backend.github.mcp_server, but the t27 tree at this commit has no contrib/backend/github/mcp_server.py (git ls-tree); the tool list is taken from the manifest alone (declared, not executed).","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Abandoned (cli/tri/src/main.rs; module cli/tri/src/abandoned.rs)","actions":[{"about":"List recovery sites whose preceding comment names a concrete construct.","name":"list"}],"agents":[],"args":[],"cast":null,"command":"tri abandoned","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Recovery sites whose own comment names the construct they discard.","ABOUT_SOURCE":"clap /// doc on Commands::Abandoned (cli/tri/src/main.rs; module cli/tri/src/abandoned.rs)","ACTIONS":["list"],"ACTIONS_ABOUT":["List recovery sites whose preceding comment names a concrete construct."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri abandoned","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/abandoned","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/abandoned","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/abandoned.rs","VARIANT":"Commands::Abandoned","WHEN_TO_USE":"Recovery sites whose own comment names the construct they discard.","WITNESS":"source-parse"},"health":"ok","id":"tri/abandoned","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/abandoned.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_abandoned","name":{"en":"tri abandoned"},"qualifiedId":"gHashTag/t27:tri/abandoned","repo":"gHashTag/t27","schema":2,"searchText":"tri/abandoned tri abandoned recovery sites whose own comment names the construct they discard. recovery sites whose own comment names the construct they discard. list list recovery sites whose preceding comment names a concrete construct.","sha256":"b3105d48a28faff92bc02e393c146c4e95cba6c68277eb54f27ec5abc3b77bb4","skills":[],"source":"cli/tri/src/abandoned.rs","specPath":"specs/tools/tri/abandoned.t27","summary":{"en":"Recovery sites whose own comment names the construct they discard.","ru":"Точки восстановления, чей собственный комментарий называет отбрасываемую конструкцию."},"typecheckOk":true,"variant":"Commands::Abandoned","whenToUse":"Recovery sites whose own comment names the construct they discard.","witness":"source-parse"},{"aboutSource":"tri-mcp tools tri_cell_checkpoint and tri_cell_seal descriptions (cli/tri-mcp/src/main.rs); CellAction enum cli/tri/src/main.rs:448","actions":[{"about":"","name":"checkpoint"},{"about":"","name":"seal"}],"agents":[{"letter":"W","ok":true}],"args":[],"cast":null,"command":"tri cell","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Records a checkpoint step in the active cell. Seals the active cell by computing a SHA-256 hash of its checkpoint history.","ABOUT_SOURCE":"tri-mcp tools tri_cell_checkpoint and tri_cell_seal descriptions (cli/tri-mcp/src/main.rs); CellAction enum cli/tri/src/main.rs:448","ACTIONS":["checkpoint","seal"],"ACTIONS_ABOUT":["",""],"AGENTS":["W"],"AGENTS_NOTE":"docs/agents/AGENTS_ALPHABET.md:144, agent W domain Workflow / tri cell, key file src/tri/cell.zig; PHASE 6 EVOLVE: W seals tri-cell commit (hash seal).","ARGS":[],"COMMAND":"tri cell","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/cell","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/cell","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Cell","WHEN_TO_USE":"Records a checkpoint step in the active cell. Seals the active cell by computing a SHA-256 hash of its checkpoint history.","WITNESS":"source-parse"},"health":"ok","id":"tri/cell","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_cell","name":{"en":"tri cell"},"qualifiedId":"gHashTag/t27:tri/cell","repo":"gHashTag/t27","schema":2,"searchText":"tri/cell tri cell records a checkpoint step in the active cell. seals the active cell by computing a sha-256 hash of its checkpoint history. records a checkpoint step in the active cell. seals the active cell by computing a sha-256 hash of its checkpoint history. checkpoint seal w","sha256":"36ed34dfc7beb24c2fdd5b7dc5f7fe3375b42f357ffde7befd19f7cfbc22cdca","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/cell.t27","summary":{"en":"Records a checkpoint step in the active cell. Seals the active cell by computing a SHA-256 hash of its checkpoint history.","ru":"Записывает шаг-контрольную точку в активной ячейке; запечатывает активную ячейку, вычисляя SHA-256 истории её контрольных точек."},"typecheckOk":true,"variant":"Commands::Cell","whenToUse":"Records a checkpoint step in the active cell. Seals the active cell by computing a SHA-256 hash of its checkpoint history.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Census (cli/tri/src/main.rs; module cli/tri/src/census.rs)","actions":[{"about":"Every census's printed population, against one counted another way.","name":"audit"},{"about":"Pin each pure census's output, so a change that moves one has to say so.","name":"pin"}],"agents":[],"args":[],"cast":null,"command":"tri census","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Specs the compiler cannot read, ranked by the construct that stops it. Every census's printed population, against one counted another way.","ABOUT_SOURCE":"clap /// doc on Commands::Census (cli/tri/src/main.rs; module cli/tri/src/census.rs)","ACTIONS":["audit","pin"],"ACTIONS_ABOUT":["Every census's printed population, against one counted another way.","Pin each pure census's output, so a change that moves one has to say so."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri census","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/census","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/census","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/census.rs","VARIANT":"Commands::Census","WHEN_TO_USE":"Specs the compiler cannot read, ranked by the construct that stops it. Every census's printed population, against one counted another way.","WITNESS":"source-parse"},"health":"ok","id":"tri/census","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/census.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_census","name":{"en":"tri census"},"qualifiedId":"gHashTag/t27:tri/census","repo":"gHashTag/t27","schema":2,"searchText":"tri/census tri census specs the compiler cannot read, ranked by the construct that stops it. every census's printed population, against one counted another way. specs the compiler cannot read, ranked by the construct that stops it. every census's printed population, against one counted another way. audit every census's printed population, against one counted another way. pin pin each pure census's output, so a change that moves one has to say so.","sha256":"d78bef53542ec408f004c9a1e1650cd9fd125ef0e7da3d4172f5ed9a203961af","skills":[],"source":"cli/tri/src/census.rs","specPath":"specs/tools/tri/census.t27","summary":{"en":"Specs the compiler cannot read, ranked by the construct that stops it. Every census's printed population, against one counted another way.","ru":"Спеки, которые компилятор не может прочитать, ранжированные по конструкции, которая его останавливает. Напечатанная популяция каждой переписи против одной, посчитанной иначе."},"typecheckOk":true,"variant":"Commands::Census","whenToUse":"Specs the compiler cannot read, ranked by the construct that stops it. Every census's printed population, against one counted another way.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Ci (cli/tri/src/main.rs; module cli/tri/src/cibase.rs)","actions":[{"about":"List PR gates that have never run on the default branch.","name":"baseline"}],"agents":[],"args":[],"cast":null,"command":"tri ci","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Is the hardware this plan assumes actually attached? CI questions about the repository's own gates.","ABOUT_SOURCE":"clap /// doc on Commands::Ci (cli/tri/src/main.rs; module cli/tri/src/cibase.rs)","ACTIONS":["baseline"],"ACTIONS_ABOUT":["List PR gates that have never run on the default branch."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri ci","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/ci","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/ci","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/cibase.rs","VARIANT":"Commands::Ci","WHEN_TO_USE":"Is the hardware this plan assumes actually attached? CI questions about the repository's own gates.","WITNESS":"source-parse"},"health":"ok","id":"tri/ci","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/cibase.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_ci","name":{"en":"tri ci"},"qualifiedId":"gHashTag/t27:tri/ci","repo":"gHashTag/t27","schema":2,"searchText":"tri/ci tri ci is the hardware this plan assumes actually attached? ci questions about the repository's own gates. is the hardware this plan assumes actually attached? ci questions about the repository's own gates. baseline list pr gates that have never run on the default branch.","sha256":"589b4502973beca006108ffedabec587effb8778bfd21be45399b23bcae398f3","skills":[],"source":"cli/tri/src/cibase.rs","specPath":"specs/tools/tri/ci.t27","summary":{"en":"Is the hardware this plan assumes actually attached? CI questions about the repository's own gates.","ru":"Действительно ли подключено оборудование, которое предполагает этот план? Вопросы CI о собственных гейтах репозитория."},"typecheckOk":true,"variant":"Commands::Ci","whenToUse":"Is the hardware this plan assumes actually attached? CI questions about the repository's own gates.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Competitors (cli/tri/src/main.rs; module cli/tri/src/competitors.rs)","actions":[{"about":"Count the records, the double-entered papers and the unpublished zeros.","name":"audit"},{"about":"When the survey behind this table last read a paper, by the month its citations encode.","name":"freshness"}],"agents":[],"args":[],"cast":null,"command":"tri competitors","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"The competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice.","ABOUT_SOURCE":"clap /// doc on Commands::Competitors (cli/tri/src/main.rs; module cli/tri/src/competitors.rs)","ACTIONS":["audit","freshness"],"ACTIONS_ABOUT":["Count the records, the double-entered papers and the unpublished zeros.","When the survey behind this table last read a paper, by the month its citations encode."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri competitors","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/competitors","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/competitors","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/competitors.rs","VARIANT":"Commands::Competitors","WHEN_TO_USE":"The competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice.","WITNESS":"source-parse"},"health":"ok","id":"tri/competitors","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/competitors.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_competitors","name":{"en":"tri competitors"},"qualifiedId":"gHashTag/t27:tri/competitors","repo":"gHashTag/t27","schema":2,"searchText":"tri/competitors tri competitors the competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice. the competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice. audit count the records, the double-entered papers and the unpublished zeros. freshness when the survey behind this table last read a paper, by the month its citations encode.","sha256":"43fb47d6699c50e81d6ecd71f0f0791c5e0c46ba0fd69a2f066d60825d8f6706","skills":[],"source":"cli/tri/src/competitors.rs","specPath":"specs/tools/tri/competitors.t27","summary":{"en":"The competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice.","ru":"Таблица конкурентов против собственного контракта: сколько её опубликованных оценок никогда не публиковались и сколько статей она считает дважды."},"typecheckOk":true,"variant":"Commands::Competitors","whenToUse":"The competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Discard (cli/tri/src/main.rs; module cli/tri/src/discard.rs)","actions":[{"about":"Rank the discarding specs, largest first, against the pinned volume.","name":"top"},{"about":"Group the discard by which recovery threw it away, and what it stopped on.","name":"classify"}],"agents":[],"args":[],"cast":null,"command":"tri discard","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What the parser reads and throws away, ranked against its pinned bound.","ABOUT_SOURCE":"clap /// doc on Commands::Discard (cli/tri/src/main.rs; module cli/tri/src/discard.rs)","ACTIONS":["top","classify"],"ACTIONS_ABOUT":["Rank the discarding specs, largest first, against the pinned volume.","Group the discard by which recovery threw it away, and what it stopped on."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri discard","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/discard","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/discard","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/discard.rs","VARIANT":"Commands::Discard","WHEN_TO_USE":"What the parser reads and throws away, ranked against its pinned bound.","WITNESS":"source-parse"},"health":"ok","id":"tri/discard","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/discard.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_discard","name":{"en":"tri discard"},"qualifiedId":"gHashTag/t27:tri/discard","repo":"gHashTag/t27","schema":2,"searchText":"tri/discard tri discard what the parser reads and throws away, ranked against its pinned bound. what the parser reads and throws away, ranked against its pinned bound. top rank the discarding specs, largest first, against the pinned volume. classify group the discard by which recovery threw it away, and what it stopped on.","sha256":"601efe186f5a97dbfd2e82e397ac53f32210ccedb4fadf1c2ffd0c0ee62e4530","skills":[],"source":"cli/tri/src/discard.rs","specPath":"specs/tools/tri/discard.t27","summary":{"en":"What the parser reads and throws away, ranked against its pinned bound.","ru":"Что парсер читает и выбрасывает, в сравнении с закреплённой границей."},"typecheckOk":true,"variant":"Commands::Discard","whenToUse":"What the parser reads and throws away, ranked against its pinned bound.","witness":"source-parse"},{"aboutSource":"handler cmd_doctor match arms start/stop/status and its error text unknown doctor action (start|stop|status) (cli/tri/src/main.rs:934)","actions":[],"agents":[],"args":[{"about":"","name":""}],"cast":null,"command":"tri doctor","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","ABOUT_SOURCE":"handler cmd_doctor match arms start/stop/status and its error text unknown doctor action (start|stop|status) (cli/tri/src/main.rs:934)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[""],"COMMAND":"tri doctor","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/doctor","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/doctor","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Doctor","WHEN_TO_USE":"Start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","WITNESS":"source-parse"},"health":"ok","id":"tri/doctor","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_doctor","name":{"en":"tri doctor"},"qualifiedId":"gHashTag/t27:tri/doctor","repo":"gHashTag/t27","schema":2,"searchText":"tri/doctor tri doctor start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status). start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","sha256":"be3ed8d97c7404a17400311d3432bec040d027f0a76ce264a459326204780fd9","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/doctor.t27","summary":{"en":"Start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","ru":"Запускает, останавливает или показывает состояние doctor, хранимое в .trinity/state/doctor.json (действия: start | stop | status)."},"typecheckOk":true,"variant":"Commands::Doctor","whenToUse":"Start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Elab (cli/tri/src/main.rs; module cli/tri/src/elab.rs)","actions":[{"about":"Distribution of elaboration diagnostics by message shape.","name":"classify"},{"about":"How many diagnostics are secondary -- same source line as one above.","name":"secondary"}],"agents":[],"args":[],"cast":null,"command":"tri elab","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Classify a compiler's error output before quoting a number from it.","ABOUT_SOURCE":"clap /// doc on Commands::Elab (cli/tri/src/main.rs; module cli/tri/src/elab.rs)","ACTIONS":["classify","secondary"],"ACTIONS_ABOUT":["Distribution of elaboration diagnostics by message shape.","How many diagnostics are secondary -- same source line as one above."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri elab","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/elab","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/elab","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/elab.rs","VARIANT":"Commands::Elab","WHEN_TO_USE":"Classify a compiler's error output before quoting a number from it.","WITNESS":"source-parse"},"health":"ok","id":"tri/elab","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/elab.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_elab","name":{"en":"tri elab"},"qualifiedId":"gHashTag/t27:tri/elab","repo":"gHashTag/t27","schema":2,"searchText":"tri/elab tri elab classify a compiler's error output before quoting a number from it. classify a compiler's error output before quoting a number from it. classify distribution of elaboration diagnostics by message shape. secondary how many diagnostics are secondary -- same source line as one above.","sha256":"e1ee4634ec3f0bb75b6c2f870fda5b9ba40f1c1329ad5ed38ce03a9351065791","skills":[],"source":"cli/tri/src/elab.rs","specPath":"specs/tools/tri/elab.t27","summary":{"en":"Classify a compiler's error output before quoting a number from it.","ru":"Классифицирует вывод ошибок компилятора прежде, чем цитировать из него число."},"typecheckOk":true,"variant":"Commands::Elab","whenToUse":"Classify a compiler's error output before quoting a number from it.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Emit (cli/tri/src/main.rs; module cli/tri/src/gendet.rs)","actions":[{"about":"Generate the corpus twice with the same binary and name what differs.","name":"determinism"}],"agents":[],"args":[],"cast":null,"command":"tri emit","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Does the same binary produce the same generated code twice?","ABOUT_SOURCE":"clap /// doc on Commands::Emit (cli/tri/src/main.rs; module cli/tri/src/gendet.rs)","ACTIONS":["determinism"],"ACTIONS_ABOUT":["Generate the corpus twice with the same binary and name what differs."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri emit","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/emit","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/emit","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/gendet.rs","VARIANT":"Commands::Emit","WHEN_TO_USE":"Does the same binary produce the same generated code twice? Every byte-comparison over emitted output -- seals, emit-bitexact, `corpus --per-spec` diffing -- assumes it does. Three of the four emitters do not; see #3006. (`Gen` is taken by the single-spec emitter, so this is `Emit`.)","WITNESS":"source-parse"},"health":"ok","id":"tri/emit","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/gendet.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_emit","name":{"en":"tri emit"},"qualifiedId":"gHashTag/t27:tri/emit","repo":"gHashTag/t27","schema":2,"searchText":"tri/emit tri emit does the same binary produce the same generated code twice? does the same binary produce the same generated code twice? every byte-comparison over emitted output -- seals, emit-bitexact, `corpus --per-spec` diffing -- assumes it does. three of the four emitters do not; see #3006. (`gen` is taken by the single-spec emitter, so this is `emit`.) determinism generate the corpus twice with the same binary and name what differs.","sha256":"c4d32975e53fc1cf71a345333d73454c185b745057a215af3113981eedc68517","skills":[],"source":"cli/tri/src/gendet.rs","specPath":"specs/tools/tri/emit.t27","summary":{"en":"Does the same binary produce the same generated code twice?","ru":"Даёт ли один и тот же бинарник один и тот же сгенерированный код дважды?"},"typecheckOk":true,"variant":"Commands::Emit","whenToUse":"Does the same binary produce the same generated code twice? Every byte-comparison over emitted output -- seals, emit-bitexact, `corpus --per-spec` diffing -- assumes it does. Three of the four emitters do not; see #3006. (`Gen` is taken by the single-spec emitter, so this is `Emit`.)","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_experience_save description (cli/tri-mcp/src/main.rs); ExperienceAction enum cli/tri/src/main.rs:457","actions":[{"about":"","name":"save"}],"agents":[{"letter":"E","ok":true}],"args":[],"cast":null,"command":"tri experience","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Saves an experience episode to the akashic log.","ABOUT_SOURCE":"tri-mcp tool tri_experience_save description (cli/tri-mcp/src/main.rs); ExperienceAction enum cli/tri/src/main.rs:457","ACTIONS":["save"],"ACTIONS_ABOUT":[""],"AGENTS":["E"],"AGENTS_NOTE":".claude/agents/agent-e-experience.md:64 (tri experience save -- Save episode to experience log). Lines 65-66 name tri experience query and tri notebook, which the CLI does not have at this commit.","ARGS":[],"COMMAND":"tri experience","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/experience","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/experience","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Experience","WHEN_TO_USE":"Saves an experience episode to the akashic log.","WITNESS":"source-parse"},"health":"ok","id":"tri/experience","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_experience","name":{"en":"tri experience"},"qualifiedId":"gHashTag/t27:tri/experience","repo":"gHashTag/t27","schema":2,"searchText":"tri/experience tri experience saves an experience episode to the akashic log. saves an experience episode to the akashic log. save e","sha256":"08a7874c72e53ac1054c02ddb4a7649a6c4efb3c27ab9da7f4e148f6b9d05024","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/experience.t27","summary":{"en":"Saves an experience episode to the akashic log.","ru":"Сохраняет эпизод опыта в акашический журнал."},"typecheckOk":true,"variant":"Commands::Experience","whenToUse":"Saves an experience episode to the akashic log.","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/fleet.rs:1","actions":[{"about":"Scan the USB bus and say plainly what hardware is present.","name":"scan"},{"about":"Check the environments a claim depends on before repeating the claim.","name":"asof"}],"agents":[],"args":[],"cast":null,"command":"tri fleet","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"`tri fleet` -- is the hardware this plan assumes actually attached?","ABOUT_SOURCE":"//! module doc, cli/tri/src/fleet.rs:1","ACTIONS":["scan","asof"],"ACTIONS_ABOUT":["Scan the USB bus and say plainly what hardware is present.","Check the environments a claim depends on before repeating the claim."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri fleet","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/fleet","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/fleet","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/fleet.rs","VARIANT":"Commands::Fleet","WHEN_TO_USE":"`tri fleet` -- is the hardware this plan assumes actually attached?","WITNESS":"source-parse"},"health":"ok","id":"tri/fleet","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/fleet.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_fleet","name":{"en":"tri fleet"},"qualifiedId":"gHashTag/t27:tri/fleet","repo":"gHashTag/t27","schema":2,"searchText":"tri/fleet tri fleet `tri fleet` -- is the hardware this plan assumes actually attached? `tri fleet` -- is the hardware this plan assumes actually attached? scan scan the usb bus and say plainly what hardware is present. asof check the environments a claim depends on before repeating the claim.","sha256":"13c773d8e575a6f617dbcb4c86415a09bf50217b58f257efc4ea0ebc1ab90a8b","skills":[],"source":"cli/tri/src/fleet.rs","specPath":"specs/tools/tri/fleet.t27","summary":{"en":"`tri fleet` -- is the hardware this plan assumes actually attached?","ru":"`tri fleet` -- действительно ли подключено оборудование, которое предполагает этот план?"},"typecheckOk":true,"variant":"Commands::Fleet","whenToUse":"`tri fleet` -- is the hardware this plan assumes actually attached?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Fmt (cli/tri/src/main.rs)","actions":[],"agents":[],"args":[{"about":"One package instead of the whole workspace.","name":"--package"},{"about":"Report what is dirty and whether a workflow formats, and stop.","name":"--dry-run"}],"cast":null,"command":"tri fmt","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Type names with more than one definition in the spec tree. Run the formatter and restore every file it rewrote that you had not touched.","ABOUT_SOURCE":"clap /// doc on Commands::Fmt (cli/tri/src/main.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--package: One package instead of the whole workspace.","--dry-run: Report what is dirty and whether a workflow formats, and stop."],"COMMAND":"tri fmt","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/fmt","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/fmt","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Fmt","WHEN_TO_USE":"Type names with more than one definition in the spec tree. Run the formatter and restore every file it rewrote that you had not touched.","WITNESS":"source-parse"},"health":"ok","id":"tri/fmt","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_fmt","name":{"en":"tri fmt"},"qualifiedId":"gHashTag/t27:tri/fmt","repo":"gHashTag/t27","schema":2,"searchText":"tri/fmt tri fmt type names with more than one definition in the spec tree. run the formatter and restore every file it rewrote that you had not touched. type names with more than one definition in the spec tree. run the formatter and restore every file it rewrote that you had not touched.","sha256":"83e694d0156e30877c9a0d898b194667571fbc64181ff7c99dc0f7647a6f3452","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/fmt.t27","summary":{"en":"Type names with more than one definition in the spec tree. Run the formatter and restore every file it rewrote that you had not touched.","ru":"Имена типов с более чем одним определением в дереве спеков. Запускает форматтер и восстанавливает каждый переписанный им файл, которого вы не трогали."},"typecheckOk":true,"variant":"Commands::Fmt","whenToUse":"Type names with more than one definition in the spec tree. Run the formatter and restore every file it rewrote that you had not touched.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Fpga (cli/tri/src/main.rs; module cli/tri/src/fpga.rs)","actions":[{"about":"Read and print the JTAG IDCODE of the attached DLC10 cable target.","name":"idcode"},{"about":"Read the configuration IDCODE register via the Type-1 CFG_IN/CFG_OUT protocol. On a healthy XC7A100T this must return 0x13631093 (same as the JTAG IDCODE). If 0x00000000 is returned while `idcode` works, the read_cfg_reg implementation is broken.","name":"idcode-cfg"},{"about":"Program FPGA SRAM (volatile -- lost on power-cycle).","name":"sram"},{"about":"Program the on-board SPI flash (non-volatile / persistent).","name":"program"},{"about":"Read the SPI flash JEDEC ID via the JTAG-to-SPI bridge.","name":"flash-id"},{"about":"Read the raw CFG_OUT status register.","name":"status"},{"about":"Decode 7-series configuration registers for DONE=LOW diagnosis.","name":"debug"},{"about":"Load a bitstream into FPGA SRAM using openFPGALoader with a Digilent FTDI cable. This is the canonical path for the QMTech Wukong V1 / XC7A200T board because the in-tree `dlc10` driver only supports Xilinx DLC10 cables (VID=0x03FD), not the attached Digilent cable (VID=0x0403:0x6014).","name":"load-sram"},{"about":"Read and decode the FPGA STAT register via openFPGALoader.","name":"stat"},{"about":"Read the FPGA XADC sensors (temperature, VCCINT, VCCAUX) via openFPGALoader and print a JSON object. The board must be powered and connected through a supported cable such as `digilent_hs2`.","name":"read-xadc"},{"about":"Synthesize the GF16 4x4 matrix design through the openXC7 toolchain. Output is written to `/gf16_matmul4x4_top.bit`.","name":"synth-gf16"},{"about":"Program the on-board SPI flash (non-volatile) using openFPGALoader's JTAG-to-SPI bridge. Requires a matching `spiOverJtag` bitstream for the exact FPGA package; the XC7A200T-FGG676 bridge is present in recent openFPGALoader distributions but flash boot may still depend on board mode pins (see docs/reports/FPGA_LOOP_EVIDENCE_2026-07-04.md).","name":"program-flash"},{"about":"Dump SPI flash contents to a file via openFPGALoader's JTAG-to-SPI bridge.","name":"dump-flash"},{"about":"Parse the .bit header and print the configuration registers that affect Master SPI boot (COR0, COR1, WBSTAR, TIMER, CTL0, CTL1, IDCODE, BSPI).","name":"bit-config"},{"about":"Program the given .bit to SPI flash, dump the same region back, and compare the dumped bytes against the bitstream payload. This verifies the openFPGALoader write path is bit-perfect for the raw bitstream.","name":"round-trip-verify"},{"about":"Guided cold-POR boot experiment. Programs flash, asks the user to physically power-cycle the board, then captures STAT without a JTAG reset and prints a decision-tree diagnosis.","name":"boot-log"},{"about":"Deterministic cold-POR boot experiment with optional relay control. With `--relay-port MOCK` the command writes a deterministic, clearly labeled mock boot log so CI can exercise the cold-POR JSON path without touching hardware. Real relay ports are reserved for Variant A/B.","name":"cold-por"},{"about":"Board-less smoke gate for the FPGA path. Runs `tri fpga bit-config` on the GF16 demo bitstream and, if yosys is available, a synthesis smoke check on the demo Verilog. Requires no physical board.","name":"smoke-gate"},{"about":"Print or interactively confirm the cold-POR boot protocol. This is the standalone version of the instructions embedded in `boot-log` and `cclk-sweep`; use it to verify the operator steps before a physical power-cycle.","name":"boot-protocol"},{"about":"Patch the raw OSCFSEL field (COR0[22:17]) of a 7-series .bit file.","name":"patch-cor0"},{"about":"Generate a set of OSCFSEL variants from a single input .bit file. Outputs one file per requested value to the given directory.","name":"cclk-variants"},{"about":"Automated cold-POR CCLK sweep. Generates OSCFSEL variants, programs each to flash, prompts for the physical power-cycle, captures STAT, and writes JSON logs. The only manual step is disconnecting/reconnecting the cable and power-cycling the board.","name":"cclk-sweep"},{"about":"Read all `build/fpga/boot-log-*.json` files and produce a sweep report identifying the first working CCLK variant.","name":"sweep-report"},{"about":"Print DSLogic / oscilloscope instructions for measuring the FPGA CCLK output during Master SPI configuration. Optionally parse a DSView CSV export or run a live capture via `sigrok-cli` with a connected logic analyzer (e.g., the Digilent FTDI cable as `ftdi-la`).","name":"measure-cclk"},{"about":"Read the SPI flash status register via openFPGALoader's JTAG-to-SPI bridge. Decodes WIP, WEL, and QE bits to help diagnose boot-from-flash failures.","name":"flash-status"},{"about":"Diagnostic: load *only* the proxy bridge bitstream (or any other bitstream) into FPGA SRAM, report STAT, leave TAP in RTI. Does NOT touch SPI flash. Useful for verifying the bridge actually reaches DONE=HIGH before debugging SPI semantics.","name":"proxy-load"},{"about":"Diagnostic: read IDCODE + STAT *without* touching the FPGA. Run this immediately after `tri fpga proxy-load` to confirm the bridge is alive. Also confirms IR=USER1 select is accepted.","name":"proxy-status"},{"about":"Diagnostic: shift raw hex bytes through the USER1 BSCAN as a single SPI transaction. Reads `--rx N` MISO bytes after the TX stream. Requires the proxy bridge to be already loaded (`tri fpga proxy-load` first).","name":"spi-raw"},{"about":"Diagnostic: probe the IR capture pattern after selecting an IR. A healthy 7-series TAP always captures `0b000001` into the IR shift register. Anything else means the JTAG chain is broken or the cable is mis-driving TMS.","name":"ir-probe"},{"about":"Diagnostic: drive the full JEDEC-read flow end-to-end with maximum instrumentation, **including** the 0xAB Release-Power-down and 0x66+0x99 software-reset recovery attempts. Equivalent to `flash-id --verbose` plus auto-recovery.","name":"flash-id-debug"},{"about":"Build the QMTech XC7A100T-FGG676 JTAG-to-SPI proxy bitstream via the openXC7 open-source toolchain (yosys + nextpnr-himbaechel + prjxray). Requires `yosys`, `nextpnr-himbaechel`, `fasm2frames.py` and `xc7frames2bit` on PATH. With `--install`, the produced `.bit` is copied to `fpga/tools/bscan_spi_xc7a100t.bit` so the embedded `BSCAN_SPI_XC7A100T` constant picks it up on the next rebuild.","name":"build-proxy"},{"about":"Clone the openXC7 `nextpnr-xilinx` repo and build a chipdb (`.bba`) for the requested 7-series part, then install it into `~/.local/share/nextpnr/himbaechel-xilinx/`.","name":"setup-openxc7-chipdb"},{"about":"Generate a Lean 4 theorem from a `tri fpga measure-cclk --json` output. The theorem proves that the measured `(frequency, duty)` pair satisfies `measured_cclk_satisfies_flash_spec` and links it to `transaction_satisfies_flash_spec`. Useful for turning a real capture into a machine-checked proof without manual copy-paste.","name":"measured-to-lean"},{"about":"Print the PVT-derated N25Q128_3V SCK low/high bound for a supplied operating context. Also prints the margin over the nominal 6 ns bound and warns if the context is outside the documented operating envelope.","name":"pvt-envelope"},{"about":"Build the QMTech XC7A100T-FGG676 proxy bitstream via a Docker container running Xilinx Vivado. Clones our `openFPGALoader` fork (`feat/qmtech-xc7a100t-board`) into `target/openfpgaloader-fork/` and runs `make` inside `spiOverJtag/`. On Apple Silicon (arm64), the container runs under x86_64 emulation via `--platform linux/amd64`. With `--install`, the produced `bscan_spi_xc7a100tfgg676.bit.gz` is decompressed and copied to `fpga/tools/bscan_spi_xc7a100t.bit` and its SHA256 is printed.","name":"build-proxy-docker"}],"agents":[],"args":[],"cast":null,"command":"tri fpga","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"FPGA programming via the in-tree DLC10 driver (pure Rust).","ABOUT_SOURCE":"clap /// doc on Commands::Fpga (cli/tri/src/main.rs; module cli/tri/src/fpga.rs)","ACTIONS":["idcode","idcode-cfg","sram","program","flash-id","status","debug","load-sram","stat","read-xadc","synth-gf16","program-flash","dump-flash","bit-config","round-trip-verify","boot-log","cold-por","smoke-gate","boot-protocol","patch-cor0","cclk-variants","cclk-sweep","sweep-report","measure-cclk","flash-status","proxy-load","proxy-status","spi-raw","ir-probe","flash-id-debug","build-proxy","setup-openxc7-chipdb","measured-to-lean","pvt-envelope","build-proxy-docker"],"ACTIONS_ABOUT":["Read and print the JTAG IDCODE of the attached DLC10 cable target.","Read the configuration IDCODE register via the Type-1 CFG_IN/CFG_OUT protocol. On a healthy XC7A100T this must return 0x13631093 (same as the JTAG IDCODE). If 0x00000000 is returned while `idcode` works, the read_cfg_reg implementation is broken.","Program FPGA SRAM (volatile -- lost on power-cycle).","Program the on-board SPI flash (non-volatile / persistent).","Read the SPI flash JEDEC ID via the JTAG-to-SPI bridge.","Read the raw CFG_OUT status register.","Decode 7-series configuration registers for DONE=LOW diagnosis.","Load a bitstream into FPGA SRAM using openFPGALoader with a Digilent FTDI cable. This is the canonical path for the QMTech Wukong V1 / XC7A200T board because the in-tree `dlc10` driver only supports Xilinx DLC10 cables (VID=0x03FD), not the attached Digilent cable (VID=0x0403:0x6014).","Read and decode the FPGA STAT register via openFPGALoader.","Read the FPGA XADC sensors (temperature, VCCINT, VCCAUX) via openFPGALoader and print a JSON object. The board must be powered and connected through a supported cable such as `digilent_hs2`.","Synthesize the GF16 4x4 matrix design through the openXC7 toolchain. Output is written to `/gf16_matmul4x4_top.bit`.","Program the on-board SPI flash (non-volatile) using openFPGALoader's JTAG-to-SPI bridge. Requires a matching `spiOverJtag` bitstream for the exact FPGA package; the XC7A200T-FGG676 bridge is present in recent openFPGALoader distributions but flash boot may still depend on board mode pins (see docs/reports/FPGA_LOOP_EVIDENCE_2026-07-04.md).","Dump SPI flash contents to a file via openFPGALoader's JTAG-to-SPI bridge.","Parse the .bit header and print the configuration registers that affect Master SPI boot (COR0, COR1, WBSTAR, TIMER, CTL0, CTL1, IDCODE, BSPI).","Program the given .bit to SPI flash, dump the same region back, and compare the dumped bytes against the bitstream payload. This verifies the openFPGALoader write path is bit-perfect for the raw bitstream.","Guided cold-POR boot experiment. Programs flash, asks the user to physically power-cycle the board, then captures STAT without a JTAG reset and prints a decision-tree diagnosis.","Deterministic cold-POR boot experiment with optional relay control. With `--relay-port MOCK` the command writes a deterministic, clearly labeled mock boot log so CI can exercise the cold-POR JSON path without touching hardware. Real relay ports are reserved for Variant A/B.","Board-less smoke gate for the FPGA path. Runs `tri fpga bit-config` on the GF16 demo bitstream and, if yosys is available, a synthesis smoke check on the demo Verilog. Requires no physical board.","Print or interactively confirm the cold-POR boot protocol. This is the standalone version of the instructions embedded in `boot-log` and `cclk-sweep`; use it to verify the operator steps before a physical power-cycle.","Patch the raw OSCFSEL field (COR0[22:17]) of a 7-series .bit file.","Generate a set of OSCFSEL variants from a single input .bit file. Outputs one file per requested value to the given directory.","Automated cold-POR CCLK sweep. Generates OSCFSEL variants, programs each to flash, prompts for the physical power-cycle, captures STAT, and writes JSON logs. The only manual step is disconnecting/reconnecting the cable and power-cycling the board.","Read all `build/fpga/boot-log-*.json` files and produce a sweep report identifying the first working CCLK variant.","Print DSLogic / oscilloscope instructions for measuring the FPGA CCLK output during Master SPI configuration. Optionally parse a DSView CSV export or run a live capture via `sigrok-cli` with a connected logic analyzer (e.g., the Digilent FTDI cable as `ftdi-la`).","Read the SPI flash status register via openFPGALoader's JTAG-to-SPI bridge. Decodes WIP, WEL, and QE bits to help diagnose boot-from-flash failures.","Diagnostic: load *only* the proxy bridge bitstream (or any other bitstream) into FPGA SRAM, report STAT, leave TAP in RTI. Does NOT touch SPI flash. Useful for verifying the bridge actually reaches DONE=HIGH before debugging SPI semantics.","Diagnostic: read IDCODE + STAT *without* touching the FPGA. Run this immediately after `tri fpga proxy-load` to confirm the bridge is alive. Also confirms IR=USER1 select is accepted.","Diagnostic: shift raw hex bytes through the USER1 BSCAN as a single SPI transaction. Reads `--rx N` MISO bytes after the TX stream. Requires the proxy bridge to be already loaded (`tri fpga proxy-load` first).","Diagnostic: probe the IR capture pattern after selecting an IR. A healthy 7-series TAP always captures `0b000001` into the IR shift register. Anything else means the JTAG chain is broken or the cable is mis-driving TMS.","Diagnostic: drive the full JEDEC-read flow end-to-end with maximum instrumentation, **including** the 0xAB Release-Power-down and 0x66+0x99 software-reset recovery attempts. Equivalent to `flash-id --verbose` plus auto-recovery.","Build the QMTech XC7A100T-FGG676 JTAG-to-SPI proxy bitstream via the openXC7 open-source toolchain (yosys + nextpnr-himbaechel + prjxray). Requires `yosys`, `nextpnr-himbaechel`, `fasm2frames.py` and `xc7frames2bit` on PATH. With `--install`, the produced `.bit` is copied to `fpga/tools/bscan_spi_xc7a100t.bit` so the embedded `BSCAN_SPI_XC7A100T` constant picks it up on the next rebuild.","Clone the openXC7 `nextpnr-xilinx` repo and build a chipdb (`.bba`) for the requested 7-series part, then install it into `~/.local/share/nextpnr/himbaechel-xilinx/`.","Generate a Lean 4 theorem from a `tri fpga measure-cclk --json` output. The theorem proves that the measured `(frequency, duty)` pair satisfies `measured_cclk_satisfies_flash_spec` and links it to `transaction_satisfies_flash_spec`. Useful for turning a real capture into a machine-checked proof without manual copy-paste.","Print the PVT-derated N25Q128_3V SCK low/high bound for a supplied operating context. Also prints the margin over the nominal 6 ns bound and warns if the context is outside the documented operating envelope.","Build the QMTech XC7A100T-FGG676 proxy bitstream via a Docker container running Xilinx Vivado. Clones our `openFPGALoader` fork (`feat/qmtech-xc7a100t-board`) into `target/openfpgaloader-fork/` and runs `make` inside `spiOverJtag/`. On Apple Silicon (arm64), the container runs under x86_64 emulation via `--platform linux/amd64`. With `--install`, the produced `bscan_spi_xc7a100tfgg676.bit.gz` is decompressed and copied to `fpga/tools/bscan_spi_xc7a100t.bit` and its SHA256 is printed."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri fpga","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/fpga","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/fpga","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/fpga.rs","VARIANT":"Commands::Fpga","WHEN_TO_USE":"FPGA programming via the in-tree DLC10 driver (pure Rust).","WITNESS":"source-parse"},"health":"ok","id":"tri/fpga","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/fpga.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_fpga","name":{"en":"tri fpga"},"qualifiedId":"gHashTag/t27:tri/fpga","repo":"gHashTag/t27","schema":2,"searchText":"tri/fpga tri fpga fpga programming via the in-tree dlc10 driver (pure rust). fpga programming via the in-tree dlc10 driver (pure rust). idcode read and print the jtag idcode of the attached dlc10 cable target. idcode-cfg read the configuration idcode register via the type-1 cfg_in/cfg_out protocol. on a healthy xc7a100t this must return 0x13631093 (same as the jtag idcode). if 0x00000000 is returned while `idcode` works, the read_cfg_reg implementation is broken. sram program fpga sram (volatile -- lost on power-cycle). program program the on-board spi flash (non-volatile / persistent). flash-id read the spi flash jedec id via the jtag-to-spi bridge. status read the raw cfg_out status register. debug decode 7-series configuration registers for done=low diagnosis. load-sram load a bitstream into fpga sram using openfpgaloader with a digilent ftdi cable. this is the canonical path for the qmtech wukong v1 / xc7a200t board because the in-tree `dlc10` driver only supports xilinx dlc10 cables (vid=0x03fd), not the attached digilent cable (vid=0x0403:0x6014). stat read and decode the fpga stat register via openfpgaloader. read-xadc read the fpga xadc sensors (temperature, vccint, vccaux) via openfpgaloader and print a json object. the board must be powered and connected through a supported cable such as `digilent_hs2`. synth-gf16 synthesize the gf16 4x4 matrix design through the openxc7 toolchain. output is written to `/gf16_matmul4x4_top.bit`. program-flash program the on-board spi flash (non-volatile) using openfpgaloader's jtag-to-spi bridge. requires a matching `spioverjtag` bitstream for the exact fpga package; the xc7a200t-fgg676 bridge is present in recent openfpgaloader distributions but flash boot may still depend on board mode pins (see docs/reports/fpga_loop_evidence_2026-07-04.md). dump-flash dump spi flash contents to a file via openfpgaloader's jtag-to-spi bridge. bit-config parse the .bit header and print the configuration registers that affect master spi boot (cor0, cor1, wbstar, timer, ctl0, ctl1, idcode, bspi). round-trip-verify program the given .bit to spi flash, dump the same region back, and compare the dumped bytes against the bitstream payload. this verifies the openfpgaloader write path is bit-perfect for the raw bitstream. boot-log guided cold-por boot experiment. programs flash, asks the user to physically power-cycle the board, then captures stat without a jtag reset and prints a decision-tree diagnosis. cold-por deterministic cold-por boot experiment with optional relay control. with `--relay-port mock` the command writes a deterministic, clearly labeled mock boot log so ci can exercise the cold-por json path without touching hardware. real relay ports are reserved for variant a/b. smoke-gate board-less smoke gate for the fpga path. runs `tri fpga bit-config` on the gf16 demo bitstream and, if yosys is available, a synthesis smoke check on the demo verilog. requires no physical board. boot-protocol print or interactively confirm the cold-por boot protocol. this is the standalone version of the instructions embedded in `boot-log` and `cclk-sweep`; use it to verify the operator steps before a physical power-cycle. patch-cor0 patch the raw oscfsel field (cor0[22:17]) of a 7-series .bit file. cclk-variants generate a set of oscfsel variants from a single input .bit file. outputs one file per requested value to the given directory. cclk-sweep automated cold-por cclk sweep. generates oscfsel variants, programs each to flash, prompts for the physical power-cycle, captures stat, and writes json logs. the only manual step is disconnecting/reconnecting the cable and power-cycling the board. sweep-report read all `build/fpga/boot-log-*.json` files and produce a sweep report identifying the first working cclk variant. measure-cclk print dslogic / oscilloscope instructions for measuring the fpga cclk output during master spi configuration. optionally parse a dsview csv export or run a live capture via `sigrok-cli` with a connected logic analyzer (e.g., the digilent ftdi cable as `ftdi-la`). flash-status read the spi flash status register via openfpgaloader's jtag-to-spi bridge. decodes wip, wel, and qe bits to help diagnose boot-from-flash failures. proxy-load diagnostic: load *only* the proxy bridge bitstream (or any other bitstream) into fpga sram, report stat, leave tap in rti. does not touch spi flash. useful for verifying the bridge actually reaches done=high before debugging spi semantics. proxy-status diagnostic: read idcode + stat *without* touching the fpga. run this immediately after `tri fpga proxy-load` to confirm the bridge is alive. also confirms ir=user1 select is accepted. spi-raw diagnostic: shift raw hex bytes through the user1 bscan as a single spi transaction. reads `--rx n` miso bytes after the tx stream. requires the proxy bridge to be already loaded (`tri fpga proxy-load` first). ir-probe diagnostic: probe the ir capture pattern after selecting an ir. a healthy 7-series tap always captures `0b000001` into the ir shift register. anything else means the jtag chain is broken or the cable is mis-driving tms. flash-id-debug diagnostic: drive the full jedec-read flow end-to-end with maximum instrumentation, **including** the 0xab release-power-down and 0x66+0x99 software-reset recovery attempts. equivalent to `flash-id --verbose` plus auto-recovery. build-proxy build the qmtech xc7a100t-fgg676 jtag-to-spi proxy bitstream via the openxc7 open-source toolchain (yosys + nextpnr-himbaechel + prjxray). requires `yosys`, `nextpnr-himbaechel`, `fasm2frames.py` and `xc7frames2bit` on path. with `--install`, the produced `.bit` is copied to `fpga/tools/bscan_spi_xc7a100t.bit` so the embedded `bscan_spi_xc7a100t` constant picks it up on the next rebuild. setup-openxc7-chipdb clone the openxc7 `nextpnr-xilinx` repo and build a chipdb (`.bba`) for the requested 7-series part, then install it into `~/.local/share/nextpnr/himbaechel-xilinx/`. measured-to-lean generate a lean 4 theorem from a `tri fpga measure-cclk --json` output. the theorem proves that the measured `(frequency, duty)` pair satisfies `measured_cclk_satisfies_flash_spec` and links it to `transaction_satisfies_flash_spec`. useful for turning a real capture into a machine-checked proof without manual copy-paste. pvt-envelope print the pvt-derated n25q128_3v sck low/high bound for a supplied operating context. also prints the margin over the nominal 6 ns bound and warns if the context is outside the documented operating envelope. build-proxy-docker build the qmtech xc7a100t-fgg676 proxy bitstream via a docker container running xilinx vivado. clones our `openfpgaloader` fork (`feat/qmtech-xc7a100t-board`) into `target/openfpgaloader-fork/` and runs `make` inside `spioverjtag/`. on apple silicon (arm64), the container runs under x86_64 emulation via `--platform linux/amd64`. with `--install`, the produced `bscan_spi_xc7a100tfgg676.bit.gz` is decompressed and copied to `fpga/tools/bscan_spi_xc7a100t.bit` and its sha256 is printed.","sha256":"aaf7d2d4ae26d149b68e8c50d010bcda79b6ba3bf30c782194ca37bd60f8c7b6","skills":[],"source":"cli/tri/src/fpga.rs","specPath":"specs/tools/tri/fpga.t27","summary":{"en":"FPGA programming via the in-tree DLC10 driver (pure Rust).","ru":"Программирование FPGA через встроенный драйвер DLC10 (чистый Rust)."},"typecheckOk":true,"variant":"Commands::Fpga","whenToUse":"FPGA programming via the in-tree DLC10 driver (pure Rust).","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Gates (cli/tri/src/main.rs; module cli/tri/src/gates.rs)","actions":[{"about":"Classify the compiler's own warnings. `rustc` already answers \"is this value ever read\" and \"does anything call this\" for the whole crate; the answer only helps if somebody reads it.","name":"warnings"},{"about":"Run every gate script and its negative control; name the ones with none.","name":"sweep"},{"about":"Break each gate's failure path and demand its control notices.","name":"mutate"},{"about":"Open pull requests whose path-filtered CI never ran.","name":"prs"},{"about":"What the tree says is required, against what the ruleset requires.","name":"preview"},{"about":"Which interpreter each gate step is handed to, and who says so.","name":"shell"},{"about":"Gate steps whose PASS is reachable with the thing they check absent.","name":"quiet"},{"about":"Every bounded GitHub fetch in this crate, and whether it can tell a page from a total.","name":"fetches"},{"about":"Run every gate CI runs, in an EMPTY tree, and report what still passes.","name":"empty"},{"about":"","name":"required"},{"about":"List active workflows whose lifetime success count is zero.","name":"dead"},{"about":"Workflows with no recent run on the default branch: their green is about frequency, not health.","name":"tests"},{"about":"","name":"unmeasured"}],"agents":[],"args":[],"cast":null,"command":"tri gates","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Find workflows that have never once succeeded.","ABOUT_SOURCE":"clap /// doc on Commands::Gates (cli/tri/src/main.rs; module cli/tri/src/gates.rs)","ACTIONS":["warnings","sweep","mutate","prs","preview","shell","quiet","fetches","empty","required","dead","tests","unmeasured"],"ACTIONS_ABOUT":["Classify the compiler's own warnings. `rustc` already answers \"is this value ever read\" and \"does anything call this\" for the whole crate; the answer only helps if somebody reads it.","Run every gate script and its negative control; name the ones with none.","Break each gate's failure path and demand its control notices.","Open pull requests whose path-filtered CI never ran.","What the tree says is required, against what the ruleset requires.","Which interpreter each gate step is handed to, and who says so.","Gate steps whose PASS is reachable with the thing they check absent.","Every bounded GitHub fetch in this crate, and whether it can tell a page from a total.","Run every gate CI runs, in an EMPTY tree, and report what still passes.","","List active workflows whose lifetime success count is zero.","Workflows with no recent run on the default branch: their green is about frequency, not health.",""],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri gates","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/gates","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/gates","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/gates.rs","VARIANT":"Commands::Gates","WHEN_TO_USE":"Find workflows that have never once succeeded.","WITNESS":"source-parse"},"health":"ok","id":"tri/gates","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/gates.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_gates","name":{"en":"tri gates"},"qualifiedId":"gHashTag/t27:tri/gates","repo":"gHashTag/t27","schema":2,"searchText":"tri/gates tri gates find workflows that have never once succeeded. find workflows that have never once succeeded. warnings classify the compiler's own warnings. `rustc` already answers \"is this value ever read\" and \"does anything call this\" for the whole crate; the answer only helps if somebody reads it. sweep run every gate script and its negative control; name the ones with none. mutate break each gate's failure path and demand its control notices. prs open pull requests whose path-filtered ci never ran. preview what the tree says is required, against what the ruleset requires. shell which interpreter each gate step is handed to, and who says so. quiet gate steps whose pass is reachable with the thing they check absent. fetches every bounded github fetch in this crate, and whether it can tell a page from a total. empty run every gate ci runs, in an empty tree, and report what still passes. required dead list active workflows whose lifetime success count is zero. tests workflows with no recent run on the default branch: their green is about frequency, not health. unmeasured","sha256":"de8489f65be8b1db66b2c9bf3abe96643c580d39e4b856cd6a9a3511e404975d","skills":[],"source":"cli/tri/src/gates.rs","specPath":"specs/tools/tri/gates.t27","summary":{"en":"Find workflows that have never once succeeded.","ru":"Находит воркфлоу, которые ни разу не завершались успешно."},"typecheckOk":true,"variant":"Commands::Gates","whenToUse":"Find workflows that have never once succeeded.","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_gen description (cli/tri-mcp/src/main.rs); handler cmd_gen runs t27c gen-verilog, gen-c, gen-rust (cli/tri/src/main.rs:862)","actions":[],"agents":[{"letter":"C","ok":true},{"letter":"T","ok":true}],"args":[{"about":"","name":""}],"cast":null,"command":"tri gen","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Generates backends from a .t27 spec file using t27c.","ABOUT_SOURCE":"tri-mcp tool tri_gen description (cli/tri-mcp/src/main.rs); handler cmd_gen runs t27c gen-verilog, gen-c, gen-rust (cli/tri/src/main.rs:862)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":["C","T"],"AGENTS_NOTE":".claude/agents/agent-c-compiler.md:40 (tri gen -- Generate code from specs; trigger On tri gen command, line 7); .claude/agents/trinity.md:68 (5. Gen - Run tri gen).","ARGS":[""],"COMMAND":"tri gen","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/gen","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/gen","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Gen","WHEN_TO_USE":"Generates backends from a .t27 spec file using t27c.","WITNESS":"source-parse"},"health":"ok","id":"tri/gen","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_gen","name":{"en":"tri gen"},"qualifiedId":"gHashTag/t27:tri/gen","repo":"gHashTag/t27","schema":2,"searchText":"tri/gen tri gen generates backends from a .t27 spec file using t27c. generates backends from a .t27 spec file using t27c. c t","sha256":"8739f5a9100f6f989b3558fa5c49af008fb134e3c640c67a0ca946e2880e42bb","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/gen.t27","summary":{"en":"Generates backends from a .t27 spec file using t27c.","ru":"Генерирует бэкенды из файла спецификации .t27 через t27c."},"typecheckOk":true,"variant":"Commands::Gen","whenToUse":"Generates backends from a .t27 spec file using t27c.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Harness (cli/tri/src/main.rs)","actions":[{"about":"Test binaries whose tests share one scratch directory.","name":"scratch"}],"agents":[],"args":[],"cast":null,"command":"tri harness","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Source files no crate root reaches, and so nothing compiles. Test-harness hygiene.","ABOUT_SOURCE":"clap /// doc on Commands::Harness (cli/tri/src/main.rs)","ACTIONS":["scratch"],"ACTIONS_ABOUT":["Test binaries whose tests share one scratch directory."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri harness","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/harness","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/harness","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Harness","WHEN_TO_USE":"Source files no crate root reaches, and so nothing compiles. Test-harness hygiene.","WITNESS":"source-parse"},"health":"ok","id":"tri/harness","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_harness","name":{"en":"tri harness"},"qualifiedId":"gHashTag/t27:tri/harness","repo":"gHashTag/t27","schema":2,"searchText":"tri/harness tri harness source files no crate root reaches, and so nothing compiles. test-harness hygiene. source files no crate root reaches, and so nothing compiles. test-harness hygiene. scratch test binaries whose tests share one scratch directory.","sha256":"67c635dcb96730ead658e8233879cc6f2b3cb56d9c6e85259629d10b9a536b9c","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/harness.t27","summary":{"en":"Source files no crate root reaches, and so nothing compiles. Test-harness hygiene.","ru":"Исходные файлы, до которых не доходит ни один корень крейта, и потому ничего не компилируется. Гигиена тестового харнесса."},"typecheckOk":true,"variant":"Commands::Harness","whenToUse":"Source files no crate root reaches, and so nothing compiles. Test-harness hygiene.","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_health description (cli/tri-mcp/src/main.rs); handler cmd_health reads .trinity/state/queen-health.json (cli/tri/src/main.rs:969)","actions":[],"agents":[],"args":[{"about":"","name":""}],"cast":null,"command":"tri health","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Returns queen and swarm health status from .trinity state.","ABOUT_SOURCE":"tri-mcp tool tri_health description (cli/tri-mcp/src/main.rs); handler cmd_health reads .trinity/state/queen-health.json (cli/tri/src/main.rs:969)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[""],"COMMAND":"tri health","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/health","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/health","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Health","WHEN_TO_USE":"Returns queen and swarm health status from .trinity state.","WITNESS":"source-parse"},"health":"ok","id":"tri/health","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_health","name":{"en":"tri health"},"qualifiedId":"gHashTag/t27:tri/health","repo":"gHashTag/t27","schema":2,"searchText":"tri/health tri health returns queen and swarm health status from .trinity state. returns queen and swarm health status from .trinity state.","sha256":"678ece919f8363e769be5541575ec25163565cf04481f776448b81c3fbac94c9","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/health.t27","summary":{"en":"Returns queen and swarm health status from .trinity state.","ru":"Показывает состояние здоровья королевы и роя из состояния .trinity."},"typecheckOk":true,"variant":"Commands::Health","whenToUse":"Returns queen and swarm health status from .trinity state.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Hooks (cli/tri/src/main.rs; module cli/tri/src/hooks.rs)","actions":[{"about":"Run every migrated commit-time gate in sequence (l1-check + now-gate).","name":"pre-commit"},{"about":"A pull request whose title claims a compiler fix must carry a source file.","name":"fix-carries-source"},{"about":"Ask the required NOW gate's own script whether this push adds an entry.","name":"pre-push"},{"about":"L1 TRACEABILITY over the message BEING WRITTEN, from the commit-msg hook.","name":"commit-msg"},{"about":"L1 TRACEABILITY: last commit message must reference an issue (`Closes #N` / `Fixes #N` / `Resolves #N` / `Reference #N`).","name":"l1-check"},{"about":"Verify a fresh `docs/now/-.md` entry exists.","name":"now-gate"},{"about":"Session-start guard for the Claude Code harness. Emits a one-line status string to stdout; never blocks (the Bash gate is a soft telemetry hook).","name":"session-gate"},{"about":"Which hooks git will actually run, and whose installer output is dead.","name":"status"}],"agents":[],"args":[],"cast":null,"command":"tri hooks","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Pure-Rust ports of repository commit / push gates.","ABOUT_SOURCE":"clap /// doc on Commands::Hooks (cli/tri/src/main.rs; module cli/tri/src/hooks.rs)","ACTIONS":["pre-commit","fix-carries-source","pre-push","commit-msg","l1-check","now-gate","session-gate","status"],"ACTIONS_ABOUT":["Run every migrated commit-time gate in sequence (l1-check + now-gate).","A pull request whose title claims a compiler fix must carry a source file.","Ask the required NOW gate's own script whether this push adds an entry.","L1 TRACEABILITY over the message BEING WRITTEN, from the commit-msg hook.","L1 TRACEABILITY: last commit message must reference an issue (`Closes #N` / `Fixes #N` / `Resolves #N` / `Reference #N`).","Verify a fresh `docs/now/-.md` entry exists.","Session-start guard for the Claude Code harness. Emits a one-line status string to stdout; never blocks (the Bash gate is a soft telemetry hook).","Which hooks git will actually run, and whose installer output is dead."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri hooks","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/hooks","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/hooks","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/hooks.rs","VARIANT":"Commands::Hooks","WHEN_TO_USE":"Pure-Rust ports of repository commit / push gates.","WITNESS":"source-parse"},"health":"ok","id":"tri/hooks","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/hooks.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_hooks","name":{"en":"tri hooks"},"qualifiedId":"gHashTag/t27:tri/hooks","repo":"gHashTag/t27","schema":2,"searchText":"tri/hooks tri hooks pure-rust ports of repository commit / push gates. pure-rust ports of repository commit / push gates. pre-commit run every migrated commit-time gate in sequence (l1-check + now-gate). fix-carries-source a pull request whose title claims a compiler fix must carry a source file. pre-push ask the required now gate's own script whether this push adds an entry. commit-msg l1 traceability over the message being written, from the commit-msg hook. l1-check l1 traceability: last commit message must reference an issue (`closes #n` / `fixes #n` / `resolves #n` / `reference #n`). now-gate verify a fresh `docs/now/-.md` entry exists. session-gate session-start guard for the claude code harness. emits a one-line status string to stdout; never blocks (the bash gate is a soft telemetry hook). status which hooks git will actually run, and whose installer output is dead.","sha256":"533eeb860d6bc3f69d612c3d2630965bf50b8533f50c4f4900b25ab42e838db2","skills":[],"source":"cli/tri/src/hooks.rs","specPath":"specs/tools/tri/hooks.t27","summary":{"en":"Pure-Rust ports of repository commit / push gates.","ru":"Порты гейтов коммита/пуша репозитория на чистом Rust."},"typecheckOk":true,"variant":"Commands::Hooks","whenToUse":"Pure-Rust ports of repository commit / push gates.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Issues (cli/tri/src/main.rs; module cli/tri/src/issues.rs)","actions":[{"about":"Open issues whose title calls a workflow red, and what it does today.","name":"stale"},{"about":"Open issues that state a COUNT in the title, and a reproducible sample.","name":"numbers"},{"about":"Open issues whose figure is ANCHORED, so re-measuring it proves nothing.","name":"dated"}],"agents":[],"args":[],"cast":null,"command":"tri issues","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Open issues whose headline calls a workflow red, against what that workflow concludes on master today.","ABOUT_SOURCE":"clap /// doc on Commands::Issues (cli/tri/src/main.rs; module cli/tri/src/issues.rs)","ACTIONS":["stale","numbers","dated"],"ACTIONS_ABOUT":["Open issues whose title calls a workflow red, and what it does today.","Open issues that state a COUNT in the title, and a reproducible sample.","Open issues whose figure is ANCHORED, so re-measuring it proves nothing."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri issues","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/issues","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/issues","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/issues.rs","VARIANT":"Commands::Issues","WHEN_TO_USE":"Open issues whose headline calls a workflow red, against what that workflow concludes on master today.","WITNESS":"source-parse"},"health":"ok","id":"tri/issues","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/issues.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_issues","name":{"en":"tri issues"},"qualifiedId":"gHashTag/t27:tri/issues","repo":"gHashTag/t27","schema":2,"searchText":"tri/issues tri issues open issues whose headline calls a workflow red, against what that workflow concludes on master today. open issues whose headline calls a workflow red, against what that workflow concludes on master today. stale open issues whose title calls a workflow red, and what it does today. numbers open issues that state a count in the title, and a reproducible sample. dated open issues whose figure is anchored, so re-measuring it proves nothing.","sha256":"e7b50b366482d2b8d45d2ac34d8c26df07c1834693fb3cce83c043be0509d75c","skills":[],"source":"cli/tri/src/issues.rs","specPath":"specs/tools/tri/issues.t27","summary":{"en":"Open issues whose headline calls a workflow red, against what that workflow concludes on master today.","ru":"Открытые issue, чей заголовок называет воркфлоу красным, против того, к чему этот воркфлоу приходит на master сегодня."},"typecheckOk":true,"variant":"Commands::Issues","whenToUse":"Open issues whose headline calls a workflow red, against what that workflow concludes on master today.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Jumps (cli/tri/src/main.rs; module cli/tri/src/jumps.rs)","actions":[{"about":"Name every `break`/`continue` site in the generated Verilog and say what it lowered to.","name":"census"}],"agents":[],"args":[],"cast":null,"command":"tri jumps","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What happened to every `break` and `continue` the Verilog emitter had to lower?","ABOUT_SOURCE":"clap /// doc on Commands::Jumps (cli/tri/src/main.rs; module cli/tri/src/jumps.rs)","ACTIONS":["census"],"ACTIONS_ABOUT":["Name every `break`/`continue` site in the generated Verilog and say what it lowered to."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri jumps","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/jumps","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/jumps","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/jumps.rs","VARIANT":"Commands::Jumps","WHEN_TO_USE":"What happened to every `break` and `continue` the Verilog emitter had to lower? `break` was `disable fork;` and `continue` was `/* continue */;`. Both parse, both synthesise, both are no-ops -- so every instrument that asks whether the output PARSES said yes for as long as the emitter has existed. See #2988.","WITNESS":"source-parse"},"health":"ok","id":"tri/jumps","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/jumps.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_jumps","name":{"en":"tri jumps"},"qualifiedId":"gHashTag/t27:tri/jumps","repo":"gHashTag/t27","schema":2,"searchText":"tri/jumps tri jumps what happened to every `break` and `continue` the verilog emitter had to lower? what happened to every `break` and `continue` the verilog emitter had to lower? `break` was `disable fork;` and `continue` was `/* continue */;`. both parse, both synthesise, both are no-ops -- so every instrument that asks whether the output parses said yes for as long as the emitter has existed. see #2988. census name every `break`/`continue` site in the generated verilog and say what it lowered to.","sha256":"905308ea72644feb0e72d64a5d6c6edaed7e0d8e7182e7d52d8157f9951e756a","skills":[],"source":"cli/tri/src/jumps.rs","specPath":"specs/tools/tri/jumps.t27","summary":{"en":"What happened to every `break` and `continue` the Verilog emitter had to lower?","ru":"Что случилось с каждым `break` и `continue`, которые эмиттеру Verilog пришлось опустить?"},"typecheckOk":true,"variant":"Commands::Jumps","whenToUse":"What happened to every `break` and `continue` the Verilog emitter had to lower? `break` was `disable fork;` and `continue` was `/* continue */;`. Both parse, both synthesise, both are no-ops -- so every instrument that asks whether the output PARSES said yes for as long as the emitter has existed. See #2988.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Kinds (cli/tri/src/main.rs; module cli/tri/src/kinddrift.rs)","actions":[{"about":"Match arms whose comment names a construct the pattern does not cover.","name":"drift"}],"agents":[],"args":[],"cast":null,"command":"tri kinds","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Match arms whose own comment names a case the pattern omits.","ABOUT_SOURCE":"clap /// doc on Commands::Kinds (cli/tri/src/main.rs; module cli/tri/src/kinddrift.rs)","ACTIONS":["drift"],"ACTIONS_ABOUT":["Match arms whose comment names a construct the pattern does not cover."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri kinds","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/kinds","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/kinds","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/kinddrift.rs","VARIANT":"Commands::Kinds","WHEN_TO_USE":"Match arms whose own comment names a case the pattern omits.","WITNESS":"source-parse"},"health":"ok","id":"tri/kinds","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/kinddrift.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_kinds","name":{"en":"tri kinds"},"qualifiedId":"gHashTag/t27:tri/kinds","repo":"gHashTag/t27","schema":2,"searchText":"tri/kinds tri kinds match arms whose own comment names a case the pattern omits. match arms whose own comment names a case the pattern omits. drift match arms whose comment names a construct the pattern does not cover.","sha256":"76affd22763395ddb1ff3639130a93df72fdd0c7491275d4ef3f1cd0bc5c9377","skills":[],"source":"cli/tri/src/kinddrift.rs","specPath":"specs/tools/tri/kinds.t27","summary":{"en":"Match arms whose own comment names a case the pattern omits.","ru":"Ветви match, чей собственный комментарий называет случай, который паттерн пропускает."},"typecheckOk":true,"variant":"Commands::Kinds","whenToUse":"Match arms whose own comment names a case the pattern omits.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Lean (cli/tri/src/main.rs; module cli/tri/src/leanvac.rs)","actions":[{"about":"Completeness theorems whose model has no functions.","name":"vacuous"},{"about":"Proof files the build root does not reach, and so nothing compiles.","name":"reach"}],"agents":[],"args":[],"cast":null,"command":"tri lean","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Completeness theorems whose Lean model is empty.","ABOUT_SOURCE":"clap /// doc on Commands::Lean (cli/tri/src/main.rs; module cli/tri/src/leanvac.rs)","ACTIONS":["vacuous","reach"],"ACTIONS_ABOUT":["Completeness theorems whose model has no functions.","Proof files the build root does not reach, and so nothing compiles."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri lean","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/lean","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/lean","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/leanvac.rs","VARIANT":"Commands::Lean","WHEN_TO_USE":"Completeness theorems whose Lean model is empty.","WITNESS":"source-parse"},"health":"ok","id":"tri/lean","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/leanvac.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_lean","name":{"en":"tri lean"},"qualifiedId":"gHashTag/t27:tri/lean","repo":"gHashTag/t27","schema":2,"searchText":"tri/lean tri lean completeness theorems whose lean model is empty. completeness theorems whose lean model is empty. vacuous completeness theorems whose model has no functions. reach proof files the build root does not reach, and so nothing compiles.","sha256":"9e8b0319877e064acbadfcf4e2611da323f38382cee7f318b4f552e01d560898","skills":[],"source":"cli/tri/src/leanvac.rs","specPath":"specs/tools/tri/lean.t27","summary":{"en":"Completeness theorems whose Lean model is empty.","ru":"Теоремы полноты, у которых модель Lean пуста."},"typecheckOk":true,"variant":"Commands::Lean","whenToUse":"Completeness theorems whose Lean model is empty.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Ledgers (cli/tri/src/main.rs; module cli/tri/src/ledgers.rs)","actions":[{"about":"Plant a stale entry in each ledger and demand its gate fail.","name":"audit"}],"agents":[],"args":[],"cast":null,"command":"tri ledgers","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Does each ledger's gate notice when one of its entries stops being true?","ABOUT_SOURCE":"clap /// doc on Commands::Ledgers (cli/tri/src/main.rs; module cli/tri/src/ledgers.rs)","ACTIONS":["audit"],"ACTIONS_ABOUT":["Plant a stale entry in each ledger and demand its gate fail."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri ledgers","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/ledgers","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/ledgers","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/ledgers.rs","VARIANT":"Commands::Ledgers","WHEN_TO_USE":"Does each ledger's gate notice when one of its entries stops being true?","WITNESS":"source-parse"},"health":"ok","id":"tri/ledgers","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/ledgers.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_ledgers","name":{"en":"tri ledgers"},"qualifiedId":"gHashTag/t27:tri/ledgers","repo":"gHashTag/t27","schema":2,"searchText":"tri/ledgers tri ledgers does each ledger's gate notice when one of its entries stops being true? does each ledger's gate notice when one of its entries stops being true? audit plant a stale entry in each ledger and demand its gate fail.","sha256":"98f0c29164ca0fcd92e851d96e061e6f442a80fccab59e71f5d617f364afd7dc","skills":[],"source":"cli/tri/src/ledgers.rs","specPath":"specs/tools/tri/ledgers.t27","summary":{"en":"Does each ledger's gate notice when one of its entries stops being true?","ru":"Замечает ли гейт каждого леджера, когда одна из его записей перестаёт быть истинной?"},"typecheckOk":true,"variant":"Commands::Ledgers","whenToUse":"Does each ledger's gate notice when one of its entries stops being true?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Loop (cli/tri/src/main.rs; module cli/tri/src/loopclaim.rs)","actions":[{"about":"Take the named claim, or say who already holds it.","name":"claim"}],"agents":[],"args":[],"cast":null,"command":"tri loop","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What is failing on the default branch right now, and since when. Take a named claim so two sessions of the loop cannot pick the same task.","ABOUT_SOURCE":"clap /// doc on Commands::Loop (cli/tri/src/main.rs; module cli/tri/src/loopclaim.rs)","ACTIONS":["claim"],"ACTIONS_ABOUT":["Take the named claim, or say who already holds it."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri loop","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/loop","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/loop","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/loopclaim.rs","VARIANT":"Commands::Loop","WHEN_TO_USE":"What is failing on the default branch right now, and since when. Take a named claim so two sessions of the loop cannot pick the same task.","WITNESS":"source-parse"},"health":"ok","id":"tri/loop","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/loopclaim.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_loop","name":{"en":"tri loop"},"qualifiedId":"gHashTag/t27:tri/loop","repo":"gHashTag/t27","schema":2,"searchText":"tri/loop tri loop what is failing on the default branch right now, and since when. take a named claim so two sessions of the loop cannot pick the same task. what is failing on the default branch right now, and since when. take a named claim so two sessions of the loop cannot pick the same task. claim take the named claim, or say who already holds it.","sha256":"a204edbc1869df4b6d5953432ed6597eb23b9ba0b67d766a13c999d97499f45c","skills":[],"source":"cli/tri/src/loopclaim.rs","specPath":"specs/tools/tri/loop.t27","summary":{"en":"What is failing on the default branch right now, and since when. Take a named claim so two sessions of the loop cannot pick the same task.","ru":"Что падает на ветке по умолчанию прямо сейчас и с какого момента. Берёт именованную заявку, чтобы две сессии лупа не взяли одну задачу."},"typecheckOk":true,"variant":"Commands::Loop","whenToUse":"What is failing on the default branch right now, and since when. Take a named claim so two sessions of the loop cannot pick the same task.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Merging (cli/tri/src/main.rs; module cli/tri/src/inflight.rs)","actions":[],"agents":[],"args":[{"about":"The base this branch is supposed to carry. A ref, not a URL.","name":"--base"},{"about":"Also check the commits behind HEAD, not only HEAD itself.","name":"--depth"}],"cast":null,"command":"tri merging","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Is a merge in flight here, and does this branch carry the base?","ABOUT_SOURCE":"clap /// doc on Commands::Merging (cli/tri/src/main.rs; module cli/tri/src/inflight.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--base: The base this branch is supposed to carry. A ref, not a URL.","--depth: Also check the commits behind HEAD, not only HEAD itself."],"COMMAND":"tri merging","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/merging","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/merging","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/inflight.rs","VARIANT":"Commands::Merging","WHEN_TO_USE":"Is a merge in flight here, and does this branch carry the base?","WITNESS":"source-parse"},"health":"ok","id":"tri/merging","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/inflight.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_merging","name":{"en":"tri merging"},"qualifiedId":"gHashTag/t27:tri/merging","repo":"gHashTag/t27","schema":2,"searchText":"tri/merging tri merging is a merge in flight here, and does this branch carry the base? is a merge in flight here, and does this branch carry the base?","sha256":"bb4167b8b988820e63e2e42cc9b3f1eeaea9a9caf00e15d8c3f3e0b5cd9d0cb5","skills":[],"source":"cli/tri/src/inflight.rs","specPath":"specs/tools/tri/merging.t27","summary":{"en":"Is a merge in flight here, and does this branch carry the base?","ru":"Идёт ли здесь мерж, и несёт ли эта ветка базу?"},"typecheckOk":true,"variant":"Commands::Merging","whenToUse":"Is a merge in flight here, and does this branch carry the base?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Misread (cli/tri/src/main.rs; module cli/tri/src/misread.rs)","actions":[],"agents":[],"args":[{"about":"Root of the spec tree.","name":"--specs-dir"},{"about":"Name every spec under each shape rather than only counting.","name":"--list"}],"cast":null,"command":"tri misread","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"The specs the compiler reads WRONGLY. Every gate is green on them.","ABOUT_SOURCE":"clap /// doc on Commands::Misread (cli/tri/src/main.rs; module cli/tri/src/misread.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--specs-dir: Root of the spec tree.","--list: Name every spec under each shape rather than only counting."],"COMMAND":"tri misread","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/misread","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/misread","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/misread.rs","VARIANT":"Commands::Misread","WHEN_TO_USE":"The specs the compiler reads WRONGLY. Every gate is green on them.","WITNESS":"source-parse"},"health":"ok","id":"tri/misread","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/misread.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_misread","name":{"en":"tri misread"},"qualifiedId":"gHashTag/t27:tri/misread","repo":"gHashTag/t27","schema":2,"searchText":"tri/misread tri misread the specs the compiler reads wrongly. every gate is green on them. the specs the compiler reads wrongly. every gate is green on them.","sha256":"4c27da6a18f488afac5ac4be903b614994749278742678c74490e1a74ff991a7","skills":[],"source":"cli/tri/src/misread.rs","specPath":"specs/tools/tri/misread.t27","summary":{"en":"The specs the compiler reads WRONGLY. Every gate is green on them.","ru":"Спеки, которые компилятор читает НЕВЕРНО. Все гейты на них зелёные."},"typecheckOk":true,"variant":"Commands::Misread","whenToUse":"The specs the compiler reads WRONGLY. Every gate is green on them.","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/modreach.rs:1 (Commands::Mods dispatches to modreach, cli/tri/src/main.rs:1085)","actions":[{"about":"List them.","name":"orphan"}],"agents":[],"args":[],"cast":null,"command":"tri mods","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"`tri mods orphan` -- `.rs` files no crate root reaches.","ABOUT_SOURCE":"//! module doc, cli/tri/src/modreach.rs:1 (Commands::Mods dispatches to modreach, cli/tri/src/main.rs:1085)","ACTIONS":["orphan"],"ACTIONS_ABOUT":["List them."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri mods","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/mods","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/mods","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Mods","WHEN_TO_USE":"`tri mods orphan` -- `.rs` files no crate root reaches.","WITNESS":"source-parse"},"health":"ok","id":"tri/mods","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_mods","name":{"en":"tri mods"},"qualifiedId":"gHashTag/t27:tri/mods","repo":"gHashTag/t27","schema":2,"searchText":"tri/mods tri mods `tri mods orphan` -- `.rs` files no crate root reaches. `tri mods orphan` -- `.rs` files no crate root reaches. orphan list them.","sha256":"45754d036ee4eced4776bb6c2d85addf2cf176e7c70098f78b3fdb4db7df17c1","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/mods.t27","summary":{"en":"`tri mods orphan` -- `.rs` files no crate root reaches.","ru":"`tri mods orphan` -- файлы `.rs`, до которых не доходит ни один корень крейта."},"typecheckOk":true,"variant":"Commands::Mods","whenToUse":"`tri mods orphan` -- `.rs` files no crate root reaches.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Mutate (cli/tri/src/main.rs; module cli/tri/src/mutate.rs)","actions":[{"about":"Perturb each numeric literal in a file and report which ones the checker does not notice.","name":"run"}],"agents":[],"args":[],"cast":null,"command":"tri mutate","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Find the constants in a checker that nothing actually checks.","ABOUT_SOURCE":"clap /// doc on Commands::Mutate (cli/tri/src/main.rs; module cli/tri/src/mutate.rs)","ACTIONS":["run"],"ACTIONS_ABOUT":["Perturb each numeric literal in a file and report which ones the checker does not notice."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri mutate","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/mutate","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/mutate","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/mutate.rs","VARIANT":"Commands::Mutate","WHEN_TO_USE":"Find the constants in a checker that nothing actually checks.","WITNESS":"source-parse"},"health":"ok","id":"tri/mutate","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/mutate.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_mutate","name":{"en":"tri mutate"},"qualifiedId":"gHashTag/t27:tri/mutate","repo":"gHashTag/t27","schema":2,"searchText":"tri/mutate tri mutate find the constants in a checker that nothing actually checks. find the constants in a checker that nothing actually checks. run perturb each numeric literal in a file and report which ones the checker does not notice.","sha256":"163456bf9900804666e0f1f53bb7ca1bc76faa89f27e30bf34ca869f8388ea98","skills":[],"source":"cli/tri/src/mutate.rs","specPath":"specs/tools/tri/mutate.t27","summary":{"en":"Find the constants in a checker that nothing actually checks.","ru":"Находит в чекере константы, которые на деле ничем не проверяются."},"typecheckOk":true,"variant":"Commands::Mutate","whenToUse":"Find the constants in a checker that nothing actually checks.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Now (cli/tri/src/main.rs; module cli/tri/src/nownote.rs)","actions":[{"about":"Write a docs/now/ entry: title, bullets, optional issue ref.","name":"add"},{"about":"Ask the REQUIRED `check` gate its own question, before pushing.","name":"check"}],"agents":[],"args":[],"cast":null,"command":"tri now","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Write a docs/now/ entry without hand-writing the frame.","ABOUT_SOURCE":"clap /// doc on Commands::Now (cli/tri/src/main.rs; module cli/tri/src/nownote.rs)","ACTIONS":["add","check"],"ACTIONS_ABOUT":["Write a docs/now/ entry: title, bullets, optional issue ref.","Ask the REQUIRED `check` gate its own question, before pushing."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri now","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/now","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/now","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/nownote.rs","VARIANT":"Commands::Now","WHEN_TO_USE":"Write a docs/now/ entry without hand-writing the frame.","WITNESS":"source-parse"},"health":"ok","id":"tri/now","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/nownote.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_now","name":{"en":"tri now"},"qualifiedId":"gHashTag/t27:tri/now","repo":"gHashTag/t27","schema":2,"searchText":"tri/now tri now write a docs/now/ entry without hand-writing the frame. write a docs/now/ entry without hand-writing the frame. add write a docs/now/ entry: title, bullets, optional issue ref. check ask the required `check` gate its own question, before pushing.","sha256":"e151864300830e0cdde07121285099fdc47c1de925ec4a5e78bba71a29e6a94a","skills":[],"source":"cli/tri/src/nownote.rs","specPath":"specs/tools/tri/now.t27","summary":{"en":"Write a docs/now/ entry without hand-writing the frame.","ru":"Пишет запись docs/now/ без ручного набора рамки."},"typecheckOk":true,"variant":"Commands::Now","whenToUse":"Write a docs/now/ entry without hand-writing the frame.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::OneAway (cli/tri/src/main.rs; module cli/tri/src/oneaway.rs)","actions":[],"agents":[],"args":[{"about":"Also list every spec, not only the class tally.","name":"--names"},{"about":"Report specs with exactly this many errors. The default, 1, is the only bucket a single repair can move; `--errors 2` is the next wave.","name":"--errors"},{"about":"Stop after this many specs. Prints what was dropped -- a silent cap reads as coverage.","name":"--limit"},{"about":"Run the controls and report, changing nothing.","name":"--self-check"}],"cast":null,"command":"tri one-away","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Failing specs one defect from compiling, and what that defect is","ABOUT_SOURCE":"clap /// doc on Commands::OneAway (cli/tri/src/main.rs; module cli/tri/src/oneaway.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--names: Also list every spec, not only the class tally.","--errors: Report specs with exactly this many errors. The default, 1, is the only bucket a single repair can move; `--errors 2` is the next wave.","--limit: Stop after this many specs. Prints what was dropped -- a silent cap reads as coverage.","--self-check: Run the controls and report, changing nothing."],"COMMAND":"tri one-away","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/one-away","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/one-away","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/oneaway.rs","VARIANT":"Commands::OneAway","WHEN_TO_USE":"Failing specs one defect from compiling, and what that defect is","WITNESS":"source-parse"},"health":"ok","id":"tri/one-away","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/oneaway.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_one_away","name":{"en":"tri one-away"},"qualifiedId":"gHashTag/t27:tri/one-away","repo":"gHashTag/t27","schema":2,"searchText":"tri/one-away tri one-away failing specs one defect from compiling, and what that defect is failing specs one defect from compiling, and what that defect is","sha256":"f823bbea9d121e61a27e9c8d899004d2f3712876eab334ed3982a62908fd8ab2","skills":[],"source":"cli/tri/src/oneaway.rs","specPath":"specs/tools/tri/one-away.t27","summary":{"en":"Failing specs one defect from compiling, and what that defect is","ru":"Падающие спеки, которым до компиляции один дефект, и какой именно."},"typecheckOk":true,"variant":"Commands::OneAway","whenToUse":"Failing specs one defect from compiling, and what that defect is","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Orphaned (cli/tri/src/main.rs; module cli/tri/src/orphaned.rs)","actions":[{"about":"List gate and tool sources that name an input which is not in the tree.","name":"list"}],"agents":[],"args":[],"cast":null,"command":"tri orphaned","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Checks whose input is not in the tree.","ABOUT_SOURCE":"clap /// doc on Commands::Orphaned (cli/tri/src/main.rs; module cli/tri/src/orphaned.rs)","ACTIONS":["list"],"ACTIONS_ABOUT":["List gate and tool sources that name an input which is not in the tree."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri orphaned","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/orphaned","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/orphaned","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/orphaned.rs","VARIANT":"Commands::Orphaned","WHEN_TO_USE":"Checks whose input is not in the tree.","WITNESS":"source-parse"},"health":"ok","id":"tri/orphaned","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/orphaned.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_orphaned","name":{"en":"tri orphaned"},"qualifiedId":"gHashTag/t27:tri/orphaned","repo":"gHashTag/t27","schema":2,"searchText":"tri/orphaned tri orphaned checks whose input is not in the tree. checks whose input is not in the tree. list list gate and tool sources that name an input which is not in the tree.","sha256":"f9808d318e75aa5ea4ea3e5b3bf33f0a667aab6a00c7c5aa91f2cc77e3e846bd","skills":[],"source":"cli/tri/src/orphaned.rs","specPath":"specs/tools/tri/orphaned.t27","summary":{"en":"Checks whose input is not in the tree.","ru":"Проверки, чей вход отсутствует в дереве."},"typecheckOk":true,"variant":"Commands::Orphaned","whenToUse":"Checks whose input is not in the tree.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Pr (cli/tri/src/main.rs; module cli/tri/src/prcheck.rs)","actions":[{"about":"Classify every failing check and say plainly whether it is safe to merge. Did this pull request's content actually reach the default branch?","name":"landed"},{"about":"","name":"ready"}],"agents":[],"args":[],"cast":null,"command":"tri pr","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Is this pull request actually safe to merge?","ABOUT_SOURCE":"clap /// doc on Commands::Pr (cli/tri/src/main.rs; module cli/tri/src/prcheck.rs)","ACTIONS":["landed","ready"],"ACTIONS_ABOUT":["Classify every failing check and say plainly whether it is safe to merge. Did this pull request's content actually reach the default branch?",""],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri pr","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/pr","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/pr","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/prcheck.rs","VARIANT":"Commands::Pr","WHEN_TO_USE":"Is this pull request actually safe to merge?","WITNESS":"source-parse"},"health":"ok","id":"tri/pr","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/prcheck.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_pr","name":{"en":"tri pr"},"qualifiedId":"gHashTag/t27:tri/pr","repo":"gHashTag/t27","schema":2,"searchText":"tri/pr tri pr is this pull request actually safe to merge? is this pull request actually safe to merge? landed classify every failing check and say plainly whether it is safe to merge. did this pull request's content actually reach the default branch? ready","sha256":"4909a13b33ff6128bf308132850effbdfcfc1b44bb8ccedf1c7bacc288dea720","skills":[],"source":"cli/tri/src/prcheck.rs","specPath":"specs/tools/tri/pr.t27","summary":{"en":"Is this pull request actually safe to merge?","ru":"Действительно ли этот pull request безопасно мержить?"},"typecheckOk":true,"variant":"Commands::Pr","whenToUse":"Is this pull request actually safe to merge?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Prose (cli/tri/src/main.rs; module cli/tri/src/prose.rs)","actions":[{"about":"Which specs are blocked only by prose, and how many lines that is.","name":"report"}],"agents":[],"args":[],"cast":null,"command":"tri prose","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Specs a literate author left prose in, and how far that prose is from code.","ABOUT_SOURCE":"clap /// doc on Commands::Prose (cli/tri/src/main.rs; module cli/tri/src/prose.rs)","ACTIONS":["report"],"ACTIONS_ABOUT":["Which specs are blocked only by prose, and how many lines that is."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri prose","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/prose","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/prose","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/prose.rs","VARIANT":"Commands::Prose","WHEN_TO_USE":"Specs a literate author left prose in, and how far that prose is from code.","WITNESS":"source-parse"},"health":"ok","id":"tri/prose","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/prose.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_prose","name":{"en":"tri prose"},"qualifiedId":"gHashTag/t27:tri/prose","repo":"gHashTag/t27","schema":2,"searchText":"tri/prose tri prose specs a literate author left prose in, and how far that prose is from code. specs a literate author left prose in, and how far that prose is from code. report which specs are blocked only by prose, and how many lines that is.","sha256":"8689a47ee97a2588da26a7492f8c6f543dd25702b9962cbdd25ce16070129d38","skills":[],"source":"cli/tri/src/prose.rs","specPath":"specs/tools/tri/prose.t27","summary":{"en":"Specs a literate author left prose in, and how far that prose is from code.","ru":"Спеки, в которых литературный автор оставил прозу, и насколько эта проза далека от кода."},"typecheckOk":true,"variant":"Commands::Prose","whenToUse":"Specs a literate author left prose in, and how far that prose is from code.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Quantifiers (cli/tri/src/main.rs; module cli/tri/src/quant.rs)","actions":[{"about":"Every quantified clause, its binders, and the size of its domain.","name":"report"},{"about":"Every line carrying a quantifier keyword, and whether the census read it.","name":"audit"}],"agents":[],"args":[],"cast":null,"command":"tri quantifiers","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Every quantified clause, its binders, and the size of its domain.","ABOUT_SOURCE":"clap /// doc on Commands::Quantifiers (cli/tri/src/main.rs; module cli/tri/src/quant.rs)","ACTIONS":["report","audit"],"ACTIONS_ABOUT":["Every quantified clause, its binders, and the size of its domain.","Every line carrying a quantifier keyword, and whether the census read it."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri quantifiers","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/quantifiers","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/quantifiers","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/quant.rs","VARIANT":"Commands::Quantifiers","WHEN_TO_USE":"Every quantified clause, its binders, and the size of its domain.","WITNESS":"source-parse"},"health":"ok","id":"tri/quantifiers","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/quant.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_quantifiers","name":{"en":"tri quantifiers"},"qualifiedId":"gHashTag/t27:tri/quantifiers","repo":"gHashTag/t27","schema":2,"searchText":"tri/quantifiers tri quantifiers every quantified clause, its binders, and the size of its domain. every quantified clause, its binders, and the size of its domain. report every quantified clause, its binders, and the size of its domain. audit every line carrying a quantifier keyword, and whether the census read it.","sha256":"f6500ab3e4a78e54e2e83ed1aa6eb389ec0da64ebb735841849c788efc0e1a44","skills":[],"source":"cli/tri/src/quant.rs","specPath":"specs/tools/tri/quantifiers.t27","summary":{"en":"Every quantified clause, its binders, and the size of its domain.","ru":"Каждая квантифицированная клауза, её связанные переменные и размер её домена."},"typecheckOk":true,"variant":"Commands::Quantifiers","whenToUse":"Every quantified clause, its binders, and the size of its domain.","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/red.rs:1","actions":[{"about":"Show workflows whose most recent run on the default branch failed.","name":"now"},{"about":"Which STEP each recent failure of one workflow died at, oldest first.","name":"why"}],"agents":[],"args":[],"cast":null,"command":"tri red","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"`tri red` -- what is failing on main right now, and since when.","ABOUT_SOURCE":"//! module doc, cli/tri/src/red.rs:1","ACTIONS":["now","why"],"ACTIONS_ABOUT":["Show workflows whose most recent run on the default branch failed.","Which STEP each recent failure of one workflow died at, oldest first."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri red","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/red","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/red","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/red.rs","VARIANT":"Commands::Red","WHEN_TO_USE":"`tri red` -- what is failing on main right now, and since when.","WITNESS":"source-parse"},"health":"ok","id":"tri/red","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/red.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_red","name":{"en":"tri red"},"qualifiedId":"gHashTag/t27:tri/red","repo":"gHashTag/t27","schema":2,"searchText":"tri/red tri red `tri red` -- what is failing on main right now, and since when. `tri red` -- what is failing on main right now, and since when. now show workflows whose most recent run on the default branch failed. why which step each recent failure of one workflow died at, oldest first.","sha256":"dbc09d850d87e9623513a9eedf77764f4b84cb299f4175c068eee278a0748a71","skills":[],"source":"cli/tri/src/red.rs","specPath":"specs/tools/tri/red.t27","summary":{"en":"`tri red` -- what is failing on main right now, and since when.","ru":"`tri red` -- что падает на main прямо сейчас и с какого момента."},"typecheckOk":true,"variant":"Commands::Red","whenToUse":"`tri red` -- what is failing on main right now, and since when.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Reseal (cli/tri/src/main.rs; module cli/tri/src/reseal.rs)","actions":[{"about":"Rewrite FROZEN_HASH from the current bytes of the sealed file.","name":"write"},{"about":"Report whether the seal matches, and exit non-zero if it does not.","name":"check"}],"agents":[],"args":[],"cast":null,"command":"tri reseal","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Recompute the FROZEN_HASH seal from the file it seals.","ABOUT_SOURCE":"clap /// doc on Commands::Reseal (cli/tri/src/main.rs; module cli/tri/src/reseal.rs)","ACTIONS":["write","check"],"ACTIONS_ABOUT":["Rewrite FROZEN_HASH from the current bytes of the sealed file.","Report whether the seal matches, and exit non-zero if it does not."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri reseal","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/reseal","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/reseal","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/reseal.rs","VARIANT":"Commands::Reseal","WHEN_TO_USE":"Recompute the FROZEN_HASH seal from the file it seals.","WITNESS":"source-parse"},"health":"ok","id":"tri/reseal","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/reseal.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_reseal","name":{"en":"tri reseal"},"qualifiedId":"gHashTag/t27:tri/reseal","repo":"gHashTag/t27","schema":2,"searchText":"tri/reseal tri reseal recompute the frozen_hash seal from the file it seals. recompute the frozen_hash seal from the file it seals. write rewrite frozen_hash from the current bytes of the sealed file. check report whether the seal matches, and exit non-zero if it does not.","sha256":"f4b1478122c02d2e4c50a5bb589e03e97212875c368fad659824f5f532e824d8","skills":[],"source":"cli/tri/src/reseal.rs","specPath":"specs/tools/tri/reseal.t27","summary":{"en":"Recompute the FROZEN_HASH seal from the file it seals.","ru":"Пересчитывает печать FROZEN_HASH по файлу, который она запечатывает."},"typecheckOk":true,"variant":"Commands::Reseal","whenToUse":"Recompute the FROZEN_HASH seal from the file it seals.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Rtl (cli/tri/src/main.rs; module cli/tri/src/rtl.rs)","actions":[{"about":"Run the five structural checks on a design directory.","name":"check"}],"agents":[],"args":[],"cast":null,"command":"tri rtl","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"The structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness.","ABOUT_SOURCE":"clap /// doc on Commands::Rtl (cli/tri/src/main.rs; module cli/tri/src/rtl.rs)","ACTIONS":["check"],"ACTIONS_ABOUT":["Run the five structural checks on a design directory."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri rtl","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/rtl","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/rtl","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/rtl.rs","VARIANT":"Commands::Rtl","WHEN_TO_USE":"The structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness.","WITNESS":"source-parse"},"health":"ok","id":"tri/rtl","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/rtl.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_rtl","name":{"en":"tri rtl"},"qualifiedId":"gHashTag/t27:tri/rtl","repo":"gHashTag/t27","schema":2,"searchText":"tri/rtl tri rtl the structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness. the structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness. check run the five structural checks on a design directory.","sha256":"656a55d5c53935a47b6bfb87528cb7eadd93b56ea60bc246f720ace506be7109","skills":[],"source":"cli/tri/src/rtl.rs","specPath":"specs/tools/tri/rtl.t27","summary":{"en":"The structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness.","ru":"Структурная проверка, которую предлагает t27.ai, локально: пять вердиктов, версия yosys рядом с числами и никаких заявлений о корректности."},"typecheckOk":true,"variant":"Commands::Rtl","whenToUse":"The structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Seals (cli/tri/src/main.rs; module cli/tri/src/seals.rs)","actions":[{"about":"Is the built compiler newer than the source the seals are checked against?","name":"fresh"},{"about":"Seals whose claims no longer match what the compiler produces, and the one command that repairs them.","name":"drift"},{"about":"Specs that carry more than one seal, and which of those pairs disagree.","name":"twins"},{"about":"Copy the NEWEST seal's claims onto its twins, after a re-seal.","name":"sync-twins"},{"about":"Seals that record `gen_hash=none` -- a spec that produced no output, sealed.","name":"hollow"}],"agents":[],"args":[],"cast":null,"command":"tri seals","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What `.trinity/seals` says about a spec, when it says it twice.","ABOUT_SOURCE":"clap /// doc on Commands::Seals (cli/tri/src/main.rs; module cli/tri/src/seals.rs)","ACTIONS":["fresh","drift","twins","sync-twins","hollow"],"ACTIONS_ABOUT":["Is the built compiler newer than the source the seals are checked against?","Seals whose claims no longer match what the compiler produces, and the one command that repairs them.","Specs that carry more than one seal, and which of those pairs disagree.","Copy the NEWEST seal's claims onto its twins, after a re-seal.","Seals that record `gen_hash=none` -- a spec that produced no output, sealed."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri seals","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/seals","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/seals","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/seals.rs","VARIANT":"Commands::Seals","WHEN_TO_USE":"What `.trinity/seals` says about a spec, when it says it twice.","WITNESS":"source-parse"},"health":"ok","id":"tri/seals","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/seals.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_seals","name":{"en":"tri seals"},"qualifiedId":"gHashTag/t27:tri/seals","repo":"gHashTag/t27","schema":2,"searchText":"tri/seals tri seals what `.trinity/seals` says about a spec, when it says it twice. what `.trinity/seals` says about a spec, when it says it twice. fresh is the built compiler newer than the source the seals are checked against? drift seals whose claims no longer match what the compiler produces, and the one command that repairs them. twins specs that carry more than one seal, and which of those pairs disagree. sync-twins copy the newest seal's claims onto its twins, after a re-seal. hollow seals that record `gen_hash=none` -- a spec that produced no output, sealed.","sha256":"e0932fe334d920e6591445980b99b8b9bebb845756394199bd209c13e13d0d15","skills":[],"source":"cli/tri/src/seals.rs","specPath":"specs/tools/tri/seals.t27","summary":{"en":"What `.trinity/seals` says about a spec, when it says it twice.","ru":"Что `.trinity/seals` говорит о спеке, когда говорит это дважды."},"typecheckOk":true,"variant":"Commands::Seals","whenToUse":"What `.trinity/seals` says about a spec, when it says it twice.","witness":"source-parse"},{"aboutSource":"handler cmd_serve routes and banner string (cli/tri/src/main.rs:1121)","actions":[],"agents":[],"args":[{"about":"","name":"--addr"}],"cast":null,"command":"tri serve","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Serve the trinity depin HTTP API over axum: POST /prove, GET /epoch-challenge, GET /health; prints trinity depin v0.1.0 -- listening on .","ABOUT_SOURCE":"handler cmd_serve routes and banner string (cli/tri/src/main.rs:1121)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--addr"],"COMMAND":"tri serve","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/serve","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/serve","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Serve","WHEN_TO_USE":"Serve the trinity depin HTTP API over axum: POST /prove, GET /epoch-challenge, GET /health; prints trinity depin v0.1.0 -- listening on .","WITNESS":"source-parse"},"health":"ok","id":"tri/serve","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_serve","name":{"en":"tri serve"},"qualifiedId":"gHashTag/t27:tri/serve","repo":"gHashTag/t27","schema":2,"searchText":"tri/serve tri serve serve the trinity depin http api over axum: post /prove, get /epoch-challenge, get /health; prints trinity depin v0.1.0 -- listening on . serve the trinity depin http api over axum: post /prove, get /epoch-challenge, get /health; prints trinity depin v0.1.0 -- listening on .","sha256":"0aa1373204ff6f8fd41fd8d19428f3d0754fc124578e3f1fbcc2f55c9ff55f4a","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/serve.t27","summary":{"en":"Serve the trinity depin HTTP API over axum: POST /prove, GET /epoch-challenge, GET /health; prints trinity depin v0.1.0 -- listening on .","ru":"Поднимает HTTP API trinity depin на axum: POST /prove, GET /epoch-challenge, GET /health; печатает «trinity depin v0.1.0 -- listening on »."},"typecheckOk":true,"variant":"Commands::Serve","whenToUse":"Serve the trinity depin HTTP API over axum: POST /prove, GET /epoch-challenge, GET /health; prints trinity depin v0.1.0 -- listening on .","witness":"source-parse"},{"aboutSource":"tri-mcp tools tri_skill_begin and tri_skill_end descriptions (cli/tri-mcp/src/main.rs); SkillAction enum cli/tri/src/main.rs:349","actions":[{"about":"Write a new lesson to the spool, unnumbered.","name":"add"},{"about":"Fold every spooled lesson into SKILL.md, numbering them on the way in.","name":"fold"},{"about":"Check every SKILL.md's section numbering for collisions.","name":"check"},{"about":"Sections whose body was cut short at some point in the file's history.","name":"lost"},{"about":"Every cross-reference in the skills, and whether it resolves.","name":"refs"},{"about":"Sections that state a FIGURE, and which of those a reader can re-take.","name":"claims"},{"about":"Move sections you appended to the numbers the base branch left free.","name":"renumber"},{"about":"","name":"begin"},{"about":"","name":"end"}],"agents":[],"args":[],"cast":null,"command":"tri skill","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Begins a new PHI LOOP skill session bound to an issue. Ends the active PHI LOOP skill session. The add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (SKILL.md lesson spool).","ABOUT_SOURCE":"tri-mcp tools tri_skill_begin and tri_skill_end descriptions (cli/tri-mcp/src/main.rs); SkillAction enum cli/tri/src/main.rs:349","ACTIONS":["add","fold","check","lost","refs","claims","renumber","begin","end"],"ACTIONS_ABOUT":["Write a new lesson to the spool, unnumbered.","Fold every spooled lesson into SKILL.md, numbering them on the way in.","Check every SKILL.md's section numbering for collisions.","Sections whose body was cut short at some point in the file's history.","Every cross-reference in the skills, and whether it resolves.","Sections that state a FIGURE, and which of those a reader can re-take.","Move sections you appended to the numbers the base branch left free.","",""],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri skill","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/skill","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/skill","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Skill","WHEN_TO_USE":"Begins a new PHI LOOP skill session bound to an issue. Ends the active PHI LOOP skill session. The add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (SKILL.md lesson spool).","WITNESS":"source-parse"},"health":"ok","id":"tri/skill","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_skill","name":{"en":"tri skill"},"qualifiedId":"gHashTag/t27:tri/skill","repo":"gHashTag/t27","schema":2,"searchText":"tri/skill tri skill begins a new phi loop skill session bound to an issue. ends the active phi loop skill session. the add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (skill.md lesson spool). begins a new phi loop skill session bound to an issue. ends the active phi loop skill session. the add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (skill.md lesson spool). add write a new lesson to the spool, unnumbered. fold fold every spooled lesson into skill.md, numbering them on the way in. check check every skill.md's section numbering for collisions. lost sections whose body was cut short at some point in the file's history. refs every cross-reference in the skills, and whether it resolves. claims sections that state a figure, and which of those a reader can re-take. renumber move sections you appended to the numbers the base branch left free. begin end","sha256":"4e19baf0ea4267dbbd23f71b8d324779c85427672378205a64726118c36a8e68","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/skill.t27","summary":{"en":"Begins a new PHI LOOP skill session bound to an issue. Ends the active PHI LOOP skill session. The add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (SKILL.md lesson spool).","ru":"Начинает новую сессию скилла PHI LOOP, привязанную к issue; завершает активную сессию. Действия add/fold/check/lost/refs/claims/renumber ведут спул уроков SKILL.md и описаны в своих clap-доках."},"typecheckOk":true,"variant":"Commands::Skill","whenToUse":"Begins a new PHI LOOP skill session bound to an issue. Ends the active PHI LOOP skill session. The add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (SKILL.md lesson spool).","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_status description (cli/tri-mcp/src/main.rs); handler cmd_status prints === PHI LOOP STATUS === (cli/tri/src/main.rs:613)","actions":[],"agents":[],"args":[],"cast":null,"command":"tri status","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","ABOUT_SOURCE":"tri-mcp tool tri_status description (cli/tri-mcp/src/main.rs); handler cmd_status prints === PHI LOOP STATUS === (cli/tri/src/main.rs:613)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri status","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/status","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/status","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Status","WHEN_TO_USE":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","WITNESS":"source-parse"},"health":"ok","id":"tri/status","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_status","name":{"en":"tri status"},"qualifiedId":"gHashTag/t27:tri/status","repo":"gHashTag/t27","schema":2,"searchText":"tri/status tri status returns phi loop status including active skill, cell, issue binding, and uncommitted changes. returns phi loop status including active skill, cell, issue binding, and uncommitted changes.","sha256":"bacc3fad069505febf375adbbfea9a861e4dc884a6c3d98d723bc5cd22365290","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/status.t27","summary":{"en":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","ru":"Показывает статус PHI LOOP: активный скилл, ячейку, привязку к issue и незакоммиченные изменения."},"typecheckOk":true,"variant":"Commands::Status","whenToUse":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Sweep (cli/tri/src/main.rs; module cli/tri/src/sweep.rs)","actions":[{"about":"Synthesise a top across values of one parameter and report the trend.","name":"area"}],"agents":[],"args":[],"cast":null,"command":"tri sweep","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Synthesise across a parameter and check the area actually moves.","ABOUT_SOURCE":"clap /// doc on Commands::Sweep (cli/tri/src/main.rs; module cli/tri/src/sweep.rs)","ACTIONS":["area"],"ACTIONS_ABOUT":["Synthesise a top across values of one parameter and report the trend."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri sweep","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/sweep","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/sweep","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/sweep.rs","VARIANT":"Commands::Sweep","WHEN_TO_USE":"Synthesise across a parameter and check the area actually moves.","WITNESS":"source-parse"},"health":"ok","id":"tri/sweep","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/sweep.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_sweep","name":{"en":"tri sweep"},"qualifiedId":"gHashTag/t27:tri/sweep","repo":"gHashTag/t27","schema":2,"searchText":"tri/sweep tri sweep synthesise across a parameter and check the area actually moves. synthesise across a parameter and check the area actually moves. area synthesise a top across values of one parameter and report the trend.","sha256":"7b032422cdd86d854023351e841cf5c6f6f43327cab5504b6afd61ac889614e1","skills":[],"source":"cli/tri/src/sweep.rs","specPath":"specs/tools/tri/sweep.t27","summary":{"en":"Synthesise across a parameter and check the area actually moves.","ru":"Синтез по параметру с проверкой, что площадь действительно меняется."},"typecheckOk":true,"variant":"Commands::Sweep","whenToUse":"Synthesise across a parameter and check the area actually moves.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Synth (cli/tri/src/main.rs; module cli/tri/src/synth.rs)","actions":[{"about":"Synthesise a top module and report LUT/DSP/FF/CARRY4 counts.","name":"area"}],"agents":[],"args":[],"cast":null,"command":"tri synth","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Synthesise a top module and report area, with the instrument named.","ABOUT_SOURCE":"clap /// doc on Commands::Synth (cli/tri/src/main.rs; module cli/tri/src/synth.rs)","ACTIONS":["area"],"ACTIONS_ABOUT":["Synthesise a top module and report LUT/DSP/FF/CARRY4 counts."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri synth","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/synth","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/synth","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/synth.rs","VARIANT":"Commands::Synth","WHEN_TO_USE":"Synthesise a top module and report area, with the instrument named.","WITNESS":"source-parse"},"health":"ok","id":"tri/synth","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/synth.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_synth","name":{"en":"tri synth"},"qualifiedId":"gHashTag/t27:tri/synth","repo":"gHashTag/t27","schema":2,"searchText":"tri/synth tri synth synthesise a top module and report area, with the instrument named. synthesise a top module and report area, with the instrument named. area synthesise a top module and report lut/dsp/ff/carry4 counts.","sha256":"51a2f2cad1da2385b6c7b16ab1e4721df80fe98918a60a3410c88fe14da4d743","skills":[],"source":"cli/tri/src/synth.rs","specPath":"specs/tools/tri/synth.t27","summary":{"en":"Synthesise a top module and report area, with the instrument named.","ru":"Синтезирует top-модуль и сообщает площадь с указанием инструмента."},"typecheckOk":true,"variant":"Commands::Synth","whenToUse":"Synthesise a top module and report area, with the instrument named.","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_test description (cli/tri-mcp/src/main.rs); handler cmd_test runs t27c test (cli/tri/src/main.rs:870)","actions":[],"agents":[{"letter":"T","ok":true},{"letter":"V","ok":true}],"args":[{"about":"","name":""}],"cast":null,"command":"tri test","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Runs tests for a .t27 spec file using t27c.","ABOUT_SOURCE":"tri-mcp tool tri_test description (cli/tri-mcp/src/main.rs); handler cmd_test runs t27c test (cli/tri/src/main.rs:870)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":["T","V"],"AGENTS_NOTE":".claude/agents/agent-v-verify.md:47 (tri test -- Run conformance tests); .claude/agents/trinity.md:70 (7. Verify - Run tri test).","ARGS":[""],"COMMAND":"tri test","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/test","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/test","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Test","WHEN_TO_USE":"Runs tests for a .t27 spec file using t27c.","WITNESS":"source-parse"},"health":"ok","id":"tri/test","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_test","name":{"en":"tri test"},"qualifiedId":"gHashTag/t27:tri/test","repo":"gHashTag/t27","schema":2,"searchText":"tri/test tri test runs tests for a .t27 spec file using t27c. runs tests for a .t27 spec file using t27c. t v","sha256":"a960b7f1a9936d59ccf97203a7031161075c78d1ba6a0f7c78b65084d3a910a7","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/test.t27","summary":{"en":"Runs tests for a .t27 spec file using t27c.","ru":"Запускает тесты для файла спецификации .t27 через t27c."},"typecheckOk":true,"variant":"Commands::Test","whenToUse":"Runs tests for a .t27 spec file using t27c.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Topic (cli/tri/src/main.rs)","actions":[],"agents":[],"args":[{"about":"Words to look for. A row matches on any; rows carrying more come first.","name":""},{"about":"How many recent commits on the base branch to read.","name":"--commits"}],"cast":null,"command":"tri topic","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Has anyone already done this, or are they doing it now?","ABOUT_SOURCE":"clap /// doc on Commands::Topic (cli/tri/src/main.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[": Words to look for. A row matches on any; rows carrying more come first.","--commits: How many recent commits on the base branch to read."],"COMMAND":"tri topic","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/topic","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/topic","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Topic","WHEN_TO_USE":"Has anyone already done this, or are they doing it now?","WITNESS":"source-parse"},"health":"ok","id":"tri/topic","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_topic","name":{"en":"tri topic"},"qualifiedId":"gHashTag/t27:tri/topic","repo":"gHashTag/t27","schema":2,"searchText":"tri/topic tri topic has anyone already done this, or are they doing it now? has anyone already done this, or are they doing it now?","sha256":"0ca5ed85564d0231316703fb63605e962ea2cbf2fb37a273c7d9eac793a45cd5","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/topic.t27","summary":{"en":"Has anyone already done this, or are they doing it now?","ru":"Кто-нибудь уже делал это или делает сейчас?"},"typecheckOk":true,"variant":"Commands::Topic","whenToUse":"Has anyone already done this, or are they doing it now?","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/types_dup.rs:1","actions":[{"about":"Type names with more than one definition in the spec tree.","name":"dup"},{"about":"Hold the conflicted set: a new conflict fails, and a resolved one fails until it is blessed away.","name":"ratchet"},{"about":"Cross-check the written classification against what the tree says today.","name":"classified"},{"about":"Names defined more than once INSIDE ONE FILE.","name":"redef"}],"agents":[],"args":[],"cast":null,"command":"tri types","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"One type name, more than one definition.","ABOUT_SOURCE":"//! module doc, cli/tri/src/types_dup.rs:1","ACTIONS":["dup","ratchet","classified","redef"],"ACTIONS_ABOUT":["Type names with more than one definition in the spec tree.","Hold the conflicted set: a new conflict fails, and a resolved one fails until it is blessed away.","Cross-check the written classification against what the tree says today.","Names defined more than once INSIDE ONE FILE."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri types","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/types","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/types","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/types_dup.rs","VARIANT":"Commands::Types","WHEN_TO_USE":"One type name, more than one definition.","WITNESS":"source-parse"},"health":"ok","id":"tri/types","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/types_dup.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_types","name":{"en":"tri types"},"qualifiedId":"gHashTag/t27:tri/types","repo":"gHashTag/t27","schema":2,"searchText":"tri/types tri types one type name, more than one definition. one type name, more than one definition. dup type names with more than one definition in the spec tree. ratchet hold the conflicted set: a new conflict fails, and a resolved one fails until it is blessed away. classified cross-check the written classification against what the tree says today. redef names defined more than once inside one file.","sha256":"16ea516e67cf93e24863ebb8aabc61ac3bc67fed76d94a228f947258b5296f55","skills":[],"source":"cli/tri/src/types_dup.rs","specPath":"specs/tools/tri/types.t27","summary":{"en":"One type name, more than one definition.","ru":"Одно имя типа, больше одного определения."},"typecheckOk":true,"variant":"Commands::Types","whenToUse":"One type name, more than one definition.","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/unparsed.rs:1","actions":[{"about":"Rank the constructs that stop the compiler, most specs first.","name":"report"},{"about":"For each unreadable spec, the ITEM whose presence causes the failure.","name":"locate"},{"about":"Cross-check the census against an INDEPENDENTLY built population.","name":"agree"},{"about":"Run every construct's minimal source and say which the compiler rejects.","name":"probe"}],"agents":[],"args":[],"cast":null,"command":"tri unparsed","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Specs the compiler cannot read, ranked by the CONSTRUCT that stops it -- and every construct backed by a live probe.","ABOUT_SOURCE":"//! module doc, cli/tri/src/unparsed.rs:1","ACTIONS":["report","locate","agree","probe"],"ACTIONS_ABOUT":["Rank the constructs that stop the compiler, most specs first.","For each unreadable spec, the ITEM whose presence causes the failure.","Cross-check the census against an INDEPENDENTLY built population.","Run every construct's minimal source and say which the compiler rejects."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri unparsed","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/unparsed","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/unparsed","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/unparsed.rs","VARIANT":"Commands::Unparsed","WHEN_TO_USE":"Specs the compiler cannot read, ranked by the CONSTRUCT that stops it -- and every construct backed by a live probe.","WITNESS":"source-parse"},"health":"ok","id":"tri/unparsed","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/unparsed.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_unparsed","name":{"en":"tri unparsed"},"qualifiedId":"gHashTag/t27:tri/unparsed","repo":"gHashTag/t27","schema":2,"searchText":"tri/unparsed tri unparsed specs the compiler cannot read, ranked by the construct that stops it -- and every construct backed by a live probe. specs the compiler cannot read, ranked by the construct that stops it -- and every construct backed by a live probe. report rank the constructs that stop the compiler, most specs first. locate for each unreadable spec, the item whose presence causes the failure. agree cross-check the census against an independently built population. probe run every construct's minimal source and say which the compiler rejects.","sha256":"6aaf39d92a0b7c5443faa32b97cd7fd74b251a8258aee8390b6965d5fee2e660","skills":[],"source":"cli/tri/src/unparsed.rs","specPath":"specs/tools/tri/unparsed.t27","summary":{"en":"Specs the compiler cannot read, ranked by the CONSTRUCT that stops it -- and every construct backed by a live probe.","ru":"Спеки, которые компилятор не может прочитать, ранжированные по КОНСТРУКЦИИ, которая его останавливает, -- и каждая конструкция, подтверждённая живой пробой."},"typecheckOk":true,"variant":"Commands::Unparsed","whenToUse":"Specs the compiler cannot read, ranked by the CONSTRUCT that stops it -- and every construct backed by a live probe.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Vectors (cli/tri/src/main.rs; module cli/tri/src/vectors.rs)","actions":[{"about":"Generate a module's Verilog and execute its registered vectors.","name":"run"},{"about":"Inventory every vector file: executed, debt, or aspirational.","name":"debt"}],"agents":[],"args":[],"cast":null,"command":"tri vectors","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"The executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed.","ABOUT_SOURCE":"clap /// doc on Commands::Vectors (cli/tri/src/main.rs; module cli/tri/src/vectors.rs)","ACTIONS":["run","debt"],"ACTIONS_ABOUT":["Generate a module's Verilog and execute its registered vectors.","Inventory every vector file: executed, debt, or aspirational."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri vectors","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/vectors","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/vectors","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/vectors.rs","VARIANT":"Commands::Vectors","WHEN_TO_USE":"The executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed.","WITNESS":"source-parse"},"health":"ok","id":"tri/vectors","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/vectors.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_vectors","name":{"en":"tri vectors"},"qualifiedId":"gHashTag/t27:tri/vectors","repo":"gHashTag/t27","schema":2,"searchText":"tri/vectors tri vectors the executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed. the executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed. run generate a module's verilog and execute its registered vectors. debt inventory every vector file: executed, debt, or aspirational.","sha256":"7babf01001cd4e86adfad3f717ccf6cf0772dd38e143ab71d782bd66bc455b82","skills":[],"source":"cli/tri/src/vectors.rs","specPath":"specs/tools/tri/vectors.t27","summary":{"en":"The executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed.","ru":"Реестр исполняемых векторов: запустить векторы модуля или проинвентаризировать, какие файлы исполняются, а какие только показываются."},"typecheckOk":true,"variant":"Commands::Vectors","whenToUse":"The executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed.","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_verdict description (cli/tri-mcp/src/main.rs); handler cmd_verdict runs t27c validate-seals, validate-phi-identity and, with --toxic, validate-toxicity (cli/tri/src/main.rs:876)","actions":[],"agents":[{"letter":"V","ok":true}],"args":[{"about":"","name":"--toxic"}],"cast":null,"command":"tri verdict","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Checks for toxic regressions by analyzing swarm health metrics.","ABOUT_SOURCE":"tri-mcp tool tri_verdict description (cli/tri-mcp/src/main.rs); handler cmd_verdict runs t27c validate-seals, validate-phi-identity and, with --toxic, validate-toxicity (cli/tri/src/main.rs:876)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":["V"],"AGENTS_NOTE":".claude/agents/agent-v-verify.md:49 (tri verdict -- Generate pass/fail report); docs/agents/AGENTS_ALPHABET.md:80, PHASE 5 VERDICT: V analyzes metrics, tri verdict --toxic.","ARGS":["--toxic"],"COMMAND":"tri verdict","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/verdict","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/verdict","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Verdict","WHEN_TO_USE":"Checks for toxic regressions by analyzing swarm health metrics.","WITNESS":"source-parse"},"health":"ok","id":"tri/verdict","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_verdict","name":{"en":"tri verdict"},"qualifiedId":"gHashTag/t27:tri/verdict","repo":"gHashTag/t27","schema":2,"searchText":"tri/verdict tri verdict checks for toxic regressions by analyzing swarm health metrics. checks for toxic regressions by analyzing swarm health metrics. v","sha256":"8afa0e665be25d336bdca685cd2369546a767678133bc86c9994d7c94da6a5c7","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/verdict.t27","summary":{"en":"Checks for toxic regressions by analyzing swarm health metrics.","ru":"Проверяет токсичные регрессии, анализируя метрики здоровья роя."},"typecheckOk":true,"variant":"Commands::Verdict","whenToUse":"Checks for toxic regressions by analyzing swarm health metrics.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Vsim (cli/tri/src/main.rs; module cli/tri/src/vsim.rs)","actions":[{"about":"Walk the corpus through `t27c icarus-simulate` and print the funnel.","name":"funnel"}],"agents":[],"args":[],"cast":null,"command":"tri vsim","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"How far each spec gets when its generated Verilog is actually RUN.","ABOUT_SOURCE":"clap /// doc on Commands::Vsim (cli/tri/src/main.rs; module cli/tri/src/vsim.rs)","ACTIONS":["funnel"],"ACTIONS_ABOUT":["Walk the corpus through `t27c icarus-simulate` and print the funnel."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri vsim","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/vsim","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/vsim","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/vsim.rs","VARIANT":"Commands::Vsim","WHEN_TO_USE":"How far each spec gets when its generated Verilog is actually RUN. The one arm that can catch a defect whose nature is that it compiles, and the one arm whose gate has had no targets since #2283 -- see #2987.","WITNESS":"source-parse"},"health":"ok","id":"tri/vsim","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/vsim.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_vsim","name":{"en":"tri vsim"},"qualifiedId":"gHashTag/t27:tri/vsim","repo":"gHashTag/t27","schema":2,"searchText":"tri/vsim tri vsim how far each spec gets when its generated verilog is actually run. how far each spec gets when its generated verilog is actually run. the one arm that can catch a defect whose nature is that it compiles, and the one arm whose gate has had no targets since #2283 -- see #2987. funnel walk the corpus through `t27c icarus-simulate` and print the funnel.","sha256":"b33711b2a50bd614b706e77c813e7c31e71cd7f547489bf073c0de59c17de2fb","skills":[],"source":"cli/tri/src/vsim.rs","specPath":"specs/tools/tri/vsim.t27","summary":{"en":"How far each spec gets when its generated Verilog is actually RUN.","ru":"Как далеко доходит каждая спека, когда её сгенерированный Verilog действительно ЗАПУСКАЮТ."},"typecheckOk":true,"variant":"Commands::Vsim","whenToUse":"How far each spec gets when its generated Verilog is actually RUN. The one arm that can catch a defect whose nature is that it compiles, and the one arm whose gate has had no targets since #2283 -- see #2987.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Window (cli/tri/src/main.rs; module cli/tri/src/window.rs)","actions":[],"agents":[],"args":[{"about":"Record `origin/master` as the base of a measurement starting now.","name":"--start"},{"about":"Report whether the recorded base is still the tip, and refuse if it is not.","name":"--check"},{"about":"The ref the measurement is against. Defaults to `origin/master`.","name":"--base"},{"about":"Run the controls and report, changing nothing.","name":"--self-check"}],"cast":null,"command":"tri window","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Was the base you measured against still the tip when you reported?","ABOUT_SOURCE":"clap /// doc on Commands::Window (cli/tri/src/main.rs; module cli/tri/src/window.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--start: Record `origin/master` as the base of a measurement starting now.","--check: Report whether the recorded base is still the tip, and refuse if it is not.","--base: The ref the measurement is against. Defaults to `origin/master`.","--self-check: Run the controls and report, changing nothing."],"COMMAND":"tri window","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/window","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/window","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/window.rs","VARIANT":"Commands::Window","WHEN_TO_USE":"Was the base you measured against still the tip when you reported?","WITNESS":"source-parse"},"health":"ok","id":"tri/window","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/window.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_window","name":{"en":"tri window"},"qualifiedId":"gHashTag/t27:tri/window","repo":"gHashTag/t27","schema":2,"searchText":"tri/window tri window was the base you measured against still the tip when you reported? was the base you measured against still the tip when you reported?","sha256":"43202aabe15b2c06b1e0709f8e0ae6fc1cb13b2cb7e5a5adee77340a1bf03ff4","skills":[],"source":"cli/tri/src/window.rs","specPath":"specs/tools/tri/window.t27","summary":{"en":"Was the base you measured against still the tip when you reported?","ru":"Была ли база, относительно которой вы мерили, всё ещё вершиной, когда вы отчитывались?"},"typecheckOk":true,"variant":"Commands::Window","whenToUse":"Was the base you measured against still the tip when you reported?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Worktrees (cli/tri/src/main.rs; module cli/tri/src/trees.rs)","actions":[],"agents":[],"args":[{"about":"Also measure disk usage. Off by default: `du` over 120 checkouts is slow, and the holdings answer is the one that decides anything.","name":"--size"},{"about":"Print every tree, not only those holding work or unreadable.","name":"--all"}],"cast":null,"command":"tri worktrees","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What the checkouts on this disk are holding. Deletes nothing.","ABOUT_SOURCE":"clap /// doc on Commands::Worktrees (cli/tri/src/main.rs; module cli/tri/src/trees.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--size: Also measure disk usage. Off by default: `du` over 120 checkouts is slow, and the holdings answer is the one that decides anything.","--all: Print every tree, not only those holding work or unreadable."],"COMMAND":"tri worktrees","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/worktrees","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/worktrees","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/trees.rs","VARIANT":"Commands::Worktrees","WHEN_TO_USE":"What the checkouts on this disk are holding. Deletes nothing.","WITNESS":"source-parse"},"health":"ok","id":"tri/worktrees","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/trees.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_worktrees","name":{"en":"tri worktrees"},"qualifiedId":"gHashTag/t27:tri/worktrees","repo":"gHashTag/t27","schema":2,"searchText":"tri/worktrees tri worktrees what the checkouts on this disk are holding. deletes nothing. what the checkouts on this disk are holding. deletes nothing.","sha256":"1a01df4f397fe76552d278be19fd778995522fe45e9971a0ad8a017b723ca446","skills":[],"source":"cli/tri/src/trees.rs","specPath":"specs/tools/tri/worktrees.t27","summary":{"en":"What the checkouts on this disk are holding. Deletes nothing.","ru":"Что держат чекауты на этом диске. Ничего не удаляет."},"typecheckOk":true,"variant":"Commands::Worktrees","whenToUse":"What the checkouts on this disk are holding. Deletes nothing.","witness":"source-parse"}],"version":1,"parts":[{"path":"tools/spec-tools-trios.json","sha256":"fd11ab3c84d64f51bce0c0b76627d0b12cd4be32509200da674a221df9ea1425","count":295},{"path":"tools/spec-tools-trinity.json","sha256":"823271fc319a57bbbd2411c50a4f4858ea5943ddfde17e6bf243beb52d9856cc","count":254}]} +{"collisions":[{"name":"cell","t27":"gHashTag/t27:tri/cell","trinity":"gHashTag/trinity:tri/cell"},{"name":"doctor","t27":"gHashTag/t27:tri/doctor","trinity":"gHashTag/trinity:tri/doctor"},{"name":"experience","t27":"gHashTag/t27:tri/experience","trinity":"gHashTag/trinity:tri/experience"},{"name":"fmt","t27":"gHashTag/t27:tri/fmt","trinity":"gHashTag/trinity:tri/fmt"},{"name":"fpga","t27":"gHashTag/t27:tri/fpga","trinity":"gHashTag/trinity:tri/fpga"},{"name":"gen","t27":"gHashTag/t27:tri/gen","trinity":"gHashTag/trinity:tri/gen"},{"name":"loop","t27":"gHashTag/t27:tri/loop","trinity":"gHashTag/trinity:tri/loop"},{"name":"pr","t27":"gHashTag/t27:tri/pr","trinity":"gHashTag/trinity:tri/pr"},{"name":"serve","t27":"gHashTag/t27:tri/serve","trinity":"gHashTag/trinity:tri/serve"},{"name":"status","t27":"gHashTag/t27:tri/status","trinity":"gHashTag/trinity:tri/status"},{"name":"test","t27":"gHashTag/t27:tri/test","trinity":"gHashTag/trinity:tri/test"},{"name":"verdict","t27":"gHashTag/t27:tri/verdict","trinity":"gHashTag/trinity:tri/verdict"}],"compilerWasmSha256":"bb39b9a5ca412a2695ab6a20a54e222933e10edaf08ef053670e4974d08f113f","contentSha256":"68f1cda29798070d167466d846ba5322cdca55be362ab40cc82a8f1bff653441","counts":{"byRepo":{"gHashTag/BrowserOS":295,"gHashTag/t27":58,"gHashTag/trinity":254},"byWitness":{"help-output":1,"registry-export":29,"runtime":0,"source-parse":577},"collisions":12,"enabled":607,"mcp":11,"mcpExternal":6,"mcpTools":255,"mcpWithTools":6,"schema2":607,"specs":607,"tri":596,"triActions":146,"triWithActions":44,"trinityTri":249,"triosTri":295,"typecheckOk":607,"withAgents":6,"withCast":18,"withSkills":5},"generatedAt":"2026-10-03T16:30:54.050Z","groups":{"mcpByRepo":{"gHashTag/t27":["mcp/gitbutler","mcp/inngest-dev","mcp/notebooklm","mcp/t27-traceability","mcp/tri-mcp","mcp/tri-ssot"],"gHashTag/trinity":["mcp/needle","mcp/neon","mcp/railway-mcp-server","mcp/trinity","mcp/zig-docs"]},"triByAgent":{"-":["gHashTag/BrowserOS:tri/ab","gHashTag/BrowserOS:tri/accept-rate","gHashTag/BrowserOS:tri/agree","gHashTag/BrowserOS:tri/anom","gHashTag/BrowserOS:tri/anomalies","gHashTag/BrowserOS:tri/author","gHashTag/BrowserOS:tri/backlog","gHashTag/BrowserOS:tri/blog","gHashTag/BrowserOS:tri/board","gHashTag/BrowserOS:tri/boundary","gHashTag/BrowserOS:tri/brief-gate","gHashTag/BrowserOS:tri/cast","gHashTag/BrowserOS:tri/channel","gHashTag/BrowserOS:tri/chat","gHashTag/BrowserOS:tri/ci-diff","gHashTag/BrowserOS:tri/clocks","gHashTag/BrowserOS:tri/close-done","gHashTag/BrowserOS:tri/container","gHashTag/BrowserOS:tri/coverage","gHashTag/BrowserOS:tri/cycle","gHashTag/BrowserOS:tri/cycle-anom","gHashTag/BrowserOS:tri/cycle-anomalies","gHashTag/BrowserOS:tri/cycle-dash","gHashTag/BrowserOS:tri/cycle-doctor","gHashTag/BrowserOS:tri/cycle-html","gHashTag/BrowserOS:tri/cycle-log","gHashTag/BrowserOS:tri/cycle-note","gHashTag/BrowserOS:tri/cycle-repair","gHashTag/BrowserOS:tri/cycle-sense","gHashTag/BrowserOS:tri/dash","gHashTag/BrowserOS:tri/dash2","gHashTag/BrowserOS:tri/deploy-wait","gHashTag/BrowserOS:tri/devkit","gHashTag/BrowserOS:tri/drift","gHashTag/BrowserOS:tri/driver","gHashTag/BrowserOS:tri/exposure","gHashTag/BrowserOS:tri/facts","gHashTag/BrowserOS:tri/failures","gHashTag/BrowserOS:tri/feed","gHashTag/BrowserOS:tri/fence","gHashTag/BrowserOS:tri/fields","gHashTag/BrowserOS:tri/flaky","gHashTag/BrowserOS:tri/forked-files","gHashTag/BrowserOS:tri/fp-check","gHashTag/BrowserOS:tri/fpga","gHashTag/BrowserOS:tri/fpga-audit","gHashTag/BrowserOS:tri/fpga-batch","gHashTag/BrowserOS:tri/fpga-batch-cosim","gHashTag/BrowserOS:tri/fpga-batch-rehearsal","gHashTag/BrowserOS:tri/fpga-budget","gHashTag/BrowserOS:tri/fpga-build","gHashTag/BrowserOS:tri/fpga-claim","gHashTag/BrowserOS:tri/fpga-cost","gHashTag/BrowserOS:tri/fpga-decode","gHashTag/BrowserOS:tri/fpga-derive","gHashTag/BrowserOS:tri/fpga-fire","gHashTag/BrowserOS:tri/fpga-firelog","gHashTag/BrowserOS:tri/fpga-flash","gHashTag/BrowserOS:tri/fpga-genscore","gHashTag/BrowserOS:tri/fpga-hole","gHashTag/BrowserOS:tri/fpga-hostnet","gHashTag/BrowserOS:tri/fpga-ioclients","gHashTag/BrowserOS:tri/fpga-jtag","gHashTag/BrowserOS:tri/fpga-keep","gHashTag/BrowserOS:tri/fpga-keycheck","gHashTag/BrowserOS:tri/fpga-lesson","gHashTag/BrowserOS:tri/fpga-loopcheck","gHashTag/BrowserOS:tri/fpga-loopstate","gHashTag/BrowserOS:tri/fpga-next","gHashTag/BrowserOS:tri/fpga-pins","gHashTag/BrowserOS:tri/fpga-prcheck","gHashTag/BrowserOS:tri/fpga-push","gHashTag/BrowserOS:tri/fpga-quiet","gHashTag/BrowserOS:tri/fpga-rehearse","gHashTag/BrowserOS:tri/fpga-release","gHashTag/BrowserOS:tri/fpga-repin","gHashTag/BrowserOS:tri/fpga-restore","gHashTag/BrowserOS:tri/fpga-run","gHashTag/BrowserOS:tri/fpga-runlog","gHashTag/BrowserOS:tri/fpga-rxcap","gHashTag/BrowserOS:tri/fpga-rxer","gHashTag/BrowserOS:tri/fpga-seeds","gHashTag/BrowserOS:tri/fpga-selftest","gHashTag/BrowserOS:tri/fpga-specs","gHashTag/BrowserOS:tri/fpga-stamps","gHashTag/BrowserOS:tri/fpga-status","gHashTag/BrowserOS:tri/fpga-steps","gHashTag/BrowserOS:tri/fpga-task","gHashTag/BrowserOS:tri/fpga-tmpcheck","gHashTag/BrowserOS:tri/fpga-tools","gHashTag/BrowserOS:tri/fpga-tristate","gHashTag/BrowserOS:tri/fpga-txhold","gHashTag/BrowserOS:tri/fpga-usb","gHashTag/BrowserOS:tri/fpga-watch-clients","gHashTag/BrowserOS:tri/fpga-wire","gHashTag/BrowserOS:tri/game","gHashTag/BrowserOS:tri/game-activity","gHashTag/BrowserOS:tri/game-anomalies","gHashTag/BrowserOS:tri/game-bar","gHashTag/BrowserOS:tri/game-bees","gHashTag/BrowserOS:tri/game-blog","gHashTag/BrowserOS:tri/game-branch","gHashTag/BrowserOS:tri/game-cadence","gHashTag/BrowserOS:tri/game-claim","gHashTag/BrowserOS:tri/game-clock","gHashTag/BrowserOS:tri/game-close","gHashTag/BrowserOS:tri/game-contract","gHashTag/BrowserOS:tri/game-copy","gHashTag/BrowserOS:tri/game-dash","gHashTag/BrowserOS:tri/game-events","gHashTag/BrowserOS:tri/game-feed","gHashTag/BrowserOS:tri/game-finding","gHashTag/BrowserOS:tri/game-foundation","gHashTag/BrowserOS:tri/game-gate","gHashTag/BrowserOS:tri/game-gates","gHashTag/BrowserOS:tri/game-ingest","gHashTag/BrowserOS:tri/game-iterate","gHashTag/BrowserOS:tri/game-lesson","gHashTag/BrowserOS:tri/game-lessons","gHashTag/BrowserOS:tri/game-local","gHashTag/BrowserOS:tri/game-measure","gHashTag/BrowserOS:tri/game-merged","gHashTag/BrowserOS:tri/game-models","gHashTag/BrowserOS:tri/game-next","gHashTag/BrowserOS:tri/game-objects","gHashTag/BrowserOS:tri/game-plan","gHashTag/BrowserOS:tri/game-prove","gHashTag/BrowserOS:tri/game-release","gHashTag/BrowserOS:tri/game-report","gHashTag/BrowserOS:tri/game-round","gHashTag/BrowserOS:tri/game-selftest","gHashTag/BrowserOS:tri/game-served","gHashTag/BrowserOS:tri/game-ship","gHashTag/BrowserOS:tri/game-site","gHashTag/BrowserOS:tri/game-spike","gHashTag/BrowserOS:tri/game-status","gHashTag/BrowserOS:tri/game-task","gHashTag/BrowserOS:tri/game-tick","gHashTag/BrowserOS:tri/game-vault","gHashTag/BrowserOS:tri/game-verdicts","gHashTag/BrowserOS:tri/game-verify","gHashTag/BrowserOS:tri/game-wire","gHashTag/BrowserOS:tri/game-writers","gHashTag/BrowserOS:tri/handover","gHashTag/BrowserOS:tri/handover-116-archived","gHashTag/BrowserOS:tri/heal","gHashTag/BrowserOS:tri/help","gHashTag/BrowserOS:tri/holds","gHashTag/BrowserOS:tri/idle","gHashTag/BrowserOS:tri/iter","gHashTag/BrowserOS:tri/iter-anchors","gHashTag/BrowserOS:tri/iter-dash","gHashTag/BrowserOS:tri/iter-log","gHashTag/BrowserOS:tri/iter-render","gHashTag/BrowserOS:tri/iter-unlock","gHashTag/BrowserOS:tri/jobs","gHashTag/BrowserOS:tri/jobs-anomalies","gHashTag/BrowserOS:tri/jobs-board","gHashTag/BrowserOS:tri/jobs-check","gHashTag/BrowserOS:tri/jobs-dash","gHashTag/BrowserOS:tri/jobs-drafts","gHashTag/BrowserOS:tri/jobs-guards","gHashTag/BrowserOS:tri/jobs-journal","gHashTag/BrowserOS:tri/jobs-leads","gHashTag/BrowserOS:tri/jobs-lesson","gHashTag/BrowserOS:tri/jobs-next","gHashTag/BrowserOS:tri/jobs-owed","gHashTag/BrowserOS:tri/jobs-run","gHashTag/BrowserOS:tri/jobs-show","gHashTag/BrowserOS:tri/judge-calibration","gHashTag/BrowserOS:tri/judge-packet","gHashTag/BrowserOS:tri/land","gHashTag/BrowserOS:tri/latency","gHashTag/BrowserOS:tri/learn","gHashTag/BrowserOS:tri/lease","gHashTag/BrowserOS:tri/lesson","gHashTag/BrowserOS:tri/lesson-orphans","gHashTag/BrowserOS:tri/live-verify","gHashTag/BrowserOS:tri/live-wait","gHashTag/BrowserOS:tri/locks","gHashTag/BrowserOS:tri/loop","gHashTag/BrowserOS:tri/loop-coverage","gHashTag/BrowserOS:tri/loop-lesson","gHashTag/BrowserOS:tri/loop-selftest","gHashTag/BrowserOS:tri/mix","gHashTag/BrowserOS:tri/morning","gHashTag/BrowserOS:tri/mutants-logic-refresh","gHashTag/BrowserOS:tri/needs-you","gHashTag/BrowserOS:tri/next","gHashTag/BrowserOS:tri/proof","gHashTag/BrowserOS:tri/prov","gHashTag/BrowserOS:tri/proven","gHashTag/BrowserOS:tri/providers","gHashTag/BrowserOS:tri/push-work","gHashTag/BrowserOS:tri/queue","gHashTag/BrowserOS:tri/reach","gHashTag/BrowserOS:tri/reap","gHashTag/BrowserOS:tri/reap-finished","gHashTag/BrowserOS:tri/reap-local","gHashTag/BrowserOS:tri/regress","gHashTag/BrowserOS:tri/regression","gHashTag/BrowserOS:tri/rejudge","gHashTag/BrowserOS:tri/rescue","gHashTag/BrowserOS:tri/salvage","gHashTag/BrowserOS:tri/selftest","gHashTag/BrowserOS:tri/share-modules","gHashTag/BrowserOS:tri/silent-loop","gHashTag/BrowserOS:tri/skills","gHashTag/BrowserOS:tri/spec-diag","gHashTag/BrowserOS:tri/stale-escalations","gHashTag/BrowserOS:tri/status","gHashTag/BrowserOS:tri/swarm","gHashTag/BrowserOS:tri/t27-gen","gHashTag/BrowserOS:tri/t27-parity","gHashTag/BrowserOS:tri/t27-tri","gHashTag/BrowserOS:tri/tb","gHashTag/BrowserOS:tri/tb-deploy","gHashTag/BrowserOS:tri/tb-lint","gHashTag/BrowserOS:tri/tb-verify","gHashTag/BrowserOS:tri/tc-abpair","gHashTag/BrowserOS:tri/tc-arena","gHashTag/BrowserOS:tri/tc-ask","gHashTag/BrowserOS:tri/tc-audit","gHashTag/BrowserOS:tri/tc-board","gHashTag/BrowserOS:tri/tc-card","gHashTag/BrowserOS:tri/tc-catalog","gHashTag/BrowserOS:tri/tc-cathead","gHashTag/BrowserOS:tri/tc-ceiling","gHashTag/BrowserOS:tri/tc-comptime","gHashTag/BrowserOS:tri/tc-contract","gHashTag/BrowserOS:tri/tc-coreleak","gHashTag/BrowserOS:tri/tc-cpuft","gHashTag/BrowserOS:tri/tc-cpuft-cmp","gHashTag/BrowserOS:tri/tc-cpuft-collect","gHashTag/BrowserOS:tri/tc-curve","gHashTag/BrowserOS:tri/tc-diffjudge","gHashTag/BrowserOS:tri/tc-disc","gHashTag/BrowserOS:tri/tc-draft","gHashTag/BrowserOS:tri/tc-gpuft","gHashTag/BrowserOS:tri/tc-honest","gHashTag/BrowserOS:tri/tc-loop","gHashTag/BrowserOS:tri/tc-maskcheck","gHashTag/BrowserOS:tri/tc-mutant3","gHashTag/BrowserOS:tri/tc-mutscore","gHashTag/BrowserOS:tri/tc-pair","gHashTag/BrowserOS:tri/tc-podwait","gHashTag/BrowserOS:tri/tc-prefill","gHashTag/BrowserOS:tri/tc-reach","gHashTag/BrowserOS:tri/tc-relabel","gHashTag/BrowserOS:tri/tc-remote","gHashTag/BrowserOS:tri/tc-restore","gHashTag/BrowserOS:tri/tc-retrieve","gHashTag/BrowserOS:tri/tc-rounds","gHashTag/BrowserOS:tri/tc-seen","gHashTag/BrowserOS:tri/tc-soundness","gHashTag/BrowserOS:tri/tc-speed","gHashTag/BrowserOS:tri/tc-sync","gHashTag/BrowserOS:tri/tc-t27bench","gHashTag/BrowserOS:tri/tc-t27mask","gHashTag/BrowserOS:tri/tc-t27selfcheck","gHashTag/BrowserOS:tri/tc-taxonomy","gHashTag/BrowserOS:tri/tc-val","gHashTag/BrowserOS:tri/tg-dialogs","gHashTag/BrowserOS:tri/tg-msg","gHashTag/BrowserOS:tri/tg-search","gHashTag/BrowserOS:tri/tg-unread","gHashTag/BrowserOS:tri/tg-who","gHashTag/BrowserOS:tri/trend","gHashTag/BrowserOS:tri/trinity-report","gHashTag/BrowserOS:tri/two-views","gHashTag/BrowserOS:tri/unpark","gHashTag/BrowserOS:tri/unverdicted","gHashTag/BrowserOS:tri/unwired","gHashTag/BrowserOS:tri/verdict-audit","gHashTag/BrowserOS:tri/verdicts","gHashTag/BrowserOS:tri/verify","gHashTag/BrowserOS:tri/vibee-feed","gHashTag/BrowserOS:tri/wave","gHashTag/BrowserOS:tri/wave-plan","gHashTag/BrowserOS:tri/which-board","gHashTag/BrowserOS:tri/why","gHashTag/BrowserOS:tri/x7-audit","gHashTag/BrowserOS:tri/x7-bench","gHashTag/BrowserOS:tri/x7-board","gHashTag/BrowserOS:tri/x7-claim","gHashTag/BrowserOS:tri/x7-fasm","gHashTag/BrowserOS:tri/x7-lesson","gHashTag/BrowserOS:tri/x7-mutate","gHashTag/BrowserOS:tri/x7-next","gHashTag/BrowserOS:tri/x7-part","gHashTag/BrowserOS:tri/x7-refs","gHashTag/BrowserOS:tri/x7-release","gHashTag/BrowserOS:tri/x7-status","gHashTag/BrowserOS:tri/x7-task","gHashTag/BrowserOS:tri/x7-writer","gHashTag/trinity:tri/agents-bench","gHashTag/trinity:tri/agents-demo","gHashTag/trinity:tri/all","gHashTag/trinity:tri/amygdala","gHashTag/trinity:tri/analyze","gHashTag/trinity:tri/auto-bench","gHashTag/trinity:tri/auto-demo","gHashTag/trinity:tri/autocomplete","gHashTag/trinity:tri/batched-bench","gHashTag/trinity:tri/batched-demo","gHashTag/trinity:tri/bench","gHashTag/trinity:tri/bench-suite","gHashTag/trinity:tri/bench-verdict","gHashTag/trinity:tri/bio","gHashTag/trinity:tri/blindspots","gHashTag/trinity:tri/brain","gHashTag/trinity:tri/build","gHashTag/trinity:tri/cache-bench","gHashTag/trinity:tri/cache-demo","gHashTag/trinity:tri/capsec-bench","gHashTag/trinity:tri/capsec-demo","gHashTag/trinity:tri/cell","gHashTag/trinity:tri/chain","gHashTag/trinity:tri/chat","gHashTag/trinity:tri/check","gHashTag/trinity:tri/chem","gHashTag/trinity:tri/chimera","gHashTag/trinity:tri/chord","gHashTag/trinity:tri/clara","gHashTag/trinity:tri/clean","gHashTag/trinity:tri/cloud","gHashTag/trinity:tri/cluster-bench","gHashTag/trinity:tri/cluster-demo","gHashTag/trinity:tri/code","gHashTag/trinity:tri/commands","gHashTag/trinity:tri/commit","gHashTag/trinity:tri/comms-bench","gHashTag/trinity:tri/comms-demo","gHashTag/trinity:tri/completion","gHashTag/trinity:tri/conscious","gHashTag/trinity:tri/consensus-bench","gHashTag/trinity:tri/consensus-demo","gHashTag/trinity:tri/constants","gHashTag/trinity:tri/context","gHashTag/trinity:tri/context-bench","gHashTag/trinity:tri/context-demo","gHashTag/trinity:tri/context-load","gHashTag/trinity:tri/contract-bench","gHashTag/trinity:tri/contract-demo","gHashTag/trinity:tri/convert","gHashTag/trinity:tri/core","gHashTag/trinity:tri/cosmos","gHashTag/trinity:tri/dashboard","gHashTag/trinity:tri/deadline-bench","gHashTag/trinity:tri/deadline-demo","gHashTag/trinity:tri/deck","gHashTag/trinity:tri/decompose","gHashTag/trinity:tri/depin","gHashTag/trinity:tri/deploy","gHashTag/trinity:tri/dev","gHashTag/trinity:tri/diff","gHashTag/trinity:tri/dispatch","gHashTag/trinity:tri/distributed","gHashTag/trinity:tri/dm","gHashTag/trinity:tri/doc","gHashTag/trinity:tri/docs-gen","gHashTag/trinity:tri/doctor","gHashTag/trinity:tri/dtxn-bench","gHashTag/trinity:tri/dtxn-demo","gHashTag/trinity:tri/enrich","gHashTag/trinity:tri/eval","gHashTag/trinity:tri/event","gHashTag/trinity:tri/events","gHashTag/trinity:tri/eventsrc-bench","gHashTag/trinity:tri/eventsrc-demo","gHashTag/trinity:tri/evolve","gHashTag/trinity:tri/experience","gHashTag/trinity:tri/experiment","gHashTag/trinity:tri/explain","gHashTag/trinity:tri/faculty","gHashTag/trinity:tri/farm","gHashTag/trinity:tri/fedlearn-bench","gHashTag/trinity:tri/fedlearn-demo","gHashTag/trinity:tri/fib","gHashTag/trinity:tri/finetune-bench","gHashTag/trinity:tri/finetune-demo","gHashTag/trinity:tri/fix","gHashTag/trinity:tri/fmt","gHashTag/trinity:tri/forge","gHashTag/trinity:tri/forge-bench","gHashTag/trinity:tri/forge-verdict","gHashTag/trinity:tri/formula","gHashTag/trinity:tri/fpga","gHashTag/trinity:tri/fpga-demo","gHashTag/trinity:tri/frequency","gHashTag/trinity:tri/full-cycle","gHashTag/trinity:tri/gematria","gHashTag/trinity:tri/gen","gHashTag/trinity:tri/git","gHashTag/trinity:tri/golden-chain","gHashTag/trinity:tri/govern","gHashTag/trinity:tri/governor-bench","gHashTag/trinity:tri/governor-demo","gHashTag/trinity:tri/graphql","gHashTag/trinity:tri/gravity","gHashTag/trinity:tri/habenula","gHashTag/trinity:tri/hardware","gHashTag/trinity:tri/harmony","gHashTag/trinity:tri/help","gHashTag/trinity:tri/holo","gHashTag/trinity:tri/identity","gHashTag/trinity:tri/igla","gHashTag/trinity:tri/info","gHashTag/trinity:tri/init","gHashTag/trinity:tri/install","gHashTag/trinity:tri/intelligence","gHashTag/trinity:tri/issue","gHashTag/trinity:tri/job","gHashTag/trinity:tri/job-artifacts","gHashTag/trinity:tri/job-cancel","gHashTag/trinity:tri/job-list","gHashTag/trinity:tri/job-logs","gHashTag/trinity:tri/job-status","gHashTag/trinity:tri/kaggle","gHashTag/trinity:tri/launch","gHashTag/trinity:tri/lint","gHashTag/trinity:tri/log","gHashTag/trinity:tri/loop","gHashTag/trinity:tri/loop-decide","gHashTag/trinity:tri/lucas","gHashTag/trinity:tri/math","gHashTag/trinity:tri/math-agent","gHashTag/trinity:tri/math-diff","gHashTag/trinity:tri/math-doctor","gHashTag/trinity:tri/math-explain","gHashTag/trinity:tri/math-table","gHashTag/trinity:tri/math-verify","gHashTag/trinity:tri/mcp","gHashTag/trinity:tri/memory-bench","gHashTag/trinity:tri/memory-demo","gHashTag/trinity:tri/mesh","gHashTag/trinity:tri/metrics","gHashTag/trinity:tri/mmo-bench","gHashTag/trinity:tri/mmo-demo","gHashTag/trinity:tri/mu","gHashTag/trinity:tri/multi-cluster","gHashTag/trinity:tri/multimodal-bench","gHashTag/trinity:tri/multimodal-demo","gHashTag/trinity:tri/music","gHashTag/trinity:tri/needle","gHashTag/trinity:tri/needle-check","gHashTag/trinity:tri/needle-search","gHashTag/trinity:tri/neuro","gHashTag/trinity:tri/notify","gHashTag/trinity:tri/observe-bench","gHashTag/trinity:tri/observe-demo","gHashTag/trinity:tri/ofc","gHashTag/trinity:tri/omega","gHashTag/trinity:tri/omega-evolve","gHashTag/trinity:tri/omega-phase","gHashTag/trinity:tri/orch-bench","gHashTag/trinity:tri/orch-demo","gHashTag/trinity:tri/ouroboros","gHashTag/trinity:tri/particles","gHashTag/trinity:tri/patent","gHashTag/trinity:tri/persist-bench","gHashTag/trinity:tri/persist-demo","gHashTag/trinity:tri/phi","gHashTag/trinity:tri/phi-series","gHashTag/trinity:tri/phoenix","gHashTag/trinity:tri/pipeline","gHashTag/trinity:tri/pipeline-demo","gHashTag/trinity:tri/plan","gHashTag/trinity:tri/plugin-bench","gHashTag/trinity:tri/plugin-demo","gHashTag/trinity:tri/pr","gHashTag/trinity:tri/priority-bench","gHashTag/trinity:tri/priority-demo","gHashTag/trinity:tri/qcd","gHashTag/trinity:tri/quantum","gHashTag/trinity:tri/queen","gHashTag/trinity:tri/rag-bench","gHashTag/trinity:tri/rag-demo","gHashTag/trinity:tri/railway","gHashTag/trinity:tri/reason","gHashTag/trinity:tri/refactor","gHashTag/trinity:tri/registry-validate","gHashTag/trinity:tri/release","gHashTag/trinity:tri/release-cosmic","gHashTag/trinity:tri/reputation","gHashTag/trinity:tri/research","gHashTag/trinity:tri/resonance","gHashTag/trinity:tri/sacred","gHashTag/trinity:tri/sacred-const","gHashTag/trinity:tri/sandbox-bench","gHashTag/trinity:tri/sandbox-demo","gHashTag/trinity:tri/scale","gHashTag/trinity:tri/search","gHashTag/trinity:tri/sebo","gHashTag/trinity:tri/self","gHashTag/trinity:tri/serve","gHashTag/trinity:tri/sim","gHashTag/trinity:tri/sparc","gHashTag/trinity:tri/spawn-bench","gHashTag/trinity:tri/spawn-demo","gHashTag/trinity:tri/spec-create","gHashTag/trinity:tri/specexec-bench","gHashTag/trinity:tri/specexec-demo","gHashTag/trinity:tri/spiral","gHashTag/trinity:tri/stats","gHashTag/trinity:tri/status","gHashTag/trinity:tri/storm","gHashTag/trinity:tri/stream-bench","gHashTag/trinity:tri/stream-demo","gHashTag/trinity:tri/stress","gHashTag/trinity:tri/string","gHashTag/trinity:tri/swarm","gHashTag/trinity:tri/sync-check","gHashTag/trinity:tri/system","gHashTag/trinity:tri/task","gHashTag/trinity:tri/test","gHashTag/trinity:tri/test-repl","gHashTag/trinity:tri/time","gHashTag/trinity:tri/token","gHashTag/trinity:tri/tooluse-bench","gHashTag/trinity:tri/tooluse-demo","gHashTag/trinity:tri/toxic-verdict","gHashTag/trinity:tri/trace","gHashTag/trinity:tri/train","gHashTag/trinity:tri/tvc-demo","gHashTag/trinity:tri/tvc-stats","gHashTag/trinity:tri/ui","gHashTag/trinity:tri/unified-bench","gHashTag/trinity:tri/unified-demo","gHashTag/trinity:tri/verdict","gHashTag/trinity:tri/verify","gHashTag/trinity:tri/version","gHashTag/trinity:tri/vision-bench","gHashTag/trinity:tri/vision-demo","gHashTag/trinity:tri/voice-bench","gHashTag/trinity:tri/voice-demo","gHashTag/trinity:tri/vsa","gHashTag/trinity:tri/wallet","gHashTag/trinity:tri/waveform","gHashTag/trinity:tri/workflow-bench","gHashTag/trinity:tri/workflow-demo","gHashTag/trinity:tri/worksteal-bench","gHashTag/trinity:tri/worksteal-demo","gHashTag/trinity:tri/zenodo","tri/abandoned","tri/census","tri/ci","tri/competitors","tri/discard","tri/doctor","tri/elab","tri/emit","tri/fleet","tri/fmt","tri/fpga","tri/gates","tri/harness","tri/health","tri/hooks","tri/issues","tri/jumps","tri/kinds","tri/lean","tri/ledgers","tri/loop","tri/merging","tri/misread","tri/mods","tri/mutate","tri/now","tri/one-away","tri/orphaned","tri/pr","tri/prose","tri/quantifiers","tri/red","tri/reseal","tri/rtl","tri/seals","tri/serve","tri/skill","tri/status","tri/sweep","tri/synth","tri/topic","tri/types","tri/unparsed","tri/vectors","tri/vsim","tri/window","tri/worktrees"],"C":["tri/gen"],"E":["tri/experience"],"T":["tri/gen","tri/test"],"V":["tri/test","tri/verdict"],"W":["tri/cell"]},"triByRepo":{"gHashTag/BrowserOS":["gHashTag/BrowserOS:tri/ab","gHashTag/BrowserOS:tri/accept-rate","gHashTag/BrowserOS:tri/agree","gHashTag/BrowserOS:tri/anom","gHashTag/BrowserOS:tri/anomalies","gHashTag/BrowserOS:tri/author","gHashTag/BrowserOS:tri/backlog","gHashTag/BrowserOS:tri/blog","gHashTag/BrowserOS:tri/board","gHashTag/BrowserOS:tri/boundary","gHashTag/BrowserOS:tri/brief-gate","gHashTag/BrowserOS:tri/cast","gHashTag/BrowserOS:tri/channel","gHashTag/BrowserOS:tri/chat","gHashTag/BrowserOS:tri/ci-diff","gHashTag/BrowserOS:tri/clocks","gHashTag/BrowserOS:tri/close-done","gHashTag/BrowserOS:tri/container","gHashTag/BrowserOS:tri/coverage","gHashTag/BrowserOS:tri/cycle","gHashTag/BrowserOS:tri/cycle-anom","gHashTag/BrowserOS:tri/cycle-anomalies","gHashTag/BrowserOS:tri/cycle-dash","gHashTag/BrowserOS:tri/cycle-doctor","gHashTag/BrowserOS:tri/cycle-html","gHashTag/BrowserOS:tri/cycle-log","gHashTag/BrowserOS:tri/cycle-note","gHashTag/BrowserOS:tri/cycle-repair","gHashTag/BrowserOS:tri/cycle-sense","gHashTag/BrowserOS:tri/dash","gHashTag/BrowserOS:tri/dash2","gHashTag/BrowserOS:tri/deploy-wait","gHashTag/BrowserOS:tri/devkit","gHashTag/BrowserOS:tri/drift","gHashTag/BrowserOS:tri/driver","gHashTag/BrowserOS:tri/exposure","gHashTag/BrowserOS:tri/facts","gHashTag/BrowserOS:tri/failures","gHashTag/BrowserOS:tri/feed","gHashTag/BrowserOS:tri/fence","gHashTag/BrowserOS:tri/fields","gHashTag/BrowserOS:tri/flaky","gHashTag/BrowserOS:tri/forked-files","gHashTag/BrowserOS:tri/fp-check","gHashTag/BrowserOS:tri/fpga","gHashTag/BrowserOS:tri/fpga-audit","gHashTag/BrowserOS:tri/fpga-batch","gHashTag/BrowserOS:tri/fpga-batch-cosim","gHashTag/BrowserOS:tri/fpga-batch-rehearsal","gHashTag/BrowserOS:tri/fpga-budget","gHashTag/BrowserOS:tri/fpga-build","gHashTag/BrowserOS:tri/fpga-claim","gHashTag/BrowserOS:tri/fpga-cost","gHashTag/BrowserOS:tri/fpga-decode","gHashTag/BrowserOS:tri/fpga-derive","gHashTag/BrowserOS:tri/fpga-fire","gHashTag/BrowserOS:tri/fpga-firelog","gHashTag/BrowserOS:tri/fpga-flash","gHashTag/BrowserOS:tri/fpga-genscore","gHashTag/BrowserOS:tri/fpga-hole","gHashTag/BrowserOS:tri/fpga-hostnet","gHashTag/BrowserOS:tri/fpga-ioclients","gHashTag/BrowserOS:tri/fpga-jtag","gHashTag/BrowserOS:tri/fpga-keep","gHashTag/BrowserOS:tri/fpga-keycheck","gHashTag/BrowserOS:tri/fpga-lesson","gHashTag/BrowserOS:tri/fpga-loopcheck","gHashTag/BrowserOS:tri/fpga-loopstate","gHashTag/BrowserOS:tri/fpga-next","gHashTag/BrowserOS:tri/fpga-pins","gHashTag/BrowserOS:tri/fpga-prcheck","gHashTag/BrowserOS:tri/fpga-push","gHashTag/BrowserOS:tri/fpga-quiet","gHashTag/BrowserOS:tri/fpga-rehearse","gHashTag/BrowserOS:tri/fpga-release","gHashTag/BrowserOS:tri/fpga-repin","gHashTag/BrowserOS:tri/fpga-restore","gHashTag/BrowserOS:tri/fpga-run","gHashTag/BrowserOS:tri/fpga-runlog","gHashTag/BrowserOS:tri/fpga-rxcap","gHashTag/BrowserOS:tri/fpga-rxer","gHashTag/BrowserOS:tri/fpga-seeds","gHashTag/BrowserOS:tri/fpga-selftest","gHashTag/BrowserOS:tri/fpga-specs","gHashTag/BrowserOS:tri/fpga-stamps","gHashTag/BrowserOS:tri/fpga-status","gHashTag/BrowserOS:tri/fpga-steps","gHashTag/BrowserOS:tri/fpga-task","gHashTag/BrowserOS:tri/fpga-tmpcheck","gHashTag/BrowserOS:tri/fpga-tools","gHashTag/BrowserOS:tri/fpga-tristate","gHashTag/BrowserOS:tri/fpga-txhold","gHashTag/BrowserOS:tri/fpga-usb","gHashTag/BrowserOS:tri/fpga-watch-clients","gHashTag/BrowserOS:tri/fpga-wire","gHashTag/BrowserOS:tri/game","gHashTag/BrowserOS:tri/game-activity","gHashTag/BrowserOS:tri/game-anomalies","gHashTag/BrowserOS:tri/game-bar","gHashTag/BrowserOS:tri/game-bees","gHashTag/BrowserOS:tri/game-blog","gHashTag/BrowserOS:tri/game-branch","gHashTag/BrowserOS:tri/game-cadence","gHashTag/BrowserOS:tri/game-claim","gHashTag/BrowserOS:tri/game-clock","gHashTag/BrowserOS:tri/game-close","gHashTag/BrowserOS:tri/game-contract","gHashTag/BrowserOS:tri/game-copy","gHashTag/BrowserOS:tri/game-dash","gHashTag/BrowserOS:tri/game-events","gHashTag/BrowserOS:tri/game-feed","gHashTag/BrowserOS:tri/game-finding","gHashTag/BrowserOS:tri/game-foundation","gHashTag/BrowserOS:tri/game-gate","gHashTag/BrowserOS:tri/game-gates","gHashTag/BrowserOS:tri/game-ingest","gHashTag/BrowserOS:tri/game-iterate","gHashTag/BrowserOS:tri/game-lesson","gHashTag/BrowserOS:tri/game-lessons","gHashTag/BrowserOS:tri/game-local","gHashTag/BrowserOS:tri/game-measure","gHashTag/BrowserOS:tri/game-merged","gHashTag/BrowserOS:tri/game-models","gHashTag/BrowserOS:tri/game-next","gHashTag/BrowserOS:tri/game-objects","gHashTag/BrowserOS:tri/game-plan","gHashTag/BrowserOS:tri/game-prove","gHashTag/BrowserOS:tri/game-release","gHashTag/BrowserOS:tri/game-report","gHashTag/BrowserOS:tri/game-round","gHashTag/BrowserOS:tri/game-selftest","gHashTag/BrowserOS:tri/game-served","gHashTag/BrowserOS:tri/game-ship","gHashTag/BrowserOS:tri/game-site","gHashTag/BrowserOS:tri/game-spike","gHashTag/BrowserOS:tri/game-status","gHashTag/BrowserOS:tri/game-task","gHashTag/BrowserOS:tri/game-tick","gHashTag/BrowserOS:tri/game-vault","gHashTag/BrowserOS:tri/game-verdicts","gHashTag/BrowserOS:tri/game-verify","gHashTag/BrowserOS:tri/game-wire","gHashTag/BrowserOS:tri/game-writers","gHashTag/BrowserOS:tri/handover","gHashTag/BrowserOS:tri/handover-116-archived","gHashTag/BrowserOS:tri/heal","gHashTag/BrowserOS:tri/help","gHashTag/BrowserOS:tri/holds","gHashTag/BrowserOS:tri/idle","gHashTag/BrowserOS:tri/iter","gHashTag/BrowserOS:tri/iter-anchors","gHashTag/BrowserOS:tri/iter-dash","gHashTag/BrowserOS:tri/iter-log","gHashTag/BrowserOS:tri/iter-render","gHashTag/BrowserOS:tri/iter-unlock","gHashTag/BrowserOS:tri/jobs","gHashTag/BrowserOS:tri/jobs-anomalies","gHashTag/BrowserOS:tri/jobs-board","gHashTag/BrowserOS:tri/jobs-check","gHashTag/BrowserOS:tri/jobs-dash","gHashTag/BrowserOS:tri/jobs-drafts","gHashTag/BrowserOS:tri/jobs-guards","gHashTag/BrowserOS:tri/jobs-journal","gHashTag/BrowserOS:tri/jobs-leads","gHashTag/BrowserOS:tri/jobs-lesson","gHashTag/BrowserOS:tri/jobs-next","gHashTag/BrowserOS:tri/jobs-owed","gHashTag/BrowserOS:tri/jobs-run","gHashTag/BrowserOS:tri/jobs-show","gHashTag/BrowserOS:tri/judge-calibration","gHashTag/BrowserOS:tri/judge-packet","gHashTag/BrowserOS:tri/land","gHashTag/BrowserOS:tri/latency","gHashTag/BrowserOS:tri/learn","gHashTag/BrowserOS:tri/lease","gHashTag/BrowserOS:tri/lesson","gHashTag/BrowserOS:tri/lesson-orphans","gHashTag/BrowserOS:tri/live-verify","gHashTag/BrowserOS:tri/live-wait","gHashTag/BrowserOS:tri/locks","gHashTag/BrowserOS:tri/loop","gHashTag/BrowserOS:tri/loop-coverage","gHashTag/BrowserOS:tri/loop-lesson","gHashTag/BrowserOS:tri/loop-selftest","gHashTag/BrowserOS:tri/mix","gHashTag/BrowserOS:tri/morning","gHashTag/BrowserOS:tri/mutants-logic-refresh","gHashTag/BrowserOS:tri/needs-you","gHashTag/BrowserOS:tri/next","gHashTag/BrowserOS:tri/proof","gHashTag/BrowserOS:tri/prov","gHashTag/BrowserOS:tri/proven","gHashTag/BrowserOS:tri/providers","gHashTag/BrowserOS:tri/push-work","gHashTag/BrowserOS:tri/queue","gHashTag/BrowserOS:tri/reach","gHashTag/BrowserOS:tri/reap","gHashTag/BrowserOS:tri/reap-finished","gHashTag/BrowserOS:tri/reap-local","gHashTag/BrowserOS:tri/regress","gHashTag/BrowserOS:tri/regression","gHashTag/BrowserOS:tri/rejudge","gHashTag/BrowserOS:tri/rescue","gHashTag/BrowserOS:tri/salvage","gHashTag/BrowserOS:tri/selftest","gHashTag/BrowserOS:tri/share-modules","gHashTag/BrowserOS:tri/silent-loop","gHashTag/BrowserOS:tri/skills","gHashTag/BrowserOS:tri/spec-diag","gHashTag/BrowserOS:tri/stale-escalations","gHashTag/BrowserOS:tri/status","gHashTag/BrowserOS:tri/swarm","gHashTag/BrowserOS:tri/t27-gen","gHashTag/BrowserOS:tri/t27-parity","gHashTag/BrowserOS:tri/t27-tri","gHashTag/BrowserOS:tri/tb","gHashTag/BrowserOS:tri/tb-deploy","gHashTag/BrowserOS:tri/tb-lint","gHashTag/BrowserOS:tri/tb-verify","gHashTag/BrowserOS:tri/tc-abpair","gHashTag/BrowserOS:tri/tc-arena","gHashTag/BrowserOS:tri/tc-ask","gHashTag/BrowserOS:tri/tc-audit","gHashTag/BrowserOS:tri/tc-board","gHashTag/BrowserOS:tri/tc-card","gHashTag/BrowserOS:tri/tc-catalog","gHashTag/BrowserOS:tri/tc-cathead","gHashTag/BrowserOS:tri/tc-ceiling","gHashTag/BrowserOS:tri/tc-comptime","gHashTag/BrowserOS:tri/tc-contract","gHashTag/BrowserOS:tri/tc-coreleak","gHashTag/BrowserOS:tri/tc-cpuft","gHashTag/BrowserOS:tri/tc-cpuft-cmp","gHashTag/BrowserOS:tri/tc-cpuft-collect","gHashTag/BrowserOS:tri/tc-curve","gHashTag/BrowserOS:tri/tc-diffjudge","gHashTag/BrowserOS:tri/tc-disc","gHashTag/BrowserOS:tri/tc-draft","gHashTag/BrowserOS:tri/tc-gpuft","gHashTag/BrowserOS:tri/tc-honest","gHashTag/BrowserOS:tri/tc-loop","gHashTag/BrowserOS:tri/tc-maskcheck","gHashTag/BrowserOS:tri/tc-mutant3","gHashTag/BrowserOS:tri/tc-mutscore","gHashTag/BrowserOS:tri/tc-pair","gHashTag/BrowserOS:tri/tc-podwait","gHashTag/BrowserOS:tri/tc-prefill","gHashTag/BrowserOS:tri/tc-reach","gHashTag/BrowserOS:tri/tc-relabel","gHashTag/BrowserOS:tri/tc-remote","gHashTag/BrowserOS:tri/tc-restore","gHashTag/BrowserOS:tri/tc-retrieve","gHashTag/BrowserOS:tri/tc-rounds","gHashTag/BrowserOS:tri/tc-seen","gHashTag/BrowserOS:tri/tc-soundness","gHashTag/BrowserOS:tri/tc-speed","gHashTag/BrowserOS:tri/tc-sync","gHashTag/BrowserOS:tri/tc-t27bench","gHashTag/BrowserOS:tri/tc-t27mask","gHashTag/BrowserOS:tri/tc-t27selfcheck","gHashTag/BrowserOS:tri/tc-taxonomy","gHashTag/BrowserOS:tri/tc-val","gHashTag/BrowserOS:tri/tg-dialogs","gHashTag/BrowserOS:tri/tg-msg","gHashTag/BrowserOS:tri/tg-search","gHashTag/BrowserOS:tri/tg-unread","gHashTag/BrowserOS:tri/tg-who","gHashTag/BrowserOS:tri/trend","gHashTag/BrowserOS:tri/trinity-report","gHashTag/BrowserOS:tri/two-views","gHashTag/BrowserOS:tri/unpark","gHashTag/BrowserOS:tri/unverdicted","gHashTag/BrowserOS:tri/unwired","gHashTag/BrowserOS:tri/verdict-audit","gHashTag/BrowserOS:tri/verdicts","gHashTag/BrowserOS:tri/verify","gHashTag/BrowserOS:tri/vibee-feed","gHashTag/BrowserOS:tri/wave","gHashTag/BrowserOS:tri/wave-plan","gHashTag/BrowserOS:tri/which-board","gHashTag/BrowserOS:tri/why","gHashTag/BrowserOS:tri/x7-audit","gHashTag/BrowserOS:tri/x7-bench","gHashTag/BrowserOS:tri/x7-board","gHashTag/BrowserOS:tri/x7-claim","gHashTag/BrowserOS:tri/x7-fasm","gHashTag/BrowserOS:tri/x7-lesson","gHashTag/BrowserOS:tri/x7-mutate","gHashTag/BrowserOS:tri/x7-next","gHashTag/BrowserOS:tri/x7-part","gHashTag/BrowserOS:tri/x7-refs","gHashTag/BrowserOS:tri/x7-release","gHashTag/BrowserOS:tri/x7-status","gHashTag/BrowserOS:tri/x7-task","gHashTag/BrowserOS:tri/x7-writer"],"gHashTag/t27":["tri/abandoned","tri/cell","tri/census","tri/ci","tri/competitors","tri/discard","tri/doctor","tri/elab","tri/emit","tri/experience","tri/fleet","tri/fmt","tri/fpga","tri/gates","tri/gen","tri/harness","tri/health","tri/hooks","tri/issues","tri/jumps","tri/kinds","tri/lean","tri/ledgers","tri/loop","tri/merging","tri/misread","tri/mods","tri/mutate","tri/now","tri/one-away","tri/orphaned","tri/pr","tri/prose","tri/quantifiers","tri/red","tri/reseal","tri/rtl","tri/seals","tri/serve","tri/skill","tri/status","tri/sweep","tri/synth","tri/test","tri/topic","tri/types","tri/unparsed","tri/vectors","tri/verdict","tri/vsim","tri/window","tri/worktrees"],"gHashTag/trinity":["gHashTag/trinity:tri/agents-bench","gHashTag/trinity:tri/agents-demo","gHashTag/trinity:tri/all","gHashTag/trinity:tri/amygdala","gHashTag/trinity:tri/analyze","gHashTag/trinity:tri/auto-bench","gHashTag/trinity:tri/auto-demo","gHashTag/trinity:tri/autocomplete","gHashTag/trinity:tri/batched-bench","gHashTag/trinity:tri/batched-demo","gHashTag/trinity:tri/bench","gHashTag/trinity:tri/bench-suite","gHashTag/trinity:tri/bench-verdict","gHashTag/trinity:tri/bio","gHashTag/trinity:tri/blindspots","gHashTag/trinity:tri/brain","gHashTag/trinity:tri/build","gHashTag/trinity:tri/cache-bench","gHashTag/trinity:tri/cache-demo","gHashTag/trinity:tri/capsec-bench","gHashTag/trinity:tri/capsec-demo","gHashTag/trinity:tri/cell","gHashTag/trinity:tri/chain","gHashTag/trinity:tri/chat","gHashTag/trinity:tri/check","gHashTag/trinity:tri/chem","gHashTag/trinity:tri/chimera","gHashTag/trinity:tri/chord","gHashTag/trinity:tri/clara","gHashTag/trinity:tri/clean","gHashTag/trinity:tri/cloud","gHashTag/trinity:tri/cluster-bench","gHashTag/trinity:tri/cluster-demo","gHashTag/trinity:tri/code","gHashTag/trinity:tri/commands","gHashTag/trinity:tri/commit","gHashTag/trinity:tri/comms-bench","gHashTag/trinity:tri/comms-demo","gHashTag/trinity:tri/completion","gHashTag/trinity:tri/conscious","gHashTag/trinity:tri/consensus-bench","gHashTag/trinity:tri/consensus-demo","gHashTag/trinity:tri/constants","gHashTag/trinity:tri/context","gHashTag/trinity:tri/context-bench","gHashTag/trinity:tri/context-demo","gHashTag/trinity:tri/context-load","gHashTag/trinity:tri/contract-bench","gHashTag/trinity:tri/contract-demo","gHashTag/trinity:tri/convert","gHashTag/trinity:tri/core","gHashTag/trinity:tri/cosmos","gHashTag/trinity:tri/dashboard","gHashTag/trinity:tri/deadline-bench","gHashTag/trinity:tri/deadline-demo","gHashTag/trinity:tri/deck","gHashTag/trinity:tri/decompose","gHashTag/trinity:tri/depin","gHashTag/trinity:tri/deploy","gHashTag/trinity:tri/dev","gHashTag/trinity:tri/diff","gHashTag/trinity:tri/dispatch","gHashTag/trinity:tri/distributed","gHashTag/trinity:tri/dm","gHashTag/trinity:tri/doc","gHashTag/trinity:tri/docs-gen","gHashTag/trinity:tri/doctor","gHashTag/trinity:tri/dtxn-bench","gHashTag/trinity:tri/dtxn-demo","gHashTag/trinity:tri/enrich","gHashTag/trinity:tri/eval","gHashTag/trinity:tri/event","gHashTag/trinity:tri/events","gHashTag/trinity:tri/eventsrc-bench","gHashTag/trinity:tri/eventsrc-demo","gHashTag/trinity:tri/evolve","gHashTag/trinity:tri/experience","gHashTag/trinity:tri/experiment","gHashTag/trinity:tri/explain","gHashTag/trinity:tri/faculty","gHashTag/trinity:tri/farm","gHashTag/trinity:tri/fedlearn-bench","gHashTag/trinity:tri/fedlearn-demo","gHashTag/trinity:tri/fib","gHashTag/trinity:tri/finetune-bench","gHashTag/trinity:tri/finetune-demo","gHashTag/trinity:tri/fix","gHashTag/trinity:tri/fmt","gHashTag/trinity:tri/forge","gHashTag/trinity:tri/forge-bench","gHashTag/trinity:tri/forge-verdict","gHashTag/trinity:tri/formula","gHashTag/trinity:tri/fpga","gHashTag/trinity:tri/fpga-demo","gHashTag/trinity:tri/frequency","gHashTag/trinity:tri/full-cycle","gHashTag/trinity:tri/gematria","gHashTag/trinity:tri/gen","gHashTag/trinity:tri/git","gHashTag/trinity:tri/golden-chain","gHashTag/trinity:tri/govern","gHashTag/trinity:tri/governor-bench","gHashTag/trinity:tri/governor-demo","gHashTag/trinity:tri/graphql","gHashTag/trinity:tri/gravity","gHashTag/trinity:tri/habenula","gHashTag/trinity:tri/hardware","gHashTag/trinity:tri/harmony","gHashTag/trinity:tri/help","gHashTag/trinity:tri/holo","gHashTag/trinity:tri/identity","gHashTag/trinity:tri/igla","gHashTag/trinity:tri/info","gHashTag/trinity:tri/init","gHashTag/trinity:tri/install","gHashTag/trinity:tri/intelligence","gHashTag/trinity:tri/issue","gHashTag/trinity:tri/job","gHashTag/trinity:tri/job-artifacts","gHashTag/trinity:tri/job-cancel","gHashTag/trinity:tri/job-list","gHashTag/trinity:tri/job-logs","gHashTag/trinity:tri/job-status","gHashTag/trinity:tri/kaggle","gHashTag/trinity:tri/launch","gHashTag/trinity:tri/lint","gHashTag/trinity:tri/log","gHashTag/trinity:tri/loop","gHashTag/trinity:tri/loop-decide","gHashTag/trinity:tri/lucas","gHashTag/trinity:tri/math","gHashTag/trinity:tri/math-agent","gHashTag/trinity:tri/math-diff","gHashTag/trinity:tri/math-doctor","gHashTag/trinity:tri/math-explain","gHashTag/trinity:tri/math-table","gHashTag/trinity:tri/math-verify","gHashTag/trinity:tri/mcp","gHashTag/trinity:tri/memory-bench","gHashTag/trinity:tri/memory-demo","gHashTag/trinity:tri/mesh","gHashTag/trinity:tri/metrics","gHashTag/trinity:tri/mmo-bench","gHashTag/trinity:tri/mmo-demo","gHashTag/trinity:tri/mu","gHashTag/trinity:tri/multi-cluster","gHashTag/trinity:tri/multimodal-bench","gHashTag/trinity:tri/multimodal-demo","gHashTag/trinity:tri/music","gHashTag/trinity:tri/needle","gHashTag/trinity:tri/needle-check","gHashTag/trinity:tri/needle-search","gHashTag/trinity:tri/neuro","gHashTag/trinity:tri/notify","gHashTag/trinity:tri/observe-bench","gHashTag/trinity:tri/observe-demo","gHashTag/trinity:tri/ofc","gHashTag/trinity:tri/omega","gHashTag/trinity:tri/omega-evolve","gHashTag/trinity:tri/omega-phase","gHashTag/trinity:tri/orch-bench","gHashTag/trinity:tri/orch-demo","gHashTag/trinity:tri/ouroboros","gHashTag/trinity:tri/particles","gHashTag/trinity:tri/patent","gHashTag/trinity:tri/persist-bench","gHashTag/trinity:tri/persist-demo","gHashTag/trinity:tri/phi","gHashTag/trinity:tri/phi-series","gHashTag/trinity:tri/phoenix","gHashTag/trinity:tri/pipeline","gHashTag/trinity:tri/pipeline-demo","gHashTag/trinity:tri/plan","gHashTag/trinity:tri/plugin-bench","gHashTag/trinity:tri/plugin-demo","gHashTag/trinity:tri/pr","gHashTag/trinity:tri/priority-bench","gHashTag/trinity:tri/priority-demo","gHashTag/trinity:tri/qcd","gHashTag/trinity:tri/quantum","gHashTag/trinity:tri/queen","gHashTag/trinity:tri/rag-bench","gHashTag/trinity:tri/rag-demo","gHashTag/trinity:tri/railway","gHashTag/trinity:tri/reason","gHashTag/trinity:tri/refactor","gHashTag/trinity:tri/registry-validate","gHashTag/trinity:tri/release","gHashTag/trinity:tri/release-cosmic","gHashTag/trinity:tri/reputation","gHashTag/trinity:tri/research","gHashTag/trinity:tri/resonance","gHashTag/trinity:tri/sacred","gHashTag/trinity:tri/sacred-const","gHashTag/trinity:tri/sandbox-bench","gHashTag/trinity:tri/sandbox-demo","gHashTag/trinity:tri/scale","gHashTag/trinity:tri/search","gHashTag/trinity:tri/sebo","gHashTag/trinity:tri/self","gHashTag/trinity:tri/serve","gHashTag/trinity:tri/sim","gHashTag/trinity:tri/sparc","gHashTag/trinity:tri/spawn-bench","gHashTag/trinity:tri/spawn-demo","gHashTag/trinity:tri/spec-create","gHashTag/trinity:tri/specexec-bench","gHashTag/trinity:tri/specexec-demo","gHashTag/trinity:tri/spiral","gHashTag/trinity:tri/stats","gHashTag/trinity:tri/status","gHashTag/trinity:tri/storm","gHashTag/trinity:tri/stream-bench","gHashTag/trinity:tri/stream-demo","gHashTag/trinity:tri/stress","gHashTag/trinity:tri/string","gHashTag/trinity:tri/swarm","gHashTag/trinity:tri/sync-check","gHashTag/trinity:tri/system","gHashTag/trinity:tri/task","gHashTag/trinity:tri/test","gHashTag/trinity:tri/test-repl","gHashTag/trinity:tri/time","gHashTag/trinity:tri/token","gHashTag/trinity:tri/tooluse-bench","gHashTag/trinity:tri/tooluse-demo","gHashTag/trinity:tri/toxic-verdict","gHashTag/trinity:tri/trace","gHashTag/trinity:tri/train","gHashTag/trinity:tri/tvc-demo","gHashTag/trinity:tri/tvc-stats","gHashTag/trinity:tri/ui","gHashTag/trinity:tri/unified-bench","gHashTag/trinity:tri/unified-demo","gHashTag/trinity:tri/verdict","gHashTag/trinity:tri/verify","gHashTag/trinity:tri/version","gHashTag/trinity:tri/vision-bench","gHashTag/trinity:tri/vision-demo","gHashTag/trinity:tri/voice-bench","gHashTag/trinity:tri/voice-demo","gHashTag/trinity:tri/vsa","gHashTag/trinity:tri/wallet","gHashTag/trinity:tri/waveform","gHashTag/trinity:tri/workflow-bench","gHashTag/trinity:tri/workflow-demo","gHashTag/trinity:tri/worksteal-bench","gHashTag/trinity:tri/worksteal-demo","gHashTag/trinity:tri/zenodo"]}},"i18n":[{"bundle":"apps/website/i18n/agents.ru.json","coverage":{"n":92,"total":607},"enabled":true,"fields":["SUMMARY","NAME"],"locale":"ru","missing":["gHashTag/BrowserOS:tri/ab","gHashTag/BrowserOS:tri/accept-rate","gHashTag/BrowserOS:tri/agree","gHashTag/BrowserOS:tri/anom","gHashTag/BrowserOS:tri/anomalies","gHashTag/BrowserOS:tri/author","gHashTag/BrowserOS:tri/backlog","gHashTag/BrowserOS:tri/blog","gHashTag/BrowserOS:tri/board","gHashTag/BrowserOS:tri/boundary","gHashTag/BrowserOS:tri/brief-gate","gHashTag/BrowserOS:tri/cast","gHashTag/BrowserOS:tri/channel","gHashTag/BrowserOS:tri/chat","gHashTag/BrowserOS:tri/ci-diff","gHashTag/BrowserOS:tri/clocks","gHashTag/BrowserOS:tri/close-done","gHashTag/BrowserOS:tri/container","gHashTag/BrowserOS:tri/coverage","gHashTag/BrowserOS:tri/cycle","gHashTag/BrowserOS:tri/cycle-anom","gHashTag/BrowserOS:tri/cycle-anomalies","gHashTag/BrowserOS:tri/cycle-dash","gHashTag/BrowserOS:tri/cycle-doctor","gHashTag/BrowserOS:tri/cycle-html","gHashTag/BrowserOS:tri/cycle-log","gHashTag/BrowserOS:tri/cycle-note","gHashTag/BrowserOS:tri/cycle-repair","gHashTag/BrowserOS:tri/cycle-sense","gHashTag/BrowserOS:tri/dash","gHashTag/BrowserOS:tri/dash2","gHashTag/BrowserOS:tri/deploy-wait","gHashTag/BrowserOS:tri/devkit","gHashTag/BrowserOS:tri/drift","gHashTag/BrowserOS:tri/driver","gHashTag/BrowserOS:tri/exposure","gHashTag/BrowserOS:tri/facts","gHashTag/BrowserOS:tri/failures","gHashTag/BrowserOS:tri/feed","gHashTag/BrowserOS:tri/fence","gHashTag/BrowserOS:tri/fields","gHashTag/BrowserOS:tri/flaky","gHashTag/BrowserOS:tri/forked-files","gHashTag/BrowserOS:tri/fp-check","gHashTag/BrowserOS:tri/fpga","gHashTag/BrowserOS:tri/fpga-audit","gHashTag/BrowserOS:tri/fpga-batch","gHashTag/BrowserOS:tri/fpga-batch-cosim","gHashTag/BrowserOS:tri/fpga-batch-rehearsal","gHashTag/BrowserOS:tri/fpga-budget","gHashTag/BrowserOS:tri/fpga-build","gHashTag/BrowserOS:tri/fpga-claim","gHashTag/BrowserOS:tri/fpga-cost","gHashTag/BrowserOS:tri/fpga-decode","gHashTag/BrowserOS:tri/fpga-derive","gHashTag/BrowserOS:tri/fpga-fire","gHashTag/BrowserOS:tri/fpga-firelog","gHashTag/BrowserOS:tri/fpga-flash","gHashTag/BrowserOS:tri/fpga-genscore","gHashTag/BrowserOS:tri/fpga-hole","gHashTag/BrowserOS:tri/fpga-hostnet","gHashTag/BrowserOS:tri/fpga-ioclients","gHashTag/BrowserOS:tri/fpga-jtag","gHashTag/BrowserOS:tri/fpga-keep","gHashTag/BrowserOS:tri/fpga-keycheck","gHashTag/BrowserOS:tri/fpga-lesson","gHashTag/BrowserOS:tri/fpga-loopcheck","gHashTag/BrowserOS:tri/fpga-loopstate","gHashTag/BrowserOS:tri/fpga-next","gHashTag/BrowserOS:tri/fpga-pins","gHashTag/BrowserOS:tri/fpga-prcheck","gHashTag/BrowserOS:tri/fpga-push","gHashTag/BrowserOS:tri/fpga-quiet","gHashTag/BrowserOS:tri/fpga-rehearse","gHashTag/BrowserOS:tri/fpga-release","gHashTag/BrowserOS:tri/fpga-repin","gHashTag/BrowserOS:tri/fpga-restore","gHashTag/BrowserOS:tri/fpga-run","gHashTag/BrowserOS:tri/fpga-runlog","gHashTag/BrowserOS:tri/fpga-rxcap","gHashTag/BrowserOS:tri/fpga-rxer","gHashTag/BrowserOS:tri/fpga-seeds","gHashTag/BrowserOS:tri/fpga-selftest","gHashTag/BrowserOS:tri/fpga-specs","gHashTag/BrowserOS:tri/fpga-stamps","gHashTag/BrowserOS:tri/fpga-status","gHashTag/BrowserOS:tri/fpga-steps","gHashTag/BrowserOS:tri/fpga-task","gHashTag/BrowserOS:tri/fpga-tmpcheck","gHashTag/BrowserOS:tri/fpga-tools","gHashTag/BrowserOS:tri/fpga-tristate","gHashTag/BrowserOS:tri/fpga-txhold","gHashTag/BrowserOS:tri/fpga-usb","gHashTag/BrowserOS:tri/fpga-watch-clients","gHashTag/BrowserOS:tri/fpga-wire","gHashTag/BrowserOS:tri/game","gHashTag/BrowserOS:tri/game-activity","gHashTag/BrowserOS:tri/game-anomalies","gHashTag/BrowserOS:tri/game-bar","gHashTag/BrowserOS:tri/game-bees","gHashTag/BrowserOS:tri/game-blog","gHashTag/BrowserOS:tri/game-branch","gHashTag/BrowserOS:tri/game-cadence","gHashTag/BrowserOS:tri/game-claim","gHashTag/BrowserOS:tri/game-clock","gHashTag/BrowserOS:tri/game-close","gHashTag/BrowserOS:tri/game-contract","gHashTag/BrowserOS:tri/game-copy","gHashTag/BrowserOS:tri/game-dash","gHashTag/BrowserOS:tri/game-events","gHashTag/BrowserOS:tri/game-feed","gHashTag/BrowserOS:tri/game-finding","gHashTag/BrowserOS:tri/game-foundation","gHashTag/BrowserOS:tri/game-gate","gHashTag/BrowserOS:tri/game-gates","gHashTag/BrowserOS:tri/game-ingest","gHashTag/BrowserOS:tri/game-iterate","gHashTag/BrowserOS:tri/game-lesson","gHashTag/BrowserOS:tri/game-lessons","gHashTag/BrowserOS:tri/game-local","gHashTag/BrowserOS:tri/game-measure","gHashTag/BrowserOS:tri/game-merged","gHashTag/BrowserOS:tri/game-models","gHashTag/BrowserOS:tri/game-next","gHashTag/BrowserOS:tri/game-objects","gHashTag/BrowserOS:tri/game-plan","gHashTag/BrowserOS:tri/game-prove","gHashTag/BrowserOS:tri/game-release","gHashTag/BrowserOS:tri/game-report","gHashTag/BrowserOS:tri/game-round","gHashTag/BrowserOS:tri/game-selftest","gHashTag/BrowserOS:tri/game-served","gHashTag/BrowserOS:tri/game-ship","gHashTag/BrowserOS:tri/game-site","gHashTag/BrowserOS:tri/game-spike","gHashTag/BrowserOS:tri/game-status","gHashTag/BrowserOS:tri/game-task","gHashTag/BrowserOS:tri/game-tick","gHashTag/BrowserOS:tri/game-vault","gHashTag/BrowserOS:tri/game-verdicts","gHashTag/BrowserOS:tri/game-verify","gHashTag/BrowserOS:tri/game-wire","gHashTag/BrowserOS:tri/game-writers","gHashTag/BrowserOS:tri/handover","gHashTag/BrowserOS:tri/handover-116-archived","gHashTag/BrowserOS:tri/heal","gHashTag/BrowserOS:tri/help","gHashTag/BrowserOS:tri/holds","gHashTag/BrowserOS:tri/idle","gHashTag/BrowserOS:tri/iter","gHashTag/BrowserOS:tri/iter-anchors","gHashTag/BrowserOS:tri/iter-dash","gHashTag/BrowserOS:tri/iter-log","gHashTag/BrowserOS:tri/iter-render","gHashTag/BrowserOS:tri/iter-unlock","gHashTag/BrowserOS:tri/jobs","gHashTag/BrowserOS:tri/jobs-anomalies","gHashTag/BrowserOS:tri/jobs-board","gHashTag/BrowserOS:tri/jobs-check","gHashTag/BrowserOS:tri/jobs-dash","gHashTag/BrowserOS:tri/jobs-drafts","gHashTag/BrowserOS:tri/jobs-guards","gHashTag/BrowserOS:tri/jobs-journal","gHashTag/BrowserOS:tri/jobs-leads","gHashTag/BrowserOS:tri/jobs-lesson","gHashTag/BrowserOS:tri/jobs-next","gHashTag/BrowserOS:tri/jobs-owed","gHashTag/BrowserOS:tri/jobs-run","gHashTag/BrowserOS:tri/jobs-show","gHashTag/BrowserOS:tri/judge-calibration","gHashTag/BrowserOS:tri/judge-packet","gHashTag/BrowserOS:tri/land","gHashTag/BrowserOS:tri/latency","gHashTag/BrowserOS:tri/learn","gHashTag/BrowserOS:tri/lease","gHashTag/BrowserOS:tri/lesson","gHashTag/BrowserOS:tri/lesson-orphans","gHashTag/BrowserOS:tri/live-verify","gHashTag/BrowserOS:tri/live-wait","gHashTag/BrowserOS:tri/locks","gHashTag/BrowserOS:tri/loop","gHashTag/BrowserOS:tri/loop-coverage","gHashTag/BrowserOS:tri/loop-lesson","gHashTag/BrowserOS:tri/loop-selftest","gHashTag/BrowserOS:tri/mix","gHashTag/BrowserOS:tri/morning","gHashTag/BrowserOS:tri/mutants-logic-refresh","gHashTag/BrowserOS:tri/needs-you","gHashTag/BrowserOS:tri/next","gHashTag/BrowserOS:tri/proof","gHashTag/BrowserOS:tri/prov","gHashTag/BrowserOS:tri/proven","gHashTag/BrowserOS:tri/providers","gHashTag/BrowserOS:tri/push-work","gHashTag/BrowserOS:tri/queue","gHashTag/BrowserOS:tri/reach","gHashTag/BrowserOS:tri/reap","gHashTag/BrowserOS:tri/reap-finished","gHashTag/BrowserOS:tri/reap-local","gHashTag/BrowserOS:tri/regress","gHashTag/BrowserOS:tri/regression","gHashTag/BrowserOS:tri/rejudge","gHashTag/BrowserOS:tri/rescue","gHashTag/BrowserOS:tri/salvage","gHashTag/BrowserOS:tri/selftest","gHashTag/BrowserOS:tri/share-modules","gHashTag/BrowserOS:tri/silent-loop","gHashTag/BrowserOS:tri/skills","gHashTag/BrowserOS:tri/spec-diag","gHashTag/BrowserOS:tri/stale-escalations","gHashTag/BrowserOS:tri/status","gHashTag/BrowserOS:tri/swarm","gHashTag/BrowserOS:tri/t27-gen","gHashTag/BrowserOS:tri/t27-parity","gHashTag/BrowserOS:tri/t27-tri","gHashTag/BrowserOS:tri/tb","gHashTag/BrowserOS:tri/tb-deploy","gHashTag/BrowserOS:tri/tb-lint","gHashTag/BrowserOS:tri/tb-verify","gHashTag/BrowserOS:tri/tc-abpair","gHashTag/BrowserOS:tri/tc-arena","gHashTag/BrowserOS:tri/tc-ask","gHashTag/BrowserOS:tri/tc-audit","gHashTag/BrowserOS:tri/tc-board","gHashTag/BrowserOS:tri/tc-card","gHashTag/BrowserOS:tri/tc-catalog","gHashTag/BrowserOS:tri/tc-cathead","gHashTag/BrowserOS:tri/tc-ceiling","gHashTag/BrowserOS:tri/tc-comptime","gHashTag/BrowserOS:tri/tc-contract","gHashTag/BrowserOS:tri/tc-coreleak","gHashTag/BrowserOS:tri/tc-cpuft","gHashTag/BrowserOS:tri/tc-cpuft-cmp","gHashTag/BrowserOS:tri/tc-cpuft-collect","gHashTag/BrowserOS:tri/tc-curve","gHashTag/BrowserOS:tri/tc-diffjudge","gHashTag/BrowserOS:tri/tc-disc","gHashTag/BrowserOS:tri/tc-draft","gHashTag/BrowserOS:tri/tc-gpuft","gHashTag/BrowserOS:tri/tc-honest","gHashTag/BrowserOS:tri/tc-loop","gHashTag/BrowserOS:tri/tc-maskcheck","gHashTag/BrowserOS:tri/tc-mutant3","gHashTag/BrowserOS:tri/tc-mutscore","gHashTag/BrowserOS:tri/tc-pair","gHashTag/BrowserOS:tri/tc-podwait","gHashTag/BrowserOS:tri/tc-prefill","gHashTag/BrowserOS:tri/tc-reach","gHashTag/BrowserOS:tri/tc-relabel","gHashTag/BrowserOS:tri/tc-remote","gHashTag/BrowserOS:tri/tc-restore","gHashTag/BrowserOS:tri/tc-retrieve","gHashTag/BrowserOS:tri/tc-rounds","gHashTag/BrowserOS:tri/tc-seen","gHashTag/BrowserOS:tri/tc-soundness","gHashTag/BrowserOS:tri/tc-speed","gHashTag/BrowserOS:tri/tc-sync","gHashTag/BrowserOS:tri/tc-t27bench","gHashTag/BrowserOS:tri/tc-t27mask","gHashTag/BrowserOS:tri/tc-t27selfcheck","gHashTag/BrowserOS:tri/tc-taxonomy","gHashTag/BrowserOS:tri/tc-val","gHashTag/BrowserOS:tri/tg-dialogs","gHashTag/BrowserOS:tri/tg-msg","gHashTag/BrowserOS:tri/tg-search","gHashTag/BrowserOS:tri/tg-unread","gHashTag/BrowserOS:tri/tg-who","gHashTag/BrowserOS:tri/trend","gHashTag/BrowserOS:tri/trinity-report","gHashTag/BrowserOS:tri/two-views","gHashTag/BrowserOS:tri/unpark","gHashTag/BrowserOS:tri/unverdicted","gHashTag/BrowserOS:tri/unwired","gHashTag/BrowserOS:tri/verdict-audit","gHashTag/BrowserOS:tri/verdicts","gHashTag/BrowserOS:tri/verify","gHashTag/BrowserOS:tri/vibee-feed","gHashTag/BrowserOS:tri/wave","gHashTag/BrowserOS:tri/wave-plan","gHashTag/BrowserOS:tri/which-board","gHashTag/BrowserOS:tri/why","gHashTag/BrowserOS:tri/x7-audit","gHashTag/BrowserOS:tri/x7-bench","gHashTag/BrowserOS:tri/x7-board","gHashTag/BrowserOS:tri/x7-claim","gHashTag/BrowserOS:tri/x7-fasm","gHashTag/BrowserOS:tri/x7-lesson","gHashTag/BrowserOS:tri/x7-mutate","gHashTag/BrowserOS:tri/x7-next","gHashTag/BrowserOS:tri/x7-part","gHashTag/BrowserOS:tri/x7-refs","gHashTag/BrowserOS:tri/x7-release","gHashTag/BrowserOS:tri/x7-status","gHashTag/BrowserOS:tri/x7-task","gHashTag/BrowserOS:tri/x7-writer","gHashTag/trinity:tri/agents-bench","gHashTag/trinity:tri/agents-demo","gHashTag/trinity:tri/all","gHashTag/trinity:tri/amygdala","gHashTag/trinity:tri/analyze","gHashTag/trinity:tri/auto-bench","gHashTag/trinity:tri/auto-demo","gHashTag/trinity:tri/autocomplete","gHashTag/trinity:tri/batched-bench","gHashTag/trinity:tri/batched-demo","gHashTag/trinity:tri/bench-suite","gHashTag/trinity:tri/bench-verdict","gHashTag/trinity:tri/brain","gHashTag/trinity:tri/build","gHashTag/trinity:tri/cache-bench","gHashTag/trinity:tri/cache-demo","gHashTag/trinity:tri/capsec-bench","gHashTag/trinity:tri/capsec-demo","gHashTag/trinity:tri/cell","gHashTag/trinity:tri/chain","gHashTag/trinity:tri/chat","gHashTag/trinity:tri/check","gHashTag/trinity:tri/chem","gHashTag/trinity:tri/chimera","gHashTag/trinity:tri/chord","gHashTag/trinity:tri/clara","gHashTag/trinity:tri/clean","gHashTag/trinity:tri/cloud","gHashTag/trinity:tri/cluster-bench","gHashTag/trinity:tri/cluster-demo","gHashTag/trinity:tri/code","gHashTag/trinity:tri/commands","gHashTag/trinity:tri/commit","gHashTag/trinity:tri/comms-bench","gHashTag/trinity:tri/comms-demo","gHashTag/trinity:tri/completion","gHashTag/trinity:tri/consensus-bench","gHashTag/trinity:tri/consensus-demo","gHashTag/trinity:tri/context","gHashTag/trinity:tri/context-bench","gHashTag/trinity:tri/context-demo","gHashTag/trinity:tri/context-load","gHashTag/trinity:tri/contract-bench","gHashTag/trinity:tri/contract-demo","gHashTag/trinity:tri/convert","gHashTag/trinity:tri/core","gHashTag/trinity:tri/deadline-bench","gHashTag/trinity:tri/deadline-demo","gHashTag/trinity:tri/deck","gHashTag/trinity:tri/decompose","gHashTag/trinity:tri/depin","gHashTag/trinity:tri/deploy","gHashTag/trinity:tri/dev","gHashTag/trinity:tri/diff","gHashTag/trinity:tri/dispatch","gHashTag/trinity:tri/distributed","gHashTag/trinity:tri/dm","gHashTag/trinity:tri/doc","gHashTag/trinity:tri/docs-gen","gHashTag/trinity:tri/doctor","gHashTag/trinity:tri/dtxn-bench","gHashTag/trinity:tri/dtxn-demo","gHashTag/trinity:tri/enrich","gHashTag/trinity:tri/eval","gHashTag/trinity:tri/event","gHashTag/trinity:tri/events","gHashTag/trinity:tri/eventsrc-bench","gHashTag/trinity:tri/eventsrc-demo","gHashTag/trinity:tri/evolve","gHashTag/trinity:tri/experience","gHashTag/trinity:tri/experiment","gHashTag/trinity:tri/explain","gHashTag/trinity:tri/faculty","gHashTag/trinity:tri/farm","gHashTag/trinity:tri/fedlearn-bench","gHashTag/trinity:tri/fedlearn-demo","gHashTag/trinity:tri/finetune-bench","gHashTag/trinity:tri/finetune-demo","gHashTag/trinity:tri/fix","gHashTag/trinity:tri/fmt","gHashTag/trinity:tri/forge","gHashTag/trinity:tri/forge-bench","gHashTag/trinity:tri/forge-verdict","gHashTag/trinity:tri/formula","gHashTag/trinity:tri/fpga-demo","gHashTag/trinity:tri/frequency","gHashTag/trinity:tri/full-cycle","gHashTag/trinity:tri/gen","gHashTag/trinity:tri/git","gHashTag/trinity:tri/golden-chain","gHashTag/trinity:tri/governor-bench","gHashTag/trinity:tri/governor-demo","gHashTag/trinity:tri/graphql","gHashTag/trinity:tri/gravity","gHashTag/trinity:tri/habenula","gHashTag/trinity:tri/harmony","gHashTag/trinity:tri/help","gHashTag/trinity:tri/holo","gHashTag/trinity:tri/igla","gHashTag/trinity:tri/info","gHashTag/trinity:tri/init","gHashTag/trinity:tri/install","gHashTag/trinity:tri/intelligence","gHashTag/trinity:tri/issue","gHashTag/trinity:tri/job","gHashTag/trinity:tri/job-artifacts","gHashTag/trinity:tri/job-cancel","gHashTag/trinity:tri/job-list","gHashTag/trinity:tri/job-logs","gHashTag/trinity:tri/job-status","gHashTag/trinity:tri/kaggle","gHashTag/trinity:tri/launch","gHashTag/trinity:tri/lint","gHashTag/trinity:tri/log","gHashTag/trinity:tri/loop","gHashTag/trinity:tri/loop-decide","gHashTag/trinity:tri/math","gHashTag/trinity:tri/math-agent","gHashTag/trinity:tri/math-diff","gHashTag/trinity:tri/math-doctor","gHashTag/trinity:tri/math-explain","gHashTag/trinity:tri/math-table","gHashTag/trinity:tri/math-verify","gHashTag/trinity:tri/mcp","gHashTag/trinity:tri/memory-bench","gHashTag/trinity:tri/memory-demo","gHashTag/trinity:tri/metrics","gHashTag/trinity:tri/mmo-bench","gHashTag/trinity:tri/mmo-demo","gHashTag/trinity:tri/mu","gHashTag/trinity:tri/multi-cluster","gHashTag/trinity:tri/multimodal-bench","gHashTag/trinity:tri/multimodal-demo","gHashTag/trinity:tri/music","gHashTag/trinity:tri/neuro","gHashTag/trinity:tri/notify","gHashTag/trinity:tri/observe-bench","gHashTag/trinity:tri/observe-demo","gHashTag/trinity:tri/ofc","gHashTag/trinity:tri/omega-evolve","gHashTag/trinity:tri/omega-phase","gHashTag/trinity:tri/orch-bench","gHashTag/trinity:tri/orch-demo","gHashTag/trinity:tri/ouroboros","gHashTag/trinity:tri/patent","gHashTag/trinity:tri/persist-bench","gHashTag/trinity:tri/persist-demo","gHashTag/trinity:tri/phi-series","gHashTag/trinity:tri/phoenix","gHashTag/trinity:tri/pipeline","gHashTag/trinity:tri/pipeline-demo","gHashTag/trinity:tri/plan","gHashTag/trinity:tri/plugin-bench","gHashTag/trinity:tri/plugin-demo","gHashTag/trinity:tri/pr","gHashTag/trinity:tri/priority-bench","gHashTag/trinity:tri/priority-demo","gHashTag/trinity:tri/qcd","gHashTag/trinity:tri/queen","gHashTag/trinity:tri/rag-bench","gHashTag/trinity:tri/rag-demo","gHashTag/trinity:tri/railway","gHashTag/trinity:tri/reason","gHashTag/trinity:tri/refactor","gHashTag/trinity:tri/registry-validate","gHashTag/trinity:tri/release","gHashTag/trinity:tri/release-cosmic","gHashTag/trinity:tri/research","gHashTag/trinity:tri/resonance","gHashTag/trinity:tri/sacred","gHashTag/trinity:tri/sandbox-bench","gHashTag/trinity:tri/sandbox-demo","gHashTag/trinity:tri/scale","gHashTag/trinity:tri/search","gHashTag/trinity:tri/sebo","gHashTag/trinity:tri/self","gHashTag/trinity:tri/serve","gHashTag/trinity:tri/sim","gHashTag/trinity:tri/sparc","gHashTag/trinity:tri/spawn-bench","gHashTag/trinity:tri/spawn-demo","gHashTag/trinity:tri/spec-create","gHashTag/trinity:tri/specexec-bench","gHashTag/trinity:tri/specexec-demo","gHashTag/trinity:tri/stats","gHashTag/trinity:tri/status","gHashTag/trinity:tri/storm","gHashTag/trinity:tri/stream-bench","gHashTag/trinity:tri/stream-demo","gHashTag/trinity:tri/stress","gHashTag/trinity:tri/string","gHashTag/trinity:tri/sync-check","gHashTag/trinity:tri/system","gHashTag/trinity:tri/task","gHashTag/trinity:tri/test-repl","gHashTag/trinity:tri/time","gHashTag/trinity:tri/token","gHashTag/trinity:tri/tooluse-bench","gHashTag/trinity:tri/tooluse-demo","gHashTag/trinity:tri/toxic-verdict","gHashTag/trinity:tri/trace","gHashTag/trinity:tri/train","gHashTag/trinity:tri/tvc-demo","gHashTag/trinity:tri/tvc-stats","gHashTag/trinity:tri/ui","gHashTag/trinity:tri/unified-bench","gHashTag/trinity:tri/unified-demo","gHashTag/trinity:tri/verdict","gHashTag/trinity:tri/verify","gHashTag/trinity:tri/version","gHashTag/trinity:tri/vision-bench","gHashTag/trinity:tri/vision-demo","gHashTag/trinity:tri/voice-bench","gHashTag/trinity:tri/voice-demo","gHashTag/trinity:tri/waveform","gHashTag/trinity:tri/workflow-bench","gHashTag/trinity:tri/workflow-demo","gHashTag/trinity:tri/worksteal-bench","gHashTag/trinity:tri/worksteal-demo","gHashTag/trinity:tri/zenodo"],"scope":["specs/skills","specs/crons","specs/agents","specs/functions","specs/tools"],"sha256":"c8871fb4ccdef8fc3cc2937af5db0e307ab0b62f6a03ece9f4512851ffd64f04","spec":"specs/i18n/agents-ru.t27"}],"ladder":{"agents":27,"crons":33,"functions":28,"skills":26,"specs":1776,"tools":607},"legacy":{"mcp/gitbutler":"gHashTag/t27:mcp/gitbutler","mcp/inngest-dev":"gHashTag/t27:mcp/inngest-dev","mcp/needle":"gHashTag/trinity:mcp/needle","mcp/neon":"gHashTag/trinity:mcp/neon","mcp/notebooklm":"gHashTag/t27:mcp/notebooklm","mcp/railway-mcp-server":"gHashTag/trinity:mcp/railway-mcp-server","mcp/t27-traceability":"gHashTag/t27:mcp/t27-traceability","mcp/tri-mcp":"gHashTag/t27:mcp/tri-mcp","mcp/tri-ssot":"gHashTag/t27:mcp/tri-ssot","mcp/trinity":"gHashTag/trinity:mcp/trinity","mcp/zig-docs":"gHashTag/trinity:mcp/zig-docs","tri/abandoned":"gHashTag/t27:tri/abandoned","tri/cell":"gHashTag/t27:tri/cell","tri/census":"gHashTag/t27:tri/census","tri/ci":"gHashTag/t27:tri/ci","tri/competitors":"gHashTag/t27:tri/competitors","tri/discard":"gHashTag/t27:tri/discard","tri/doctor":"gHashTag/t27:tri/doctor","tri/elab":"gHashTag/t27:tri/elab","tri/emit":"gHashTag/t27:tri/emit","tri/experience":"gHashTag/t27:tri/experience","tri/fleet":"gHashTag/t27:tri/fleet","tri/fmt":"gHashTag/t27:tri/fmt","tri/fpga":"gHashTag/t27:tri/fpga","tri/gates":"gHashTag/t27:tri/gates","tri/gen":"gHashTag/t27:tri/gen","tri/harness":"gHashTag/t27:tri/harness","tri/health":"gHashTag/t27:tri/health","tri/hooks":"gHashTag/t27:tri/hooks","tri/issues":"gHashTag/t27:tri/issues","tri/jumps":"gHashTag/t27:tri/jumps","tri/kinds":"gHashTag/t27:tri/kinds","tri/lean":"gHashTag/t27:tri/lean","tri/ledgers":"gHashTag/t27:tri/ledgers","tri/loop":"gHashTag/t27:tri/loop","tri/merging":"gHashTag/t27:tri/merging","tri/misread":"gHashTag/t27:tri/misread","tri/mods":"gHashTag/t27:tri/mods","tri/mutate":"gHashTag/t27:tri/mutate","tri/now":"gHashTag/t27:tri/now","tri/one-away":"gHashTag/t27:tri/one-away","tri/orphaned":"gHashTag/t27:tri/orphaned","tri/pr":"gHashTag/t27:tri/pr","tri/prose":"gHashTag/t27:tri/prose","tri/quantifiers":"gHashTag/t27:tri/quantifiers","tri/red":"gHashTag/t27:tri/red","tri/reseal":"gHashTag/t27:tri/reseal","tri/rtl":"gHashTag/t27:tri/rtl","tri/seals":"gHashTag/t27:tri/seals","tri/serve":"gHashTag/t27:tri/serve","tri/skill":"gHashTag/t27:tri/skill","tri/status":"gHashTag/t27:tri/status","tri/sweep":"gHashTag/t27:tri/sweep","tri/synth":"gHashTag/t27:tri/synth","tri/test":"gHashTag/t27:tri/test","tri/topic":"gHashTag/t27:tri/topic","tri/types":"gHashTag/t27:tri/types","tri/unparsed":"gHashTag/t27:tri/unparsed","tri/vectors":"gHashTag/t27:tri/vectors","tri/verdict":"gHashTag/t27:tri/verdict","tri/vsim":"gHashTag/t27:tri/vsim","tri/window":"gHashTag/t27:tri/window","tri/worktrees":"gHashTag/t27:tri/worktrees"},"pin":{"ref":"93727f733e23baf032d54505095777f16676d70b","source":"public/agents/experience.json sources[t27].commit"},"schema":2,"tools":[{"aboutSource":".mcp.json entry; no tool list in this repository","agents":[],"cast":null,"config":".mcp.json","discarded":0,"env":["GITBUTLER_REPO"],"external":true,"family":"mcp","fields":{"ABOUT":"External GitButler MCP server launched as `but mcp`; the repository only registers it in .mcp.json.","ABOUT_SOURCE":".mcp.json entry; no tool list in this repository","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":".mcp.json","ENABLED":true,"ENV":["GITBUTLER_REPO"],"EXTERNAL":true,"FAMILY":"mcp","ID":"mcp/gitbutler","KIND":"tool","LAUNCH":"but mcp","QUALIFIED_ID":"gHashTag/t27:mcp/gitbutler","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"gitbutler","SERVER_VERSION":"","SOURCE":".mcp.json","TOOLS":[],"TOOLS_ABOUT":[],"TOOLS_INPUTS":[],"TOOLS_NOTE":"Tool list lives in the external `but` binary, not in this repository; nothing is listed rather than guessed.","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/gitbutler","inSpecCorpus":true,"launch":"but mcp","links":{"config":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.mcp.json","pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.mcp.json"},"messages":["no agent letter bound by a source","external package: tool list not in the repository"],"moduleName":"tool_mcp_gitbutler","name":{"en":"gitbutler"},"qualifiedId":"gHashTag/t27:mcp/gitbutler","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/gitbutler gitbutler external gitbutler mcp server launched as `but mcp`; the repository only registers it in .mcp.json.","server":"gitbutler","serverVersion":"","sha256":"488ff443b895b38f10748ab28238d7a9348819df4e53af1fa7adcc4bbacf3992","skills":[],"source":".mcp.json","specPath":"specs/tools/mcp/gitbutler.t27","summary":{"en":"External GitButler MCP server launched as `but mcp`; the repository only registers it in .mcp.json.","ru":"Внешний MCP-сервер GitButler, запускаемый как `but mcp`; репозиторий лишь регистрирует его в .mcp.json."},"tools":[],"toolsNote":"Tool list lives in the external `but` binary, not in this repository; nothing is listed rather than guessed.","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"serverInfo.title of the initialize answer plus specs/automation/inngest-queen-scheduler.t27","agents":[{"letter":"T","ok":true}],"cast":null,"config":"","discarded":0,"env":["INNGEST_SIGNING_KEY"],"external":true,"family":"mcp","fields":{"ABOUT":"MCP face of the self-hosted Inngest server (Railway project 999) that runs the Queen's crons and skills as functions of the app t27-queen; lists apps and functions, reads runs and traces, invokes, reruns and cancels.","ABOUT_SOURCE":"serverInfo.title of the initialize answer plus specs/automation/inngest-queen-scheduler.t27","AGENTS":["T"],"AGENTS_NOTE":"specs/agents/t.t27 TOOLS names mcp/inngest-dev: the Queen (Tau) holds the scheduler; a bee reaches it through the Queen's brief, not by its own registration.","CONFIG":"","ENABLED":true,"ENV":["INNGEST_SIGNING_KEY"],"EXTERNAL":true,"FAMILY":"mcp","ID":"mcp/inngest-dev","KIND":"tool","LAUNCH":"claude mcp add --transport http inngest-dev https://inngestinngest-production-c468.up.railway.app/mcp","QUALIFIED_ID":"gHashTag/t27:mcp/inngest-dev","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"inngest-dev","SERVER_VERSION":"1.0.0","SOURCE":"tools/list of https://inngestinngest-production-c468.up.railway.app/mcp (2026-09-13)","TOOLS":["cancel_run","get_app","get_apps","get_event_runs","get_function","get_run","get_run_status","get_run_trace","grep_docs","health","invoke_function","invoke_function_sync","list_docs","list_function_runs","list_functions","list_runs","poll_run_status","read_doc","rerun","send_event"],"TOOLS_ABOUT":["Cancels an in-progress function run","Fetches details for a single app, including sync metadata and function count","Lists active apps in the authenticated environment. Set archived to true to list archived apps instead.","Lists function runs triggered by a specific event","Fetches function configuration and status details for a function within an app","Fetches the canonical run summary for a single function run","Deprecated compatibility tool retained for existing dev server integrations. Use get_run and get_run_trace for new integrations. Parameters:","Fetches the trace tree for a single function run","Search documentation using exact string matching (grep). Useful for finding specific API names, error codes, or identifiers. Parameters: pat","Returns the health status of the API service","Invokes a function, executing the function either asynchronously or synchronously based on the mode parameter in the request body","Deprecated compatibility tool retained for existing dev server integrations. Use invoke_function for the shared asynchronous Cloud and dev s","List all available documentation categories and their document counts. No parameters required.","Lists runs for one function in the authenticated environment","Lists function configuration and status details for an app","Lists runs in the authenticated environment, optionally filtered by app and function IDs","Deprecated compatibility tool retained for existing dev server integrations. Use get_run for new integrations. Poll multiple function runs u","Read the full content of a specific documentation file. Parameters: path (required string - the doc file path relative to docs directory)","Creates a new run using the original run's triggering event data","Deprecated compatibility tool retained for existing dev server integrations. Send an event to the Inngest dev server and return the event ID"],"TOOLS_INPUTS":["runId","appId","archived,cursor,limit","cursor,eventId,includeOutput,limit","appId,functionId","includeOutput,runId","runId","includeOutput,runId","pattern,limit","","appId,data,functionId,idempotencyKey","functionId,data,user,timeout","","appId,cursor,from,functionId,includeOutput,isDeferred,limit,order,status,timeField,until","appId,cursor,limit","appId,cursor,from,functionId,includeOutput,isDeferred,limit,order,status,timeField,until","runIds,timeout,pollInterval","path","fromStep,runId","name,data,user,eventIdSeed"],"TOOLS_NOTE":"Recorded from the live tools/list, not from source: the server is the upstream inngest binary, its source is not in this repository. Measured 2026-09-13 without a key: health, get_apps and list_runs answer REST API v2 returned HTTP 401: Authentication failed; list_docs and grep_docs answer (173 documents). The REST-backed tools need Authorization: Bearer on the MCP request.","TRANSPORT":"http","WITNESS":"help-output"},"health":"ok","id":"mcp/inngest-dev","inSpecCorpus":true,"launch":"claude mcp add --transport http inngest-dev https://inngestinngest-production-c468.up.railway.app/mcp","links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/tools/list of https://inngestinngest-production-c468.up.railway.app/mcp (2026-09-13)"},"messages":["external package: tool list not in the repository"],"moduleName":"tool_mcp_inngest_dev","name":{"en":"inngest-dev"},"qualifiedId":"gHashTag/t27:mcp/inngest-dev","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/inngest-dev inngest-dev mcp face of the self-hosted inngest server (railway project 999) that runs the queen's crons and skills as functions of the app t27-queen; lists apps and functions, reads runs and traces, invokes, reruns and cancels. cancel_run cancels an in-progress function run get_app fetches details for a single app, including sync metadata and function count get_apps lists active apps in the authenticated environment. set archived to true to list archived apps instead. get_event_runs lists function runs triggered by a specific event get_function fetches function configuration and status details for a function within an app get_run fetches the canonical run summary for a single function run get_run_status deprecated compatibility tool retained for existing dev server integrations. use get_run and get_run_trace for new integrations. parameters: get_run_trace fetches the trace tree for a single function run grep_docs search documentation using exact string matching (grep). useful for finding specific api names, error codes, or identifiers. parameters: pat health returns the health status of the api service invoke_function invokes a function, executing the function either asynchronously or synchronously based on the mode parameter in the request body invoke_function_sync deprecated compatibility tool retained for existing dev server integrations. use invoke_function for the shared asynchronous cloud and dev s list_docs list all available documentation categories and their document counts. no parameters required. list_function_runs lists runs for one function in the authenticated environment list_functions lists function configuration and status details for an app list_runs lists runs in the authenticated environment, optionally filtered by app and function ids poll_run_status deprecated compatibility tool retained for existing dev server integrations. use get_run for new integrations. poll multiple function runs u read_doc read the full content of a specific documentation file. parameters: path (required string - the doc file path relative to docs directory) rerun creates a new run using the original run's triggering event data send_event deprecated compatibility tool retained for existing dev server integrations. send an event to the inngest dev server and return the event id t","server":"inngest-dev","serverVersion":"1.0.0","sha256":"a0aad75ce804fcc056130bab7bd9b40af7145467cb0f0b93ed1147a2c6b89f8e","skills":[],"source":"tools/list of https://inngestinngest-production-c468.up.railway.app/mcp (2026-09-13)","specPath":"specs/tools/mcp/inngest-dev.t27","summary":{"en":"MCP face of the self-hosted Inngest server (Railway project 999) that runs the Queen's crons and skills as functions of the app t27-queen; lists apps and functions, reads runs and traces, invokes, reruns and cancels.","ru":"MCP-лицо самостоятельно размещённого сервера Inngest (проект Railway 999), который исполняет кроны и скиллы Королевы как функции приложения t27-queen; перечисляет приложения и функции, читает запуски и трассы, запускает, перезапускает и отменяет."},"tools":[{"about":"Cancels an in-progress function run","inputs":["runId"],"name":"cancel_run"},{"about":"Fetches details for a single app, including sync metadata and function count","inputs":["appId"],"name":"get_app"},{"about":"Lists active apps in the authenticated environment. Set archived to true to list archived apps instead.","inputs":["archived","cursor","limit"],"name":"get_apps"},{"about":"Lists function runs triggered by a specific event","inputs":["cursor","eventId","includeOutput","limit"],"name":"get_event_runs"},{"about":"Fetches function configuration and status details for a function within an app","inputs":["appId","functionId"],"name":"get_function"},{"about":"Fetches the canonical run summary for a single function run","inputs":["includeOutput","runId"],"name":"get_run"},{"about":"Deprecated compatibility tool retained for existing dev server integrations. Use get_run and get_run_trace for new integrations. Parameters:","inputs":["runId"],"name":"get_run_status"},{"about":"Fetches the trace tree for a single function run","inputs":["includeOutput","runId"],"name":"get_run_trace"},{"about":"Search documentation using exact string matching (grep). Useful for finding specific API names, error codes, or identifiers. Parameters: pat","inputs":["pattern","limit"],"name":"grep_docs"},{"about":"Returns the health status of the API service","inputs":[],"name":"health"},{"about":"Invokes a function, executing the function either asynchronously or synchronously based on the mode parameter in the request body","inputs":["appId","data","functionId","idempotencyKey"],"name":"invoke_function"},{"about":"Deprecated compatibility tool retained for existing dev server integrations. Use invoke_function for the shared asynchronous Cloud and dev s","inputs":["functionId","data","user","timeout"],"name":"invoke_function_sync"},{"about":"List all available documentation categories and their document counts. No parameters required.","inputs":[],"name":"list_docs"},{"about":"Lists runs for one function in the authenticated environment","inputs":["appId","cursor","from","functionId","includeOutput","isDeferred","limit","order","status","timeField","until"],"name":"list_function_runs"},{"about":"Lists function configuration and status details for an app","inputs":["appId","cursor","limit"],"name":"list_functions"},{"about":"Lists runs in the authenticated environment, optionally filtered by app and function IDs","inputs":["appId","cursor","from","functionId","includeOutput","isDeferred","limit","order","status","timeField","until"],"name":"list_runs"},{"about":"Deprecated compatibility tool retained for existing dev server integrations. Use get_run for new integrations. Poll multiple function runs u","inputs":["runIds","timeout","pollInterval"],"name":"poll_run_status"},{"about":"Read the full content of a specific documentation file. Parameters: path (required string - the doc file path relative to docs directory)","inputs":["path"],"name":"read_doc"},{"about":"Creates a new run using the original run's triggering event data","inputs":["fromStep","runId"],"name":"rerun"},{"about":"Deprecated compatibility tool retained for existing dev server integrations. Send an event to the Inngest dev server and return the event ID","inputs":["name","data","user","eventIdSeed"],"name":"send_event"}],"toolsNote":"Recorded from the live tools/list, not from source: the server is the upstream inngest binary, its source is not in this repository. Measured 2026-09-13 without a key: health, get_apps and list_runs answer REST API v2 returned HTTP 401: Authentication failed; list_docs and grep_docs answer (173 documents). The REST-backed tools need Authorization: Bearer on the MCP request.","transport":"http","typecheckOk":true,"witness":"help-output"},{"aboutSource":".claude/mcp.json entry; no tool list in this repository","agents":[],"cast":null,"config":".claude/mcp.json","discarded":0,"env":["NOTEBOOKLM_STORAGE_STATE"],"external":true,"family":"mcp","fields":{"ABOUT":"External MCP server `notebooklm` registered in .claude/mcp.json; launched as `notebooklm-mcp`.","ABOUT_SOURCE":".claude/mcp.json entry; no tool list in this repository","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":".claude/mcp.json","ENABLED":true,"ENV":["NOTEBOOKLM_STORAGE_STATE"],"EXTERNAL":true,"FAMILY":"mcp","ID":"mcp/notebooklm","KIND":"tool","LAUNCH":"notebooklm-mcp --notebook-id auto","QUALIFIED_ID":"gHashTag/t27:mcp/notebooklm","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"notebooklm","SERVER_VERSION":"","SOURCE":".claude/mcp.json","TOOLS":[],"TOOLS_ABOUT":[],"TOOLS_INPUTS":[],"TOOLS_NOTE":"Tool list lives in the external package, not in this repository.","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/notebooklm","inSpecCorpus":true,"launch":"notebooklm-mcp --notebook-id auto","links":{"config":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.claude/mcp.json","pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.claude/mcp.json"},"messages":["no agent letter bound by a source","external package: tool list not in the repository"],"moduleName":"tool_mcp_notebooklm","name":{"en":"notebooklm"},"qualifiedId":"gHashTag/t27:mcp/notebooklm","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/notebooklm notebooklm external mcp server `notebooklm` registered in .claude/mcp.json; launched as `notebooklm-mcp`.","server":"notebooklm","serverVersion":"","sha256":"93548d18109d7be76e3c43ea298c9db0a335044e2bbb820d23606859c9939bdb","skills":[],"source":".claude/mcp.json","specPath":"specs/tools/mcp/notebooklm.t27","summary":{"en":"External MCP server `notebooklm` registered in .claude/mcp.json; launched as `notebooklm-mcp`.","ru":"Внешний MCP-сервер `notebooklm`, зарегистрированный в .claude/mcp.json; запускается как `notebooklm-mcp`."},"tools":[],"toolsNote":"Tool list lives in the external package, not in this repository.","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"derived from the tool and resource descriptions in scripts/mcp-traceability-server.js","agents":[],"cast":null,"config":".mcp.json","discarded":0,"env":["PROJECT_ROOT","ENFORCE_L1"],"external":false,"family":"mcp","fields":{"ABOUT":"MCP server over stdio that checks L1 TRACEABILITY (Closes #N) in commit messages and PR descriptions, generates compliant commit messages, validates branch names and serves the PHI LOOP stacked-branch template; resources expose the constitution and the L1 audit.","ABOUT_SOURCE":"derived from the tool and resource descriptions in scripts/mcp-traceability-server.js","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":".mcp.json","ENABLED":true,"ENV":["PROJECT_ROOT","ENFORCE_L1"],"EXTERNAL":false,"FAMILY":"mcp","ID":"mcp/t27-traceability","KIND":"tool","LAUNCH":"node scripts/mcp-traceability-server.js","QUALIFIED_ID":"gHashTag/t27:mcp/t27-traceability","REPO":"gHashTag/t27","RESOURCES":["docs/T27-CONSTITUTION.md","docs/l1-traceability-audit.md"],"RESOURCES_ABOUT":["Constitutional laws including L1 TRACEABILITY","Audit report for L1 TRACEABILITY compliance"],"SCHEMA":2,"SERVER":"t27-traceability","SERVER_VERSION":"1.0.0","SOURCE":"scripts/mcp-traceability-server.js","TOOLS":["check_traceability","generate_commit_message","validate_branch_name","get_phi_loop_template"],"TOOLS_ABOUT":["Check if a commit message or PR description complies with L1 TRACEABILITY (Closes #N required)","Generate a compliant commit message for t27 including required L1 TRACEABILITY reference","Validate branch name follows t27 naming conventions","Get PHI LOOP stacked branch template for ring development"],"TOOLS_INPUTS":["message","type,scope,description,issueNumber,invariantLaws,body","branchName","ringNumber"],"TOOLS_NOTE":"","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/t27-traceability","inSpecCorpus":true,"launch":"node scripts/mcp-traceability-server.js","links":{"config":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.mcp.json","pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/scripts/mcp-traceability-server.js"},"messages":["no agent letter bound by a source"],"moduleName":"tool_mcp_t27_traceability","name":{"en":"t27-traceability"},"qualifiedId":"gHashTag/t27:mcp/t27-traceability","repo":"gHashTag/t27","resources":[{"about":"Constitutional laws including L1 TRACEABILITY","path":"docs/T27-CONSTITUTION.md"},{"about":"Audit report for L1 TRACEABILITY compliance","path":"docs/l1-traceability-audit.md"}],"schema":2,"searchText":"mcp/t27-traceability t27-traceability mcp server over stdio that checks l1 traceability (closes #n) in commit messages and pr descriptions, generates compliant commit messages, validates branch names and serves the phi loop stacked-branch template; resources expose the constitution and the l1 audit. check_traceability check if a commit message or pr description complies with l1 traceability (closes #n required) generate_commit_message generate a compliant commit message for t27 including required l1 traceability reference validate_branch_name validate branch name follows t27 naming conventions get_phi_loop_template get phi loop stacked branch template for ring development","server":"t27-traceability","serverVersion":"1.0.0","sha256":"2496a572dc04d4f7e615f0d235fd6cda542d1a10caf6abc91ee4ef3a3e36da1e","skills":[],"source":"scripts/mcp-traceability-server.js","specPath":"specs/tools/mcp/t27-traceability.t27","summary":{"en":"MCP server over stdio that checks L1 TRACEABILITY (Closes #N) in commit messages and PR descriptions, generates compliant commit messages, validates branch names and serves the PHI LOOP stacked-branch template; resources expose the constitution and the L1 audit.","ru":"MCP-сервер по stdio, проверяющий L1 TRACEABILITY (Closes #N) в сообщениях коммитов и описаниях PR, генерирующий соответствующие сообщения коммитов, валидирующий имена веток и отдающий шаблон стековых веток PHI LOOP; ресурсы открывают конституцию и аудит L1."},"tools":[{"about":"Check if a commit message or PR description complies with L1 TRACEABILITY (Closes #N required)","inputs":["message"],"name":"check_traceability"},{"about":"Generate a compliant commit message for t27 including required L1 TRACEABILITY reference","inputs":["type","scope","description","issueNumber","invariantLaws","body"],"name":"generate_commit_message"},{"about":"Validate branch name follows t27 naming conventions","inputs":["branchName"],"name":"validate_branch_name"},{"about":"Get PHI LOOP stacked branch template for ring development","inputs":["ringNumber"],"name":"get_phi_loop_template"}],"toolsNote":"","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"derived from the tool descriptions in cli/tri-mcp/src/main.rs build_tools_list","agents":[],"cast":null,"config":"","discarded":0,"env":[],"external":false,"family":"mcp","fields":{"ABOUT":"Rust MCP server exposing the PHI LOOP tri commands as tools: status, skill begin/end, cell checkpoint/seal, gen, test, verdict, experience save, health.","ABOUT_SOURCE":"derived from the tool descriptions in cli/tri-mcp/src/main.rs build_tools_list","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":"","ENABLED":true,"ENV":[],"EXTERNAL":false,"FAMILY":"mcp","ID":"mcp/tri-mcp","KIND":"tool","LAUNCH":"cargo run -q -p tri-mcp (binary tri-mcp; JSON-RPC over stdio)","QUALIFIED_ID":"gHashTag/t27:mcp/tri-mcp","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"tri-mcp","SERVER_VERSION":"0.1.0","SOURCE":"cli/tri-mcp/src/main.rs","TOOLS":["tri_status","tri_skill_begin","tri_skill_end","tri_cell_checkpoint","tri_cell_seal","tri_gen","tri_test","tri_verdict","tri_experience_save","tri_health"],"TOOLS_ABOUT":["Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","Begins a new PHI LOOP skill session bound to an issue.","Ends the active PHI LOOP skill session.","Records a checkpoint step in the active cell.","Seals the active cell by computing a SHA-256 hash of its checkpoint history.","Generates backends from a .t27 spec file using t27c.","Runs tests for a .t27 spec file using t27c.","Checks for toxic regressions by analyzing swarm health metrics.","Saves an experience episode to the akashic log.","Returns queen and swarm health status from .trinity state."],"TOOLS_INPUTS":["","issue,description","","step","","spec_path","spec_path","","episode_type,summary,ring",""],"TOOLS_NOTE":"Not registered in .mcp.json at this commit; the server exists as the tri-mcp crate.","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/tri-mcp","inSpecCorpus":true,"launch":"cargo run -q -p tri-mcp (binary tri-mcp; JSON-RPC over stdio)","links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri-mcp/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_mcp_tri_mcp","name":{"en":"tri-mcp"},"qualifiedId":"gHashTag/t27:mcp/tri-mcp","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/tri-mcp tri-mcp rust mcp server exposing the phi loop tri commands as tools: status, skill begin/end, cell checkpoint/seal, gen, test, verdict, experience save, health. tri_status returns phi loop status including active skill, cell, issue binding, and uncommitted changes. tri_skill_begin begins a new phi loop skill session bound to an issue. tri_skill_end ends the active phi loop skill session. tri_cell_checkpoint records a checkpoint step in the active cell. tri_cell_seal seals the active cell by computing a sha-256 hash of its checkpoint history. tri_gen generates backends from a .t27 spec file using t27c. tri_test runs tests for a .t27 spec file using t27c. tri_verdict checks for toxic regressions by analyzing swarm health metrics. tri_experience_save saves an experience episode to the akashic log. tri_health returns queen and swarm health status from .trinity state.","server":"tri-mcp","serverVersion":"0.1.0","sha256":"ae32961a90fd40b66ecab5b4d20fea7d20293038c00c728d191d211a9576986e","skills":[],"source":"cli/tri-mcp/src/main.rs","specPath":"specs/tools/mcp/tri-mcp.t27","summary":{"en":"Rust MCP server exposing the PHI LOOP tri commands as tools: status, skill begin/end, cell checkpoint/seal, gen, test, verdict, experience save, health.","ru":"MCP-сервер на Rust, открывающий команды tri PHI LOOP как инструменты: status, skill begin/end, cell checkpoint/seal, gen, test, verdict, experience save, health."},"tools":[{"about":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","inputs":[],"name":"tri_status"},{"about":"Begins a new PHI LOOP skill session bound to an issue.","inputs":["issue","description"],"name":"tri_skill_begin"},{"about":"Ends the active PHI LOOP skill session.","inputs":[],"name":"tri_skill_end"},{"about":"Records a checkpoint step in the active cell.","inputs":["step"],"name":"tri_cell_checkpoint"},{"about":"Seals the active cell by computing a SHA-256 hash of its checkpoint history.","inputs":[],"name":"tri_cell_seal"},{"about":"Generates backends from a .t27 spec file using t27c.","inputs":["spec_path"],"name":"tri_gen"},{"about":"Runs tests for a .t27 spec file using t27c.","inputs":["spec_path"],"name":"tri_test"},{"about":"Checks for toxic regressions by analyzing swarm health metrics.","inputs":[],"name":"tri_verdict"},{"about":"Saves an experience episode to the akashic log.","inputs":["episode_type","summary","ring"],"name":"tri_experience_save"},{"about":"Returns queen and swarm health status from .trinity state.","inputs":[],"name":"tri_health"}],"toolsNote":"Not registered in .mcp.json at this commit; the server exists as the tri-mcp crate.","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"manifest.json description","agents":[],"cast":null,"config":".claude/mcp/tri-ssot/manifest.json","discarded":0,"env":[],"external":false,"family":"mcp","fields":{"ABOUT":"SSOT Integration for t27: GitHub Issues + PRs + Documentation -> NotebookLM","ABOUT_SOURCE":"manifest.json description","AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this server: docs/agents/AGENTS_ALPHABET.md, specs/OWNERS.md and .claude/agents/*.md do not name it.","CONFIG":".claude/mcp/tri-ssot/manifest.json","ENABLED":true,"ENV":[],"EXTERNAL":false,"FAMILY":"mcp","ID":"mcp/tri-ssot","KIND":"tool","LAUNCH":"python3 -m contrib.backend.github.mcp_server","QUALIFIED_ID":"gHashTag/t27:mcp/tri-ssot","REPO":"gHashTag/t27","RESOURCES":[],"RESOURCES_ABOUT":[],"SCHEMA":2,"SERVER":"tri-ssot","SERVER_VERSION":"1.0.0","SOURCE":".claude/mcp/tri-ssot/manifest.json","TOOLS":["tri_issue","tri_pr","tri_docs","tri_sync","tri_search"],"TOOLS_ABOUT":["GitHub Issue management: create, update, list, close","GitHub PR management: create, merge, close, get status","Documentation management: upload to NotebookLM, sync, query","Unified sync: sync all entities (issues, prs, docs) with NotebookLM","Unified search across GitHub Issues, PRs, NotebookLM docs"],"TOOLS_INPUTS":["action,title,body,labels,issue_id,state","action,title,body,pr_id,issue_id","action,file_path,title","scope","query"],"TOOLS_NOTE":"The manifest names python3 -m contrib.backend.github.mcp_server, but the t27 tree at this commit has no contrib/backend/github/mcp_server.py (git ls-tree); the tool list is taken from the manifest alone (declared, not executed).","TRANSPORT":"stdio","WITNESS":"source-parse"},"health":"ok","id":"mcp/tri-ssot","inSpecCorpus":true,"launch":"python3 -m contrib.backend.github.mcp_server","links":{"config":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.claude/mcp/tri-ssot/manifest.json","pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/.claude/mcp/tri-ssot/manifest.json"},"messages":["no agent letter bound by a source"],"moduleName":"tool_mcp_tri_ssot","name":{"en":"tri-ssot"},"qualifiedId":"gHashTag/t27:mcp/tri-ssot","repo":"gHashTag/t27","resources":[],"schema":2,"searchText":"mcp/tri-ssot tri-ssot ssot integration for t27: github issues + prs + documentation -> notebooklm tri_issue github issue management: create, update, list, close tri_pr github pr management: create, merge, close, get status tri_docs documentation management: upload to notebooklm, sync, query tri_sync unified sync: sync all entities (issues, prs, docs) with notebooklm tri_search unified search across github issues, prs, notebooklm docs","server":"tri-ssot","serverVersion":"1.0.0","sha256":"c5f2218c27d16037026e392844aee9dff023506272d7eb2ecae5c323be2994de","skills":[],"source":".claude/mcp/tri-ssot/manifest.json","specPath":"specs/tools/mcp/tri-ssot.t27","summary":{"en":"SSOT Integration for t27: GitHub Issues + PRs + Documentation -> NotebookLM","ru":"Интеграция SSOT для t27: GitHub Issues + PR + документация -> NotebookLM."},"tools":[{"about":"GitHub Issue management: create, update, list, close","inputs":["action","title","body","labels","issue_id","state"],"name":"tri_issue"},{"about":"GitHub PR management: create, merge, close, get status","inputs":["action","title","body","pr_id","issue_id"],"name":"tri_pr"},{"about":"Documentation management: upload to NotebookLM, sync, query","inputs":["action","file_path","title"],"name":"tri_docs"},{"about":"Unified sync: sync all entities (issues, prs, docs) with NotebookLM","inputs":["scope"],"name":"tri_sync"},{"about":"Unified search across GitHub Issues, PRs, NotebookLM docs","inputs":["query"],"name":"tri_search"}],"toolsNote":"The manifest names python3 -m contrib.backend.github.mcp_server, but the t27 tree at this commit has no contrib/backend/github/mcp_server.py (git ls-tree); the tool list is taken from the manifest alone (declared, not executed).","transport":"stdio","typecheckOk":true,"witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Abandoned (cli/tri/src/main.rs; module cli/tri/src/abandoned.rs)","actions":[{"about":"List recovery sites whose preceding comment names a concrete construct.","name":"list"}],"agents":[],"args":[],"cast":null,"command":"tri abandoned","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Recovery sites whose own comment names the construct they discard.","ABOUT_SOURCE":"clap /// doc on Commands::Abandoned (cli/tri/src/main.rs; module cli/tri/src/abandoned.rs)","ACTIONS":["list"],"ACTIONS_ABOUT":["List recovery sites whose preceding comment names a concrete construct."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri abandoned","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/abandoned","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/abandoned","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/abandoned.rs","VARIANT":"Commands::Abandoned","WHEN_TO_USE":"Recovery sites whose own comment names the construct they discard.","WITNESS":"source-parse"},"health":"ok","id":"tri/abandoned","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/abandoned.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_abandoned","name":{"en":"tri abandoned"},"qualifiedId":"gHashTag/t27:tri/abandoned","repo":"gHashTag/t27","schema":2,"searchText":"tri/abandoned tri abandoned recovery sites whose own comment names the construct they discard. recovery sites whose own comment names the construct they discard. list list recovery sites whose preceding comment names a concrete construct.","sha256":"b3105d48a28faff92bc02e393c146c4e95cba6c68277eb54f27ec5abc3b77bb4","skills":[],"source":"cli/tri/src/abandoned.rs","specPath":"specs/tools/tri/abandoned.t27","summary":{"en":"Recovery sites whose own comment names the construct they discard.","ru":"Точки восстановления, чей собственный комментарий называет отбрасываемую конструкцию."},"typecheckOk":true,"variant":"Commands::Abandoned","whenToUse":"Recovery sites whose own comment names the construct they discard.","witness":"source-parse"},{"aboutSource":"tri-mcp tools tri_cell_checkpoint and tri_cell_seal descriptions (cli/tri-mcp/src/main.rs); CellAction enum cli/tri/src/main.rs:448","actions":[{"about":"","name":"checkpoint"},{"about":"","name":"seal"}],"agents":[{"letter":"W","ok":true}],"args":[],"cast":null,"command":"tri cell","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Records a checkpoint step in the active cell. Seals the active cell by computing a SHA-256 hash of its checkpoint history.","ABOUT_SOURCE":"tri-mcp tools tri_cell_checkpoint and tri_cell_seal descriptions (cli/tri-mcp/src/main.rs); CellAction enum cli/tri/src/main.rs:448","ACTIONS":["checkpoint","seal"],"ACTIONS_ABOUT":["",""],"AGENTS":["W"],"AGENTS_NOTE":"docs/agents/AGENTS_ALPHABET.md:144, agent W domain Workflow / tri cell, key file src/tri/cell.zig; PHASE 6 EVOLVE: W seals tri-cell commit (hash seal).","ARGS":[],"COMMAND":"tri cell","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/cell","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/cell","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Cell","WHEN_TO_USE":"Records a checkpoint step in the active cell. Seals the active cell by computing a SHA-256 hash of its checkpoint history.","WITNESS":"source-parse"},"health":"ok","id":"tri/cell","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_cell","name":{"en":"tri cell"},"qualifiedId":"gHashTag/t27:tri/cell","repo":"gHashTag/t27","schema":2,"searchText":"tri/cell tri cell records a checkpoint step in the active cell. seals the active cell by computing a sha-256 hash of its checkpoint history. records a checkpoint step in the active cell. seals the active cell by computing a sha-256 hash of its checkpoint history. checkpoint seal w","sha256":"36ed34dfc7beb24c2fdd5b7dc5f7fe3375b42f357ffde7befd19f7cfbc22cdca","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/cell.t27","summary":{"en":"Records a checkpoint step in the active cell. Seals the active cell by computing a SHA-256 hash of its checkpoint history.","ru":"Записывает шаг-контрольную точку в активной ячейке; запечатывает активную ячейку, вычисляя SHA-256 истории её контрольных точек."},"typecheckOk":true,"variant":"Commands::Cell","whenToUse":"Records a checkpoint step in the active cell. Seals the active cell by computing a SHA-256 hash of its checkpoint history.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Census (cli/tri/src/main.rs; module cli/tri/src/census.rs)","actions":[{"about":"Every census's printed population, against one counted another way.","name":"audit"},{"about":"Pin each pure census's output, so a change that moves one has to say so.","name":"pin"}],"agents":[],"args":[],"cast":{"commands":["tri census audit"],"id":"t27-tri-census","recorded":"2026-10-03 16:18 UTC","share":"https://t27.ai/term/t27-tri-census/","src":"term/t27-tri-census/session.cast","title":"tri census audit: every census, counted twice"},"command":"tri census","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Specs the compiler cannot read, ranked by the construct that stops it. Every census's printed population, against one counted another way.","ABOUT_SOURCE":"clap /// doc on Commands::Census (cli/tri/src/main.rs; module cli/tri/src/census.rs)","ACTIONS":["audit","pin"],"ACTIONS_ABOUT":["Every census's printed population, against one counted another way.","Pin each pure census's output, so a change that moves one has to say so."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"CAST":"term/t27-tri-census/session.cast","COMMAND":"tri census","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/census","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/census","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/census.rs","VARIANT":"Commands::Census","WHEN_TO_USE":"Specs the compiler cannot read, ranked by the construct that stops it. Every census's printed population, against one counted another way.","WITNESS":"source-parse"},"health":"ok","id":"tri/census","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/census.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_census","name":{"en":"tri census"},"qualifiedId":"gHashTag/t27:tri/census","repo":"gHashTag/t27","schema":2,"searchText":"tri/census tri census specs the compiler cannot read, ranked by the construct that stops it. every census's printed population, against one counted another way. specs the compiler cannot read, ranked by the construct that stops it. every census's printed population, against one counted another way. audit every census's printed population, against one counted another way. pin pin each pure census's output, so a change that moves one has to say so.","sha256":"2e8093fdbaf186c821daacb78c0dcb69b5f495fe07eac09413748825fe8d85ea","skills":[],"source":"cli/tri/src/census.rs","specPath":"specs/tools/tri/census.t27","summary":{"en":"Specs the compiler cannot read, ranked by the construct that stops it. Every census's printed population, against one counted another way.","ru":"Спеки, которые компилятор не может прочитать, ранжированные по конструкции, которая его останавливает. Напечатанная популяция каждой переписи против одной, посчитанной иначе."},"typecheckOk":true,"variant":"Commands::Census","whenToUse":"Specs the compiler cannot read, ranked by the construct that stops it. Every census's printed population, against one counted another way.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Ci (cli/tri/src/main.rs; module cli/tri/src/cibase.rs)","actions":[{"about":"List PR gates that have never run on the default branch.","name":"baseline"}],"agents":[],"args":[],"cast":null,"command":"tri ci","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Is the hardware this plan assumes actually attached? CI questions about the repository's own gates.","ABOUT_SOURCE":"clap /// doc on Commands::Ci (cli/tri/src/main.rs; module cli/tri/src/cibase.rs)","ACTIONS":["baseline"],"ACTIONS_ABOUT":["List PR gates that have never run on the default branch."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri ci","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/ci","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/ci","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/cibase.rs","VARIANT":"Commands::Ci","WHEN_TO_USE":"Is the hardware this plan assumes actually attached? CI questions about the repository's own gates.","WITNESS":"source-parse"},"health":"ok","id":"tri/ci","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/cibase.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_ci","name":{"en":"tri ci"},"qualifiedId":"gHashTag/t27:tri/ci","repo":"gHashTag/t27","schema":2,"searchText":"tri/ci tri ci is the hardware this plan assumes actually attached? ci questions about the repository's own gates. is the hardware this plan assumes actually attached? ci questions about the repository's own gates. baseline list pr gates that have never run on the default branch.","sha256":"589b4502973beca006108ffedabec587effb8778bfd21be45399b23bcae398f3","skills":[],"source":"cli/tri/src/cibase.rs","specPath":"specs/tools/tri/ci.t27","summary":{"en":"Is the hardware this plan assumes actually attached? CI questions about the repository's own gates.","ru":"Действительно ли подключено оборудование, которое предполагает этот план? Вопросы CI о собственных гейтах репозитория."},"typecheckOk":true,"variant":"Commands::Ci","whenToUse":"Is the hardware this plan assumes actually attached? CI questions about the repository's own gates.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Competitors (cli/tri/src/main.rs; module cli/tri/src/competitors.rs)","actions":[{"about":"Count the records, the double-entered papers and the unpublished zeros.","name":"audit"},{"about":"When the survey behind this table last read a paper, by the month its citations encode.","name":"freshness"}],"agents":[],"args":[],"cast":{"commands":["tri competitors audit"],"id":"t27-tri-competitors","recorded":"2026-10-03 16:18 UTC","share":"https://t27.ai/term/t27-tri-competitors/","src":"term/t27-tri-competitors/session.cast","title":"tri competitors audit: the table, audited"},"command":"tri competitors","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"The competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice.","ABOUT_SOURCE":"clap /// doc on Commands::Competitors (cli/tri/src/main.rs; module cli/tri/src/competitors.rs)","ACTIONS":["audit","freshness"],"ACTIONS_ABOUT":["Count the records, the double-entered papers and the unpublished zeros.","When the survey behind this table last read a paper, by the month its citations encode."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"CAST":"term/t27-tri-competitors/session.cast","COMMAND":"tri competitors","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/competitors","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/competitors","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/competitors.rs","VARIANT":"Commands::Competitors","WHEN_TO_USE":"The competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice.","WITNESS":"source-parse"},"health":"ok","id":"tri/competitors","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/competitors.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_competitors","name":{"en":"tri competitors"},"qualifiedId":"gHashTag/t27:tri/competitors","repo":"gHashTag/t27","schema":2,"searchText":"tri/competitors tri competitors the competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice. the competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice. audit count the records, the double-entered papers and the unpublished zeros. freshness when the survey behind this table last read a paper, by the month its citations encode.","sha256":"3306c38768838b334ddc8e3f5f4abc2efca7addf713af3e578bbba90fa68d0c3","skills":[],"source":"cli/tri/src/competitors.rs","specPath":"specs/tools/tri/competitors.t27","summary":{"en":"The competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice.","ru":"Таблица конкурентов против собственного контракта: сколько её опубликованных оценок никогда не публиковались и сколько статей она считает дважды."},"typecheckOk":true,"variant":"Commands::Competitors","whenToUse":"The competitor table against its own contract: how many of its published scores were never published, and how many papers it counts twice.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Discard (cli/tri/src/main.rs; module cli/tri/src/discard.rs)","actions":[{"about":"Rank the discarding specs, largest first, against the pinned volume.","name":"top"},{"about":"Group the discard by which recovery threw it away, and what it stopped on.","name":"classify"}],"agents":[],"args":[],"cast":{"commands":["tri discard top"],"id":"t27-tri-discard","recorded":"2026-10-03 16:18 UTC","share":"https://t27.ai/term/t27-tri-discard/","src":"term/t27-tri-discard/session.cast","title":"tri discard top: what the parser throws away"},"command":"tri discard","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What the parser reads and throws away, ranked against its pinned bound.","ABOUT_SOURCE":"clap /// doc on Commands::Discard (cli/tri/src/main.rs; module cli/tri/src/discard.rs)","ACTIONS":["top","classify"],"ACTIONS_ABOUT":["Rank the discarding specs, largest first, against the pinned volume.","Group the discard by which recovery threw it away, and what it stopped on."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"CAST":"term/t27-tri-discard/session.cast","COMMAND":"tri discard","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/discard","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/discard","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/discard.rs","VARIANT":"Commands::Discard","WHEN_TO_USE":"What the parser reads and throws away, ranked against its pinned bound.","WITNESS":"source-parse"},"health":"ok","id":"tri/discard","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/discard.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_discard","name":{"en":"tri discard"},"qualifiedId":"gHashTag/t27:tri/discard","repo":"gHashTag/t27","schema":2,"searchText":"tri/discard tri discard what the parser reads and throws away, ranked against its pinned bound. what the parser reads and throws away, ranked against its pinned bound. top rank the discarding specs, largest first, against the pinned volume. classify group the discard by which recovery threw it away, and what it stopped on.","sha256":"e8ca3d0adcebc0fc9890233b186ad922e4a1e676d67775ee6635e362c26face4","skills":[],"source":"cli/tri/src/discard.rs","specPath":"specs/tools/tri/discard.t27","summary":{"en":"What the parser reads and throws away, ranked against its pinned bound.","ru":"Что парсер читает и выбрасывает, в сравнении с закреплённой границей."},"typecheckOk":true,"variant":"Commands::Discard","whenToUse":"What the parser reads and throws away, ranked against its pinned bound.","witness":"source-parse"},{"aboutSource":"handler cmd_doctor match arms start/stop/status and its error text unknown doctor action (start|stop|status) (cli/tri/src/main.rs:934)","actions":[],"agents":[],"args":[{"about":"","name":""}],"cast":null,"command":"tri doctor","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","ABOUT_SOURCE":"handler cmd_doctor match arms start/stop/status and its error text unknown doctor action (start|stop|status) (cli/tri/src/main.rs:934)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[""],"COMMAND":"tri doctor","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/doctor","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/doctor","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Doctor","WHEN_TO_USE":"Start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","WITNESS":"source-parse"},"health":"ok","id":"tri/doctor","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_doctor","name":{"en":"tri doctor"},"qualifiedId":"gHashTag/t27:tri/doctor","repo":"gHashTag/t27","schema":2,"searchText":"tri/doctor tri doctor start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status). start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","sha256":"be3ed8d97c7404a17400311d3432bec040d027f0a76ce264a459326204780fd9","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/doctor.t27","summary":{"en":"Start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","ru":"Запускает, останавливает или показывает состояние doctor, хранимое в .trinity/state/doctor.json (действия: start | stop | status)."},"typecheckOk":true,"variant":"Commands::Doctor","whenToUse":"Start, stop or show the doctor state kept in .trinity/state/doctor.json (actions: start | stop | status).","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Elab (cli/tri/src/main.rs; module cli/tri/src/elab.rs)","actions":[{"about":"Distribution of elaboration diagnostics by message shape.","name":"classify"},{"about":"How many diagnostics are secondary -- same source line as one above.","name":"secondary"}],"agents":[],"args":[],"cast":null,"command":"tri elab","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Classify a compiler's error output before quoting a number from it.","ABOUT_SOURCE":"clap /// doc on Commands::Elab (cli/tri/src/main.rs; module cli/tri/src/elab.rs)","ACTIONS":["classify","secondary"],"ACTIONS_ABOUT":["Distribution of elaboration diagnostics by message shape.","How many diagnostics are secondary -- same source line as one above."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri elab","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/elab","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/elab","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/elab.rs","VARIANT":"Commands::Elab","WHEN_TO_USE":"Classify a compiler's error output before quoting a number from it.","WITNESS":"source-parse"},"health":"ok","id":"tri/elab","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/elab.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_elab","name":{"en":"tri elab"},"qualifiedId":"gHashTag/t27:tri/elab","repo":"gHashTag/t27","schema":2,"searchText":"tri/elab tri elab classify a compiler's error output before quoting a number from it. classify a compiler's error output before quoting a number from it. classify distribution of elaboration diagnostics by message shape. secondary how many diagnostics are secondary -- same source line as one above.","sha256":"e1ee4634ec3f0bb75b6c2f870fda5b9ba40f1c1329ad5ed38ce03a9351065791","skills":[],"source":"cli/tri/src/elab.rs","specPath":"specs/tools/tri/elab.t27","summary":{"en":"Classify a compiler's error output before quoting a number from it.","ru":"Классифицирует вывод ошибок компилятора прежде, чем цитировать из него число."},"typecheckOk":true,"variant":"Commands::Elab","whenToUse":"Classify a compiler's error output before quoting a number from it.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Emit (cli/tri/src/main.rs; module cli/tri/src/gendet.rs)","actions":[{"about":"Generate the corpus twice with the same binary and name what differs.","name":"determinism"}],"agents":[],"args":[],"cast":null,"command":"tri emit","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Does the same binary produce the same generated code twice?","ABOUT_SOURCE":"clap /// doc on Commands::Emit (cli/tri/src/main.rs; module cli/tri/src/gendet.rs)","ACTIONS":["determinism"],"ACTIONS_ABOUT":["Generate the corpus twice with the same binary and name what differs."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri emit","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/emit","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/emit","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/gendet.rs","VARIANT":"Commands::Emit","WHEN_TO_USE":"Does the same binary produce the same generated code twice? Every byte-comparison over emitted output -- seals, emit-bitexact, `corpus --per-spec` diffing -- assumes it does. Three of the four emitters do not; see #3006. (`Gen` is taken by the single-spec emitter, so this is `Emit`.)","WITNESS":"source-parse"},"health":"ok","id":"tri/emit","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/gendet.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_emit","name":{"en":"tri emit"},"qualifiedId":"gHashTag/t27:tri/emit","repo":"gHashTag/t27","schema":2,"searchText":"tri/emit tri emit does the same binary produce the same generated code twice? does the same binary produce the same generated code twice? every byte-comparison over emitted output -- seals, emit-bitexact, `corpus --per-spec` diffing -- assumes it does. three of the four emitters do not; see #3006. (`gen` is taken by the single-spec emitter, so this is `emit`.) determinism generate the corpus twice with the same binary and name what differs.","sha256":"c4d32975e53fc1cf71a345333d73454c185b745057a215af3113981eedc68517","skills":[],"source":"cli/tri/src/gendet.rs","specPath":"specs/tools/tri/emit.t27","summary":{"en":"Does the same binary produce the same generated code twice?","ru":"Даёт ли один и тот же бинарник один и тот же сгенерированный код дважды?"},"typecheckOk":true,"variant":"Commands::Emit","whenToUse":"Does the same binary produce the same generated code twice? Every byte-comparison over emitted output -- seals, emit-bitexact, `corpus --per-spec` diffing -- assumes it does. Three of the four emitters do not; see #3006. (`Gen` is taken by the single-spec emitter, so this is `Emit`.)","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_experience_save description (cli/tri-mcp/src/main.rs); ExperienceAction enum cli/tri/src/main.rs:457","actions":[{"about":"","name":"save"}],"agents":[{"letter":"E","ok":true}],"args":[],"cast":null,"command":"tri experience","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Saves an experience episode to the akashic log.","ABOUT_SOURCE":"tri-mcp tool tri_experience_save description (cli/tri-mcp/src/main.rs); ExperienceAction enum cli/tri/src/main.rs:457","ACTIONS":["save"],"ACTIONS_ABOUT":[""],"AGENTS":["E"],"AGENTS_NOTE":".claude/agents/agent-e-experience.md:64 (tri experience save -- Save episode to experience log). Lines 65-66 name tri experience query and tri notebook, which the CLI does not have at this commit.","ARGS":[],"COMMAND":"tri experience","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/experience","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/experience","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Experience","WHEN_TO_USE":"Saves an experience episode to the akashic log.","WITNESS":"source-parse"},"health":"ok","id":"tri/experience","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_experience","name":{"en":"tri experience"},"qualifiedId":"gHashTag/t27:tri/experience","repo":"gHashTag/t27","schema":2,"searchText":"tri/experience tri experience saves an experience episode to the akashic log. saves an experience episode to the akashic log. save e","sha256":"08a7874c72e53ac1054c02ddb4a7649a6c4efb3c27ab9da7f4e148f6b9d05024","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/experience.t27","summary":{"en":"Saves an experience episode to the akashic log.","ru":"Сохраняет эпизод опыта в акашический журнал."},"typecheckOk":true,"variant":"Commands::Experience","whenToUse":"Saves an experience episode to the akashic log.","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/fleet.rs:1","actions":[{"about":"Scan the USB bus and say plainly what hardware is present.","name":"scan"},{"about":"Check the environments a claim depends on before repeating the claim.","name":"asof"}],"agents":[],"args":[],"cast":null,"command":"tri fleet","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"`tri fleet` -- is the hardware this plan assumes actually attached?","ABOUT_SOURCE":"//! module doc, cli/tri/src/fleet.rs:1","ACTIONS":["scan","asof"],"ACTIONS_ABOUT":["Scan the USB bus and say plainly what hardware is present.","Check the environments a claim depends on before repeating the claim."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri fleet","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/fleet","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/fleet","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/fleet.rs","VARIANT":"Commands::Fleet","WHEN_TO_USE":"`tri fleet` -- is the hardware this plan assumes actually attached?","WITNESS":"source-parse"},"health":"ok","id":"tri/fleet","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/fleet.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_fleet","name":{"en":"tri fleet"},"qualifiedId":"gHashTag/t27:tri/fleet","repo":"gHashTag/t27","schema":2,"searchText":"tri/fleet tri fleet `tri fleet` -- is the hardware this plan assumes actually attached? `tri fleet` -- is the hardware this plan assumes actually attached? scan scan the usb bus and say plainly what hardware is present. asof check the environments a claim depends on before repeating the claim.","sha256":"13c773d8e575a6f617dbcb4c86415a09bf50217b58f257efc4ea0ebc1ab90a8b","skills":[],"source":"cli/tri/src/fleet.rs","specPath":"specs/tools/tri/fleet.t27","summary":{"en":"`tri fleet` -- is the hardware this plan assumes actually attached?","ru":"`tri fleet` -- действительно ли подключено оборудование, которое предполагает этот план?"},"typecheckOk":true,"variant":"Commands::Fleet","whenToUse":"`tri fleet` -- is the hardware this plan assumes actually attached?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Fmt (cli/tri/src/main.rs)","actions":[],"agents":[],"args":[{"about":"One package instead of the whole workspace.","name":"--package"},{"about":"Report what is dirty and whether a workflow formats, and stop.","name":"--dry-run"}],"cast":null,"command":"tri fmt","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Type names with more than one definition in the spec tree. Run the formatter and restore every file it rewrote that you had not touched.","ABOUT_SOURCE":"clap /// doc on Commands::Fmt (cli/tri/src/main.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--package: One package instead of the whole workspace.","--dry-run: Report what is dirty and whether a workflow formats, and stop."],"COMMAND":"tri fmt","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/fmt","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/fmt","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Fmt","WHEN_TO_USE":"Type names with more than one definition in the spec tree. Run the formatter and restore every file it rewrote that you had not touched.","WITNESS":"source-parse"},"health":"ok","id":"tri/fmt","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_fmt","name":{"en":"tri fmt"},"qualifiedId":"gHashTag/t27:tri/fmt","repo":"gHashTag/t27","schema":2,"searchText":"tri/fmt tri fmt type names with more than one definition in the spec tree. run the formatter and restore every file it rewrote that you had not touched. type names with more than one definition in the spec tree. run the formatter and restore every file it rewrote that you had not touched.","sha256":"83e694d0156e30877c9a0d898b194667571fbc64181ff7c99dc0f7647a6f3452","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/fmt.t27","summary":{"en":"Type names with more than one definition in the spec tree. Run the formatter and restore every file it rewrote that you had not touched.","ru":"Имена типов с более чем одним определением в дереве спеков. Запускает форматтер и восстанавливает каждый переписанный им файл, которого вы не трогали."},"typecheckOk":true,"variant":"Commands::Fmt","whenToUse":"Type names with more than one definition in the spec tree. Run the formatter and restore every file it rewrote that you had not touched.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Fpga (cli/tri/src/main.rs; module cli/tri/src/fpga.rs)","actions":[{"about":"Read and print the JTAG IDCODE of the attached DLC10 cable target.","name":"idcode"},{"about":"Read the configuration IDCODE register via the Type-1 CFG_IN/CFG_OUT protocol. On a healthy XC7A100T this must return 0x13631093 (same as the JTAG IDCODE). If 0x00000000 is returned while `idcode` works, the read_cfg_reg implementation is broken.","name":"idcode-cfg"},{"about":"Program FPGA SRAM (volatile -- lost on power-cycle).","name":"sram"},{"about":"Program the on-board SPI flash (non-volatile / persistent).","name":"program"},{"about":"Read the SPI flash JEDEC ID via the JTAG-to-SPI bridge.","name":"flash-id"},{"about":"Read the raw CFG_OUT status register.","name":"status"},{"about":"Decode 7-series configuration registers for DONE=LOW diagnosis.","name":"debug"},{"about":"Load a bitstream into FPGA SRAM using openFPGALoader with a Digilent FTDI cable. This is the canonical path for the QMTech Wukong V1 / XC7A200T board because the in-tree `dlc10` driver only supports Xilinx DLC10 cables (VID=0x03FD), not the attached Digilent cable (VID=0x0403:0x6014).","name":"load-sram"},{"about":"Read and decode the FPGA STAT register via openFPGALoader.","name":"stat"},{"about":"Read the FPGA XADC sensors (temperature, VCCINT, VCCAUX) via openFPGALoader and print a JSON object. The board must be powered and connected through a supported cable such as `digilent_hs2`.","name":"read-xadc"},{"about":"Synthesize the GF16 4x4 matrix design through the openXC7 toolchain. Output is written to `/gf16_matmul4x4_top.bit`.","name":"synth-gf16"},{"about":"Program the on-board SPI flash (non-volatile) using openFPGALoader's JTAG-to-SPI bridge. Requires a matching `spiOverJtag` bitstream for the exact FPGA package; the XC7A200T-FGG676 bridge is present in recent openFPGALoader distributions but flash boot may still depend on board mode pins (see docs/reports/FPGA_LOOP_EVIDENCE_2026-07-04.md).","name":"program-flash"},{"about":"Dump SPI flash contents to a file via openFPGALoader's JTAG-to-SPI bridge.","name":"dump-flash"},{"about":"Parse the .bit header and print the configuration registers that affect Master SPI boot (COR0, COR1, WBSTAR, TIMER, CTL0, CTL1, IDCODE, BSPI).","name":"bit-config"},{"about":"Program the given .bit to SPI flash, dump the same region back, and compare the dumped bytes against the bitstream payload. This verifies the openFPGALoader write path is bit-perfect for the raw bitstream.","name":"round-trip-verify"},{"about":"Guided cold-POR boot experiment. Programs flash, asks the user to physically power-cycle the board, then captures STAT without a JTAG reset and prints a decision-tree diagnosis.","name":"boot-log"},{"about":"Deterministic cold-POR boot experiment with optional relay control. With `--relay-port MOCK` the command writes a deterministic, clearly labeled mock boot log so CI can exercise the cold-POR JSON path without touching hardware. Real relay ports are reserved for Variant A/B.","name":"cold-por"},{"about":"Board-less smoke gate for the FPGA path. Runs `tri fpga bit-config` on the GF16 demo bitstream and, if yosys is available, a synthesis smoke check on the demo Verilog. Requires no physical board.","name":"smoke-gate"},{"about":"Print or interactively confirm the cold-POR boot protocol. This is the standalone version of the instructions embedded in `boot-log` and `cclk-sweep`; use it to verify the operator steps before a physical power-cycle.","name":"boot-protocol"},{"about":"Patch the raw OSCFSEL field (COR0[22:17]) of a 7-series .bit file.","name":"patch-cor0"},{"about":"Generate a set of OSCFSEL variants from a single input .bit file. Outputs one file per requested value to the given directory.","name":"cclk-variants"},{"about":"Automated cold-POR CCLK sweep. Generates OSCFSEL variants, programs each to flash, prompts for the physical power-cycle, captures STAT, and writes JSON logs. The only manual step is disconnecting/reconnecting the cable and power-cycling the board.","name":"cclk-sweep"},{"about":"Read all `build/fpga/boot-log-*.json` files and produce a sweep report identifying the first working CCLK variant.","name":"sweep-report"},{"about":"Print DSLogic / oscilloscope instructions for measuring the FPGA CCLK output during Master SPI configuration. Optionally parse a DSView CSV export or run a live capture via `sigrok-cli` with a connected logic analyzer (e.g., the Digilent FTDI cable as `ftdi-la`).","name":"measure-cclk"},{"about":"Read the SPI flash status register via openFPGALoader's JTAG-to-SPI bridge. Decodes WIP, WEL, and QE bits to help diagnose boot-from-flash failures.","name":"flash-status"},{"about":"Diagnostic: load *only* the proxy bridge bitstream (or any other bitstream) into FPGA SRAM, report STAT, leave TAP in RTI. Does NOT touch SPI flash. Useful for verifying the bridge actually reaches DONE=HIGH before debugging SPI semantics.","name":"proxy-load"},{"about":"Diagnostic: read IDCODE + STAT *without* touching the FPGA. Run this immediately after `tri fpga proxy-load` to confirm the bridge is alive. Also confirms IR=USER1 select is accepted.","name":"proxy-status"},{"about":"Diagnostic: shift raw hex bytes through the USER1 BSCAN as a single SPI transaction. Reads `--rx N` MISO bytes after the TX stream. Requires the proxy bridge to be already loaded (`tri fpga proxy-load` first).","name":"spi-raw"},{"about":"Diagnostic: probe the IR capture pattern after selecting an IR. A healthy 7-series TAP always captures `0b000001` into the IR shift register. Anything else means the JTAG chain is broken or the cable is mis-driving TMS.","name":"ir-probe"},{"about":"Diagnostic: drive the full JEDEC-read flow end-to-end with maximum instrumentation, **including** the 0xAB Release-Power-down and 0x66+0x99 software-reset recovery attempts. Equivalent to `flash-id --verbose` plus auto-recovery.","name":"flash-id-debug"},{"about":"Build the QMTech XC7A100T-FGG676 JTAG-to-SPI proxy bitstream via the openXC7 open-source toolchain (yosys + nextpnr-himbaechel + prjxray). Requires `yosys`, `nextpnr-himbaechel`, `fasm2frames.py` and `xc7frames2bit` on PATH. With `--install`, the produced `.bit` is copied to `fpga/tools/bscan_spi_xc7a100t.bit` so the embedded `BSCAN_SPI_XC7A100T` constant picks it up on the next rebuild.","name":"build-proxy"},{"about":"Clone the openXC7 `nextpnr-xilinx` repo and build a chipdb (`.bba`) for the requested 7-series part, then install it into `~/.local/share/nextpnr/himbaechel-xilinx/`.","name":"setup-openxc7-chipdb"},{"about":"Generate a Lean 4 theorem from a `tri fpga measure-cclk --json` output. The theorem proves that the measured `(frequency, duty)` pair satisfies `measured_cclk_satisfies_flash_spec` and links it to `transaction_satisfies_flash_spec`. Useful for turning a real capture into a machine-checked proof without manual copy-paste.","name":"measured-to-lean"},{"about":"Print the PVT-derated N25Q128_3V SCK low/high bound for a supplied operating context. Also prints the margin over the nominal 6 ns bound and warns if the context is outside the documented operating envelope.","name":"pvt-envelope"},{"about":"Build the QMTech XC7A100T-FGG676 proxy bitstream via a Docker container running Xilinx Vivado. Clones our `openFPGALoader` fork (`feat/qmtech-xc7a100t-board`) into `target/openfpgaloader-fork/` and runs `make` inside `spiOverJtag/`. On Apple Silicon (arm64), the container runs under x86_64 emulation via `--platform linux/amd64`. With `--install`, the produced `bscan_spi_xc7a100tfgg676.bit.gz` is decompressed and copied to `fpga/tools/bscan_spi_xc7a100t.bit` and its SHA256 is printed.","name":"build-proxy-docker"}],"agents":[],"args":[],"cast":null,"command":"tri fpga","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"FPGA programming via the in-tree DLC10 driver (pure Rust).","ABOUT_SOURCE":"clap /// doc on Commands::Fpga (cli/tri/src/main.rs; module cli/tri/src/fpga.rs)","ACTIONS":["idcode","idcode-cfg","sram","program","flash-id","status","debug","load-sram","stat","read-xadc","synth-gf16","program-flash","dump-flash","bit-config","round-trip-verify","boot-log","cold-por","smoke-gate","boot-protocol","patch-cor0","cclk-variants","cclk-sweep","sweep-report","measure-cclk","flash-status","proxy-load","proxy-status","spi-raw","ir-probe","flash-id-debug","build-proxy","setup-openxc7-chipdb","measured-to-lean","pvt-envelope","build-proxy-docker"],"ACTIONS_ABOUT":["Read and print the JTAG IDCODE of the attached DLC10 cable target.","Read the configuration IDCODE register via the Type-1 CFG_IN/CFG_OUT protocol. On a healthy XC7A100T this must return 0x13631093 (same as the JTAG IDCODE). If 0x00000000 is returned while `idcode` works, the read_cfg_reg implementation is broken.","Program FPGA SRAM (volatile -- lost on power-cycle).","Program the on-board SPI flash (non-volatile / persistent).","Read the SPI flash JEDEC ID via the JTAG-to-SPI bridge.","Read the raw CFG_OUT status register.","Decode 7-series configuration registers for DONE=LOW diagnosis.","Load a bitstream into FPGA SRAM using openFPGALoader with a Digilent FTDI cable. This is the canonical path for the QMTech Wukong V1 / XC7A200T board because the in-tree `dlc10` driver only supports Xilinx DLC10 cables (VID=0x03FD), not the attached Digilent cable (VID=0x0403:0x6014).","Read and decode the FPGA STAT register via openFPGALoader.","Read the FPGA XADC sensors (temperature, VCCINT, VCCAUX) via openFPGALoader and print a JSON object. The board must be powered and connected through a supported cable such as `digilent_hs2`.","Synthesize the GF16 4x4 matrix design through the openXC7 toolchain. Output is written to `/gf16_matmul4x4_top.bit`.","Program the on-board SPI flash (non-volatile) using openFPGALoader's JTAG-to-SPI bridge. Requires a matching `spiOverJtag` bitstream for the exact FPGA package; the XC7A200T-FGG676 bridge is present in recent openFPGALoader distributions but flash boot may still depend on board mode pins (see docs/reports/FPGA_LOOP_EVIDENCE_2026-07-04.md).","Dump SPI flash contents to a file via openFPGALoader's JTAG-to-SPI bridge.","Parse the .bit header and print the configuration registers that affect Master SPI boot (COR0, COR1, WBSTAR, TIMER, CTL0, CTL1, IDCODE, BSPI).","Program the given .bit to SPI flash, dump the same region back, and compare the dumped bytes against the bitstream payload. This verifies the openFPGALoader write path is bit-perfect for the raw bitstream.","Guided cold-POR boot experiment. Programs flash, asks the user to physically power-cycle the board, then captures STAT without a JTAG reset and prints a decision-tree diagnosis.","Deterministic cold-POR boot experiment with optional relay control. With `--relay-port MOCK` the command writes a deterministic, clearly labeled mock boot log so CI can exercise the cold-POR JSON path without touching hardware. Real relay ports are reserved for Variant A/B.","Board-less smoke gate for the FPGA path. Runs `tri fpga bit-config` on the GF16 demo bitstream and, if yosys is available, a synthesis smoke check on the demo Verilog. Requires no physical board.","Print or interactively confirm the cold-POR boot protocol. This is the standalone version of the instructions embedded in `boot-log` and `cclk-sweep`; use it to verify the operator steps before a physical power-cycle.","Patch the raw OSCFSEL field (COR0[22:17]) of a 7-series .bit file.","Generate a set of OSCFSEL variants from a single input .bit file. Outputs one file per requested value to the given directory.","Automated cold-POR CCLK sweep. Generates OSCFSEL variants, programs each to flash, prompts for the physical power-cycle, captures STAT, and writes JSON logs. The only manual step is disconnecting/reconnecting the cable and power-cycling the board.","Read all `build/fpga/boot-log-*.json` files and produce a sweep report identifying the first working CCLK variant.","Print DSLogic / oscilloscope instructions for measuring the FPGA CCLK output during Master SPI configuration. Optionally parse a DSView CSV export or run a live capture via `sigrok-cli` with a connected logic analyzer (e.g., the Digilent FTDI cable as `ftdi-la`).","Read the SPI flash status register via openFPGALoader's JTAG-to-SPI bridge. Decodes WIP, WEL, and QE bits to help diagnose boot-from-flash failures.","Diagnostic: load *only* the proxy bridge bitstream (or any other bitstream) into FPGA SRAM, report STAT, leave TAP in RTI. Does NOT touch SPI flash. Useful for verifying the bridge actually reaches DONE=HIGH before debugging SPI semantics.","Diagnostic: read IDCODE + STAT *without* touching the FPGA. Run this immediately after `tri fpga proxy-load` to confirm the bridge is alive. Also confirms IR=USER1 select is accepted.","Diagnostic: shift raw hex bytes through the USER1 BSCAN as a single SPI transaction. Reads `--rx N` MISO bytes after the TX stream. Requires the proxy bridge to be already loaded (`tri fpga proxy-load` first).","Diagnostic: probe the IR capture pattern after selecting an IR. A healthy 7-series TAP always captures `0b000001` into the IR shift register. Anything else means the JTAG chain is broken or the cable is mis-driving TMS.","Diagnostic: drive the full JEDEC-read flow end-to-end with maximum instrumentation, **including** the 0xAB Release-Power-down and 0x66+0x99 software-reset recovery attempts. Equivalent to `flash-id --verbose` plus auto-recovery.","Build the QMTech XC7A100T-FGG676 JTAG-to-SPI proxy bitstream via the openXC7 open-source toolchain (yosys + nextpnr-himbaechel + prjxray). Requires `yosys`, `nextpnr-himbaechel`, `fasm2frames.py` and `xc7frames2bit` on PATH. With `--install`, the produced `.bit` is copied to `fpga/tools/bscan_spi_xc7a100t.bit` so the embedded `BSCAN_SPI_XC7A100T` constant picks it up on the next rebuild.","Clone the openXC7 `nextpnr-xilinx` repo and build a chipdb (`.bba`) for the requested 7-series part, then install it into `~/.local/share/nextpnr/himbaechel-xilinx/`.","Generate a Lean 4 theorem from a `tri fpga measure-cclk --json` output. The theorem proves that the measured `(frequency, duty)` pair satisfies `measured_cclk_satisfies_flash_spec` and links it to `transaction_satisfies_flash_spec`. Useful for turning a real capture into a machine-checked proof without manual copy-paste.","Print the PVT-derated N25Q128_3V SCK low/high bound for a supplied operating context. Also prints the margin over the nominal 6 ns bound and warns if the context is outside the documented operating envelope.","Build the QMTech XC7A100T-FGG676 proxy bitstream via a Docker container running Xilinx Vivado. Clones our `openFPGALoader` fork (`feat/qmtech-xc7a100t-board`) into `target/openfpgaloader-fork/` and runs `make` inside `spiOverJtag/`. On Apple Silicon (arm64), the container runs under x86_64 emulation via `--platform linux/amd64`. With `--install`, the produced `bscan_spi_xc7a100tfgg676.bit.gz` is decompressed and copied to `fpga/tools/bscan_spi_xc7a100t.bit` and its SHA256 is printed."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri fpga","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/fpga","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/fpga","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/fpga.rs","VARIANT":"Commands::Fpga","WHEN_TO_USE":"FPGA programming via the in-tree DLC10 driver (pure Rust).","WITNESS":"source-parse"},"health":"ok","id":"tri/fpga","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/fpga.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_fpga","name":{"en":"tri fpga"},"qualifiedId":"gHashTag/t27:tri/fpga","repo":"gHashTag/t27","schema":2,"searchText":"tri/fpga tri fpga fpga programming via the in-tree dlc10 driver (pure rust). fpga programming via the in-tree dlc10 driver (pure rust). idcode read and print the jtag idcode of the attached dlc10 cable target. idcode-cfg read the configuration idcode register via the type-1 cfg_in/cfg_out protocol. on a healthy xc7a100t this must return 0x13631093 (same as the jtag idcode). if 0x00000000 is returned while `idcode` works, the read_cfg_reg implementation is broken. sram program fpga sram (volatile -- lost on power-cycle). program program the on-board spi flash (non-volatile / persistent). flash-id read the spi flash jedec id via the jtag-to-spi bridge. status read the raw cfg_out status register. debug decode 7-series configuration registers for done=low diagnosis. load-sram load a bitstream into fpga sram using openfpgaloader with a digilent ftdi cable. this is the canonical path for the qmtech wukong v1 / xc7a200t board because the in-tree `dlc10` driver only supports xilinx dlc10 cables (vid=0x03fd), not the attached digilent cable (vid=0x0403:0x6014). stat read and decode the fpga stat register via openfpgaloader. read-xadc read the fpga xadc sensors (temperature, vccint, vccaux) via openfpgaloader and print a json object. the board must be powered and connected through a supported cable such as `digilent_hs2`. synth-gf16 synthesize the gf16 4x4 matrix design through the openxc7 toolchain. output is written to `/gf16_matmul4x4_top.bit`. program-flash program the on-board spi flash (non-volatile) using openfpgaloader's jtag-to-spi bridge. requires a matching `spioverjtag` bitstream for the exact fpga package; the xc7a200t-fgg676 bridge is present in recent openfpgaloader distributions but flash boot may still depend on board mode pins (see docs/reports/fpga_loop_evidence_2026-07-04.md). dump-flash dump spi flash contents to a file via openfpgaloader's jtag-to-spi bridge. bit-config parse the .bit header and print the configuration registers that affect master spi boot (cor0, cor1, wbstar, timer, ctl0, ctl1, idcode, bspi). round-trip-verify program the given .bit to spi flash, dump the same region back, and compare the dumped bytes against the bitstream payload. this verifies the openfpgaloader write path is bit-perfect for the raw bitstream. boot-log guided cold-por boot experiment. programs flash, asks the user to physically power-cycle the board, then captures stat without a jtag reset and prints a decision-tree diagnosis. cold-por deterministic cold-por boot experiment with optional relay control. with `--relay-port mock` the command writes a deterministic, clearly labeled mock boot log so ci can exercise the cold-por json path without touching hardware. real relay ports are reserved for variant a/b. smoke-gate board-less smoke gate for the fpga path. runs `tri fpga bit-config` on the gf16 demo bitstream and, if yosys is available, a synthesis smoke check on the demo verilog. requires no physical board. boot-protocol print or interactively confirm the cold-por boot protocol. this is the standalone version of the instructions embedded in `boot-log` and `cclk-sweep`; use it to verify the operator steps before a physical power-cycle. patch-cor0 patch the raw oscfsel field (cor0[22:17]) of a 7-series .bit file. cclk-variants generate a set of oscfsel variants from a single input .bit file. outputs one file per requested value to the given directory. cclk-sweep automated cold-por cclk sweep. generates oscfsel variants, programs each to flash, prompts for the physical power-cycle, captures stat, and writes json logs. the only manual step is disconnecting/reconnecting the cable and power-cycling the board. sweep-report read all `build/fpga/boot-log-*.json` files and produce a sweep report identifying the first working cclk variant. measure-cclk print dslogic / oscilloscope instructions for measuring the fpga cclk output during master spi configuration. optionally parse a dsview csv export or run a live capture via `sigrok-cli` with a connected logic analyzer (e.g., the digilent ftdi cable as `ftdi-la`). flash-status read the spi flash status register via openfpgaloader's jtag-to-spi bridge. decodes wip, wel, and qe bits to help diagnose boot-from-flash failures. proxy-load diagnostic: load *only* the proxy bridge bitstream (or any other bitstream) into fpga sram, report stat, leave tap in rti. does not touch spi flash. useful for verifying the bridge actually reaches done=high before debugging spi semantics. proxy-status diagnostic: read idcode + stat *without* touching the fpga. run this immediately after `tri fpga proxy-load` to confirm the bridge is alive. also confirms ir=user1 select is accepted. spi-raw diagnostic: shift raw hex bytes through the user1 bscan as a single spi transaction. reads `--rx n` miso bytes after the tx stream. requires the proxy bridge to be already loaded (`tri fpga proxy-load` first). ir-probe diagnostic: probe the ir capture pattern after selecting an ir. a healthy 7-series tap always captures `0b000001` into the ir shift register. anything else means the jtag chain is broken or the cable is mis-driving tms. flash-id-debug diagnostic: drive the full jedec-read flow end-to-end with maximum instrumentation, **including** the 0xab release-power-down and 0x66+0x99 software-reset recovery attempts. equivalent to `flash-id --verbose` plus auto-recovery. build-proxy build the qmtech xc7a100t-fgg676 jtag-to-spi proxy bitstream via the openxc7 open-source toolchain (yosys + nextpnr-himbaechel + prjxray). requires `yosys`, `nextpnr-himbaechel`, `fasm2frames.py` and `xc7frames2bit` on path. with `--install`, the produced `.bit` is copied to `fpga/tools/bscan_spi_xc7a100t.bit` so the embedded `bscan_spi_xc7a100t` constant picks it up on the next rebuild. setup-openxc7-chipdb clone the openxc7 `nextpnr-xilinx` repo and build a chipdb (`.bba`) for the requested 7-series part, then install it into `~/.local/share/nextpnr/himbaechel-xilinx/`. measured-to-lean generate a lean 4 theorem from a `tri fpga measure-cclk --json` output. the theorem proves that the measured `(frequency, duty)` pair satisfies `measured_cclk_satisfies_flash_spec` and links it to `transaction_satisfies_flash_spec`. useful for turning a real capture into a machine-checked proof without manual copy-paste. pvt-envelope print the pvt-derated n25q128_3v sck low/high bound for a supplied operating context. also prints the margin over the nominal 6 ns bound and warns if the context is outside the documented operating envelope. build-proxy-docker build the qmtech xc7a100t-fgg676 proxy bitstream via a docker container running xilinx vivado. clones our `openfpgaloader` fork (`feat/qmtech-xc7a100t-board`) into `target/openfpgaloader-fork/` and runs `make` inside `spioverjtag/`. on apple silicon (arm64), the container runs under x86_64 emulation via `--platform linux/amd64`. with `--install`, the produced `bscan_spi_xc7a100tfgg676.bit.gz` is decompressed and copied to `fpga/tools/bscan_spi_xc7a100t.bit` and its sha256 is printed.","sha256":"aaf7d2d4ae26d149b68e8c50d010bcda79b6ba3bf30c782194ca37bd60f8c7b6","skills":[],"source":"cli/tri/src/fpga.rs","specPath":"specs/tools/tri/fpga.t27","summary":{"en":"FPGA programming via the in-tree DLC10 driver (pure Rust).","ru":"Программирование FPGA через встроенный драйвер DLC10 (чистый Rust)."},"typecheckOk":true,"variant":"Commands::Fpga","whenToUse":"FPGA programming via the in-tree DLC10 driver (pure Rust).","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Gates (cli/tri/src/main.rs; module cli/tri/src/gates.rs)","actions":[{"about":"Classify the compiler's own warnings. `rustc` already answers \"is this value ever read\" and \"does anything call this\" for the whole crate; the answer only helps if somebody reads it.","name":"warnings"},{"about":"Run every gate script and its negative control; name the ones with none.","name":"sweep"},{"about":"Break each gate's failure path and demand its control notices.","name":"mutate"},{"about":"Open pull requests whose path-filtered CI never ran.","name":"prs"},{"about":"What the tree says is required, against what the ruleset requires.","name":"preview"},{"about":"Which interpreter each gate step is handed to, and who says so.","name":"shell"},{"about":"Gate steps whose PASS is reachable with the thing they check absent.","name":"quiet"},{"about":"Every bounded GitHub fetch in this crate, and whether it can tell a page from a total.","name":"fetches"},{"about":"Run every gate CI runs, in an EMPTY tree, and report what still passes.","name":"empty"},{"about":"","name":"required"},{"about":"List active workflows whose lifetime success count is zero.","name":"dead"},{"about":"Workflows with no recent run on the default branch: their green is about frequency, not health.","name":"tests"},{"about":"","name":"unmeasured"}],"agents":[],"args":[],"cast":null,"command":"tri gates","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Find workflows that have never once succeeded.","ABOUT_SOURCE":"clap /// doc on Commands::Gates (cli/tri/src/main.rs; module cli/tri/src/gates.rs)","ACTIONS":["warnings","sweep","mutate","prs","preview","shell","quiet","fetches","empty","required","dead","tests","unmeasured"],"ACTIONS_ABOUT":["Classify the compiler's own warnings. `rustc` already answers \"is this value ever read\" and \"does anything call this\" for the whole crate; the answer only helps if somebody reads it.","Run every gate script and its negative control; name the ones with none.","Break each gate's failure path and demand its control notices.","Open pull requests whose path-filtered CI never ran.","What the tree says is required, against what the ruleset requires.","Which interpreter each gate step is handed to, and who says so.","Gate steps whose PASS is reachable with the thing they check absent.","Every bounded GitHub fetch in this crate, and whether it can tell a page from a total.","Run every gate CI runs, in an EMPTY tree, and report what still passes.","","List active workflows whose lifetime success count is zero.","Workflows with no recent run on the default branch: their green is about frequency, not health.",""],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri gates","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/gates","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/gates","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/gates.rs","VARIANT":"Commands::Gates","WHEN_TO_USE":"Find workflows that have never once succeeded.","WITNESS":"source-parse"},"health":"ok","id":"tri/gates","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/gates.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_gates","name":{"en":"tri gates"},"qualifiedId":"gHashTag/t27:tri/gates","repo":"gHashTag/t27","schema":2,"searchText":"tri/gates tri gates find workflows that have never once succeeded. find workflows that have never once succeeded. warnings classify the compiler's own warnings. `rustc` already answers \"is this value ever read\" and \"does anything call this\" for the whole crate; the answer only helps if somebody reads it. sweep run every gate script and its negative control; name the ones with none. mutate break each gate's failure path and demand its control notices. prs open pull requests whose path-filtered ci never ran. preview what the tree says is required, against what the ruleset requires. shell which interpreter each gate step is handed to, and who says so. quiet gate steps whose pass is reachable with the thing they check absent. fetches every bounded github fetch in this crate, and whether it can tell a page from a total. empty run every gate ci runs, in an empty tree, and report what still passes. required dead list active workflows whose lifetime success count is zero. tests workflows with no recent run on the default branch: their green is about frequency, not health. unmeasured","sha256":"de8489f65be8b1db66b2c9bf3abe96643c580d39e4b856cd6a9a3511e404975d","skills":[],"source":"cli/tri/src/gates.rs","specPath":"specs/tools/tri/gates.t27","summary":{"en":"Find workflows that have never once succeeded.","ru":"Находит воркфлоу, которые ни разу не завершались успешно."},"typecheckOk":true,"variant":"Commands::Gates","whenToUse":"Find workflows that have never once succeeded.","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_gen description (cli/tri-mcp/src/main.rs); handler cmd_gen runs t27c gen-verilog, gen-c, gen-rust (cli/tri/src/main.rs:862)","actions":[],"agents":[{"letter":"C","ok":true},{"letter":"T","ok":true}],"args":[{"about":"","name":""}],"cast":null,"command":"tri gen","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Generates backends from a .t27 spec file using t27c.","ABOUT_SOURCE":"tri-mcp tool tri_gen description (cli/tri-mcp/src/main.rs); handler cmd_gen runs t27c gen-verilog, gen-c, gen-rust (cli/tri/src/main.rs:862)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":["C","T"],"AGENTS_NOTE":".claude/agents/agent-c-compiler.md:40 (tri gen -- Generate code from specs; trigger On tri gen command, line 7); .claude/agents/trinity.md:68 (5. Gen - Run tri gen).","ARGS":[""],"COMMAND":"tri gen","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/gen","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/gen","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Gen","WHEN_TO_USE":"Generates backends from a .t27 spec file using t27c.","WITNESS":"source-parse"},"health":"ok","id":"tri/gen","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_gen","name":{"en":"tri gen"},"qualifiedId":"gHashTag/t27:tri/gen","repo":"gHashTag/t27","schema":2,"searchText":"tri/gen tri gen generates backends from a .t27 spec file using t27c. generates backends from a .t27 spec file using t27c. c t","sha256":"8739f5a9100f6f989b3558fa5c49af008fb134e3c640c67a0ca946e2880e42bb","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/gen.t27","summary":{"en":"Generates backends from a .t27 spec file using t27c.","ru":"Генерирует бэкенды из файла спецификации .t27 через t27c."},"typecheckOk":true,"variant":"Commands::Gen","whenToUse":"Generates backends from a .t27 spec file using t27c.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Harness (cli/tri/src/main.rs)","actions":[{"about":"Test binaries whose tests share one scratch directory.","name":"scratch"}],"agents":[],"args":[],"cast":null,"command":"tri harness","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Source files no crate root reaches, and so nothing compiles. Test-harness hygiene.","ABOUT_SOURCE":"clap /// doc on Commands::Harness (cli/tri/src/main.rs)","ACTIONS":["scratch"],"ACTIONS_ABOUT":["Test binaries whose tests share one scratch directory."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri harness","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/harness","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/harness","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Harness","WHEN_TO_USE":"Source files no crate root reaches, and so nothing compiles. Test-harness hygiene.","WITNESS":"source-parse"},"health":"ok","id":"tri/harness","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_harness","name":{"en":"tri harness"},"qualifiedId":"gHashTag/t27:tri/harness","repo":"gHashTag/t27","schema":2,"searchText":"tri/harness tri harness source files no crate root reaches, and so nothing compiles. test-harness hygiene. source files no crate root reaches, and so nothing compiles. test-harness hygiene. scratch test binaries whose tests share one scratch directory.","sha256":"67c635dcb96730ead658e8233879cc6f2b3cb56d9c6e85259629d10b9a536b9c","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/harness.t27","summary":{"en":"Source files no crate root reaches, and so nothing compiles. Test-harness hygiene.","ru":"Исходные файлы, до которых не доходит ни один корень крейта, и потому ничего не компилируется. Гигиена тестового харнесса."},"typecheckOk":true,"variant":"Commands::Harness","whenToUse":"Source files no crate root reaches, and so nothing compiles. Test-harness hygiene.","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_health description (cli/tri-mcp/src/main.rs); handler cmd_health reads .trinity/state/queen-health.json (cli/tri/src/main.rs:969)","actions":[],"agents":[],"args":[{"about":"","name":""}],"cast":null,"command":"tri health","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Returns queen and swarm health status from .trinity state.","ABOUT_SOURCE":"tri-mcp tool tri_health description (cli/tri-mcp/src/main.rs); handler cmd_health reads .trinity/state/queen-health.json (cli/tri/src/main.rs:969)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[""],"COMMAND":"tri health","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/health","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/health","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Health","WHEN_TO_USE":"Returns queen and swarm health status from .trinity state.","WITNESS":"source-parse"},"health":"ok","id":"tri/health","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_health","name":{"en":"tri health"},"qualifiedId":"gHashTag/t27:tri/health","repo":"gHashTag/t27","schema":2,"searchText":"tri/health tri health returns queen and swarm health status from .trinity state. returns queen and swarm health status from .trinity state.","sha256":"678ece919f8363e769be5541575ec25163565cf04481f776448b81c3fbac94c9","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/health.t27","summary":{"en":"Returns queen and swarm health status from .trinity state.","ru":"Показывает состояние здоровья королевы и роя из состояния .trinity."},"typecheckOk":true,"variant":"Commands::Health","whenToUse":"Returns queen and swarm health status from .trinity state.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Hooks (cli/tri/src/main.rs; module cli/tri/src/hooks.rs)","actions":[{"about":"Run every migrated commit-time gate in sequence (l1-check + now-gate).","name":"pre-commit"},{"about":"A pull request whose title claims a compiler fix must carry a source file.","name":"fix-carries-source"},{"about":"Ask the required NOW gate's own script whether this push adds an entry.","name":"pre-push"},{"about":"L1 TRACEABILITY over the message BEING WRITTEN, from the commit-msg hook.","name":"commit-msg"},{"about":"L1 TRACEABILITY: last commit message must reference an issue (`Closes #N` / `Fixes #N` / `Resolves #N` / `Reference #N`).","name":"l1-check"},{"about":"Verify a fresh `docs/now/-.md` entry exists.","name":"now-gate"},{"about":"Session-start guard for the Claude Code harness. Emits a one-line status string to stdout; never blocks (the Bash gate is a soft telemetry hook).","name":"session-gate"},{"about":"Which hooks git will actually run, and whose installer output is dead.","name":"status"}],"agents":[],"args":[],"cast":null,"command":"tri hooks","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Pure-Rust ports of repository commit / push gates.","ABOUT_SOURCE":"clap /// doc on Commands::Hooks (cli/tri/src/main.rs; module cli/tri/src/hooks.rs)","ACTIONS":["pre-commit","fix-carries-source","pre-push","commit-msg","l1-check","now-gate","session-gate","status"],"ACTIONS_ABOUT":["Run every migrated commit-time gate in sequence (l1-check + now-gate).","A pull request whose title claims a compiler fix must carry a source file.","Ask the required NOW gate's own script whether this push adds an entry.","L1 TRACEABILITY over the message BEING WRITTEN, from the commit-msg hook.","L1 TRACEABILITY: last commit message must reference an issue (`Closes #N` / `Fixes #N` / `Resolves #N` / `Reference #N`).","Verify a fresh `docs/now/-.md` entry exists.","Session-start guard for the Claude Code harness. Emits a one-line status string to stdout; never blocks (the Bash gate is a soft telemetry hook).","Which hooks git will actually run, and whose installer output is dead."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri hooks","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/hooks","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/hooks","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/hooks.rs","VARIANT":"Commands::Hooks","WHEN_TO_USE":"Pure-Rust ports of repository commit / push gates.","WITNESS":"source-parse"},"health":"ok","id":"tri/hooks","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/hooks.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_hooks","name":{"en":"tri hooks"},"qualifiedId":"gHashTag/t27:tri/hooks","repo":"gHashTag/t27","schema":2,"searchText":"tri/hooks tri hooks pure-rust ports of repository commit / push gates. pure-rust ports of repository commit / push gates. pre-commit run every migrated commit-time gate in sequence (l1-check + now-gate). fix-carries-source a pull request whose title claims a compiler fix must carry a source file. pre-push ask the required now gate's own script whether this push adds an entry. commit-msg l1 traceability over the message being written, from the commit-msg hook. l1-check l1 traceability: last commit message must reference an issue (`closes #n` / `fixes #n` / `resolves #n` / `reference #n`). now-gate verify a fresh `docs/now/-.md` entry exists. session-gate session-start guard for the claude code harness. emits a one-line status string to stdout; never blocks (the bash gate is a soft telemetry hook). status which hooks git will actually run, and whose installer output is dead.","sha256":"533eeb860d6bc3f69d612c3d2630965bf50b8533f50c4f4900b25ab42e838db2","skills":[],"source":"cli/tri/src/hooks.rs","specPath":"specs/tools/tri/hooks.t27","summary":{"en":"Pure-Rust ports of repository commit / push gates.","ru":"Порты гейтов коммита/пуша репозитория на чистом Rust."},"typecheckOk":true,"variant":"Commands::Hooks","whenToUse":"Pure-Rust ports of repository commit / push gates.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Issues (cli/tri/src/main.rs; module cli/tri/src/issues.rs)","actions":[{"about":"Open issues whose title calls a workflow red, and what it does today.","name":"stale"},{"about":"Open issues that state a COUNT in the title, and a reproducible sample.","name":"numbers"},{"about":"Open issues whose figure is ANCHORED, so re-measuring it proves nothing.","name":"dated"}],"agents":[],"args":[],"cast":null,"command":"tri issues","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Open issues whose headline calls a workflow red, against what that workflow concludes on master today.","ABOUT_SOURCE":"clap /// doc on Commands::Issues (cli/tri/src/main.rs; module cli/tri/src/issues.rs)","ACTIONS":["stale","numbers","dated"],"ACTIONS_ABOUT":["Open issues whose title calls a workflow red, and what it does today.","Open issues that state a COUNT in the title, and a reproducible sample.","Open issues whose figure is ANCHORED, so re-measuring it proves nothing."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri issues","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/issues","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/issues","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/issues.rs","VARIANT":"Commands::Issues","WHEN_TO_USE":"Open issues whose headline calls a workflow red, against what that workflow concludes on master today.","WITNESS":"source-parse"},"health":"ok","id":"tri/issues","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/issues.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_issues","name":{"en":"tri issues"},"qualifiedId":"gHashTag/t27:tri/issues","repo":"gHashTag/t27","schema":2,"searchText":"tri/issues tri issues open issues whose headline calls a workflow red, against what that workflow concludes on master today. open issues whose headline calls a workflow red, against what that workflow concludes on master today. stale open issues whose title calls a workflow red, and what it does today. numbers open issues that state a count in the title, and a reproducible sample. dated open issues whose figure is anchored, so re-measuring it proves nothing.","sha256":"e7b50b366482d2b8d45d2ac34d8c26df07c1834693fb3cce83c043be0509d75c","skills":[],"source":"cli/tri/src/issues.rs","specPath":"specs/tools/tri/issues.t27","summary":{"en":"Open issues whose headline calls a workflow red, against what that workflow concludes on master today.","ru":"Открытые issue, чей заголовок называет воркфлоу красным, против того, к чему этот воркфлоу приходит на master сегодня."},"typecheckOk":true,"variant":"Commands::Issues","whenToUse":"Open issues whose headline calls a workflow red, against what that workflow concludes on master today.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Jumps (cli/tri/src/main.rs; module cli/tri/src/jumps.rs)","actions":[{"about":"Name every `break`/`continue` site in the generated Verilog and say what it lowered to.","name":"census"}],"agents":[],"args":[],"cast":null,"command":"tri jumps","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What happened to every `break` and `continue` the Verilog emitter had to lower?","ABOUT_SOURCE":"clap /// doc on Commands::Jumps (cli/tri/src/main.rs; module cli/tri/src/jumps.rs)","ACTIONS":["census"],"ACTIONS_ABOUT":["Name every `break`/`continue` site in the generated Verilog and say what it lowered to."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri jumps","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/jumps","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/jumps","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/jumps.rs","VARIANT":"Commands::Jumps","WHEN_TO_USE":"What happened to every `break` and `continue` the Verilog emitter had to lower? `break` was `disable fork;` and `continue` was `/* continue */;`. Both parse, both synthesise, both are no-ops -- so every instrument that asks whether the output PARSES said yes for as long as the emitter has existed. See #2988.","WITNESS":"source-parse"},"health":"ok","id":"tri/jumps","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/jumps.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_jumps","name":{"en":"tri jumps"},"qualifiedId":"gHashTag/t27:tri/jumps","repo":"gHashTag/t27","schema":2,"searchText":"tri/jumps tri jumps what happened to every `break` and `continue` the verilog emitter had to lower? what happened to every `break` and `continue` the verilog emitter had to lower? `break` was `disable fork;` and `continue` was `/* continue */;`. both parse, both synthesise, both are no-ops -- so every instrument that asks whether the output parses said yes for as long as the emitter has existed. see #2988. census name every `break`/`continue` site in the generated verilog and say what it lowered to.","sha256":"905308ea72644feb0e72d64a5d6c6edaed7e0d8e7182e7d52d8157f9951e756a","skills":[],"source":"cli/tri/src/jumps.rs","specPath":"specs/tools/tri/jumps.t27","summary":{"en":"What happened to every `break` and `continue` the Verilog emitter had to lower?","ru":"Что случилось с каждым `break` и `continue`, которые эмиттеру Verilog пришлось опустить?"},"typecheckOk":true,"variant":"Commands::Jumps","whenToUse":"What happened to every `break` and `continue` the Verilog emitter had to lower? `break` was `disable fork;` and `continue` was `/* continue */;`. Both parse, both synthesise, both are no-ops -- so every instrument that asks whether the output PARSES said yes for as long as the emitter has existed. See #2988.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Kinds (cli/tri/src/main.rs; module cli/tri/src/kinddrift.rs)","actions":[{"about":"Match arms whose comment names a construct the pattern does not cover.","name":"drift"}],"agents":[],"args":[],"cast":null,"command":"tri kinds","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Match arms whose own comment names a case the pattern omits.","ABOUT_SOURCE":"clap /// doc on Commands::Kinds (cli/tri/src/main.rs; module cli/tri/src/kinddrift.rs)","ACTIONS":["drift"],"ACTIONS_ABOUT":["Match arms whose comment names a construct the pattern does not cover."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri kinds","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/kinds","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/kinds","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/kinddrift.rs","VARIANT":"Commands::Kinds","WHEN_TO_USE":"Match arms whose own comment names a case the pattern omits.","WITNESS":"source-parse"},"health":"ok","id":"tri/kinds","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/kinddrift.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_kinds","name":{"en":"tri kinds"},"qualifiedId":"gHashTag/t27:tri/kinds","repo":"gHashTag/t27","schema":2,"searchText":"tri/kinds tri kinds match arms whose own comment names a case the pattern omits. match arms whose own comment names a case the pattern omits. drift match arms whose comment names a construct the pattern does not cover.","sha256":"76affd22763395ddb1ff3639130a93df72fdd0c7491275d4ef3f1cd0bc5c9377","skills":[],"source":"cli/tri/src/kinddrift.rs","specPath":"specs/tools/tri/kinds.t27","summary":{"en":"Match arms whose own comment names a case the pattern omits.","ru":"Ветви match, чей собственный комментарий называет случай, который паттерн пропускает."},"typecheckOk":true,"variant":"Commands::Kinds","whenToUse":"Match arms whose own comment names a case the pattern omits.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Lean (cli/tri/src/main.rs; module cli/tri/src/leanvac.rs)","actions":[{"about":"Completeness theorems whose model has no functions.","name":"vacuous"},{"about":"Proof files the build root does not reach, and so nothing compiles.","name":"reach"}],"agents":[],"args":[],"cast":{"commands":["tri lean vacuous","tri lean reach"],"id":"t27-tri-lean","recorded":"2026-10-03 16:18 UTC","share":"https://t27.ai/term/t27-tri-lean/","src":"term/t27-tri-lean/session.cast","title":"tri lean: proofs that nothing compiles"},"command":"tri lean","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Completeness theorems whose Lean model is empty.","ABOUT_SOURCE":"clap /// doc on Commands::Lean (cli/tri/src/main.rs; module cli/tri/src/leanvac.rs)","ACTIONS":["vacuous","reach"],"ACTIONS_ABOUT":["Completeness theorems whose model has no functions.","Proof files the build root does not reach, and so nothing compiles."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"CAST":"term/t27-tri-lean/session.cast","COMMAND":"tri lean","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/lean","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/lean","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/leanvac.rs","VARIANT":"Commands::Lean","WHEN_TO_USE":"Completeness theorems whose Lean model is empty.","WITNESS":"source-parse"},"health":"ok","id":"tri/lean","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/leanvac.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_lean","name":{"en":"tri lean"},"qualifiedId":"gHashTag/t27:tri/lean","repo":"gHashTag/t27","schema":2,"searchText":"tri/lean tri lean completeness theorems whose lean model is empty. completeness theorems whose lean model is empty. vacuous completeness theorems whose model has no functions. reach proof files the build root does not reach, and so nothing compiles.","sha256":"63132dbe9a003cce04220c8a2348e84f871da78edb128a159618843e9f825ba0","skills":[],"source":"cli/tri/src/leanvac.rs","specPath":"specs/tools/tri/lean.t27","summary":{"en":"Completeness theorems whose Lean model is empty.","ru":"Теоремы полноты, у которых модель Lean пуста."},"typecheckOk":true,"variant":"Commands::Lean","whenToUse":"Completeness theorems whose Lean model is empty.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Ledgers (cli/tri/src/main.rs; module cli/tri/src/ledgers.rs)","actions":[{"about":"Plant a stale entry in each ledger and demand its gate fail.","name":"audit"}],"agents":[],"args":[],"cast":null,"command":"tri ledgers","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Does each ledger's gate notice when one of its entries stops being true?","ABOUT_SOURCE":"clap /// doc on Commands::Ledgers (cli/tri/src/main.rs; module cli/tri/src/ledgers.rs)","ACTIONS":["audit"],"ACTIONS_ABOUT":["Plant a stale entry in each ledger and demand its gate fail."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri ledgers","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/ledgers","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/ledgers","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/ledgers.rs","VARIANT":"Commands::Ledgers","WHEN_TO_USE":"Does each ledger's gate notice when one of its entries stops being true?","WITNESS":"source-parse"},"health":"ok","id":"tri/ledgers","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/ledgers.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_ledgers","name":{"en":"tri ledgers"},"qualifiedId":"gHashTag/t27:tri/ledgers","repo":"gHashTag/t27","schema":2,"searchText":"tri/ledgers tri ledgers does each ledger's gate notice when one of its entries stops being true? does each ledger's gate notice when one of its entries stops being true? audit plant a stale entry in each ledger and demand its gate fail.","sha256":"98f0c29164ca0fcd92e851d96e061e6f442a80fccab59e71f5d617f364afd7dc","skills":[],"source":"cli/tri/src/ledgers.rs","specPath":"specs/tools/tri/ledgers.t27","summary":{"en":"Does each ledger's gate notice when one of its entries stops being true?","ru":"Замечает ли гейт каждого леджера, когда одна из его записей перестаёт быть истинной?"},"typecheckOk":true,"variant":"Commands::Ledgers","whenToUse":"Does each ledger's gate notice when one of its entries stops being true?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Loop (cli/tri/src/main.rs; module cli/tri/src/loopclaim.rs)","actions":[{"about":"Take the named claim, or say who already holds it.","name":"claim"}],"agents":[],"args":[],"cast":null,"command":"tri loop","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What is failing on the default branch right now, and since when. Take a named claim so two sessions of the loop cannot pick the same task.","ABOUT_SOURCE":"clap /// doc on Commands::Loop (cli/tri/src/main.rs; module cli/tri/src/loopclaim.rs)","ACTIONS":["claim"],"ACTIONS_ABOUT":["Take the named claim, or say who already holds it."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri loop","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/loop","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/loop","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/loopclaim.rs","VARIANT":"Commands::Loop","WHEN_TO_USE":"What is failing on the default branch right now, and since when. Take a named claim so two sessions of the loop cannot pick the same task.","WITNESS":"source-parse"},"health":"ok","id":"tri/loop","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/loopclaim.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_loop","name":{"en":"tri loop"},"qualifiedId":"gHashTag/t27:tri/loop","repo":"gHashTag/t27","schema":2,"searchText":"tri/loop tri loop what is failing on the default branch right now, and since when. take a named claim so two sessions of the loop cannot pick the same task. what is failing on the default branch right now, and since when. take a named claim so two sessions of the loop cannot pick the same task. claim take the named claim, or say who already holds it.","sha256":"a204edbc1869df4b6d5953432ed6597eb23b9ba0b67d766a13c999d97499f45c","skills":[],"source":"cli/tri/src/loopclaim.rs","specPath":"specs/tools/tri/loop.t27","summary":{"en":"What is failing on the default branch right now, and since when. Take a named claim so two sessions of the loop cannot pick the same task.","ru":"Что падает на ветке по умолчанию прямо сейчас и с какого момента. Берёт именованную заявку, чтобы две сессии лупа не взяли одну задачу."},"typecheckOk":true,"variant":"Commands::Loop","whenToUse":"What is failing on the default branch right now, and since when. Take a named claim so two sessions of the loop cannot pick the same task.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Merging (cli/tri/src/main.rs; module cli/tri/src/inflight.rs)","actions":[],"agents":[],"args":[{"about":"The base this branch is supposed to carry. A ref, not a URL.","name":"--base"},{"about":"Also check the commits behind HEAD, not only HEAD itself.","name":"--depth"}],"cast":null,"command":"tri merging","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Is a merge in flight here, and does this branch carry the base?","ABOUT_SOURCE":"clap /// doc on Commands::Merging (cli/tri/src/main.rs; module cli/tri/src/inflight.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--base: The base this branch is supposed to carry. A ref, not a URL.","--depth: Also check the commits behind HEAD, not only HEAD itself."],"COMMAND":"tri merging","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/merging","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/merging","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/inflight.rs","VARIANT":"Commands::Merging","WHEN_TO_USE":"Is a merge in flight here, and does this branch carry the base?","WITNESS":"source-parse"},"health":"ok","id":"tri/merging","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/inflight.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_merging","name":{"en":"tri merging"},"qualifiedId":"gHashTag/t27:tri/merging","repo":"gHashTag/t27","schema":2,"searchText":"tri/merging tri merging is a merge in flight here, and does this branch carry the base? is a merge in flight here, and does this branch carry the base?","sha256":"bb4167b8b988820e63e2e42cc9b3f1eeaea9a9caf00e15d8c3f3e0b5cd9d0cb5","skills":[],"source":"cli/tri/src/inflight.rs","specPath":"specs/tools/tri/merging.t27","summary":{"en":"Is a merge in flight here, and does this branch carry the base?","ru":"Идёт ли здесь мерж, и несёт ли эта ветка базу?"},"typecheckOk":true,"variant":"Commands::Merging","whenToUse":"Is a merge in flight here, and does this branch carry the base?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Misread (cli/tri/src/main.rs; module cli/tri/src/misread.rs)","actions":[],"agents":[],"args":[{"about":"Root of the spec tree.","name":"--specs-dir"},{"about":"Name every spec under each shape rather than only counting.","name":"--list"}],"cast":{"commands":["tri misread"],"id":"t27-tri-misread","recorded":"2026-10-03 16:18 UTC","share":"https://t27.ai/term/t27-tri-misread/","src":"term/t27-tri-misread/session.cast","title":"tri misread: code that compiles and is wrong"},"command":"tri misread","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"The specs the compiler reads WRONGLY. Every gate is green on them.","ABOUT_SOURCE":"clap /// doc on Commands::Misread (cli/tri/src/main.rs; module cli/tri/src/misread.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--specs-dir: Root of the spec tree.","--list: Name every spec under each shape rather than only counting."],"CAST":"term/t27-tri-misread/session.cast","COMMAND":"tri misread","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/misread","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/misread","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/misread.rs","VARIANT":"Commands::Misread","WHEN_TO_USE":"The specs the compiler reads WRONGLY. Every gate is green on them.","WITNESS":"source-parse"},"health":"ok","id":"tri/misread","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/misread.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_misread","name":{"en":"tri misread"},"qualifiedId":"gHashTag/t27:tri/misread","repo":"gHashTag/t27","schema":2,"searchText":"tri/misread tri misread the specs the compiler reads wrongly. every gate is green on them. the specs the compiler reads wrongly. every gate is green on them.","sha256":"4a9acbb1459ea28a2b63dd53eb5c8a10234e66f14da305d75382fc849309ecd0","skills":[],"source":"cli/tri/src/misread.rs","specPath":"specs/tools/tri/misread.t27","summary":{"en":"The specs the compiler reads WRONGLY. Every gate is green on them.","ru":"Спеки, которые компилятор читает НЕВЕРНО. Все гейты на них зелёные."},"typecheckOk":true,"variant":"Commands::Misread","whenToUse":"The specs the compiler reads WRONGLY. Every gate is green on them.","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/modreach.rs:1 (Commands::Mods dispatches to modreach, cli/tri/src/main.rs:1085)","actions":[{"about":"List them.","name":"orphan"}],"agents":[],"args":[],"cast":null,"command":"tri mods","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"`tri mods orphan` -- `.rs` files no crate root reaches.","ABOUT_SOURCE":"//! module doc, cli/tri/src/modreach.rs:1 (Commands::Mods dispatches to modreach, cli/tri/src/main.rs:1085)","ACTIONS":["orphan"],"ACTIONS_ABOUT":["List them."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri mods","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/mods","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/mods","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Mods","WHEN_TO_USE":"`tri mods orphan` -- `.rs` files no crate root reaches.","WITNESS":"source-parse"},"health":"ok","id":"tri/mods","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_mods","name":{"en":"tri mods"},"qualifiedId":"gHashTag/t27:tri/mods","repo":"gHashTag/t27","schema":2,"searchText":"tri/mods tri mods `tri mods orphan` -- `.rs` files no crate root reaches. `tri mods orphan` -- `.rs` files no crate root reaches. orphan list them.","sha256":"45754d036ee4eced4776bb6c2d85addf2cf176e7c70098f78b3fdb4db7df17c1","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/mods.t27","summary":{"en":"`tri mods orphan` -- `.rs` files no crate root reaches.","ru":"`tri mods orphan` -- файлы `.rs`, до которых не доходит ни один корень крейта."},"typecheckOk":true,"variant":"Commands::Mods","whenToUse":"`tri mods orphan` -- `.rs` files no crate root reaches.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Mutate (cli/tri/src/main.rs; module cli/tri/src/mutate.rs)","actions":[{"about":"Perturb each numeric literal in a file and report which ones the checker does not notice.","name":"run"}],"agents":[],"args":[],"cast":null,"command":"tri mutate","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Find the constants in a checker that nothing actually checks.","ABOUT_SOURCE":"clap /// doc on Commands::Mutate (cli/tri/src/main.rs; module cli/tri/src/mutate.rs)","ACTIONS":["run"],"ACTIONS_ABOUT":["Perturb each numeric literal in a file and report which ones the checker does not notice."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri mutate","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/mutate","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/mutate","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/mutate.rs","VARIANT":"Commands::Mutate","WHEN_TO_USE":"Find the constants in a checker that nothing actually checks.","WITNESS":"source-parse"},"health":"ok","id":"tri/mutate","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/mutate.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_mutate","name":{"en":"tri mutate"},"qualifiedId":"gHashTag/t27:tri/mutate","repo":"gHashTag/t27","schema":2,"searchText":"tri/mutate tri mutate find the constants in a checker that nothing actually checks. find the constants in a checker that nothing actually checks. run perturb each numeric literal in a file and report which ones the checker does not notice.","sha256":"163456bf9900804666e0f1f53bb7ca1bc76faa89f27e30bf34ca869f8388ea98","skills":[],"source":"cli/tri/src/mutate.rs","specPath":"specs/tools/tri/mutate.t27","summary":{"en":"Find the constants in a checker that nothing actually checks.","ru":"Находит в чекере константы, которые на деле ничем не проверяются."},"typecheckOk":true,"variant":"Commands::Mutate","whenToUse":"Find the constants in a checker that nothing actually checks.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Now (cli/tri/src/main.rs; module cli/tri/src/nownote.rs)","actions":[{"about":"Write a docs/now/ entry: title, bullets, optional issue ref.","name":"add"},{"about":"Ask the REQUIRED `check` gate its own question, before pushing.","name":"check"}],"agents":[],"args":[],"cast":null,"command":"tri now","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Write a docs/now/ entry without hand-writing the frame.","ABOUT_SOURCE":"clap /// doc on Commands::Now (cli/tri/src/main.rs; module cli/tri/src/nownote.rs)","ACTIONS":["add","check"],"ACTIONS_ABOUT":["Write a docs/now/ entry: title, bullets, optional issue ref.","Ask the REQUIRED `check` gate its own question, before pushing."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri now","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/now","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/now","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/nownote.rs","VARIANT":"Commands::Now","WHEN_TO_USE":"Write a docs/now/ entry without hand-writing the frame.","WITNESS":"source-parse"},"health":"ok","id":"tri/now","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/nownote.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_now","name":{"en":"tri now"},"qualifiedId":"gHashTag/t27:tri/now","repo":"gHashTag/t27","schema":2,"searchText":"tri/now tri now write a docs/now/ entry without hand-writing the frame. write a docs/now/ entry without hand-writing the frame. add write a docs/now/ entry: title, bullets, optional issue ref. check ask the required `check` gate its own question, before pushing.","sha256":"e151864300830e0cdde07121285099fdc47c1de925ec4a5e78bba71a29e6a94a","skills":[],"source":"cli/tri/src/nownote.rs","specPath":"specs/tools/tri/now.t27","summary":{"en":"Write a docs/now/ entry without hand-writing the frame.","ru":"Пишет запись docs/now/ без ручного набора рамки."},"typecheckOk":true,"variant":"Commands::Now","whenToUse":"Write a docs/now/ entry without hand-writing the frame.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::OneAway (cli/tri/src/main.rs; module cli/tri/src/oneaway.rs)","actions":[],"agents":[],"args":[{"about":"Also list every spec, not only the class tally.","name":"--names"},{"about":"Report specs with exactly this many errors. The default, 1, is the only bucket a single repair can move; `--errors 2` is the next wave.","name":"--errors"},{"about":"Stop after this many specs. Prints what was dropped -- a silent cap reads as coverage.","name":"--limit"},{"about":"Run the controls and report, changing nothing.","name":"--self-check"}],"cast":null,"command":"tri one-away","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Failing specs one defect from compiling, and what that defect is","ABOUT_SOURCE":"clap /// doc on Commands::OneAway (cli/tri/src/main.rs; module cli/tri/src/oneaway.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--names: Also list every spec, not only the class tally.","--errors: Report specs with exactly this many errors. The default, 1, is the only bucket a single repair can move; `--errors 2` is the next wave.","--limit: Stop after this many specs. Prints what was dropped -- a silent cap reads as coverage.","--self-check: Run the controls and report, changing nothing."],"COMMAND":"tri one-away","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/one-away","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/one-away","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/oneaway.rs","VARIANT":"Commands::OneAway","WHEN_TO_USE":"Failing specs one defect from compiling, and what that defect is","WITNESS":"source-parse"},"health":"ok","id":"tri/one-away","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/oneaway.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_one_away","name":{"en":"tri one-away"},"qualifiedId":"gHashTag/t27:tri/one-away","repo":"gHashTag/t27","schema":2,"searchText":"tri/one-away tri one-away failing specs one defect from compiling, and what that defect is failing specs one defect from compiling, and what that defect is","sha256":"f823bbea9d121e61a27e9c8d899004d2f3712876eab334ed3982a62908fd8ab2","skills":[],"source":"cli/tri/src/oneaway.rs","specPath":"specs/tools/tri/one-away.t27","summary":{"en":"Failing specs one defect from compiling, and what that defect is","ru":"Падающие спеки, которым до компиляции один дефект, и какой именно."},"typecheckOk":true,"variant":"Commands::OneAway","whenToUse":"Failing specs one defect from compiling, and what that defect is","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Orphaned (cli/tri/src/main.rs; module cli/tri/src/orphaned.rs)","actions":[{"about":"List gate and tool sources that name an input which is not in the tree.","name":"list"}],"agents":[],"args":[],"cast":null,"command":"tri orphaned","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Checks whose input is not in the tree.","ABOUT_SOURCE":"clap /// doc on Commands::Orphaned (cli/tri/src/main.rs; module cli/tri/src/orphaned.rs)","ACTIONS":["list"],"ACTIONS_ABOUT":["List gate and tool sources that name an input which is not in the tree."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri orphaned","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/orphaned","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/orphaned","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/orphaned.rs","VARIANT":"Commands::Orphaned","WHEN_TO_USE":"Checks whose input is not in the tree.","WITNESS":"source-parse"},"health":"ok","id":"tri/orphaned","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/orphaned.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_orphaned","name":{"en":"tri orphaned"},"qualifiedId":"gHashTag/t27:tri/orphaned","repo":"gHashTag/t27","schema":2,"searchText":"tri/orphaned tri orphaned checks whose input is not in the tree. checks whose input is not in the tree. list list gate and tool sources that name an input which is not in the tree.","sha256":"f9808d318e75aa5ea4ea3e5b3bf33f0a667aab6a00c7c5aa91f2cc77e3e846bd","skills":[],"source":"cli/tri/src/orphaned.rs","specPath":"specs/tools/tri/orphaned.t27","summary":{"en":"Checks whose input is not in the tree.","ru":"Проверки, чей вход отсутствует в дереве."},"typecheckOk":true,"variant":"Commands::Orphaned","whenToUse":"Checks whose input is not in the tree.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Pr (cli/tri/src/main.rs; module cli/tri/src/prcheck.rs)","actions":[{"about":"Classify every failing check and say plainly whether it is safe to merge. Did this pull request's content actually reach the default branch?","name":"landed"},{"about":"","name":"ready"}],"agents":[],"args":[],"cast":null,"command":"tri pr","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Is this pull request actually safe to merge?","ABOUT_SOURCE":"clap /// doc on Commands::Pr (cli/tri/src/main.rs; module cli/tri/src/prcheck.rs)","ACTIONS":["landed","ready"],"ACTIONS_ABOUT":["Classify every failing check and say plainly whether it is safe to merge. Did this pull request's content actually reach the default branch?",""],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri pr","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/pr","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/pr","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/prcheck.rs","VARIANT":"Commands::Pr","WHEN_TO_USE":"Is this pull request actually safe to merge?","WITNESS":"source-parse"},"health":"ok","id":"tri/pr","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/prcheck.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_pr","name":{"en":"tri pr"},"qualifiedId":"gHashTag/t27:tri/pr","repo":"gHashTag/t27","schema":2,"searchText":"tri/pr tri pr is this pull request actually safe to merge? is this pull request actually safe to merge? landed classify every failing check and say plainly whether it is safe to merge. did this pull request's content actually reach the default branch? ready","sha256":"4909a13b33ff6128bf308132850effbdfcfc1b44bb8ccedf1c7bacc288dea720","skills":[],"source":"cli/tri/src/prcheck.rs","specPath":"specs/tools/tri/pr.t27","summary":{"en":"Is this pull request actually safe to merge?","ru":"Действительно ли этот pull request безопасно мержить?"},"typecheckOk":true,"variant":"Commands::Pr","whenToUse":"Is this pull request actually safe to merge?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Prose (cli/tri/src/main.rs; module cli/tri/src/prose.rs)","actions":[{"about":"Which specs are blocked only by prose, and how many lines that is.","name":"report"}],"agents":[],"args":[],"cast":{"commands":["tri prose report"],"id":"t27-tri-prose","recorded":"2026-10-03 16:18 UTC","share":"https://t27.ai/term/t27-tri-prose/","src":"term/t27-tri-prose/session.cast","title":"tri prose report: prose, or code?"},"command":"tri prose","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Specs a literate author left prose in, and how far that prose is from code.","ABOUT_SOURCE":"clap /// doc on Commands::Prose (cli/tri/src/main.rs; module cli/tri/src/prose.rs)","ACTIONS":["report"],"ACTIONS_ABOUT":["Which specs are blocked only by prose, and how many lines that is."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"CAST":"term/t27-tri-prose/session.cast","COMMAND":"tri prose","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/prose","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/prose","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/prose.rs","VARIANT":"Commands::Prose","WHEN_TO_USE":"Specs a literate author left prose in, and how far that prose is from code.","WITNESS":"source-parse"},"health":"ok","id":"tri/prose","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/prose.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_prose","name":{"en":"tri prose"},"qualifiedId":"gHashTag/t27:tri/prose","repo":"gHashTag/t27","schema":2,"searchText":"tri/prose tri prose specs a literate author left prose in, and how far that prose is from code. specs a literate author left prose in, and how far that prose is from code. report which specs are blocked only by prose, and how many lines that is.","sha256":"335037d593359d8b267fecdfadeb7166f7ad5a262177d4214159e5c239020118","skills":[],"source":"cli/tri/src/prose.rs","specPath":"specs/tools/tri/prose.t27","summary":{"en":"Specs a literate author left prose in, and how far that prose is from code.","ru":"Спеки, в которых литературный автор оставил прозу, и насколько эта проза далека от кода."},"typecheckOk":true,"variant":"Commands::Prose","whenToUse":"Specs a literate author left prose in, and how far that prose is from code.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Quantifiers (cli/tri/src/main.rs; module cli/tri/src/quant.rs)","actions":[{"about":"Every quantified clause, its binders, and the size of its domain.","name":"report"},{"about":"Every line carrying a quantifier keyword, and whether the census read it.","name":"audit"}],"agents":[],"args":[],"cast":null,"command":"tri quantifiers","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Every quantified clause, its binders, and the size of its domain.","ABOUT_SOURCE":"clap /// doc on Commands::Quantifiers (cli/tri/src/main.rs; module cli/tri/src/quant.rs)","ACTIONS":["report","audit"],"ACTIONS_ABOUT":["Every quantified clause, its binders, and the size of its domain.","Every line carrying a quantifier keyword, and whether the census read it."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri quantifiers","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/quantifiers","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/quantifiers","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/quant.rs","VARIANT":"Commands::Quantifiers","WHEN_TO_USE":"Every quantified clause, its binders, and the size of its domain.","WITNESS":"source-parse"},"health":"ok","id":"tri/quantifiers","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/quant.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_quantifiers","name":{"en":"tri quantifiers"},"qualifiedId":"gHashTag/t27:tri/quantifiers","repo":"gHashTag/t27","schema":2,"searchText":"tri/quantifiers tri quantifiers every quantified clause, its binders, and the size of its domain. every quantified clause, its binders, and the size of its domain. report every quantified clause, its binders, and the size of its domain. audit every line carrying a quantifier keyword, and whether the census read it.","sha256":"f6500ab3e4a78e54e2e83ed1aa6eb389ec0da64ebb735841849c788efc0e1a44","skills":[],"source":"cli/tri/src/quant.rs","specPath":"specs/tools/tri/quantifiers.t27","summary":{"en":"Every quantified clause, its binders, and the size of its domain.","ru":"Каждая квантифицированная клауза, её связанные переменные и размер её домена."},"typecheckOk":true,"variant":"Commands::Quantifiers","whenToUse":"Every quantified clause, its binders, and the size of its domain.","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/red.rs:1","actions":[{"about":"Show workflows whose most recent run on the default branch failed.","name":"now"},{"about":"Which STEP each recent failure of one workflow died at, oldest first.","name":"why"}],"agents":[],"args":[],"cast":null,"command":"tri red","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"`tri red` -- what is failing on main right now, and since when.","ABOUT_SOURCE":"//! module doc, cli/tri/src/red.rs:1","ACTIONS":["now","why"],"ACTIONS_ABOUT":["Show workflows whose most recent run on the default branch failed.","Which STEP each recent failure of one workflow died at, oldest first."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri red","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/red","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/red","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/red.rs","VARIANT":"Commands::Red","WHEN_TO_USE":"`tri red` -- what is failing on main right now, and since when.","WITNESS":"source-parse"},"health":"ok","id":"tri/red","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/red.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_red","name":{"en":"tri red"},"qualifiedId":"gHashTag/t27:tri/red","repo":"gHashTag/t27","schema":2,"searchText":"tri/red tri red `tri red` -- what is failing on main right now, and since when. `tri red` -- what is failing on main right now, and since when. now show workflows whose most recent run on the default branch failed. why which step each recent failure of one workflow died at, oldest first.","sha256":"dbc09d850d87e9623513a9eedf77764f4b84cb299f4175c068eee278a0748a71","skills":[],"source":"cli/tri/src/red.rs","specPath":"specs/tools/tri/red.t27","summary":{"en":"`tri red` -- what is failing on main right now, and since when.","ru":"`tri red` -- что падает на main прямо сейчас и с какого момента."},"typecheckOk":true,"variant":"Commands::Red","whenToUse":"`tri red` -- what is failing on main right now, and since when.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Reseal (cli/tri/src/main.rs; module cli/tri/src/reseal.rs)","actions":[{"about":"Rewrite FROZEN_HASH from the current bytes of the sealed file.","name":"write"},{"about":"Report whether the seal matches, and exit non-zero if it does not.","name":"check"}],"agents":[],"args":[],"cast":null,"command":"tri reseal","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Recompute the FROZEN_HASH seal from the file it seals.","ABOUT_SOURCE":"clap /// doc on Commands::Reseal (cli/tri/src/main.rs; module cli/tri/src/reseal.rs)","ACTIONS":["write","check"],"ACTIONS_ABOUT":["Rewrite FROZEN_HASH from the current bytes of the sealed file.","Report whether the seal matches, and exit non-zero if it does not."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri reseal","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/reseal","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/reseal","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/reseal.rs","VARIANT":"Commands::Reseal","WHEN_TO_USE":"Recompute the FROZEN_HASH seal from the file it seals.","WITNESS":"source-parse"},"health":"ok","id":"tri/reseal","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/reseal.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_reseal","name":{"en":"tri reseal"},"qualifiedId":"gHashTag/t27:tri/reseal","repo":"gHashTag/t27","schema":2,"searchText":"tri/reseal tri reseal recompute the frozen_hash seal from the file it seals. recompute the frozen_hash seal from the file it seals. write rewrite frozen_hash from the current bytes of the sealed file. check report whether the seal matches, and exit non-zero if it does not.","sha256":"f4b1478122c02d2e4c50a5bb589e03e97212875c368fad659824f5f532e824d8","skills":[],"source":"cli/tri/src/reseal.rs","specPath":"specs/tools/tri/reseal.t27","summary":{"en":"Recompute the FROZEN_HASH seal from the file it seals.","ru":"Пересчитывает печать FROZEN_HASH по файлу, который она запечатывает."},"typecheckOk":true,"variant":"Commands::Reseal","whenToUse":"Recompute the FROZEN_HASH seal from the file it seals.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Rtl (cli/tri/src/main.rs; module cli/tri/src/rtl.rs)","actions":[{"about":"Run the five structural checks on a design directory.","name":"check"}],"agents":[],"args":[],"cast":null,"command":"tri rtl","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"The structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness.","ABOUT_SOURCE":"clap /// doc on Commands::Rtl (cli/tri/src/main.rs; module cli/tri/src/rtl.rs)","ACTIONS":["check"],"ACTIONS_ABOUT":["Run the five structural checks on a design directory."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri rtl","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/rtl","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/rtl","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/rtl.rs","VARIANT":"Commands::Rtl","WHEN_TO_USE":"The structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness.","WITNESS":"source-parse"},"health":"ok","id":"tri/rtl","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/rtl.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_rtl","name":{"en":"tri rtl"},"qualifiedId":"gHashTag/t27:tri/rtl","repo":"gHashTag/t27","schema":2,"searchText":"tri/rtl tri rtl the structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness. the structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness. check run the five structural checks on a design directory.","sha256":"656a55d5c53935a47b6bfb87528cb7eadd93b56ea60bc246f720ace506be7109","skills":[],"source":"cli/tri/src/rtl.rs","specPath":"specs/tools/tri/rtl.t27","summary":{"en":"The structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness.","ru":"Структурная проверка, которую предлагает t27.ai, локально: пять вердиктов, версия yosys рядом с числами и никаких заявлений о корректности."},"typecheckOk":true,"variant":"Commands::Rtl","whenToUse":"The structural check t27.ai offers, run locally: five verdicts, the yosys version beside the numbers, and no claim about correctness.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Seals (cli/tri/src/main.rs; module cli/tri/src/seals.rs)","actions":[{"about":"Is the built compiler newer than the source the seals are checked against?","name":"fresh"},{"about":"Seals whose claims no longer match what the compiler produces, and the one command that repairs them.","name":"drift"},{"about":"Specs that carry more than one seal, and which of those pairs disagree.","name":"twins"},{"about":"Copy the NEWEST seal's claims onto its twins, after a re-seal.","name":"sync-twins"},{"about":"Seals that record `gen_hash=none` -- a spec that produced no output, sealed.","name":"hollow"}],"agents":[],"args":[],"cast":{"commands":["tri seals fresh","tri seals hollow"],"id":"t27-tri-seals","recorded":"2026-10-03 16:18 UTC","share":"https://t27.ai/term/t27-tri-seals/","src":"term/t27-tri-seals/session.cast","title":"tri seals: hollow seals that pass every check"},"command":"tri seals","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What `.trinity/seals` says about a spec, when it says it twice.","ABOUT_SOURCE":"clap /// doc on Commands::Seals (cli/tri/src/main.rs; module cli/tri/src/seals.rs)","ACTIONS":["fresh","drift","twins","sync-twins","hollow"],"ACTIONS_ABOUT":["Is the built compiler newer than the source the seals are checked against?","Seals whose claims no longer match what the compiler produces, and the one command that repairs them.","Specs that carry more than one seal, and which of those pairs disagree.","Copy the NEWEST seal's claims onto its twins, after a re-seal.","Seals that record `gen_hash=none` -- a spec that produced no output, sealed."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"CAST":"term/t27-tri-seals/session.cast","COMMAND":"tri seals","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/seals","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/seals","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/seals.rs","VARIANT":"Commands::Seals","WHEN_TO_USE":"What `.trinity/seals` says about a spec, when it says it twice.","WITNESS":"source-parse"},"health":"ok","id":"tri/seals","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/seals.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_seals","name":{"en":"tri seals"},"qualifiedId":"gHashTag/t27:tri/seals","repo":"gHashTag/t27","schema":2,"searchText":"tri/seals tri seals what `.trinity/seals` says about a spec, when it says it twice. what `.trinity/seals` says about a spec, when it says it twice. fresh is the built compiler newer than the source the seals are checked against? drift seals whose claims no longer match what the compiler produces, and the one command that repairs them. twins specs that carry more than one seal, and which of those pairs disagree. sync-twins copy the newest seal's claims onto its twins, after a re-seal. hollow seals that record `gen_hash=none` -- a spec that produced no output, sealed.","sha256":"ad21abf89970a7fc3b06e3459be5bbd2e8e8110fd0b76b0bbfa7e26676910423","skills":[],"source":"cli/tri/src/seals.rs","specPath":"specs/tools/tri/seals.t27","summary":{"en":"What `.trinity/seals` says about a spec, when it says it twice.","ru":"Что `.trinity/seals` говорит о спеке, когда говорит это дважды."},"typecheckOk":true,"variant":"Commands::Seals","whenToUse":"What `.trinity/seals` says about a spec, when it says it twice.","witness":"source-parse"},{"aboutSource":"handler cmd_serve routes and banner string (cli/tri/src/main.rs:1121)","actions":[],"agents":[],"args":[{"about":"","name":"--addr"}],"cast":null,"command":"tri serve","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Serve the trinity depin HTTP API over axum: POST /prove, GET /epoch-challenge, GET /health; prints trinity depin v0.1.0 -- listening on .","ABOUT_SOURCE":"handler cmd_serve routes and banner string (cli/tri/src/main.rs:1121)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--addr"],"COMMAND":"tri serve","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/serve","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/serve","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Serve","WHEN_TO_USE":"Serve the trinity depin HTTP API over axum: POST /prove, GET /epoch-challenge, GET /health; prints trinity depin v0.1.0 -- listening on .","WITNESS":"source-parse"},"health":"ok","id":"tri/serve","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_serve","name":{"en":"tri serve"},"qualifiedId":"gHashTag/t27:tri/serve","repo":"gHashTag/t27","schema":2,"searchText":"tri/serve tri serve serve the trinity depin http api over axum: post /prove, get /epoch-challenge, get /health; prints trinity depin v0.1.0 -- listening on . serve the trinity depin http api over axum: post /prove, get /epoch-challenge, get /health; prints trinity depin v0.1.0 -- listening on .","sha256":"0aa1373204ff6f8fd41fd8d19428f3d0754fc124578e3f1fbcc2f55c9ff55f4a","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/serve.t27","summary":{"en":"Serve the trinity depin HTTP API over axum: POST /prove, GET /epoch-challenge, GET /health; prints trinity depin v0.1.0 -- listening on .","ru":"Поднимает HTTP API trinity depin на axum: POST /prove, GET /epoch-challenge, GET /health; печатает «trinity depin v0.1.0 -- listening on »."},"typecheckOk":true,"variant":"Commands::Serve","whenToUse":"Serve the trinity depin HTTP API over axum: POST /prove, GET /epoch-challenge, GET /health; prints trinity depin v0.1.0 -- listening on .","witness":"source-parse"},{"aboutSource":"tri-mcp tools tri_skill_begin and tri_skill_end descriptions (cli/tri-mcp/src/main.rs); SkillAction enum cli/tri/src/main.rs:349","actions":[{"about":"Write a new lesson to the spool, unnumbered.","name":"add"},{"about":"Fold every spooled lesson into SKILL.md, numbering them on the way in.","name":"fold"},{"about":"Check every SKILL.md's section numbering for collisions.","name":"check"},{"about":"Sections whose body was cut short at some point in the file's history.","name":"lost"},{"about":"Every cross-reference in the skills, and whether it resolves.","name":"refs"},{"about":"Sections that state a FIGURE, and which of those a reader can re-take.","name":"claims"},{"about":"Move sections you appended to the numbers the base branch left free.","name":"renumber"},{"about":"","name":"begin"},{"about":"","name":"end"}],"agents":[],"args":[],"cast":null,"command":"tri skill","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Begins a new PHI LOOP skill session bound to an issue. Ends the active PHI LOOP skill session. The add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (SKILL.md lesson spool).","ABOUT_SOURCE":"tri-mcp tools tri_skill_begin and tri_skill_end descriptions (cli/tri-mcp/src/main.rs); SkillAction enum cli/tri/src/main.rs:349","ACTIONS":["add","fold","check","lost","refs","claims","renumber","begin","end"],"ACTIONS_ABOUT":["Write a new lesson to the spool, unnumbered.","Fold every spooled lesson into SKILL.md, numbering them on the way in.","Check every SKILL.md's section numbering for collisions.","Sections whose body was cut short at some point in the file's history.","Every cross-reference in the skills, and whether it resolves.","Sections that state a FIGURE, and which of those a reader can re-take.","Move sections you appended to the numbers the base branch left free.","",""],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri skill","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/skill","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/skill","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Skill","WHEN_TO_USE":"Begins a new PHI LOOP skill session bound to an issue. Ends the active PHI LOOP skill session. The add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (SKILL.md lesson spool).","WITNESS":"source-parse"},"health":"ok","id":"tri/skill","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_skill","name":{"en":"tri skill"},"qualifiedId":"gHashTag/t27:tri/skill","repo":"gHashTag/t27","schema":2,"searchText":"tri/skill tri skill begins a new phi loop skill session bound to an issue. ends the active phi loop skill session. the add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (skill.md lesson spool). begins a new phi loop skill session bound to an issue. ends the active phi loop skill session. the add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (skill.md lesson spool). add write a new lesson to the spool, unnumbered. fold fold every spooled lesson into skill.md, numbering them on the way in. check check every skill.md's section numbering for collisions. lost sections whose body was cut short at some point in the file's history. refs every cross-reference in the skills, and whether it resolves. claims sections that state a figure, and which of those a reader can re-take. renumber move sections you appended to the numbers the base branch left free. begin end","sha256":"4e19baf0ea4267dbbd23f71b8d324779c85427672378205a64726118c36a8e68","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/skill.t27","summary":{"en":"Begins a new PHI LOOP skill session bound to an issue. Ends the active PHI LOOP skill session. The add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (SKILL.md lesson spool).","ru":"Начинает новую сессию скилла PHI LOOP, привязанную к issue; завершает активную сессию. Действия add/fold/check/lost/refs/claims/renumber ведут спул уроков SKILL.md и описаны в своих clap-доках."},"typecheckOk":true,"variant":"Commands::Skill","whenToUse":"Begins a new PHI LOOP skill session bound to an issue. Ends the active PHI LOOP skill session. The add/fold/check/lost/refs/claims/renumber actions carry their own clap docs (SKILL.md lesson spool).","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_status description (cli/tri-mcp/src/main.rs); handler cmd_status prints === PHI LOOP STATUS === (cli/tri/src/main.rs:613)","actions":[],"agents":[],"args":[],"cast":null,"command":"tri status","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","ABOUT_SOURCE":"tri-mcp tool tri_status description (cli/tri-mcp/src/main.rs); handler cmd_status prints === PHI LOOP STATUS === (cli/tri/src/main.rs:613)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri status","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/status","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/status","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Status","WHEN_TO_USE":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","WITNESS":"source-parse"},"health":"ok","id":"tri/status","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_status","name":{"en":"tri status"},"qualifiedId":"gHashTag/t27:tri/status","repo":"gHashTag/t27","schema":2,"searchText":"tri/status tri status returns phi loop status including active skill, cell, issue binding, and uncommitted changes. returns phi loop status including active skill, cell, issue binding, and uncommitted changes.","sha256":"bacc3fad069505febf375adbbfea9a861e4dc884a6c3d98d723bc5cd22365290","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/status.t27","summary":{"en":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","ru":"Показывает статус PHI LOOP: активный скилл, ячейку, привязку к issue и незакоммиченные изменения."},"typecheckOk":true,"variant":"Commands::Status","whenToUse":"Returns PHI LOOP status including active skill, cell, issue binding, and uncommitted changes.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Sweep (cli/tri/src/main.rs; module cli/tri/src/sweep.rs)","actions":[{"about":"Synthesise a top across values of one parameter and report the trend.","name":"area"}],"agents":[],"args":[],"cast":null,"command":"tri sweep","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Synthesise across a parameter and check the area actually moves.","ABOUT_SOURCE":"clap /// doc on Commands::Sweep (cli/tri/src/main.rs; module cli/tri/src/sweep.rs)","ACTIONS":["area"],"ACTIONS_ABOUT":["Synthesise a top across values of one parameter and report the trend."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri sweep","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/sweep","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/sweep","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/sweep.rs","VARIANT":"Commands::Sweep","WHEN_TO_USE":"Synthesise across a parameter and check the area actually moves.","WITNESS":"source-parse"},"health":"ok","id":"tri/sweep","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/sweep.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_sweep","name":{"en":"tri sweep"},"qualifiedId":"gHashTag/t27:tri/sweep","repo":"gHashTag/t27","schema":2,"searchText":"tri/sweep tri sweep synthesise across a parameter and check the area actually moves. synthesise across a parameter and check the area actually moves. area synthesise a top across values of one parameter and report the trend.","sha256":"7b032422cdd86d854023351e841cf5c6f6f43327cab5504b6afd61ac889614e1","skills":[],"source":"cli/tri/src/sweep.rs","specPath":"specs/tools/tri/sweep.t27","summary":{"en":"Synthesise across a parameter and check the area actually moves.","ru":"Синтез по параметру с проверкой, что площадь действительно меняется."},"typecheckOk":true,"variant":"Commands::Sweep","whenToUse":"Synthesise across a parameter and check the area actually moves.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Synth (cli/tri/src/main.rs; module cli/tri/src/synth.rs)","actions":[{"about":"Synthesise a top module and report LUT/DSP/FF/CARRY4 counts.","name":"area"}],"agents":[],"args":[],"cast":null,"command":"tri synth","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Synthesise a top module and report area, with the instrument named.","ABOUT_SOURCE":"clap /// doc on Commands::Synth (cli/tri/src/main.rs; module cli/tri/src/synth.rs)","ACTIONS":["area"],"ACTIONS_ABOUT":["Synthesise a top module and report LUT/DSP/FF/CARRY4 counts."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri synth","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/synth","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/synth","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/synth.rs","VARIANT":"Commands::Synth","WHEN_TO_USE":"Synthesise a top module and report area, with the instrument named.","WITNESS":"source-parse"},"health":"ok","id":"tri/synth","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/synth.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_synth","name":{"en":"tri synth"},"qualifiedId":"gHashTag/t27:tri/synth","repo":"gHashTag/t27","schema":2,"searchText":"tri/synth tri synth synthesise a top module and report area, with the instrument named. synthesise a top module and report area, with the instrument named. area synthesise a top module and report lut/dsp/ff/carry4 counts.","sha256":"51a2f2cad1da2385b6c7b16ab1e4721df80fe98918a60a3410c88fe14da4d743","skills":[],"source":"cli/tri/src/synth.rs","specPath":"specs/tools/tri/synth.t27","summary":{"en":"Synthesise a top module and report area, with the instrument named.","ru":"Синтезирует top-модуль и сообщает площадь с указанием инструмента."},"typecheckOk":true,"variant":"Commands::Synth","whenToUse":"Synthesise a top module and report area, with the instrument named.","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_test description (cli/tri-mcp/src/main.rs); handler cmd_test runs t27c test (cli/tri/src/main.rs:870)","actions":[],"agents":[{"letter":"T","ok":true},{"letter":"V","ok":true}],"args":[{"about":"","name":""}],"cast":null,"command":"tri test","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Runs tests for a .t27 spec file using t27c.","ABOUT_SOURCE":"tri-mcp tool tri_test description (cli/tri-mcp/src/main.rs); handler cmd_test runs t27c test (cli/tri/src/main.rs:870)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":["T","V"],"AGENTS_NOTE":".claude/agents/agent-v-verify.md:47 (tri test -- Run conformance tests); .claude/agents/trinity.md:70 (7. Verify - Run tri test).","ARGS":[""],"COMMAND":"tri test","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/test","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/test","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Test","WHEN_TO_USE":"Runs tests for a .t27 spec file using t27c.","WITNESS":"source-parse"},"health":"ok","id":"tri/test","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_test","name":{"en":"tri test"},"qualifiedId":"gHashTag/t27:tri/test","repo":"gHashTag/t27","schema":2,"searchText":"tri/test tri test runs tests for a .t27 spec file using t27c. runs tests for a .t27 spec file using t27c. t v","sha256":"a960b7f1a9936d59ccf97203a7031161075c78d1ba6a0f7c78b65084d3a910a7","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/test.t27","summary":{"en":"Runs tests for a .t27 spec file using t27c.","ru":"Запускает тесты для файла спецификации .t27 через t27c."},"typecheckOk":true,"variant":"Commands::Test","whenToUse":"Runs tests for a .t27 spec file using t27c.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Topic (cli/tri/src/main.rs)","actions":[],"agents":[],"args":[{"about":"Words to look for. A row matches on any; rows carrying more come first.","name":""},{"about":"How many recent commits on the base branch to read.","name":"--commits"}],"cast":null,"command":"tri topic","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Has anyone already done this, or are they doing it now?","ABOUT_SOURCE":"clap /// doc on Commands::Topic (cli/tri/src/main.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[": Words to look for. A row matches on any; rows carrying more come first.","--commits: How many recent commits on the base branch to read."],"COMMAND":"tri topic","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/topic","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/topic","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Topic","WHEN_TO_USE":"Has anyone already done this, or are they doing it now?","WITNESS":"source-parse"},"health":"ok","id":"tri/topic","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_topic","name":{"en":"tri topic"},"qualifiedId":"gHashTag/t27:tri/topic","repo":"gHashTag/t27","schema":2,"searchText":"tri/topic tri topic has anyone already done this, or are they doing it now? has anyone already done this, or are they doing it now?","sha256":"0ca5ed85564d0231316703fb63605e962ea2cbf2fb37a273c7d9eac793a45cd5","skills":[],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/topic.t27","summary":{"en":"Has anyone already done this, or are they doing it now?","ru":"Кто-нибудь уже делал это или делает сейчас?"},"typecheckOk":true,"variant":"Commands::Topic","whenToUse":"Has anyone already done this, or are they doing it now?","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/types_dup.rs:1","actions":[{"about":"Type names with more than one definition in the spec tree.","name":"dup"},{"about":"Hold the conflicted set: a new conflict fails, and a resolved one fails until it is blessed away.","name":"ratchet"},{"about":"Cross-check the written classification against what the tree says today.","name":"classified"},{"about":"Names defined more than once INSIDE ONE FILE.","name":"redef"}],"agents":[],"args":[],"cast":null,"command":"tri types","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"One type name, more than one definition.","ABOUT_SOURCE":"//! module doc, cli/tri/src/types_dup.rs:1","ACTIONS":["dup","ratchet","classified","redef"],"ACTIONS_ABOUT":["Type names with more than one definition in the spec tree.","Hold the conflicted set: a new conflict fails, and a resolved one fails until it is blessed away.","Cross-check the written classification against what the tree says today.","Names defined more than once INSIDE ONE FILE."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri types","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/types","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/types","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/types_dup.rs","VARIANT":"Commands::Types","WHEN_TO_USE":"One type name, more than one definition.","WITNESS":"source-parse"},"health":"ok","id":"tri/types","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/types_dup.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_types","name":{"en":"tri types"},"qualifiedId":"gHashTag/t27:tri/types","repo":"gHashTag/t27","schema":2,"searchText":"tri/types tri types one type name, more than one definition. one type name, more than one definition. dup type names with more than one definition in the spec tree. ratchet hold the conflicted set: a new conflict fails, and a resolved one fails until it is blessed away. classified cross-check the written classification against what the tree says today. redef names defined more than once inside one file.","sha256":"16ea516e67cf93e24863ebb8aabc61ac3bc67fed76d94a228f947258b5296f55","skills":[],"source":"cli/tri/src/types_dup.rs","specPath":"specs/tools/tri/types.t27","summary":{"en":"One type name, more than one definition.","ru":"Одно имя типа, больше одного определения."},"typecheckOk":true,"variant":"Commands::Types","whenToUse":"One type name, more than one definition.","witness":"source-parse"},{"aboutSource":"//! module doc, cli/tri/src/unparsed.rs:1","actions":[{"about":"Rank the constructs that stop the compiler, most specs first.","name":"report"},{"about":"For each unreadable spec, the ITEM whose presence causes the failure.","name":"locate"},{"about":"Cross-check the census against an INDEPENDENTLY built population.","name":"agree"},{"about":"Run every construct's minimal source and say which the compiler rejects.","name":"probe"}],"agents":[],"args":[],"cast":null,"command":"tri unparsed","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Specs the compiler cannot read, ranked by the CONSTRUCT that stops it -- and every construct backed by a live probe.","ABOUT_SOURCE":"//! module doc, cli/tri/src/unparsed.rs:1","ACTIONS":["report","locate","agree","probe"],"ACTIONS_ABOUT":["Rank the constructs that stop the compiler, most specs first.","For each unreadable spec, the ITEM whose presence causes the failure.","Cross-check the census against an INDEPENDENTLY built population.","Run every construct's minimal source and say which the compiler rejects."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri unparsed","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/unparsed","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/unparsed","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/unparsed.rs","VARIANT":"Commands::Unparsed","WHEN_TO_USE":"Specs the compiler cannot read, ranked by the CONSTRUCT that stops it -- and every construct backed by a live probe.","WITNESS":"source-parse"},"health":"ok","id":"tri/unparsed","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/unparsed.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_unparsed","name":{"en":"tri unparsed"},"qualifiedId":"gHashTag/t27:tri/unparsed","repo":"gHashTag/t27","schema":2,"searchText":"tri/unparsed tri unparsed specs the compiler cannot read, ranked by the construct that stops it -- and every construct backed by a live probe. specs the compiler cannot read, ranked by the construct that stops it -- and every construct backed by a live probe. report rank the constructs that stop the compiler, most specs first. locate for each unreadable spec, the item whose presence causes the failure. agree cross-check the census against an independently built population. probe run every construct's minimal source and say which the compiler rejects.","sha256":"6aaf39d92a0b7c5443faa32b97cd7fd74b251a8258aee8390b6965d5fee2e660","skills":[],"source":"cli/tri/src/unparsed.rs","specPath":"specs/tools/tri/unparsed.t27","summary":{"en":"Specs the compiler cannot read, ranked by the CONSTRUCT that stops it -- and every construct backed by a live probe.","ru":"Спеки, которые компилятор не может прочитать, ранжированные по КОНСТРУКЦИИ, которая его останавливает, -- и каждая конструкция, подтверждённая живой пробой."},"typecheckOk":true,"variant":"Commands::Unparsed","whenToUse":"Specs the compiler cannot read, ranked by the CONSTRUCT that stops it -- and every construct backed by a live probe.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Vectors (cli/tri/src/main.rs; module cli/tri/src/vectors.rs)","actions":[{"about":"Generate a module's Verilog and execute its registered vectors.","name":"run"},{"about":"Inventory every vector file: executed, debt, or aspirational.","name":"debt"}],"agents":[],"args":[],"cast":{"commands":["tri vectors debt"],"id":"t27-tri-vectors","recorded":"2026-10-03 16:18 UTC","share":"https://t27.ai/term/t27-tri-vectors/","src":"term/t27-tri-vectors/session.cast","title":"tri vectors debt: tests that are prose"},"command":"tri vectors","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"The executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed.","ABOUT_SOURCE":"clap /// doc on Commands::Vectors (cli/tri/src/main.rs; module cli/tri/src/vectors.rs)","ACTIONS":["run","debt"],"ACTIONS_ABOUT":["Generate a module's Verilog and execute its registered vectors.","Inventory every vector file: executed, debt, or aspirational."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"CAST":"term/t27-tri-vectors/session.cast","COMMAND":"tri vectors","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/vectors","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/vectors","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/vectors.rs","VARIANT":"Commands::Vectors","WHEN_TO_USE":"The executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed.","WITNESS":"source-parse"},"health":"ok","id":"tri/vectors","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/vectors.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_vectors","name":{"en":"tri vectors"},"qualifiedId":"gHashTag/t27:tri/vectors","repo":"gHashTag/t27","schema":2,"searchText":"tri/vectors tri vectors the executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed. the executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed. run generate a module's verilog and execute its registered vectors. debt inventory every vector file: executed, debt, or aspirational.","sha256":"6db1f366c9e6925e5f5ea2a207b82507aee732a2b310ab4f5f55bfc060908b83","skills":[],"source":"cli/tri/src/vectors.rs","specPath":"specs/tools/tri/vectors.t27","summary":{"en":"The executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed.","ru":"Реестр исполняемых векторов: запустить векторы модуля или проинвентаризировать, какие файлы исполняются, а какие только показываются."},"typecheckOk":true,"variant":"Commands::Vectors","whenToUse":"The executed-vector registry: run a module's vectors, or inventory which files are executed and which are only displayed.","witness":"source-parse"},{"aboutSource":"tri-mcp tool tri_verdict description (cli/tri-mcp/src/main.rs); handler cmd_verdict runs t27c validate-seals, validate-phi-identity and, with --toxic, validate-toxicity (cli/tri/src/main.rs:876)","actions":[],"agents":[{"letter":"V","ok":true}],"args":[{"about":"","name":"--toxic"}],"cast":null,"command":"tri verdict","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Checks for toxic regressions by analyzing swarm health metrics.","ABOUT_SOURCE":"tri-mcp tool tri_verdict description (cli/tri-mcp/src/main.rs); handler cmd_verdict runs t27c validate-seals, validate-phi-identity and, with --toxic, validate-toxicity (cli/tri/src/main.rs:876)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":["V"],"AGENTS_NOTE":".claude/agents/agent-v-verify.md:49 (tri verdict -- Generate pass/fail report); docs/agents/AGENTS_ALPHABET.md:80, PHASE 5 VERDICT: V analyzes metrics, tri verdict --toxic.","ARGS":["--toxic"],"COMMAND":"tri verdict","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/verdict","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/verdict","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/main.rs","VARIANT":"Commands::Verdict","WHEN_TO_USE":"Checks for toxic regressions by analyzing swarm health metrics.","WITNESS":"source-parse"},"health":"ok","id":"tri/verdict","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/main.rs"},"messages":[],"moduleName":"tool_tri_verdict","name":{"en":"tri verdict"},"qualifiedId":"gHashTag/t27:tri/verdict","repo":"gHashTag/t27","schema":2,"searchText":"tri/verdict tri verdict checks for toxic regressions by analyzing swarm health metrics. checks for toxic regressions by analyzing swarm health metrics. v","sha256":"8afa0e665be25d336bdca685cd2369546a767678133bc86c9994d7c94da6a5c7","skills":[{"id":"t27/tri","via":["SUMMARY_EN"]}],"source":"cli/tri/src/main.rs","specPath":"specs/tools/tri/verdict.t27","summary":{"en":"Checks for toxic regressions by analyzing swarm health metrics.","ru":"Проверяет токсичные регрессии, анализируя метрики здоровья роя."},"typecheckOk":true,"variant":"Commands::Verdict","whenToUse":"Checks for toxic regressions by analyzing swarm health metrics.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Vsim (cli/tri/src/main.rs; module cli/tri/src/vsim.rs)","actions":[{"about":"Walk the corpus through `t27c icarus-simulate` and print the funnel.","name":"funnel"}],"agents":[],"args":[],"cast":null,"command":"tri vsim","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"How far each spec gets when its generated Verilog is actually RUN.","ABOUT_SOURCE":"clap /// doc on Commands::Vsim (cli/tri/src/main.rs; module cli/tri/src/vsim.rs)","ACTIONS":["funnel"],"ACTIONS_ABOUT":["Walk the corpus through `t27c icarus-simulate` and print the funnel."],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":[],"COMMAND":"tri vsim","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/vsim","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/vsim","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/vsim.rs","VARIANT":"Commands::Vsim","WHEN_TO_USE":"How far each spec gets when its generated Verilog is actually RUN. The one arm that can catch a defect whose nature is that it compiles, and the one arm whose gate has had no targets since #2283 -- see #2987.","WITNESS":"source-parse"},"health":"ok","id":"tri/vsim","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/vsim.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_vsim","name":{"en":"tri vsim"},"qualifiedId":"gHashTag/t27:tri/vsim","repo":"gHashTag/t27","schema":2,"searchText":"tri/vsim tri vsim how far each spec gets when its generated verilog is actually run. how far each spec gets when its generated verilog is actually run. the one arm that can catch a defect whose nature is that it compiles, and the one arm whose gate has had no targets since #2283 -- see #2987. funnel walk the corpus through `t27c icarus-simulate` and print the funnel.","sha256":"b33711b2a50bd614b706e77c813e7c31e71cd7f547489bf073c0de59c17de2fb","skills":[],"source":"cli/tri/src/vsim.rs","specPath":"specs/tools/tri/vsim.t27","summary":{"en":"How far each spec gets when its generated Verilog is actually RUN.","ru":"Как далеко доходит каждая спека, когда её сгенерированный Verilog действительно ЗАПУСКАЮТ."},"typecheckOk":true,"variant":"Commands::Vsim","whenToUse":"How far each spec gets when its generated Verilog is actually RUN. The one arm that can catch a defect whose nature is that it compiles, and the one arm whose gate has had no targets since #2283 -- see #2987.","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Window (cli/tri/src/main.rs; module cli/tri/src/window.rs)","actions":[],"agents":[],"args":[{"about":"Record `origin/master` as the base of a measurement starting now.","name":"--start"},{"about":"Report whether the recorded base is still the tip, and refuse if it is not.","name":"--check"},{"about":"The ref the measurement is against. Defaults to `origin/master`.","name":"--base"},{"about":"Run the controls and report, changing nothing.","name":"--self-check"}],"cast":null,"command":"tri window","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"Was the base you measured against still the tip when you reported?","ABOUT_SOURCE":"clap /// doc on Commands::Window (cli/tri/src/main.rs; module cli/tri/src/window.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--start: Record `origin/master` as the base of a measurement starting now.","--check: Report whether the recorded base is still the tip, and refuse if it is not.","--base: The ref the measurement is against. Defaults to `origin/master`.","--self-check: Run the controls and report, changing nothing."],"COMMAND":"tri window","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/window","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/window","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/window.rs","VARIANT":"Commands::Window","WHEN_TO_USE":"Was the base you measured against still the tip when you reported?","WITNESS":"source-parse"},"health":"ok","id":"tri/window","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/window.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_window","name":{"en":"tri window"},"qualifiedId":"gHashTag/t27:tri/window","repo":"gHashTag/t27","schema":2,"searchText":"tri/window tri window was the base you measured against still the tip when you reported? was the base you measured against still the tip when you reported?","sha256":"43202aabe15b2c06b1e0709f8e0ae6fc1cb13b2cb7e5a5adee77340a1bf03ff4","skills":[],"source":"cli/tri/src/window.rs","specPath":"specs/tools/tri/window.t27","summary":{"en":"Was the base you measured against still the tip when you reported?","ru":"Была ли база, относительно которой вы мерили, всё ещё вершиной, когда вы отчитывались?"},"typecheckOk":true,"variant":"Commands::Window","whenToUse":"Was the base you measured against still the tip when you reported?","witness":"source-parse"},{"aboutSource":"clap /// doc on Commands::Worktrees (cli/tri/src/main.rs; module cli/tri/src/trees.rs)","actions":[],"agents":[],"args":[{"about":"Also measure disk usage. Off by default: `du` over 120 checkouts is slow, and the holdings answer is the one that decides anything.","name":"--size"},{"about":"Print every tree, not only those holding work or unreadable.","name":"--all"}],"cast":null,"command":"tri worktrees","discarded":0,"entry":"cli/tri/src/main.rs","family":"tri-cli","fields":{"ABOUT":"What the checkouts on this disk are holding. Deletes nothing.","ABOUT_SOURCE":"clap /// doc on Commands::Worktrees (cli/tri/src/main.rs; module cli/tri/src/trees.rs)","ACTIONS":[],"ACTIONS_ABOUT":[],"AGENTS":[],"AGENTS_NOTE":"No source binds an agent letter to this command: docs/agents/AGENTS_ALPHABET.md (rows, key files, phase cycle), specs/OWNERS.md and .claude/agents/*.md do not name it. creator.md and verifier.md name tri gen/test/verify but are not letter agents.","ARGS":["--size: Also measure disk usage. Off by default: `du` over 120 checkouts is slow, and the holdings answer is the one that decides anything.","--all: Print every tree, not only those holding work or unreadable."],"COMMAND":"tri worktrees","ENABLED":true,"ENTRY":"cli/tri/src/main.rs","FAMILY":"tri-cli","ID":"tri/worktrees","KIND":"tool","QUALIFIED_ID":"gHashTag/t27:tri/worktrees","REPO":"gHashTag/t27","SCHEMA":2,"SOURCE":"cli/tri/src/trees.rs","VARIANT":"Commands::Worktrees","WHEN_TO_USE":"What the checkouts on this disk are holding. Deletes nothing.","WITNESS":"source-parse"},"health":"ok","id":"tri/worktrees","inSpecCorpus":true,"links":{"config":null,"pinnedAt":"93727f733e23baf032d54505095777f16676d70b","source":"https://github.com/gHashTag/t27/blob/93727f733e23baf032d54505095777f16676d70b/cli/tri/src/trees.rs"},"messages":["no agent letter bound by a source"],"moduleName":"tool_tri_worktrees","name":{"en":"tri worktrees"},"qualifiedId":"gHashTag/t27:tri/worktrees","repo":"gHashTag/t27","schema":2,"searchText":"tri/worktrees tri worktrees what the checkouts on this disk are holding. deletes nothing. what the checkouts on this disk are holding. deletes nothing.","sha256":"1a01df4f397fe76552d278be19fd778995522fe45e9971a0ad8a017b723ca446","skills":[],"source":"cli/tri/src/trees.rs","specPath":"specs/tools/tri/worktrees.t27","summary":{"en":"What the checkouts on this disk are holding. Deletes nothing.","ru":"Что держат чекауты на этом диске. Ничего не удаляет."},"typecheckOk":true,"variant":"Commands::Worktrees","whenToUse":"What the checkouts on this disk are holding. Deletes nothing.","witness":"source-parse"}],"version":1,"parts":[{"path":"tools/spec-tools-trios.json","sha256":"fd11ab3c84d64f51bce0c0b76627d0b12cd4be32509200da674a221df9ea1425","count":295},{"path":"tools/spec-tools-trinity.json","sha256":"823271fc319a57bbbd2411c50a4f4858ea5943ddfde17e6bf243beb52d9856cc","count":254}]} diff --git a/apps/website/scripts/agents-from-specs.test.mjs b/apps/website/scripts/agents-from-specs.test.mjs index 9d8b1649b9..9cc37ae0aa 100644 --- a/apps/website/scripts/agents-from-specs.test.mjs +++ b/apps/website/scripts/agents-from-specs.test.mjs @@ -1037,12 +1037,14 @@ test('tools-from-trios-tri names the newest recording that ran the command and p assert.equal(castFor('tri dev', casts), null, 'tri devkit is not a run of tri dev') }) -test('the committed recordings: tri x7-board and tri devkit of the trios CLI end with their casts; no card claims runtime', async () => { +test('the committed recordings: tri x7-board and tri devkit of the trios CLI, tri misread of the t27 CLI end with their casts; no card claims runtime', async () => { const { generate } = await import('./agents-from-specs.mjs') const r = await generate({ generatedAt: '2026-01-01T00:00:00.000Z' }) const byId = byIdOf(r) assert.equal(byId.get('gHashTag/BrowserOS:tri/x7-board').cast.src, 'term/x7-board/session.cast') assert.equal(byId.get('gHashTag/BrowserOS:tri/devkit').cast.src, 'term/devkit-flow/session.cast') - assert.equal(r.tools.counts.withCast, 2) + assert.equal(byId.get('tri/misread').cast.src, 'term/t27-tri-misread/session.cast') + // 10 trios recordings + 8 t27 ones under public/term/; check:tools-coverage says which card each belongs to. + assert.equal(r.tools.counts.withCast, 18) assert.equal(r.tools.counts.byWitness.runtime, 0) })
+ +

tri seals: hollow seals that pass every check

+

31 of 1,428 seals record no output (16 specs); 3 of those are missing from the debt ledger.

+
+
recorded 2026-10-03 16:18 UTCreal 4.9 sshown 4.9 sexit codes 0 0
+
$ tri seals fresh +$ tri seals hollow
+

Staged: the prompt and the typing. Real: every byte the commands printed, at the time they printed it. Any silence longer than 2 s is shown for 2 s, and the title bar says so while it happens. Edited: home directory shown as ~.

+ +