Skip to content

feat(website): recorded terminal sessions, two FPGA flow posts, #/devkit - #1273

Merged
gHashTag merged 7 commits into
mainfrom
docs/blog-fasm-to-frames-spec
Oct 3, 2026
Merged

gHashTag merged 7 commits into
mainfrom
docs/blog-fasm-to-frames-spec

Conversation

@gHashTag

@gHashTag gHashTag commented Oct 3, 2026 •

Copy link
Copy Markdown
Owner

Two FPGA flow posts in English and Russian, recorded terminal sessions embedded across the site, the #/devkit layer calculator, and a language switcher reduced to the two languages the site actually has.

  • the-fpga-flow-layer-by-layer: one tri devkit flow --build run timed layer by layer. openXC7 116.86 s, 83.45 s with bitwalk doing FASM to frames and frames to .bit (1.40x), outputs byte-identical. Amdahl ceilings for synthesis (1.65x) and place and route (8.75x) are labelled as bounds. The post says plainly that tri devkit and bitwalk are not in a tri release yet (tri devkit: ship the FPGA flow timer and bitwalk in the tri release #1272).
  • Recorded sessions (TerminalCast, src/data/casts.ts): x7-board on #/verification, #/foundry and two board posts; devkit-flow on the back-half post. Each embed says it is a later recording and that its counts are not that post's run.
  • Header: EN and RU only; the de/es/zh message files had no translated pages behind them.
  • Homepage: black grounds, black cards and black primary buttons; the kanban, factory and shell cards no longer carry a green wash, and check:queen-direction asserts the black ground. A new block shows the measured flow and the club, read from data/devkit.ts and data/club.ts.
  • Club: one membership, $300/mo, a TRI DEV developer agent (the tri dev agent farm: one GitHub issue, one service, one autonomous Claude Code agent). #/foundry, #/devkit and the homepage read the price from data/club.ts.
  • Terminal player: share buttons inside the player (X, Reddit, Telegram, copy link, .cast) and a follow row (r/t27ai, Telegram, X, GitHub), on every embed and share page.
  • ModulesBlock names all four board readings, Tech Tree included, instead of "the board's other two".
{
  "version": 1,
  "head_sha": "39a08d1b5f8626645c08b84316c1ea6aaeab74d5",
  "summary": "Adds the bilingual post 'The FPGA flow, layer by layer': one openXC7 build of trinet_node_v2_ax7203 timed per layer, 116.86 s, and 83.45 s with bitwalk replacing fasm2frames and xc7frames2bit, outputs byte-identical (1.40x). Adds the #/devkit page that turns the measured saving into hours from the reader's own inputs. Embeds two recorded terminal sessions (tri x7-board, tri devkit) on the verification and foundry pages and in three earlier posts, each labelled as a later recording. Limits the language switcher to English and Russian.",
  "changes": [
    "apps/website/src/data/blog/bodies/the-fpga-flow-layer-by-layer.ts: new EN and RU body, every number read from src/data/devkit.ts",
    "apps/website/src/data/devkit.ts: the measured flow, Amdahl ceilings, hours-a-year helper, Crowd Supply and field tables with read dates",
    "apps/website/src/pages/DevKit.tsx and the router: new #/devkit page, prices marked as proposals, install status linked to trinity#1272",
    "apps/website/src/components/TerminalCast.tsx, src/data/casts.ts, public/term/: asciicast player and the two recorded sessions",
    "apps/website/src/pages/HardwareVerification.tsx, Foundry.tsx: x7-board recording embedded",
    "apps/website/src/data/blog/bodies/{half-the-build-is-bitstream-generation,trained-weights-ran-receipts-were-not-checked,golden-ratio-weights-ran-on-the-board}.ts: recordings embedded with a note that their counts are not that post's run",
    "apps/website/src/i18n, LanguageSwitcher, Navigation, messages/{de,es,zh}.json removed: English and Russian only",
    "apps/website/src/components/DevKitBlock.tsx, src/data/club.ts, src/App.tsx: homepage block for the flow and the $300/mo TRI DEV club, figures read from data files",
    "apps/website/src/styles/card.css, homepage block CSS, src/pages/Queen.css, qa/queen-direction-contract.mjs: black grounds, cards and primary buttons; no green card surfaces",
    "apps/website/src/components/ModulesBlock.tsx, src/lib/queenModules.ts: board copy covers all four readings, Tech Tree included",
    "apps/website/public/term/player.js, TerminalCast.tsx, public/term/{x7-board,devkit-flow}/index.html: the player draws its own share bar (X, Reddit, Telegram, copy link, .cast download) and a follow row (r/t27ai, Telegram, X, GitHub, same addresses as the footer); inside a Telegram Mini App links open through Telegram"
  ],
  "tests": [
    {
      "command": "node --check public/term/player.js and a browser preview of dist/term/x7-board/",
      "status": "passed",
      "result": "player parses; the share row and the follow row render under the player with all nine links",
      "evidence": "local preview at 127.0.0.1:4327 of this head's player.js, 2026-10-03; vite build of this head left to CI"
    },
    {
      "command": "npx vite build (apps/website)",
      "status": "passed",
      "result": "build succeeds after rebase on 92e1d48d0; both new posts and #/devkit render in the built dist",
      "evidence": "local build of this head, checked in a browser preview of dist in EN and RU, 2026-10-03"
    },
    {
      "command": "npm run -s check:aria && check:subpath-urls && check:tri && check:tri-identity && check:explorer-languages",
      "status": "passed",
      "result": "all five checks report no findings; check:queen-direction passes 93 checks with the black-ground assertion",
      "evidence": "same local run, 2026-10-03"
    },
    {
      "command": "tri blog lint --repo . and a Russian-body completeness check",
      "status": "passed",
      "result": "every published post has EN and RU bodies; no lint findings",
      "evidence": "same local run, 2026-10-03"
    },
    {
      "command": "npm run -s typecheck",
      "status": "passed",
      "result": "179 errors, all pre-existing in files this PR does not touch; none in the touched files",
      "evidence": "same local run, 2026-10-03"
    }
  ],
  "limitations": [
    "One design on one laptop at a load of 12.6 on 8 cpus. The 1.40x is for this build; designs that spend less time in fasm2frames gain less.",
    "The openXC7 times come from the build and the t27 times from right after it; load moved between them.",
    "Synthesis and place-and-route rows are ceilings, not results.",
    "tri devkit and bitwalk are not in a tri release, so readers cannot run them yet; tracked in trinity#1272 and stated in the post.",
    "Kit prices on #/devkit are drafts; nothing is on sale. The club price is the owner's; whether the bot charges it is not checked here."
  ],
  "tags": ["FPGA", "OpenToolchain", "Tooling", "Website"],
  "blog": {
    "title": "The FPGA flow, layer by layer",
    "summary": "This PR is itself the blog article: every layer of one openXC7 build timed, the two layers t27 now replaces measured against the originals, and Amdahl ceilings for the layers that are left.",
    "outline": [
      "After rebuilding FASM to frames and frames to bitstream from specs, the question is what each remaining layer is worth.",
      "One build: synthesis 10.9 %, place and route 60.0 %, FASM to frames 29.0 %; bitwalk takes the flow from 116.86 s to 83.45 s with the same bytes; place and route caps at 8.75x, synthesis at 1.65x.",
      "Open: one design on one laptop, ceilings rather than results for synthesis and place and route, and the tools not yet in a tri release."
    ]
  }
}

🤖 Generated with Claude Code

gHashTag and others added 2 commits October 3, 2026 12:04
The header listed German, Chinese and Spanish, but the site is written in
English and Russian. Drop the three unused catalogues and the switcher
entries; a saved de/zh/es choice falls back to English.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- public/term: the asciicast player and two recordings, x7-board and
  devkit-flow, each with a share page and card for t27.ai/term/<id>/.
- A `terminal` block for posts and a TerminalCast component that loads the
  same player; captions live once in src/data/casts.ts.
- Posts "The back half of openXC7, from a spec" and "The FPGA flow, layer
  by layer", in English and Russian. The second says plainly that
  tri devkit and bitwalk are not in a tri release yet (#1272).
- #/devkit: measured per-layer times, Amdahl ceilings and an hours
  calculator from src/data/devkit.ts.
- The recordings are also shown on #/verification, #/foundry and three
  earlier board posts, each captioned as a later recording.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added the status:in-progress 🔵 Agent working label Oct 3, 2026
gHashTag and others added 4 commits October 3, 2026 12:40
…00/mo

The homepage grounds, cards and primary buttons are black; the kanban,
factory and shell cards lose their green wash, and the queen-direction
contract now asserts a black card ground. A new homepage block shows the
measured FPGA flow and the club, read from data/devkit.ts and the new
data/club.ts. The club is one $300/mo TRI DEV developer-agent membership,
shared by #/foundry, #/devkit and the homepage. ModulesBlock names all four
board readings, Tech Tree included.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Every agent is sold at one price, a 10000 Stars Telegram subscription per
30 days; USD is derived with the bot's star rate. Foundry gains a showcase
of the four agent profiles the bot sells, read from the bot's catalogue with
a bundled fallback. The AGENTS hint no longer claims a 27-letter alphabet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
TRI DEV is now the first agent card, full width, with the accent
border, the one price and the primary Telegram button; the other three
agents follow as equal cards. The draft tiers section is gone: every
agent has the same 10000 star price.

On a 375px screen the terminal recording widened its section to 565px
and pushed the heading and caption off screen. The inner column now
takes the section width and wide children scroll inside themselves.
The hero buttons stack and centre on phones.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The player draws its own share bar once a recording has a page to point at
(given as share, or derived from term/<id>/session.cast): post to X, submit
to Reddit, share to Telegram, copy the link, download the .cast. A second
row links r/t27ai, the Telegram channel, X and GitHub, the same addresses
as the site footer. Opened as a Telegram Mini App, links go through
Telegram's own openLink / openTelegramLink.

The two published share pages drop their separate X and download links and
pass their canonical address to the player; TerminalCast forwards share.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… tinted cards

src/App.tsx now reaches DevKitBlock.css, so it joins REACHED. The direction
cards are black (#000) since the homepage change, which the gate reads, so
their two UNREADABLE entries and the note about the 7% wash are removed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@gHashTag
gHashTag merged commit 0cd036a into main Oct 3, 2026
19 of 22 checks passed
@github-actions github-actions Bot added status:completed Done and removed status:in-progress 🔵 Agent working labels Oct 3, 2026
github-actions Bot added a commit that referenced this pull request Oct 3, 2026
feat(website): recorded terminal sessions, two FPGA flow posts, #/devkit (#1273)

* fix(website): offer English and Russian only

The header listed German, Chinese and Spanish, but the site is written in
English and Russian. Drop the three unused catalogues and the switcher
entries; a saved de/zh/es choice falls back to English.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(website): recorded terminal sessions, two FPGA flow posts, #/devkit

- public/term: the asciicast player and two recordings, x7-board and
  devkit-flow, each with a share page and card for t27.ai/term/<id>/.
- A `terminal` block for posts and a TerminalCast component that loads the
  same player; captions live once in src/data/casts.ts.
- Posts "The back half of openXC7, from a spec" and "The FPGA flow, layer
  by layer", in English and Russian. The second says plainly that
  tri devkit and bitwalk are not in a tri release yet (#1272).
- #/devkit: measured per-layer times, Amdahl ceilings and an hours
  calculator from src/data/devkit.ts.
- The recordings are also shown on #/verification, #/foundry and three
  earlier board posts, each captioned as a later recording.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(website): black homepage cards, devkit block, TRI DEV club at $300/mo

The homepage grounds, cards and primary buttons are black; the kanban,
factory and shell cards lose their green wash, and the queen-direction
contract now asserts a black card ground. A new homepage block shows the
measured FPGA flow and the club, read from data/devkit.ts and the new
data/club.ts. The club is one $300/mo TRI DEV developer-agent membership,
shared by #/foundry, #/devkit and the homepage. ModulesBlock names all four
board readings, Tech Tree included.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(website): one agent price and an agents showcase

Every agent is sold at one price, a 10000 Stars Telegram subscription per
30 days; USD is derived with the bot's star rate. Foundry gains a showcase
of the four agent profiles the bot sells, read from the bot's catalogue with
a bundled fallback. The AGENTS hint no longer claims a 27-letter alphabet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(website): feature TRI DEV on #/foundry and fix phone overflow

TRI DEV is now the first agent card, full width, with the accent
border, the one price and the primary Telegram button; the other three
agents follow as equal cards. The draft tiers section is gone: every
agent has the same 10000 star price.

On a 375px screen the terminal recording widened its section to 565px
and pushed the heading and caption off screen. The inner column now
takes the section width and wide children scroll inside themselves.
The hero buttons stack and centre on phones.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* feat(website): share and follow buttons inside the terminal player

The player draws its own share bar once a recording has a page to point at
(given as share, or derived from term/<id>/session.cast): post to X, submit
to Reddit, share to Telegram, copy the link, download the .cast. A second
row links r/t27ai, the Telegram channel, X and GitHub, the same addresses
as the site footer. Opened as a Telegram Mini App, links go through
Telegram's own openLink / openTelegramLink.

The two published share pages drop their separate X and download links and
pass their canonical address to the player; TerminalCast forwards share.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* fix(website): contrast gate measures the devkit block and forgets the tinted cards

src/App.tsx now reaches DevKitBlock.css, so it joins REACHED. The direction
cards are black (#000) since the homepage change, which the gate reads, so
their two UNREADABLE entries and the note about the 7% wash are removed.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant