You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
WIDGETS loop: viral FPGA widget tools for X (epic) #1377
A continuous loop that grows the WIDGETS gallery on app.t27.ai (Queen key v, specs/widgets/gallery.t27) with small tools FPGA engineers want to repost on X. Every tool is a .t27 spec (specs/widgets/<id>.t27, KIND widget-tool) plus a plain tool.js; every number comes from a real run that DATA_SOURCES names.
Built locally, landing in one PR: bit-diff, test-waves, gf16-calc, race-the-bee, placement-map, resource-bars, slack-waterfall, idcode, pin-map, cost-curves, lut-explain, build-receipt, gatle, test-touch.
Rules for every tick
Words live in the spec (own-language-first); tool.js only interprets window.T27_WIDGET.
node scripts/widget-pages-from-spec.mjs writes every page or none; a half-built spec blocks all pages, so a tick never leaves one behind on the branch.
A tick starts by checking that what earlier ticks shipped still holds (live bundle, gallery count, check:widget-pages), and only then builds.
Numbers only from real tool output; a widget that cannot be honest is shipped smaller or not at all.
Acceptance
Every built tool appears in the gallery with a real og card and t27:hook.
npm run check:widget-pages && npm run test:widget-pages && npm run check:widgets green in CI.
Each tick's report names: shipped, verified live, found broken, healed.
WIDGETS loop, CI capacity note (2026-10-04 ~19:10Z).
#1383 sat BLOCKED with 12 checks queued: this repo's Actions ran about one job at a time against 129 queued runs (63 on main). 68 of them were queued for a commit that was no longer its branch head. I cancelled the 52 of those that are check workflows (Brain CI, CI, Codegen Validation, Website checks, Site live gate, Pages Health Check, docs-check, Dev Workflow Enforcement, Pre-commit Validation, PR work report and blog, Reproduce the headless profile). Deploy, publish, release and automation runs (KOSCHEI deploy, Publish the apex, Deploy Website, Board release, Auto-add, Queue Drain, ...) were left alone. A cancelled run is re-runnable; each one ran for a superseded commit.
The ids are in the loop's state (_state/widget-loop/ci-cancelled.tsv). The same check is now a command: tri widget ci (dry run by default; --cancel-stale only cancels superseded check runs).
New widget issues from the second competitor sweep: #1394 lut-depth, #1395 lut-treemap, #1396 fsm-sketch, #1397 xdc-check.
Goal
A continuous loop that grows the WIDGETS gallery on app.t27.ai (Queen key
v,specs/widgets/gallery.t27) with small tools FPGA engineers want to repost on X. Every tool is a.t27spec (specs/widgets/<id>.t27, KINDwidget-tool) plus a plaintool.js; every number comes from a real run thatDATA_SOURCESnames.Done so far
Rules for every tick
tool.jsonly interpretswindow.T27_WIDGET.node scripts/widget-pages-from-spec.mjswrites every page or none; a half-built spec blocks all pages, so a tick never leaves one behind on the branch.check:widget-pages), and only then builds.Acceptance
t27:hook.npm run check:widget-pages && npm run test:widget-pages && npm run check:widgetsgreen in CI.