Skip to content

v1.21.1

Choose a tag to compare

@github-actions github-actions released this 26 Oct 22:01

Fixes only: no setting, command, CLI flag or MCP tool changes.

Changed

  • One guide for the Architecture view (#463): docs/architecture.md explains what the view, graph-it architecture and explore_architecture answer, their controls, unit roles, and how to write graphit.architecture.json (elements, rules, roles) for graph-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*.json or a package.json re-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 effective paths, baseUrl, imports, aliases, entry fields or file: 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.json event 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 inferred library as soon as another unit imported it. It is now tooling; its importers stay in the evidence.
  • MCP serverInfo.version (#462): The MCP server reported 1.1.0 (the response-envelope format version) in initialize. It now reports the package version, the same as graph-it --version.
  • Leaner npm package (#461, #473): @magic5644/graph-it-live declared the extension's 19 dependencies. It now declares only what its bundles load at runtime: web-tree-sitter, ink and react. npm install -g downloads less and no longer installs react-dom or react-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 summary and MCP calls through graph-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