Repository navigation
docs: finish the tic-tac-toe guide and split setup into two tracks - #335
Conversation
Extend the tic-tac-toe guide from its opening to the whole guide: the layout and the four operations, what saga handles, one guided change (a move list), connecting to Claude, ChatGPT and Alexa+, and what else the design allows, with two new diagrams. The host sections state that this game has not been run in any of the three hosts, and describe a voice or conversation move as a different interaction from clicking the board. Make the setup guide the short common path: prerequisites, installs, saga init, HTTP defaults, attaching to an existing backend, troubleshooting and the choice of track. Move the Lit composition, evidence and actions overview into build-notes-with-lit.md unchanged, leading into the action guide. Point the README's first steps at both tracks and fix links to the moved sections. Move the affected assertions in guide.test.ts with their material, and extend the tic-tac-toe document test to check the guide's commands, quoted source, patch, links, diagrams and host claims against the example.
timeleft--
left a comment
There was a problem hiding this comment.
Writing and technical review completed at this exact head. The six moved Lit sections are byte-for-byte unchanged. Independently verified 171 documentation checks, eight packed example checks with canonical TMPDIR=/private/tmp, root TypeScript checking, tracked-clean normal/guided packed builds, current-base version policy, and 25 valid LFS pointers. The diagrams distinguish runnable examples from composition and architectural sketches, and the host instructions keep the game unverified in each remote host. One bounded accuracy correction is required below; no runtime or architectural expansion is requested.
timeleft--
left a comment
There was a problem hiding this comment.
Independently re-reviewed exact head 15c02bb. The repair changes only the operations bullet and accurately distinguishes a bounded wait and cancellation signal from stopping an uncooperative handler or undoing effects. The original finding is resolved. All 171 documentation checks and current-main version policy pass at this head; current main 5015042 is an ancestor and the review checkout is clean. Reused unchanged evidence from the full writing/technical review: six byte-identical moved Lit sections, root TypeScript, eight packed-example checks with TMPDIR=/private/tmp, tracked-clean normal/guided builds, the passing guided move-list Chromium walkthrough, and 25 valid LFS pointers. Both new diagrams were inspected at full size and in a rendered article; runnable/composition/sketch distinctions and remote-host limits remain clear. No further findings. Current-head application CI is still running and must pass before merge.
Change
A newcomer can now read one guide in about ten minutes and see what saga does, and the setup guide is a short common path with two tracks.
Before.
docs/build-tic-tac-toe-with-react.mdwas a draft opening that ended at the first click.docs/getting-started.mdmixed what every app needs with the Lit composition, evidence and actions material, so a reader met package structure and evidence boundaries before an app.After.
docs/build-tic-tac-toe-with-react.mdis the whole guide: the layout and the four operations, what saga handles, one guided change (a move list), connecting to Claude, ChatGPT and Alexa+, and a closing "what else this design allows" section. The closing section labels each arrangement runnable, a straightforward composition, or an architectural sketch, and adds two diagrams (diagrams/tic-tac-toe-arrangements,diagrams/tic-tac-toe-a2a-delivery). The approved opening is kept.docs/host-compatibility.md. They describe a voice or conversation move as a different interaction from clicking the board. Nothing in them reports a host run.docs/getting-started.mdkeeps what every app needs: prerequisites, published and candidate installs,saga initwith the offered pairs, HTTP defaults, attaching to an existing backend, troubleshooting, and the choice of track.docs/build-notes-with-lit.mdis the Lit track. The composition, content policy, identity and evidence, actions and "what is implemented" sections moved here byte for byte (checked against the previous text), with a short lead-in and a closing hand-off todocs/actions.md.docs/public-install.md,docs/development-reference.md,AGENTS.md). The README sentence saying the starters "currently use Lit" now says five of the six use Lit and one uses React on Hono.The "Component, definition, template and instance" section stays in the setup guide. It is renderer-neutral vocabulary, and the interactive tour and the action guide link to it.
Design. Getting-started tracks, section "Setup guide and two tracks", approved at revision
6c3638b3f372c27d12b406a0c4800ea01f93cf24(approval record, #324). The delivery coordinator records the landed revision in the Blueprint Status after merge.The ten-minute claim is reading time (about 2,700 words of prose plus code excerpts), not install or host setup time. The guide says so, and it states that the game needs the source packages (
0.8.0-rc.1) becauseappendMessageand operations without a view are not in the published0.7.7-rc.1.Validation
Run on head
9b58e6e(Node 26.7.0, Linux x64), from a clean worktree of currentmain:npm ci,npm run build:tic-tac-toe, then startingapps/lit-host/dist/tic-tac-toe/server.mjsand the guided build'sserver.mjs: both printed their MCP endpoint line. This found that buildingapps/lit-hostclearsapps/lit-host/dist/tic-tac-toe, so the guide's browser-test group builds the host app first.npm run build -w apps/lit-host,npm run build:tic-tac-toe, thennpx playwright test e2e/tic-tac-toe.spec.ts -g "adds a move list": 1 passed. This is local qualification: the test clicks a square and plays O by calling the server, and no assistant took part.npm run test:docs: 5 files, 171 tests passed. This coversscripts/guide.test.ts(setup guide, Lit track and generated recipes, which are current), the extendedscripts/tic-tac-toe-document.test.ts(commands, quoted source in order, the patch line for line, quoted sentences, the operations table against the server, links, anchors, images and diagram sources, host claims against the host compatibility record, and the arrangement labels) andscripts/guide-actions-document.test.ts.tsc -p tsconfig.jsonclean;npm run linton the changed test files reports nothing; Prettier applied to the three changed TypeScript files;npm run hooks:checkpasses.python3 scripts/mw-version.py check --base origin/main --title '<this title>'passed with no bump: documentation, diagrams and tests only.python3 scripts/check-lfs.pyreports 25 valid pointers; the two new PNGs are LFS pointers andgit lfs pushran before the branch push.npm run test:headless): 2,842 of 2,843 tests passed. The one failure, a 5-second timeout inscripts/verify-safeguards.test.tsunder 140 parallel workers, passes alone (23 of 23).apps/lynx-fixture/src/adapter/admission.test.tscould not load because the retained Lynx fixture's own dependencies were not installed in this checkout. Neither touches these changes.@mermaid-js/mermaid-cli12.0.0 from the committed.mmdsources and checked by eye for legibility.Limits. Local source and Chromium evidence only. Claude, ChatGPT and Alexa+ have not been run against this game, and the guide says so. The guide's statements about each host rest on the existing host compatibility record, which records no host accepting a message a card appends. The wait's cadence and limit remain proposals for host runs to settle. Source readiness is not publication, installation or host acceptance. For review: please check the technical claims in the closing "what else this design allows" section.