feat(guides): rework Get Started against the web console — the TUI is gone from v0.12.2 (#123) - #126
Merged
Merged
Conversation
… gone from v0.12.2 (#123) The trigger fired: keel v0.12.2 ships no curses TUI (keel#541 closed; keel/commands/console.py deleted) — the local web console (keel serve, keel/web/) replaced it. The four Get Started guides still taught TUI menus with TUI screenshots. Re-shot and rewritten against the real thing, run and captured on this machine: - scripts/render-webui-shots.mjs — the browser counterpart of the old render-tui-shots pipeline: scaffolds a fresh paper deployment in /tmp/keel-paper (keel init-config + keel rules seed), launches keel serve, exchanges the one-time token, and photographs six views with the system Chrome at a desktop viewport. Re-runnable per release. - Six new shots (webui-*.png) replace the eight tui-*.png; guides now teach the seven-view console (Setup checklist, Status dashboard, Insights gate distance, Rules lifecycle ledger, Gates capability table) instead of nine TUI menus. - Guide 2's credential step moves from .env to the v0.12.2 reality: keel credentials set into the OS keychain, or the Setup page's Save a market-data credential form. - Guide 4 walks the Setup checklist's To go live stage + Gates view; the asset-attestation step now records from the page (verified live: the web form attested BTC), while rail 14/17 attestations stay CLI — the checklist itself prints those commands. - Guide 1's scaffold step uses init-config + rules seed: keel init's seed step resolves the database through the state-root rules, which cannot see a folder that has no config.yaml yet (verified with a controlled KEEL_HOME test — the DB lands outside the new folder). - Stale TUI wording: install.ts guides blurb (EN+FR) now says web console; GuidePage comment and docs/SOCIAL.md updated; dead render-tui-shots.mjs removed with the tui-*.png. Closes #123
…mp (S5443) A predictable name in a world-writable directory is a symlink-attack surface even for a local capture script; mkdtemp closes it. The Setup screenshot keeps the path of the run that produced it — illustrative, not contractual.
…ommit passed syntax but not runtime
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Closes #123. The trigger fired: keel v0.12.2 ships no curses TUI —
keel/commands/console.pyis deleted (keel#541 closed) and the local web console (keel serve,keel/web/) replaced it. The four Get Started guides still taught nine TUI menus with TUI screenshots.What changed, per guide
keel init-config+keel rules seed(why:keel init's seed step resolves the DB through the state-root rules, which cannot see a folder that has noconfig.yamlyet — verified with a controlledKEEL_HOMEtest where the seededkeel.dblanded outside the new folder). Step 3 openskeel serve; Step 4 tours the seven views (Status, Setup, Activity, Insights, Rules, Venues, Gates + the off-site Docs link); Step 5 reads the Status dashboard — cards and the three tables, named as rendered. Shots:webui-setup.png(the checklist after scaffold),webui-status.png(the dashboard + nav)..envto the v0.12.2 reality:keel credentials set CDP_API_KEYinto the OS keychain (or the Setup page's Save a market-data credential form); the warm-cache step points at the Setup page's Fetch market data button (background job) orkeel fetch; the insights step walks the Insights view. Shots:webui-fetch.png,webui-insights.png.keel simulate --years 1 --skip-within-capre-verified against the v0.12.2 CLI.skipped: kill_switch(observed live); the kill-switch step adds that the Gates view nameskeel resumeas capability-increasing. Shot:webui-rules.png.attested BTCand the step detail moved BTC out of the unattested list. Rail 14 (keel subscription attest) and rail 17 (keel withdrawals attest --enabled, 7-day TTL, interactive terminal) stay CLI — the checklist itself prints those commands. Shot:webui-gates.png.The capture pipeline
scripts/render-webui-shots.mjs— the browser counterpart of the deletedrender-tui-shots.mjsprecedent: clones nothing, mocks nothing. It scaffolds a fresh paper deployment in/tmp/keel-paper(init-config+rules seed), launcheskeel serve --no-openon a loopback port, parses the one-time token URL from stdout, and drives the system Chrome (puppeteer-core) to each view — light theme pinned via the console's ownkeel-themekey, 1440×900 @2x viewport. Re-run per release with--keel-dirpointing at a tagged checkout. Sixwebui-*.pngreplace the eighttui-*.png(two of which were already orphans); the dead ANSI render script is removed with them.Spot-check: every named UI element vs the live console (v0.12.2, run on this machine)
next: A market-data credentialwithkeel credentials set CDP_API_KEY— as servedkill switch: ENGAGED,mode: paper, Data freshness "No market data yet." — as servedttygate's 7 actions incl.keel withdrawals attest --enabled— as servedkeel agentfirst cycle →skipped: kill_switch(run live);keel simulate --years 1 --skip-within-cap,keel credentials set,keel subscription attest,keel withdrawals attest,keel purificationall re-verified at v0.12.2Verification
npm run check— 0 errors, 0 warnings (4 pre-existing hints)npm run build— 63 pages;dist/en/guides/{first-run,first-simulation,paper-profile,compliance-attest}/all render, every referenced/get-started/webui-*.pngexists indist/get-started/tui-*or TUI-menu references remain (docs/SOCIAL.md,install.tsEN+FR blurb,GuidePage.astrocomment updated — light touch, only where factually wrong)Decisions
keel initnot taught as-is: its fresh-folder behavior seeds the DB outside the folder (state-root resolution beforeconfig.yamlexists). The guide teaches the two commandsinititself runs, which resolve correctly — and says why in one honest clause.webui-fetch.pngexactly as served.