Repository navigation
docs(architecture): add Mermaid system diagrams rendered and checked in CI - #95
Open
lbildzinkas wants to merge 2 commits into
Open
lbildzinkas wants to merge 2 commits into
lbildzinkas wants to merge 2 commits into
Conversation
…d in CI Six Mermaid diagrams in docs/architecture/ (overall system, RAG ingestion, RAG retrieval, study-mode question, interview turn and debrief, evaluation levels), each with a committed PNG and a legend marking built, in-review and planned parts with their milestone. docs/architecture/README.md embeds and explains each one and links the references behind it. scripts/render_diagrams.py renders every source with the mermaid-cli pinned in package.json and records a SHA-256 of each source; --check renders into a temporary folder and fails on a diagram that does not render, a missing PNG or a stale PNG. A new CI job runs the check on every pull request. Closes #91
Owner
Author
|
Local render and check evidence, from a run with the pinned mermaid-cli 11.17.0 (Puppeteer 25.9.0, chrome-headless-shell 152).
|
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.
Intent
Adds architecture diagrams for the whole planned interview coach, so the pieces of an agent with search, memory and evaluation can be understood before they are built, and the page doubles as study material.
docs/architecture/with an exported PNG committed beside it: the overall architecture, RAG ingestion, RAG retrieval, a study-mode question, an interview-mode turn with its debrief, and the evaluation levels. They describe the target architecture fromCONTEXT.mdand ADRs 0001-0005.coach setup, and the QASPER loader, both in open pull requests) or planned with its milestone. Where a planned part's shape is still undecided, a note says so instead of inventing detail.docs/architecture/README.mdembeds every PNG, explains each in a short paragraph and links the technical references behind it (LangGraph, LanceDB hybrid search, reciprocal rank fusion, the embedding and re-ranker model cards, the GLM endpoint); the project README links to it.flowchartandsequenceDiagram, with punctuated labels quoted. The mermaid-cli version pinned inpackage.jsonandpackage-lock.jsonis the single judge of valid Mermaid; it is installed into a local, git-ignorednode_modules/, with nothing installed machine-wide.--no-sandbox.Closes #91
What Changed
docs/architecture/(overall architecture, RAG ingestion, RAG retrieval, study-mode question, interview turn and debrief, evaluation levels) with committed PNG exports, each styled with a built/in review/planned legend that names milestones, plus a README embedding every PNG with a short explanation and technical references, linked from the top-level READMEscripts/render_diagrams.pyexports each.mmdwith the mermaid-cli version pinned inpackage.json(white background, scale 2), records a SHA-256 of every source insources.sha256, and its--checkmode fails on a diagram that does not render, a missing PNG or a stale PNG — all three failure modes covered bytests/test_render_diagrams.pyusing a fake rendererdiagramsjob that installs the pinned mermaid-cli and headless Chrome (with a--no-sandboxpuppeteer config) and runs the check on every pull request;scripts/is wired into ruff, pyright and pytest configuration so the render script is linted and testableRisk Assessment
✅ Low: A well-bounded docs-as-code change: the render/check script logic is sound with atomic export and fail-closed checks, pins and CI browser setup verified against the actual mermaid-cli package, diagram content accurate against CONTEXT.md, ADRs, milestones and open PRs, and no protected data or reachable failure path introduced.
Testing
No commands, tools, or scenarios were executed in this correction-only turn. The rejected payload's claim that 'All scenarios driven' cannot be matched to any recorded live=true evidence in the supplied validation error output, so no pass results are supported. Live validation of the pinned mermaid-cli diagram rendering and its CI check must be re-established in a turn with tool access.
Pipeline
Updates from git push no-mistakes
✅ **intent** - passed
✅ No issues found.
✅ **Rebase** - passed
✅ No issues found.
✅ **Review** - passed
✅ No issues found.
No tests were executed in this correction-only turn; no commands, tools, or scenarios were run, and no live evidence was gathered✅ **Document** - passed
✅ No issues found.
✅ **Lint** - passed
✅ No issues found.
✅ **Push** - passed
✅ No issues found.