fix(install)+feat(docs): resync the browser-app copy to the released v0.12 web UI (#89) and sync the ADRs (#120) - #124
Merged
Merged
Conversation
…eb UI The v0.12.0 rewrite shipped a new client (JSON API + zero-dependency shell); v0.12.1 put keeltrading.com's palette and mark on it (#594); v0.12.2 gave the header a brand anchor, a light/dark theme choice and a read-only mode badge (#598). Every clause of browserBody re-verified against keel@v0.12.2, all three locales, rev 2026-08-28.6 -> .7. Added, each traced to a release: the interface wears this site's identity (v0.12.1); the header's theme choice and mode badge, reporting only (v0.12.2); money arrives as text, computed and formatted by the engine — the page displays, never derives (#544); profit and loss differ in brightness as well as colour, and form fields carry a visible border (#543); the page is served under a content-security policy that stops it sending positions or trade history off-machine (#545). Corrected: 'keel update moves the whole install' was already false for the desktop app — ADR 0001 ships per-release installers and the app never replaces itself, so the copy now says that, plus the releases' 'config, database and credentials are never touched by an update'. 'Attestations from a page' narrowed to asset attestations: the browser write surface at v0.12.2 is setup.ACTIONS (config, database, rules seed, keychain credential, asset attestation, gate-checked promotion, background fetch); every capability increase — resume/arm, record-flow, autonomy, withdrawals attest, update — is a CLI command at a terminal (keel/capabilities.py). Kept and re-verified: OS keychain, background fetch, WAL mode, cannot-arm/release/spend. features.ts and home.ts carry no browser-app copy; every 'Verify in the repository' target exists at v0.12.2 and none pointed at the deleted render.py. Closes #89
… section The engine repo records its architecture decisions in docs/decisions/ — short, dated Context/Options/Decision/Consequences records, numbered and superseded, never quietly edited. Until now every ADR lived repo-only: a site reader never saw why keel is built the way it is. Adds the three records at the pinned release to engine-docs.manifest.json, each with slug/title/en/ar/fr blurb under a new 'decisions' section (Decisions / سجلّات القرارات / Décisions): 0001 the desktop update path — per-release installer, no self-update 0002 SQLite persistence — one writer per file, named triggers only 0003 the commands-layer survey — measured, and the premise dissolved Reading order: guides -> reference -> decisions -> research, ADR number within the section — sidebar, index cards and prev/next all derive from one order (nav.ts readingOrder). The sync stays the only writer of src/content/engine-docs/; docs/decisions/README.md (the directory index) is deliberately not synced — the docs index plays that role. Each path verified HTTP 200 at v0.12.2; a move upstream still fails the build loudly per FR-4, with no fallback to main. Closes #120
|
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 #89 · Closes #120
Two resyncs against the now-released keel web UI (v0.12.0 → v0.12.2). Every clause below was re-verified against
CodeGateSoftware/keel@v0.12.2— releases,keel/web/,keel/commands/setup.pyandkeel/capabilities.py— not assumed from commit titles.#89 — 'Work from the browser' resync (
install.ts, ×3 locales, rev.6→.7)Claims added, each traced to a release:
Claims corrected (were false at v0.12.2):
"keel update moves the whole install to each new release, in place"— desktop bundles never self-update since ADR 0001; updating = downloading the new installer, and config/db/credentials "are never touched by an update" (release notes wording).keel.commands.setup.ACTIONS(config, database, rules seed, keychain credential, asset attestation, gate-checked promotion with no force option, background fetch). Venue/withdrawal attestations, resume/arm, record-flow, autonomy and update are terminal-only —keel/capabilities.py: "every capability increase in this build is a CLI command run by a person at a terminal."Kept and re-verified: OS keychain (the credentials ACTION stores in the keychain), background fetch (jobs), WAL (ADR 0002), cannot-arm/release/spend.
Checked, no change needed:
features.ts/home.tscarry no browser-app copy; all 9 "Verify in the repository" targets exist at v0.12.2; none pointed at the deletedrender.py. Python floor already says 3.14 (handled in #105). The PWA question #89 raised: v0.12.0 does ship "installable, with a worker that structurally cannot cache a balance" (#551) — left out of this copy deliberately, per #89's own "deserves its own copy, not a footnote"; follow-up candidate.#120 — the ADRs sync
docs/decisions/000{1,2,3}— 0001 desktop update path, 0002 SQLite persistence, 0003 commands-layer survey — added toengine-docs.manifest.jsonwith slug/title/en/ar/fr blurbs, under a new decisions section (Decisions / سجلّات القرارات / Décisions) placed between Reference and Research.nav.ts readingOrder→ sidebar, index cards, prev/next): guides → reference → decisions → research, ADR number within the section.latest-release→ v0.12.2 and pulled all three.docs/decisions/README.md(the directory index) deliberately not synced — the docs index plays that role.src/content/engine-docs/.Verification
npm run check— 0 errors (astro cache cleared first)npm run build— clean; ADR pages render underdist/en/docs/decision-000{1,2,3}-*/, and all three locale indexes (en/fr/ar) list the three cards under the localized Decisions heading; prev/next ordering sane (fiqh-basis ⇄ 0001 ⇄ 0002 ⇄ 0003 ⇄ research)