Repository navigation
v1.21.1
Fixes only: no setting, command, CLI flag or MCP tool changes.
Changed
- One guide for the Architecture view (#463):
docs/architecture.mdexplains what the view,graph-it architectureandexplore_architectureanswer, their controls, unit roles, and how to writegraphit.architecture.json(elements, rules,roles) forgraph-it check-architecture. - How to read and fix the Architecture view (#483): the guide now says, for the graph, the evidence and dependents panels, the matrix, the Rules panel, the roles legend and the Files changed banner, what each is for and how to read it. One table lists every mark (solid vs dashed red edge, matrix red fill vs red frame, cycle block, dependents highlight), and step-by-step fixes cover cycles, rule violations, unmatched files and unexpected layers.
- Promo video: a 75-second tour of Graph-It-Live plays from the README and the site.
Fixed
- Fewer full re-indexes on config edits (#430): Editing a
tsconfig*.jsonor apackage.jsonre-indexed the whole workspace even when import resolution could not change (a version bump, a new script,strict). The extension and the MCP server now re-index only when the effectivepaths,baseUrl,imports, aliases, entry fields orfile:dependencies change. Several configs changed at once (a branch switch adding packages) share one re-index. - Architecture view marked stale right after it opened (#433, #478): The view opened in the first second after activation was built before the deferred startup index, then marked stale with a Files changed banner once that index started. It now waits for the startup index, and builds at once when background indexing is off or cancelled. On macOS, which reports one write of a new file as a create then a change, the view also ignored the new file: an edge from an importer to a missing target just created stayed undrawn, and a late
package.jsonevent marked the view stale again right after Refresh. Created files now stay created, and Refresh no longer inherits the stale mark of an aborted build. - Architecture view at narrow widths (#426): In a narrow side bar the Find field wrapped to its own row and the header took a quarter of the view. The field now shrinks beside Graph | Matrix, and the legend's height cap includes its padding.
- Tooling units imported by others (#468): A unit holding only scripts, tests or config files (
tests/,scripts/,.github/,*.config.*) was inferredlibraryas soon as another unit imported it. It is nowtooling; its importers stay in the evidence. - MCP
serverInfo.version(#462): The MCP server reported1.1.0(the response-envelope format version) ininitialize. It now reports the package version, the same asgraph-it --version. - Leaner npm package (#461, #473):
@magic5644/graph-it-livedeclared the extension's 19 dependencies. It now declares only what its bundles load at runtime:web-tree-sitter,inkandreact.npm install -gdownloads less and no longer installsreact-domorreact-devtools-core.
Tests
- Before publishing, and in CI on Linux, macOS and Windows, a smoke test installs the packed npm tarball in an empty folder and runs
graph-it --version,graph-it summaryand MCP calls throughgraph-it serve. - VS Code E2E tests cover the Architecture view at narrow widths and the macOS create-then-change sequence.
What's Changed
Fixes
- fix(architecture): infer tooling for imported units of tooling files only by @magic5644 in #470
- fix(mcp): report the package version as serverInfo.version by @magic5644 in #471
- fix(npm): publish only the runtime dependencies of the CLI bundles by @magic5644 in #472
- fix(analyzer): re-index only when the effective paths, baseUrl or imports change by @magic5644 in #476
- fix(webview): Architecture view header and legend at narrow view widths by @magic5644 in #477
- fix(vscode): keep the Architecture view's stale mark in step with the index on macOS (#433, #478) by @magic5644 in #479
- fix(vscode): wait for the deferred startup index before the Architecture build reads (#433) by @magic5644 in #482
Documentation
- docs(media): add 75-second promo video to README and site by @magic5644 in #464
- docs(agents): keep graphit.architecture.json checked and in sync by @magic5644 in #467
- docs(architecture): explain the roles key and how to fill graphit.architecture.json by @magic5644 in #469
- docs(architecture): one guide for the Architecture view, rules and check-architecture (#463) by @magic5644 in #480
- docs(changelog): add v1.21.1 by @magic5644 in #481
- docs(architecture): explain each Architecture view, its marks and how to fix what it raises by @magic5644 in #484
CI
- ci(publish): wait for npm latest before the plugin version sync starts by @magic5644 in #459
Chores / dependencies
- chore(plugin): sync version with published CLI by @github-actions in #460
- chore(deps-dev): bump serialize-javascript from 7.0.5 to 7.1.4 by @dependabot in #465
- chore(deps-dev): bump happy-dom from 20.14.6 to 21.0.4 by @dependabot in #466
- chore(build): drop unused CLI externals and react-devtools-core; bump MCP server and ignore by @magic5644 in #474
- chore(lint): skip gitignored and local files when ESLint runs on the whole repository by @magic5644 in #475
Contributors
Thanks to @magic5644.
Full Changelog: v1.21.0...v1.21.1