Skip to content

Commit a57f106

Browse files
committed
release: v0.8.2 — two-phase indexer, optional MCP REFERENCES, worker docs, CI matrix, Vitest kuzu external
- Indexer: applyIndexedBatches (nodes then edges); SYSMLEGRAPH_INDEX_REFERENCES - Docs: WORKER_CONTRACT, PUBLISH, DESIGN §8.2 Failed, PLAN Phase 6, MCP guide - CI: ubuntu-latest + windows-latest - npm files: explicit lsp/ paths; release notes 0.8.1/0.8.2 - Vitest: server.deps.external kuzu Made-with: Cursor
1 parent dab2922 commit a57f106

26 files changed

+596
-256
lines changed

.github/workflows/ci.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,11 @@ on:
88

99
jobs:
1010
build-test:
11-
runs-on: windows-latest
11+
strategy:
12+
fail-fast: false
13+
matrix:
14+
os: [windows-latest, ubuntu-latest]
15+
runs-on: ${{ matrix.os }}
1216
steps:
1317
- uses: actions/checkout@v4
1418
- uses: actions/setup-node@v4

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ dist/
33
*.log
44
.env
55
.npmrc
6+
.smoke-sysmledgraph-storage/
67
.sysmledgraph/
78
.sysmledgraph-*/
89
.sysmledgraph-index-result.txt

README.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,10 @@ Path-only SysML indexer: builds a knowledge graph from `.sysml` files and expose
2525

2626
## Version
2727

28-
- **Current package version:** **0.8.0** — bump this line when you release; [`package.json`](package.json) `"version"` is what npm publishes.
28+
- **Current package version:** **0.8.2** — bump this line when you release; [`package.json`](package.json) `"version"` is what npm publishes.
2929
- **Policy:** [Semantic versioning](https://semver.org/)**MAJOR** / **MINOR** / **PATCH** as usual. CLI and MCP tool names and shapes are treated as stable within a major line unless release notes say otherwise.
3030

31-
To ship: set `"version"` in `package.json`, note changes (e.g. `release-notes-v*.md`), run `npm run build`, `npm test`, and `npm run test:daemon`, then `npm publish`see [Publishing (npm)](#publishing-npm).
31+
To ship: follow [docs/PUBLISH.md](docs/PUBLISH.md) (version, notes, `npm run build` / `test` / `test:daemon`, `npm publish`)summary in [Publishing (npm)](#publishing-npm).
3232

3333
## Requirements
3434

@@ -79,6 +79,7 @@ Or one step from repo root: `npm run index-and-map` (optional path argument).
7979
| **`SYSMLEGRAPH_WORKER_PORT`** | Daemon bind port; **`0`** = OS-assigned (default when unset). Used when running `worker:daemon` / `daemon.js` directly. |
8080
| **`SYSMLLSP_SERVER_PATH`** | Path to sysml-v2-lsp **`server.js`** if not using default `lsp/` or `node_modules` resolution. |
8181
| **`SYSMEDGRAPH_USE_MCP_SYMBOLS`** | Set to **`1`** to fall back to MCP `getSymbols` when LSP returns no symbols (indexing). |
82+
| **`SYSMLEGRAPH_INDEX_REFERENCES`** | Set to **`1`** to run an extra MCP **`getReferences`** pass after indexing and add **REFERENCES** edges (slow; needs **setup-lsp** / **sysml-v2-lsp**). See [docs/MCP_INTERACTION_GUIDE.md](docs/MCP_INTERACTION_GUIDE.md) §6. |
8283
| **`SYSMLEDGRAPH_USE_WORKER`** | Set to **`1`** to use a **per-command** stdio graph worker instead of in-process Kuzu (short-lived child). |
8384

8485
### Global CLI option
@@ -174,23 +175,25 @@ Configure **sysmledgraph** in **`.cursor/mcp.json`** (see [docs/MCP_SERVER_FOR_C
174175
| [docs/MCP_SERVER_FOR_CURSOR.md](docs/MCP_SERVER_FOR_CURSOR.md) | Cursor MCP config, tools |
175176
| [docs/MCP_INTERACTION_GUIDE.md](docs/MCP_INTERACTION_GUIDE.md) | LSP vs MCP, indexing, troubleshooting |
176177
| [docs/PLAN.md](docs/PLAN.md) | Roadmap and status |
177-
| [docs/PLAN_IMPLEMENT_LONG_LIVED_WORKER.md](docs/PLAN_IMPLEMENT_LONG_LIVED_WORKER.md) | Worker implementation plan |
178+
| [docs/PUBLISH.md](docs/PUBLISH.md) | npm publish checklist (maintainers) |
179+
| [docs/PLAN_IMPLEMENT_LONG_LIVED_WORKER.md](docs/PLAN_IMPLEMENT_LONG_LIVED_WORKER.md) | Worker implementation log (v1 shipped) |
178180
| [docs/DESIGN_LONG_LIVED_WORKER.md](docs/DESIGN_LONG_LIVED_WORKER.md) | Worker design, errors, exit semantics |
181+
| [docs/WORKER_CONTRACT.md](docs/WORKER_CONTRACT.md) | Worker NDJSON contract, files, CLI (operator summary) |
179182
| [docs/PLAN_INDEPENDENT_LSP.md](docs/PLAN_INDEPENDENT_LSP.md) | Why **`lsp/`** exists |
180183
| [docs/TOOLS.md](docs/TOOLS.md) | Tool-oriented notes |
181184
| [lsp/README.md](lsp/README.md) | LSP folder layout |
182185

183186
## Continuous integration
184187

185-
[`.github/workflows/ci.yml`](.github/workflows/ci.yml) runs **`npm ci`**, **`npm run build`**, **`npm test`**, and **`npm run test:daemon`** on **windows-latest** (Node 20).
188+
[`.github/workflows/ci.yml`](.github/workflows/ci.yml) runs **`npm ci`**, **`npm run build`**, **`npm test`**, and **`npm run test:daemon`** on **windows-latest** and **ubuntu-latest** (Node 20).
186189

187190
## Publishing (npm)
188191

189192
Others can install with **`npm install sysmledgraph`** or run **`npx sysmledgraph analyze <path>`**.
190193

191194
1. **Name:** **`sysmledgraph`** in `package.json` (or a scoped name if needed).
192195
2. **Build:** **`prepublishOnly`** runs **`npm run build`** so **`dist/`** ships in the tarball.
193-
3. **Files:** **`package.json`** **`files`** lists **`dist`**, **`scripts`**, **`lsp`**, **`README.md`**, **`docs`**. Consumers run **`npm run setup-lsp`** inside the package for **`lsp/`**.
196+
3. **Files:** **`package.json`** **`files`** lists **`dist`**, **`scripts`**, explicit **`lsp/`** files (**`package.json`**, **`package-lock.json`**, **`README.md`**, **`test-server.mjs`** — not the whole folder, so **`lsp/node_modules`** is never packed), **`README.md`**, **`docs`**. Consumers run **`npm run setup-lsp`** inside the package to install **sysml-v2-lsp** under **`lsp/`**.
194197
4. **Publish:**
195198
```bash
196199
npm login

0 commit comments

Comments
 (0)