From 8c86336742ff14b320bd203be91552ab983cbb15 Mon Sep 17 00:00:00 2001 From: mohammed naji Date: Wed, 3 Jun 2026 08:20:08 +0400 Subject: [PATCH 1/3] chore: prepare 0.27.9-next.0 release Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- CHANGELOG.md | 10 + README.md | 63 +- docs/concepts/context-packs.md | 2 +- docs/design-partners.md | 6 +- docs/integrations/compatibility.md | 2 +- docs/mcp-registry/server.json | 4 +- docs/tutorials/agent-quickstarts.md | 2 +- docs/tutorials/getting-started.md | 2 +- package-lock.json | 4 +- package.json | 2 +- sbom.cdx.json | 3703 +++++++++++++++++++++ tests/unit/context-prompt-command.test.ts | 2 +- tests/unit/telemetry.test.ts | 4 +- tests/unit/try-command.test.ts | 2 +- 14 files changed, 3761 insertions(+), 47 deletions(-) create mode 100644 sbom.cdx.json diff --git a/CHANGELOG.md b/CHANGELOG.md index 2ec5d0d..7c4d950 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,16 @@ All notable changes to the TypeScript package will be documented in this file. +## [0.27.9-next.0] - 2026-06-03 + +### Added + +- **Proof-first launch/distribution release guidance**: Madar now ships `docs/launch-checklist.md`, a reusable release/distribution template with a required proof block, explicit channel tracker, a benchmark-backed launch draft anchored to the public `#469` suite bundle, and guardrails against generic launch copy. Closes #474. + +### Changed + +- **Prerelease README and release flow now point at the next-track launch surfaces**: the npm-visible README now links release-sensitive docs and release notes to `blob/next`, the release checklist calls out the launch-checklist working-notes flow, and the roadmap includes the new launch-checklist track on `next`. + ## [0.27.8] - 2026-06-02 ### Added diff --git a/README.md b/README.md index c43b2bc..bc03cb7 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ Madar is deterministic local context compilation. It complements agents and IDE [![node >=20](https://img.shields.io/badge/node-%E2%89%A520-3c873a)](https://nodejs.org/) [![Local first](https://img.shields.io/badge/local--first-no%20cloud%20required-0f766e)](#trust--limitations) [![No API keys](https://img.shields.io/badge/API%20keys-none%20required-111827)](#trust--limitations) -[![license MIT](https://img.shields.io/badge/license-MIT-16a34a)](https://github.com/mohanagy/madar/blob/main/LICENSE) +[![license MIT](https://img.shields.io/badge/license-MIT-16a34a)](https://github.com/mohanagy/madar/blob/next/LICENSE) --- @@ -38,7 +38,7 @@ Madar is the current project name and package. If you arrived from older `graphi | **Repomix** | Exporting or sharing a broad repo snapshot/prompt bundle | Not a task-aware local retrieval layer, PR-impact surface, or agent install flow | | **Context7** | Pulling external library/framework docs into prompts | Not a local codebase analysis, PR-impact, or graph-backed repository context tool | -Capability/scope summary only. See the [claims-and-evidence map](https://github.com/mohanagy/madar/blob/main/docs/claims-and-evidence.md#competitive-positioning) before turning this into a stronger claim. +Capability/scope summary only. See the [claims-and-evidence map](https://github.com/mohanagy/madar/blob/next/docs/claims-and-evidence.md#competitive-positioning) before turning this into a stronger claim. --- @@ -63,9 +63,9 @@ madar generate . --spi Now ask your agent something about the codebase. It can start with one bounded `retrieve` or `context_pack` call, get labeled snippets with file paths and community context, and then decide whether focused follow-up reads are still needed. -Want a tiny reproducible workspace? Start with [`examples/sample-workspace/`](https://github.com/mohanagy/madar/tree/main/examples/sample-workspace/) and the [sample workspace tutorial](https://github.com/mohanagy/madar/blob/main/docs/tutorials/sample-workspace.md). +Want a tiny reproducible workspace? Start with [`examples/sample-workspace/`](https://github.com/mohanagy/madar/tree/next/examples/sample-workspace/) and the [sample workspace tutorial](https://github.com/mohanagy/madar/blob/next/docs/tutorials/sample-workspace.md). -Want the broader first-run walkthrough with install verification, one pack, and a safe compare smoke check? Use the [getting started tutorial](https://github.com/mohanagy/madar/blob/main/docs/tutorials/getting-started.md). +Want the broader first-run walkthrough with install verification, one pack, and a safe compare smoke check? Use the [getting started tutorial](https://github.com/mohanagy/madar/blob/next/docs/tutorials/getting-started.md). --- @@ -83,7 +83,7 @@ Pick one install target, then rerun `madar doctor` and `madar status` so the fir After you generate `out/graph.json`, `madar doctor` and `madar status` check the local install wiring for Claude Code, Cursor, Gemini CLI, and GitHub Copilot CLI. They also lint the AGENTS-based Madar instruction profiles for Codex CLI, OpenCode, and Aider; if a profile drifts, they mark the agent as `partial` and suggest the matching reinstall command. -Install details, generated files, profiles, uninstall behavior, and verified copy/paste quickstarts live in the [CLI and MCP reference](https://github.com/mohanagy/madar/blob/main/docs/reference/cli-and-mcp.md), [compatibility guide](https://github.com/mohanagy/madar/blob/main/docs/integrations/compatibility.md), [agent quickstarts](https://github.com/mohanagy/madar/blob/main/docs/tutorials/agent-quickstarts.md), and the [launch checklist](https://github.com/mohanagy/madar/blob/main/docs/launch-checklist.md) for proof-first release/distribution copy. +Install details, generated files, profiles, uninstall behavior, and verified copy/paste quickstarts live in the [CLI and MCP reference](https://github.com/mohanagy/madar/blob/next/docs/reference/cli-and-mcp.md), [compatibility guide](https://github.com/mohanagy/madar/blob/next/docs/integrations/compatibility.md), [agent quickstarts](https://github.com/mohanagy/madar/blob/next/docs/tutorials/agent-quickstarts.md), and the [launch checklist](https://github.com/mohanagy/madar/blob/next/docs/launch-checklist.md) for proof-first release/distribution copy. **Without MCP**, compile a prompt or pack directly: @@ -123,31 +123,32 @@ madar telemetry report MADAR_ENABLE_TELEMETRY=1 madar generate . ``` -The current telemetry model is local-first and source-safe. It records coarse funnel events for `install`, `generate`, `pack`, `prompt`, MCP `context_pack`, `doctor`, `status`, and `compare`, plus command stage, version, OS, Node major version, and optional coarse buckets such as agent target, repo size, graph size, SPI enabled, failure bucket, and status bucket. It does **not** record prompt text, answer text, source paths, source content, or repository names. Full controls: [`docs/telemetry.md`](https://github.com/mohanagy/madar/blob/main/docs/telemetry.md). +The current telemetry model is local-first and source-safe. It records coarse funnel events for `install`, `generate`, `pack`, `prompt`, MCP `context_pack`, `doctor`, `status`, and `compare`, plus command stage, version, OS, Node major version, and optional coarse buckets such as agent target, repo size, graph size, SPI enabled, failure bucket, and status bucket. It does **not** record prompt text, answer text, source paths, source content, or repository names. Full controls: [`docs/telemetry.md`](https://github.com/mohanagy/madar/blob/next/docs/telemetry.md). --- ## What's New -See the [`0.27.8` changelog entry](https://github.com/mohanagy/madar/blob/main/CHANGELOG.md#0278---2026-06-02) for the full release notes. +See the [`0.27.9-next.0` changelog entry](https://github.com/mohanagy/madar/blob/next/CHANGELOG.md#0279-next0---2026-06-03) for the full release notes. Recent highlights: +- `0.27.9-next.0` adds a proof-first launch checklist so prerelease/stable distribution work starts from a dated receipt, explicit channel tracker, and benchmark-backed launch draft instead of generic launch copy. - `0.27.8` refactors the README into a shorter npm-facing landing page and moves long-form Pack Schema, context-pack, MCP, installer, command, and discovery-rule details into dedicated docs. - `0.27.7` added the checked-in federation flagship proof: a reproducible frontend/backend/shared fixture plus a synthetic federation receipt. - Roadmap docs now cover design-partner workflow loops, plugin distribution channels, and language-expansion decisions. - The larger **What's new in 0.23.0** additions remain central: `madar summary`, the core MCP `graph_summary` tool, runtime `execution_slice` output, share-safe `report.share-safe.json` compare artifacts, and `compare --baseline-mode pack_only`. -- Public proof workflows are organized under [`docs/proof-workflows.md`](https://github.com/mohanagy/madar/blob/main/docs/proof-workflows.md), [`docs/claims-and-evidence.md`](https://github.com/mohanagy/madar/blob/main/docs/claims-and-evidence.md), [`docs/benchmarks/suite/`](https://github.com/mohanagy/madar/tree/main/docs/benchmarks/suite/), and [`docs/launch-checklist.md`](https://github.com/mohanagy/madar/blob/main/docs/launch-checklist.md). +- Public proof workflows are organized under [`docs/proof-workflows.md`](https://github.com/mohanagy/madar/blob/next/docs/proof-workflows.md), [`docs/claims-and-evidence.md`](https://github.com/mohanagy/madar/blob/next/docs/claims-and-evidence.md), [`docs/benchmarks/suite/`](https://github.com/mohanagy/madar/tree/next/docs/benchmarks/suite/), and [`docs/launch-checklist.md`](https://github.com/mohanagy/madar/blob/next/docs/launch-checklist.md). --- ## When To Use `--spi` -`--spi` is still opt-in in `0.27.8`. Use it when your repo is framework-heavy TypeScript/JavaScript and you want extra framework-shaped metadata plus disk cache behavior. +`--spi` is still opt-in in `0.27.9-next.0`. Use it when your repo is framework-heavy TypeScript/JavaScript and you want extra framework-shaped metadata plus disk cache behavior. It is usually worth it for NestJS, Next.js App Router, Prisma, tRPC, Hono, Fastify, and similar repos where users ask storage-oriented prompts, client/server boundary questions, or request-flow questions. The default pipeline is still fine for simpler repos, non-JS/TS workspaces, or first runs where you do not need the extra framework detail yet. -More detail: [context packs and task evidence](https://github.com/mohanagy/madar/blob/main/docs/concepts/context-packs.md). +More detail: [context packs and task evidence](https://github.com/mohanagy/madar/blob/next/docs/concepts/context-packs.md). --- @@ -176,7 +177,7 @@ Runtime-generation prompts stay compact: pack shaping follows the strongest back These seven MCP tools ship in the default core profile: `retrieve`, `pr_impact`, `impact`, `call_chain`, `community_overview`, `graph_stats`, and `graph_summary`. The full surface is 26 tools, opt-in via `MADAR_TOOL_PROFILE=full` or `--profile full`, including `context_expand` and `get_neighbors`. -Full command and MCP reference: [`docs/reference/cli-and-mcp.md`](https://github.com/mohanagy/madar/blob/main/docs/reference/cli-and-mcp.md). +Full command and MCP reference: [`docs/reference/cli-and-mcp.md`](https://github.com/mohanagy/madar/blob/next/docs/reference/cli-and-mcp.md). --- @@ -194,11 +195,11 @@ The current headline proof is one verified GoValidate backend service cell for t This is one cell: one prompt, one repo, one agent runtime, one verified install path. Your results will vary by repo shape, prompt type, agent runtime, and other installed tools. Published benchmark cells run in isolation mode. Your local numbers may differ if your Claude Code config differs. -Current evidence also includes a public benchmark suite with per-repo spread, initial fixture-proxy implement/review/impact rows, and workflow-outcome receipts. There is still no single-number cross-repo headline. Mixed evidence and counterexamples are tracked openly, including [`docs/benchmarks/2026-05-25-founder-command-center-auth-flow/`](https://github.com/mohanagy/madar/tree/main/docs/benchmarks/2026-05-25-founder-command-center-auth-flow/). +Current evidence also includes a public benchmark suite with per-repo spread, initial fixture-proxy implement/review/impact rows, and workflow-outcome receipts. There is still no single-number cross-repo headline. Mixed evidence and counterexamples are tracked openly, including [`docs/benchmarks/2026-05-25-founder-command-center-auth-flow/`](https://github.com/mohanagy/madar/tree/next/docs/benchmarks/2026-05-25-founder-command-center-auth-flow/). Madar is a context/evidence layer for review and security workflows, not a PR reviewer or vulnerability scanner. CodeRabbit, Qodo, Codex Security, and similar tools still decide findings, policy, and remediation behavior. Madar supplies bounded local evidence through `pr_impact`, `review-compare`, `madar handoff`, and `report.share-safe.json`. -Read the public claim map before using numbers in customer-facing copy: [`docs/claims-and-evidence.md`](https://github.com/mohanagy/madar/blob/main/docs/claims-and-evidence.md). +Read the public claim map before using numbers in customer-facing copy: [`docs/claims-and-evidence.md`](https://github.com/mohanagy/madar/blob/next/docs/claims-and-evidence.md). --- @@ -209,7 +210,7 @@ Everything stays local by default. No cloud upload, no API key required. Your co - Build: tree-sitter AST extraction and Louvain community detection, CPU-local. - Query: BM25 lexical scoring, reciprocal-rank fusion, optional ONNX embeddings, and optional cross-encoder reranker. - MCP: local stdio subprocess of your agent. -- Security boundary: local-first is not automatically safe. Treat every Madar MCP install, plugin, hook, or AGENTS profile as a local trust boundary. Only enable it for repositories and local agent runtimes you trust. Prefer `--profile strict` when you only need the lean core MCP tools. `--profile strict` keeps the lean core MCP tools but still uses one bounded `context_pack` call per task before broader exploration. Threat model: [`docs/security/mcp-threat-model.md`](https://github.com/mohanagy/madar/blob/main/docs/security/mcp-threat-model.md). +- Security boundary: local-first is not automatically safe. Treat every Madar MCP install, plugin, hook, or AGENTS profile as a local trust boundary. Only enable it for repositories and local agent runtimes you trust. Prefer `--profile strict` when you only need the lean core MCP tools. `--profile strict` keeps the lean core MCP tools but still uses one bounded `context_pack` call per task before broader exploration. Threat model: [`docs/security/mcp-threat-model.md`](https://github.com/mohanagy/madar/blob/next/docs/security/mcp-threat-model.md). Limitations to know: @@ -225,28 +226,28 @@ Limitations to know: | Need | Link | | --- | --- | -| First run | [Getting started](https://github.com/mohanagy/madar/blob/main/docs/tutorials/getting-started.md) | -| Agent quickstarts | [Agent quickstarts](https://github.com/mohanagy/madar/blob/main/docs/tutorials/agent-quickstarts.md) | -| Small demo repo | [Sample workspace](https://github.com/mohanagy/madar/blob/main/docs/tutorials/sample-workspace.md) | -| Context packs, Pack Schema v1, adaptive renderings | [Context packs and task evidence](https://github.com/mohanagy/madar/blob/main/docs/concepts/context-packs.md) | -| CLI commands, MCP tools, agent installers | [CLI and MCP reference](https://github.com/mohanagy/madar/blob/main/docs/reference/cli-and-mcp.md) | -| Install matrix | [Compatibility guide](https://github.com/mohanagy/madar/blob/main/docs/integrations/compatibility.md) | -| Proof workflows | [Proof workflows](https://github.com/mohanagy/madar/blob/main/docs/proof-workflows.md) | -| Design partner program | [Design partners](https://github.com/mohanagy/madar/blob/main/docs/design-partners.md) | -| Claims and evidence | [Claims and evidence map](https://github.com/mohanagy/madar/blob/main/docs/claims-and-evidence.md) | -| Team and enterprise offer | [Team and enterprise offer](https://github.com/mohanagy/madar/blob/main/docs/team-enterprise-offer.md) | -| Benchmark suite | [Benchmark suite](https://github.com/mohanagy/madar/blob/main/docs/benchmarks/suite/README.md) | -| Language coverage | [Language and capability matrix](https://github.com/mohanagy/madar/blob/main/docs/language-capability-matrix.md) | -| Roadmap | [Public roadmap](https://github.com/mohanagy/madar/blob/main/docs/roadmap.md) | -| Telemetry | [Telemetry guide](https://github.com/mohanagy/madar/blob/main/docs/telemetry.md) | -| MCP Registry metadata | [`docs/mcp-registry/server.json`](https://github.com/mohanagy/madar/blob/main/docs/mcp-registry/server.json) | -| Full release notes | [Changelog](https://github.com/mohanagy/madar/blob/main/CHANGELOG.md) | +| First run | [Getting started](https://github.com/mohanagy/madar/blob/next/docs/tutorials/getting-started.md) | +| Agent quickstarts | [Agent quickstarts](https://github.com/mohanagy/madar/blob/next/docs/tutorials/agent-quickstarts.md) | +| Small demo repo | [Sample workspace](https://github.com/mohanagy/madar/blob/next/docs/tutorials/sample-workspace.md) | +| Context packs, Pack Schema v1, adaptive renderings | [Context packs and task evidence](https://github.com/mohanagy/madar/blob/next/docs/concepts/context-packs.md) | +| CLI commands, MCP tools, agent installers | [CLI and MCP reference](https://github.com/mohanagy/madar/blob/next/docs/reference/cli-and-mcp.md) | +| Install matrix | [Compatibility guide](https://github.com/mohanagy/madar/blob/next/docs/integrations/compatibility.md) | +| Proof workflows | [Proof workflows](https://github.com/mohanagy/madar/blob/next/docs/proof-workflows.md) | +| Design partner program | [Design partners](https://github.com/mohanagy/madar/blob/next/docs/design-partners.md) | +| Claims and evidence | [Claims and evidence map](https://github.com/mohanagy/madar/blob/next/docs/claims-and-evidence.md) | +| Team and enterprise offer | [Team and enterprise offer](https://github.com/mohanagy/madar/blob/next/docs/team-enterprise-offer.md) | +| Benchmark suite | [Benchmark suite](https://github.com/mohanagy/madar/blob/next/docs/benchmarks/suite/README.md) | +| Language coverage | [Language and capability matrix](https://github.com/mohanagy/madar/blob/next/docs/language-capability-matrix.md) | +| Roadmap | [Public roadmap](https://github.com/mohanagy/madar/blob/next/docs/roadmap.md) | +| Telemetry | [Telemetry guide](https://github.com/mohanagy/madar/blob/next/docs/telemetry.md) | +| MCP Registry metadata | [`docs/mcp-registry/server.json`](https://github.com/mohanagy/madar/blob/next/docs/mcp-registry/server.json) | +| Full release notes | [Changelog](https://github.com/mohanagy/madar/blob/next/CHANGELOG.md) | --- ## Contributors -Thanks to everyone shaping madar. The list below is regenerated automatically on every push to `main` by [`.github/workflows/contributors.yml`](https://github.com/mohanagy/madar/blob/main/.github/workflows/contributors.yml). +Thanks to everyone shaping madar. The list below is regenerated automatically on every push to `main` by [`.github/workflows/contributors.yml`](https://github.com/mohanagy/madar/blob/next/.github/workflows/contributors.yml). diff --git a/docs/concepts/context-packs.md b/docs/concepts/context-packs.md index 4cabf52..f4751d1 100644 --- a/docs/concepts/context-packs.md +++ b/docs/concepts/context-packs.md @@ -61,7 +61,7 @@ Runtime-generation prompts stay compact by following the strongest backend path ## When to use `--spi` -`--spi` is still opt-in in `0.27.8`. Use it when your repo is framework-heavy TypeScript/JavaScript and you want extra framework-shaped metadata plus disk cache behavior. +`--spi` is still opt-in in `0.27.9-next.0`. Use it when your repo is framework-heavy TypeScript/JavaScript and you want extra framework-shaped metadata plus disk cache behavior. `--spi` is usually worth it for NestJS, Next.js App Router, Prisma, tRPC, Hono, Fastify, and similar repos where users ask storage-oriented prompts, client/server boundary questions, or request-flow questions. The default pipeline is still fine for simpler repos, non-JS/TS workspaces, or quick first runs when you do not need the extra framework detail yet. diff --git a/docs/design-partners.md b/docs/design-partners.md index c495864..b3ada60 100644 --- a/docs/design-partners.md +++ b/docs/design-partners.md @@ -79,6 +79,6 @@ Use the receipt issue as the evidence anchor, then open a focused follow-up when ## Related docs -- [Proof workflows](https://github.com/mohanagy/madar/blob/main/docs/proof-workflows.md) -- [Claims and evidence map](https://github.com/mohanagy/madar/blob/main/docs/claims-and-evidence.md) -- [Getting started](https://github.com/mohanagy/madar/blob/main/docs/tutorials/getting-started.md) +- [Proof workflows](https://github.com/mohanagy/madar/blob/next/docs/proof-workflows.md) +- [Claims and evidence map](https://github.com/mohanagy/madar/blob/next/docs/claims-and-evidence.md) +- [Getting started](https://github.com/mohanagy/madar/blob/next/docs/tutorials/getting-started.md) diff --git a/docs/integrations/compatibility.md b/docs/integrations/compatibility.md index 8e46a01..6a70786 100644 --- a/docs/integrations/compatibility.md +++ b/docs/integrations/compatibility.md @@ -2,7 +2,7 @@ This guide is the user-facing install matrix for the current CLI contract. It focuses on the commands users actually run, the files each path writes, how to verify the result, and the most important behavior or limitation to know before choosing a surface. -If you want one copy/paste walkthrough per main agent target, use the [agent quickstarts](https://github.com/mohanagy/madar/blob/main/docs/tutorials/agent-quickstarts.md) after you pick a row from this matrix. +If you want one copy/paste walkthrough per main agent target, use the [agent quickstarts](https://github.com/mohanagy/madar/blob/next/docs/tutorials/agent-quickstarts.md) after you pick a row from this matrix. ## Dedicated project install commands diff --git a/docs/mcp-registry/server.json b/docs/mcp-registry/server.json index b2be16c..7cac9a2 100644 --- a/docs/mcp-registry/server.json +++ b/docs/mcp-registry/server.json @@ -9,13 +9,13 @@ "source": "github", "url": "https://github.com/mohanagy/madar" }, - "version": "0.27.8", + "version": "0.27.9-next.0", "packages": [ { "registryType": "npm", "registryBaseUrl": "https://registry.npmjs.org", "identifier": "@lubab/madar", - "version": "0.27.8", + "version": "0.27.9-next.0", "runtimeHint": "npx", "transport": { "type": "stdio" diff --git a/docs/tutorials/agent-quickstarts.md b/docs/tutorials/agent-quickstarts.md index 5d25a44..9976d59 100644 --- a/docs/tutorials/agent-quickstarts.md +++ b/docs/tutorials/agent-quickstarts.md @@ -2,7 +2,7 @@ Use this page when you already know which agent you want to wire and you want one verified install path plus one copy/paste Smoke test. -Before any agent-specific install, start with the [getting started tutorial](https://github.com/mohanagy/madar/blob/main/docs/tutorials/getting-started.md) and its one-command trial flow so the repo has a graph and you know Madar itself is behaving locally: +Before any agent-specific install, start with the [getting started tutorial](https://github.com/mohanagy/madar/blob/next/docs/tutorials/getting-started.md) and its one-command trial flow so the repo has a graph and you know Madar itself is behaving locally: ```bash madar try "how does auth work?" diff --git a/docs/tutorials/getting-started.md b/docs/tutorials/getting-started.md index eaa3f44..25ef659 100644 --- a/docs/tutorials/getting-started.md +++ b/docs/tutorials/getting-started.md @@ -124,6 +124,6 @@ This does **not** measure model quality. It is a safe local smoke check that pro ## Optional next steps - Replace the local compare runner with your real CLI model command from [`docs/proof-workflows.md`](../proof-workflows.md). -- Turn the same workflow into a public share-safe receipt with the [design-partner program](https://github.com/mohanagy/madar/blob/main/docs/design-partners.md). +- Turn the same workflow into a public share-safe receipt with the [design-partner program](https://github.com/mohanagy/madar/blob/next/docs/design-partners.md). - Install one of the agent profiles from the README after the sample graph is generated. - Move from `examples/sample-workspace/` to your own workspace and rerun the same `generate` → `pack` → `prompt` flow. diff --git a/package-lock.json b/package-lock.json index f81c111..666bf9c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@lubab/madar", - "version": "0.27.8", + "version": "0.27.9-next.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@lubab/madar", - "version": "0.27.8", + "version": "0.27.9-next.0", "license": "MIT", "dependencies": { "@vscode/tree-sitter-wasm": "^0.3.1", diff --git a/package.json b/package.json index 94d5a17..1ab30f3 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@lubab/madar", - "version": "0.27.8", + "version": "0.27.9-next.0", "description": "Stop AI coding agents from rediscovering large TypeScript/Node repos. Madar compiles task-aware local context packs from what runs for this task.", "license": "MIT", "author": "mohanagy", diff --git a/sbom.cdx.json b/sbom.cdx.json new file mode 100644 index 0000000..7091595 --- /dev/null +++ b/sbom.cdx.json @@ -0,0 +1,3703 @@ +{ + "$schema": "http://cyclonedx.org/schema/bom-1.5.schema.json", + "bomFormat": "CycloneDX", + "specVersion": "1.5", + "serialNumber": "urn:uuid:df18db93-3f06-4b34-a8da-3de1619e6be8", + "version": 1, + "metadata": { + "timestamp": "2026-06-03T04:19:36.861Z", + "lifecycles": [ + { + "phase": "build" + } + ], + "tools": [ + { + "vendor": "npm", + "name": "cli", + "version": "11.16.0" + } + ], + "component": { + "bom-ref": "@lubab/madar@0.27.9-next.0", + "type": "library", + "name": "madar", + "version": "0.27.9-next.0", + "scope": "required", + "author": "mohanagy", + "description": "Stop AI coding agents from rediscovering large TypeScript/Node repos. Madar compiles task-aware local context packs from what runs for this task.", + "purl": "pkg:npm/%40lubab/madar@0.27.9-next.0", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/mohanagy/madar.git" + }, + { + "type": "website", + "url": "https://github.com/mohanagy/madar#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/mohanagy/madar/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + } + }, + "components": [ + { + "bom-ref": "@babel/helper-string-parser@7.27.1", + "type": "library", + "name": "@babel/helper-string-parser", + "version": "7.27.1", + "scope": "required", + "author": "The Babel Team (https://babel.dev/team)", + "description": "A utility package to parse strings", + "purl": "pkg:npm/%40babel/helper-string-parser@7.27.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/babel/babel.git" + }, + { + "type": "website", + "url": "https://babel.dev/docs/en/next/babel-helper-string-parser" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@babel/helper-validator-identifier@7.28.5", + "type": "library", + "name": "@babel/helper-validator-identifier", + "version": "7.28.5", + "scope": "required", + "author": "The Babel Team (https://babel.dev/team)", + "description": "Validate identifier/keywords name", + "purl": "pkg:npm/%40babel/helper-validator-identifier@7.28.5", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/babel/babel.git" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@babel/parser@7.29.2", + "type": "library", + "name": "@babel/parser", + "version": "7.29.2", + "scope": "required", + "author": "The Babel Team (https://babel.dev/team)", + "description": "A JavaScript parser", + "purl": "pkg:npm/%40babel/parser@7.29.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/babel/babel.git" + }, + { + "type": "website", + "url": "https://babel.dev/docs/en/next/babel-parser" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@babel/types@7.29.0", + "type": "library", + "name": "@babel/types", + "version": "7.29.0", + "scope": "required", + "author": "The Babel Team (https://babel.dev/team)", + "description": "Babel Types is a Lodash-esque utility library for AST nodes", + "purl": "pkg:npm/%40babel/types@7.29.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/babel/babel.git" + }, + { + "type": "website", + "url": "https://babel.dev/docs/en/next/babel-types" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@bcoe/v8-coverage@1.0.2", + "type": "library", + "name": "@bcoe/v8-coverage", + "version": "1.0.2", + "scope": "required", + "author": "Charles Samborski (https://demurgos.net)", + "description": "Helper functions for V8 coverage files.", + "purl": "pkg:npm/%40bcoe/v8-coverage@1.0.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/bcoe/v8-coverage.git" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@jridgewell/resolve-uri@3.1.2", + "type": "library", + "name": "@jridgewell/resolve-uri", + "version": "3.1.2", + "scope": "required", + "author": "Justin Ridgewell ", + "description": "Resolve a URI relative to an optional base URI", + "purl": "pkg:npm/%40jridgewell/resolve-uri@3.1.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@jridgewell/sourcemap-codec@1.5.5", + "type": "library", + "name": "@jridgewell/sourcemap-codec", + "version": "1.5.5", + "scope": "required", + "author": "Justin Ridgewell ", + "description": "Encode/decode sourcemap mappings", + "purl": "pkg:npm/%40jridgewell/sourcemap-codec@1.5.5", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/jridgewell/sourcemaps.git" + }, + { + "type": "website", + "url": "https://github.com/jridgewell/sourcemaps/tree/main/packages/sourcemap-codec" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@jridgewell/trace-mapping@0.3.31", + "type": "library", + "name": "@jridgewell/trace-mapping", + "version": "0.3.31", + "scope": "required", + "author": "Justin Ridgewell ", + "description": "Trace the original position through a source map", + "purl": "pkg:npm/%40jridgewell/trace-mapping@0.3.31", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/jridgewell/sourcemaps.git" + }, + { + "type": "website", + "url": "https://github.com/jridgewell/sourcemaps/tree/main/packages/trace-mapping" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@oxc-project/types@0.132.0", + "type": "library", + "name": "@oxc-project/types", + "version": "0.132.0", + "scope": "required", + "author": "Boshen and oxc contributors", + "description": "Types for Oxc AST nodes", + "purl": "pkg:npm/%40oxc-project/types@0.132.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@oxc-project/types/-/types-0.132.0.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/oxc-project/oxc.git" + }, + { + "type": "website", + "url": "https://oxc.rs" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "14448c3b18a5e527b4d78ba2fc4abc7d3e6e1c9a3a9c84701f43df26b6495ece867a4dd95453aba54bf7608653db49be7b1b54f7c1e0d589bbd94e7cae5b3151" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@rolldown/binding-darwin-arm64@1.0.2", + "type": "library", + "name": "@rolldown/binding-darwin-arm64", + "version": "1.0.2", + "scope": "optional", + "description": "Fast JavaScript/TypeScript bundler in Rust with Rollup-compatible API.", + "purl": "pkg:npm/%40rolldown/binding-darwin-arm64@1.0.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.0.2.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/rolldown/rolldown.git" + }, + { + "type": "website", + "url": "https://rolldown.rs/" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "bdd140f7e0bfade93219c7bb5aa1ecff1a13d22a1911668e17264b215d6611e3456850d442b3c8a3c56cd86bc9e9e7ad6f7af30d4b54060ceda37131a57241df" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@rolldown/pluginutils@1.0.1", + "type": "library", + "name": "@rolldown/pluginutils", + "version": "1.0.1", + "scope": "required", + "description": "Plugin utilities for Rolldown", + "purl": "pkg:npm/%40rolldown/pluginutils@1.0.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/rolldown/plugins.git" + }, + { + "type": "website", + "url": "https://github.com/rolldown/plugins/tree/main/packages/pluginutils#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/rolldown/plugins/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "da3f5b1ade4987c863faf3ed8333ed97bda3d324711c0cae9a8a3a4cd7c08ec2c1d3852da52bcf6cf703701331cfb9fef42601d1cd46c501716118368e29aa1b" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@standard-schema/spec@1.1.0", + "type": "library", + "name": "@standard-schema/spec", + "version": "1.1.0", + "scope": "required", + "author": "Colin McDonnell", + "description": "A family of specs for interoperable TypeScript", + "purl": "pkg:npm/%40standard-schema/spec@1.1.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@standard-schema/spec/-/spec-1.1.0.tgz" + }, + { + "type": "vcs", + "url": "https://github.com/standard-schema/standard-schema" + }, + { + "type": "website", + "url": "https://standardschema.dev" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "976685cb98c02e19e21b91e0aab0fa8d72e2feb516acabea37fa89c7aca826c80a85b95577e8aaa94e110976af9bf8cf8adc83a394c2bca327a632a73ab8b2d3" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@types/chai@5.2.3", + "type": "library", + "name": "@types/chai", + "version": "5.2.3", + "scope": "required", + "description": "TypeScript definitions for chai", + "purl": "pkg:npm/%40types/chai@5.2.3", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@types/chai/-/chai-5.2.3.tgz" + }, + { + "type": "vcs", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git" + }, + { + "type": "website", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/chai" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "330e79f28780f5f15bbfae7fcb8987b570ecf5b3e714c6402ff8f174f154a4e1c72175fdd667201076d2e4b6a1afea7064547c03b19095e456788e9c1850b650" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@types/deep-eql@4.0.2", + "type": "library", + "name": "@types/deep-eql", + "version": "4.0.2", + "scope": "required", + "description": "TypeScript definitions for deep-eql", + "purl": "pkg:npm/%40types/deep-eql@4.0.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@types/deep-eql/-/deep-eql-4.0.2.tgz" + }, + { + "type": "vcs", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git" + }, + { + "type": "website", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/deep-eql" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "73d87d75554c8a030f7386f04ef0b9771aada8967040f78fb168cf96948e9e88dba2bea91aa764e78d657c0ec0a8542be6907505176ad23b98f5d6fcd41c3217" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@types/estree@1.0.8", + "type": "library", + "name": "@types/estree", + "version": "1.0.8", + "scope": "required", + "description": "TypeScript definitions for estree", + "purl": "pkg:npm/%40types/estree@1.0.8", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git" + }, + { + "type": "website", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/estree" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@types/node@25.9.1", + "type": "library", + "name": "@types/node", + "version": "25.9.1", + "scope": "required", + "description": "TypeScript definitions for node", + "purl": "pkg:npm/%40types/node@25.9.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@types/node/-/node-25.9.1.tgz" + }, + { + "type": "vcs", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped.git" + }, + { + "type": "website", + "url": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "c5fae563b503e6b30993765524ff013734b6f09dfa60983ec69f8b3d75754dd5b1afcb8c1f903ceb440dc580c641eff29434a08f1139d90f559ceee9ef9b49c6" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@vitest/coverage-v8@4.1.7", + "type": "library", + "name": "@vitest/coverage-v8", + "version": "4.1.7", + "scope": "required", + "author": "Anthony Fu ", + "description": "V8 coverage provider for Vitest", + "purl": "pkg:npm/%40vitest/coverage-v8@4.1.7", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@vitest/coverage-v8/-/coverage-v8-4.1.7.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitest-dev/vitest.git" + }, + { + "type": "website", + "url": "https://vitest.dev/guide/coverage" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitest-dev/vitest/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "aac60f79773943d7452ddd62f00a7e071f2c420729fab155428e11d1d0ec58d073976ea5755175a8e3be44bdb82bb143ad1ea903ee745de7512d2a121b6e1b55" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@vitest/expect@4.1.7", + "type": "library", + "name": "@vitest/expect", + "version": "4.1.7", + "scope": "required", + "description": "Jest's expect matchers as a Chai plugin", + "purl": "pkg:npm/%40vitest/expect@4.1.7", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@vitest/expect/-/expect-4.1.7.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitest-dev/vitest.git" + }, + { + "type": "website", + "url": "https://vitest.dev/api/expect" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitest-dev/vitest/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "d51fadc34a2bb4711b64318cca69bea4deff00543f46414576d77b10df95069ca72a62db3fc037ae911776c84127bfbc850f7304987f8b5b34c8a36dc409d4ef" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@vitest/mocker@4.1.7", + "type": "library", + "name": "@vitest/mocker", + "version": "4.1.7", + "scope": "required", + "description": "Vitest module mocker implementation", + "purl": "pkg:npm/%40vitest/mocker@4.1.7", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.1.7.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitest-dev/vitest.git" + }, + { + "type": "website", + "url": "https://github.com/vitest-dev/vitest/tree/main/packages/mocker" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitest-dev/vitest/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "bd8ee7b9a98a81fbe90352a86b7a18230fe4ec3ea4667a46c8d3195bc968a30d9bb016256b54c576a4da5e77167519f8a60c0db3ef744619d784949c0f041e24" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@vitest/pretty-format@4.1.7", + "type": "library", + "name": "@vitest/pretty-format", + "version": "4.1.7", + "scope": "required", + "description": "Fork of pretty-format with support for ESM", + "purl": "pkg:npm/%40vitest/pretty-format@4.1.7", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.1.7.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitest-dev/vitest.git" + }, + { + "type": "website", + "url": "https://github.com/vitest-dev/vitest/tree/main/packages/pretty-format" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitest-dev/vitest/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "ba68026ab4ce61058868332f1834598a3fba6fda1578b2322737cdf804bcf1ed19394dd04e034d493b6340ea5cbd6af79e9d4dd23e168198feb1bde86010ec73" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@vitest/runner@4.1.7", + "type": "library", + "name": "@vitest/runner", + "version": "4.1.7", + "scope": "required", + "description": "Vitest test runner", + "purl": "pkg:npm/%40vitest/runner@4.1.7", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@vitest/runner/-/runner-4.1.7.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitest-dev/vitest.git" + }, + { + "type": "website", + "url": "https://vitest.dev/api/advanced/runner" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitest-dev/vitest/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "05aa63980436688efc59d3047de5168af9df57307e54f1b059141c244d0e52aeea11e11c06c0927fed13e6244404d1399c16f8c00e586b45ba200fac82174417" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@vitest/snapshot@4.1.7", + "type": "library", + "name": "@vitest/snapshot", + "version": "4.1.7", + "scope": "required", + "description": "Vitest snapshot manager", + "purl": "pkg:npm/%40vitest/snapshot@4.1.7", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.1.7.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitest-dev/vitest.git" + }, + { + "type": "website", + "url": "https://vitest.dev/guide/snapshot" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitest-dev/vitest/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "65a70bce36be4e625e675875e315b6141fd6a5e8a6503de16815d03f226ac6fa3c8d04e67de03ccefe7c9ad8cdd82ec41d764361571561d6260318e4595bca0b" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@vitest/spy@4.1.7", + "type": "library", + "name": "@vitest/spy", + "version": "4.1.7", + "scope": "required", + "description": "Lightweight Jest compatible spy implementation", + "purl": "pkg:npm/%40vitest/spy@4.1.7", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@vitest/spy/-/spy-4.1.7.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitest-dev/vitest.git" + }, + { + "type": "website", + "url": "https://vitest.dev/api/mock" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitest-dev/vitest/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "91b908e4b3166a4cae4c8bece9f509e6a74855bd5754ab182404f8389f77f1c1cc44e60c49f9a841d672d1a6809e36db73c17ad6f9284eacff033fbf1e222ee5" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@vitest/utils@4.1.7", + "type": "library", + "name": "@vitest/utils", + "version": "4.1.7", + "scope": "required", + "description": "Shared Vitest utility functions", + "purl": "pkg:npm/%40vitest/utils@4.1.7", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/@vitest/utils/-/utils-4.1.7.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitest-dev/vitest.git" + }, + { + "type": "website", + "url": "https://github.com/vitest-dev/vitest/tree/main/packages/utils" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitest-dev/vitest/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "4f9df6581bbbf75701c4994297a48ef89d7897cd43431eae4079b56d06e608363b9ea9442209336bf5059d204d694b527f8d6e9e574316374e0581100b86f91f" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "@vscode/tree-sitter-wasm@0.3.1", + "type": "library", + "name": "@vscode/tree-sitter-wasm", + "version": "0.3.1", + "scope": "required", + "author": "Visual Studio Code Team", + "description": "Pre-built WASM files for Tree-Sitter and Tree-Sitter languages that VS Code uses", + "purl": "pkg:npm/%40vscode/tree-sitter-wasm@0.3.1", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/Microsoft/vscode-tree-sitter-wasm.git" + }, + { + "type": "issue-tracker", + "url": "https://github.com/Microsoft/vscode-tree-sitter-wasm/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "ajv@8.20.0", + "type": "library", + "name": "ajv", + "version": "8.20.0", + "scope": "required", + "author": "Evgeny Poberezkin", + "description": "Another JSON Schema Validator", + "purl": "pkg:npm/ajv@8.20.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/ajv/-/ajv-8.20.0.tgz" + }, + { + "type": "website", + "url": "https://ajv.js.org" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "4e16e58be3a53a3fa230f60505505f2773a60809da4b2367e0cd6fcfd4fa1a46b926df5b6bf1c8479ea3a32eb9b58ea4c7f142179557341f35f58eff194ac118" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "ajv-formats@3.0.1", + "type": "library", + "name": "ajv-formats", + "version": "3.0.1", + "scope": "required", + "author": "Evgeny Poberezkin", + "description": "Format validation for Ajv v7+", + "purl": "pkg:npm/ajv-formats@3.0.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-3.0.1.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/ajv-validator/ajv-formats.git" + }, + { + "type": "website", + "url": "https://github.com/ajv-validator/ajv-formats#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/ajv-validator/ajv-formats/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "f2252a979d04511fae51c7514371c3a9ae84572a3776870bf20e5627714d7169aeeb621b90652e7bfa44c8b056f1518a2ae7133e0a9e92ce1f214d43038ca8c1" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "assertion-error@2.0.1", + "type": "library", + "name": "assertion-error", + "version": "2.0.1", + "scope": "required", + "author": "Jake Luer (http://qualiancy.com)", + "description": "Error constructor for test and validation frameworks that implements standardized AssertionError specification.", + "purl": "pkg:npm/assertion-error@2.0.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz" + }, + { + "type": "vcs", + "url": "git@github.com:chaijs/assertion-error.git" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "2338bc45071f7ea09e3558058a02a58b5b2c92521ba479c261ce809275c662807a82b26ac9e6f2ee3bf5d895108264c09c80e76dc935bb192c4f87733773d604" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "ast-v8-to-istanbul@1.0.0", + "type": "library", + "name": "ast-v8-to-istanbul", + "version": "1.0.0", + "scope": "required", + "author": "Ari Perkkiö ", + "description": "AST-aware v8-to-istanbul", + "purl": "pkg:npm/ast-v8-to-istanbul@1.0.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/AriPerkkio/ast-v8-to-istanbul.git" + }, + { + "type": "website", + "url": "https://github.com/AriPerkkio/ast-v8-to-istanbul" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "base64-js@1.5.1", + "type": "library", + "name": "base64-js", + "version": "1.5.1", + "scope": "required", + "author": "T. Jameson Little ", + "description": "Base64 encoding/decoding in pure JS", + "purl": "pkg:npm/base64-js@1.5.1", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/beatgammit/base64-js.git" + }, + { + "type": "website", + "url": "https://github.com/beatgammit/base64-js" + }, + { + "type": "issue-tracker", + "url": "https://github.com/beatgammit/base64-js/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "buffer@6.0.3", + "type": "library", + "name": "buffer", + "version": "6.0.3", + "scope": "required", + "author": "Feross Aboukhadijeh", + "description": "Node.js Buffer API, for the browser", + "purl": "pkg:npm/buffer@6.0.3", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/feross/buffer.git" + }, + { + "type": "website", + "url": "https://github.com/feross/buffer" + }, + { + "type": "issue-tracker", + "url": "https://github.com/feross/buffer/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "chai@6.2.2", + "type": "library", + "name": "chai", + "version": "6.2.2", + "scope": "required", + "author": "Jake Luer ", + "description": "BDD/TDD assertion library for node.js and the browser. Test framework agnostic.", + "purl": "pkg:npm/chai@6.2.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/chai/-/chai-6.2.2.tgz" + }, + { + "type": "vcs", + "url": "https://github.com/chaijs/chai" + }, + { + "type": "website", + "url": "http://chaijs.com" + }, + { + "type": "issue-tracker", + "url": "https://github.com/chaijs/chai/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "3543d196e39f3a24ca04abd63ed483e0f845bd60aa3a2d01192b4d5ace7b5fd8eced7193a6b4a6168cf9174b56851e163e335e47d8d7a9d0bbfd4a522539e546" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "convert-source-map@2.0.0", + "type": "library", + "name": "convert-source-map", + "version": "2.0.0", + "scope": "required", + "author": "Thorsten Lorenz", + "description": "Converts a source-map from/to different formats and allows adding/changing properties.", + "purl": "pkg:npm/convert-source-map@2.0.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz" + }, + { + "type": "vcs", + "url": "git://github.com/thlorenz/convert-source-map.git" + }, + { + "type": "website", + "url": "https://github.com/thlorenz/convert-source-map" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "2afa78e7d1eb576144275080b22d4abbe318de46ac1f5f53172913cf6c5698c7aae9b936354dd75ef7c9f90eb59b4c64b56c2dfb51d261fdc966c4e6b3769126" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "detect-libc@2.1.2", + "type": "library", + "name": "detect-libc", + "version": "2.1.2", + "scope": "required", + "author": "Lovell Fuller ", + "description": "Node.js module to detect the C standard library (libc) implementation family and version", + "purl": "pkg:npm/detect-libc@2.1.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/lovell/detect-libc.git" + } + ], + "licenses": [ + { + "license": { + "id": "Apache-2.0" + } + } + ] + }, + { + "bom-ref": "es-module-lexer@2.1.0", + "type": "library", + "name": "es-module-lexer", + "version": "2.1.0", + "scope": "required", + "author": "Guy Bedford", + "description": "Lexes ES modules returning their import/export metadata", + "purl": "pkg:npm/es-module-lexer@2.1.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/guybedford/es-module-lexer.git" + }, + { + "type": "website", + "url": "https://github.com/guybedford/es-module-lexer#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/guybedford/es-module-lexer/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "estree-walker@3.0.3", + "type": "library", + "name": "estree-walker", + "version": "3.0.3", + "scope": "required", + "author": "Rich Harris", + "description": "Traverse an ESTree-compliant AST", + "purl": "pkg:npm/estree-walker@3.0.3", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/Rich-Harris/estree-walker" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "expect-type@1.3.0", + "type": "library", + "name": "expect-type", + "version": "1.3.0", + "scope": "required", + "purl": "pkg:npm/expect-type@1.3.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/mmkal/expect-type.git" + }, + { + "type": "website", + "url": "https://github.com/mmkal/expect-type#readme" + } + ], + "licenses": [ + { + "license": { + "id": "Apache-2.0" + } + } + ] + }, + { + "bom-ref": "fast-deep-equal@3.1.3", + "type": "library", + "name": "fast-deep-equal", + "version": "3.1.3", + "scope": "required", + "author": "Evgeny Poberezkin", + "description": "Fast deep equal", + "purl": "pkg:npm/fast-deep-equal@3.1.3", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/epoberezkin/fast-deep-equal.git" + }, + { + "type": "website", + "url": "https://github.com/epoberezkin/fast-deep-equal#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/epoberezkin/fast-deep-equal/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "7f7a90f68432f63d808417bf1fd542f75c0b98a042094fe00ce9ca340606e61b303bb04b2a3d3d1dce4760dcfd70623efb19690c22200da8ad56cd3701347ce1" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "fast-uri@3.1.2", + "type": "library", + "name": "fast-uri", + "version": "3.1.2", + "scope": "required", + "author": "Vincent Le Goff (https://github.com/zekth)", + "description": "Dependency-free RFC 3986 URI toolbox", + "purl": "pkg:npm/fast-uri@3.1.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/fast-uri/-/fast-uri-3.1.2.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/fastify/fast-uri.git" + }, + { + "type": "website", + "url": "https://github.com/fastify/fast-uri" + }, + { + "type": "issue-tracker", + "url": "https://github.com/fastify/fast-uri/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "ad58dfec0ac6dcb4e4f854ba630f355750cbb999756d16cdadebfa4e677ff516aba1e791449840b7b8e0ffa605c5bbc04175026af4a86613cf8faa0ec7ee4a8d" + } + ], + "licenses": [ + { + "license": { + "id": "BSD-3-Clause" + } + } + ] + }, + { + "bom-ref": "fdir@6.5.0", + "type": "library", + "name": "fdir", + "version": "6.5.0", + "scope": "required", + "author": "thecodrr ", + "description": "The fastest directory crawler & globbing alternative to glob, fast-glob, & tiny-glob. Crawls 1m files in < 1s", + "purl": "pkg:npm/fdir@6.5.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/thecodrr/fdir.git" + }, + { + "type": "website", + "url": "https://github.com/thecodrr/fdir#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/thecodrr/fdir/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "fflate@0.8.3", + "type": "library", + "name": "fflate", + "version": "0.8.3", + "scope": "required", + "author": "Arjun Barrett ", + "description": "High performance (de)compression in an 8kB package", + "purl": "pkg:npm/fflate@0.8.3", + "properties": [], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/fflate/-/fflate-0.8.3.tgz" + }, + { + "type": "website", + "url": "https://101arrowz.github.io/fflate" + }, + { + "type": "issue-tracker", + "url": "https://github.com/101arrowz/fflate/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "b5b64db89acbc06529df3b2106d772e16f8e47166e221f1ae629722044030b9ad8d5fdd4db424caf2d0b977581cd4e7c1192ac12e2455e16f9830bfc0ac3ef80" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "fsevents@2.3.3", + "type": "library", + "name": "fsevents", + "version": "2.3.3", + "scope": "optional", + "description": "Native Access to MacOS FSEvents", + "purl": "pkg:npm/fsevents@2.3.3", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz" + }, + { + "type": "vcs", + "url": "https://github.com/fsevents/fsevents.git" + }, + { + "type": "website", + "url": "https://github.com/fsevents/fsevents" + }, + { + "type": "issue-tracker", + "url": "https://github.com/fsevents/fsevents/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "e71a037d7f9f2fb7da0139da82658fa5b16dc21fd1efb5a630caaa1c64bae42defbc1d181eb805f81d58999df8e35b4c8f99fade4d36d765cda09c339617df43" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "gpt-tokenizer@3.4.0", + "type": "library", + "name": "gpt-tokenizer", + "version": "3.4.0", + "scope": "required", + "author": "Bazyli Brzoska (https://github.com/niieani)", + "description": "A pure JavaScript implementation of a BPE tokenizer (Encoder/Decoder) for GPT-2 / GPT-3 / GPT-4 and other OpenAI models", + "purl": "pkg:npm/gpt-tokenizer@3.4.0", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/niieani/gpt-tokenizer.git" + }, + { + "type": "website", + "url": "https://github.com/niieani/gpt-tokenizer#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/niieani/gpt-tokenizer/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "has-flag@4.0.0", + "type": "library", + "name": "has-flag", + "version": "4.0.0", + "scope": "required", + "author": "Sindre Sorhus", + "description": "Check if argv has a specific flag", + "purl": "pkg:npm/has-flag@4.0.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "html-escaper@2.0.2", + "type": "library", + "name": "html-escaper", + "version": "2.0.2", + "scope": "required", + "author": "Andrea Giammarchi", + "description": "fast and safe way to escape and unescape &<>'\" chars", + "purl": "pkg:npm/html-escaper@2.0.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/WebReflection/html-escaper.git" + }, + { + "type": "website", + "url": "https://github.com/WebReflection/html-escaper" + }, + { + "type": "issue-tracker", + "url": "https://github.com/WebReflection/html-escaper/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "ieee754@1.2.1", + "type": "library", + "name": "ieee754", + "version": "1.2.1", + "scope": "required", + "author": "Feross Aboukhadijeh", + "description": "Read/write IEEE754 floating point numbers from/to a Buffer or array-like object", + "purl": "pkg:npm/ieee754@1.2.1", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/feross/ieee754.git" + } + ], + "licenses": [ + { + "license": { + "id": "BSD-3-Clause" + } + } + ] + }, + { + "bom-ref": "istanbul-lib-coverage@3.2.2", + "type": "library", + "name": "istanbul-lib-coverage", + "version": "3.2.2", + "scope": "required", + "author": "Krishnan Anantheswaran ", + "description": "Data library for istanbul coverage objects", + "purl": "pkg:npm/istanbul-lib-coverage@3.2.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+ssh://git@github.com/istanbuljs/istanbuljs.git" + }, + { + "type": "website", + "url": "https://istanbul.js.org/" + }, + { + "type": "issue-tracker", + "url": "https://github.com/istanbuljs/istanbuljs/issues" + } + ], + "licenses": [ + { + "license": { + "id": "BSD-3-Clause" + } + } + ] + }, + { + "bom-ref": "istanbul-lib-report@3.0.1", + "type": "library", + "name": "istanbul-lib-report", + "version": "3.0.1", + "scope": "required", + "author": "Krishnan Anantheswaran ", + "description": "Base reporting library for istanbul", + "purl": "pkg:npm/istanbul-lib-report@3.0.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+ssh://git@github.com/istanbuljs/istanbuljs.git" + }, + { + "type": "website", + "url": "https://istanbul.js.org/" + }, + { + "type": "issue-tracker", + "url": "https://github.com/istanbuljs/istanbuljs/issues" + } + ], + "licenses": [ + { + "license": { + "id": "BSD-3-Clause" + } + } + ] + }, + { + "bom-ref": "istanbul-reports@3.2.0", + "type": "library", + "name": "istanbul-reports", + "version": "3.2.0", + "scope": "required", + "author": "Krishnan Anantheswaran ", + "description": "istanbul reports", + "purl": "pkg:npm/istanbul-reports@3.2.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+ssh://git@github.com/istanbuljs/istanbuljs.git" + }, + { + "type": "website", + "url": "https://istanbul.js.org/" + }, + { + "type": "issue-tracker", + "url": "https://github.com/istanbuljs/istanbuljs/issues" + } + ], + "licenses": [ + { + "license": { + "id": "BSD-3-Clause" + } + } + ] + }, + { + "bom-ref": "js-tokens@10.0.0", + "type": "library", + "name": "js-tokens", + "version": "10.0.0", + "scope": "required", + "author": "Simon Lydell", + "description": "Tiny JavaScript tokenizer.", + "purl": "pkg:npm/js-tokens@10.0.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "json-schema-traverse@1.0.0", + "type": "library", + "name": "json-schema-traverse", + "version": "1.0.0", + "scope": "required", + "author": "Evgeny Poberezkin", + "description": "Traverse JSON Schema passing each schema object to callback", + "purl": "pkg:npm/json-schema-traverse@1.0.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/epoberezkin/json-schema-traverse.git" + }, + { + "type": "website", + "url": "https://github.com/epoberezkin/json-schema-traverse#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/epoberezkin/json-schema-traverse/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "34cf3f3fd9f75e35e12199f594b86415a0024ce5114178d6855e0103f4673aff31be0aadaa9017f483b89914314b1d51968e2dab37aa6f4b0e96bb9a3b2dddba" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "lightningcss@1.32.0", + "type": "library", + "name": "lightningcss", + "version": "1.32.0", + "scope": "required", + "description": "A CSS parser, transformer, and minifier written in Rust", + "purl": "pkg:npm/lightningcss@1.32.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz" + }, + { + "type": "vcs", + "url": "https://github.com/parcel-bundler/lightningcss.git" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "357601ce29cdadb95fada3c6cab6cfa03d7d0b587d95f23fd66ce0598bd75137b8d781b3fd7d450f65c165264ceeb453acc03c24bdceb4068689fac82a1439c9" + } + ], + "licenses": [ + { + "license": { + "id": "MPL-2.0" + } + } + ] + }, + { + "bom-ref": "lightningcss-darwin-arm64@1.32.0", + "type": "library", + "name": "lightningcss-darwin-arm64", + "version": "1.32.0", + "scope": "optional", + "description": "A CSS parser, transformer, and minifier written in Rust", + "purl": "pkg:npm/lightningcss-darwin-arm64@1.32.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz" + }, + { + "type": "vcs", + "url": "https://github.com/parcel-bundler/lightningcss.git" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "473786f49bb96da83606fd7f97095526f044deae93b57b247592cb0b27e0e69b7e1cbcfd06a94808eecb64ced51cd4d39ffe4f4611c50528e4e65738726b1c3d" + } + ], + "licenses": [ + { + "license": { + "id": "MPL-2.0" + } + } + ] + }, + { + "bom-ref": "magic-string@0.30.21", + "type": "library", + "name": "magic-string", + "version": "0.30.21", + "scope": "required", + "author": "Rich Harris", + "description": "Modify strings, generate sourcemaps", + "purl": "pkg:npm/magic-string@0.30.21", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/Rich-Harris/magic-string.git" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "bddd85e1853211728670b1e8abe4c4c828f1b9e49e1e7171cb28cda7cd328345d5e2f5219c37abfe5bef96a33f6ab0796d740de4adbfde88a7c82472c7c4f609" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "magicast@0.5.2", + "type": "library", + "name": "magicast", + "version": "0.5.2", + "scope": "required", + "description": "Modify a JS/TS file and write back magically just like JSON!", + "purl": "pkg:npm/magicast@0.5.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "make-dir@4.0.0", + "type": "library", + "name": "make-dir", + "version": "4.0.0", + "scope": "required", + "author": "Sindre Sorhus", + "description": "Make a directory and its parents if needed - Think `mkdir -p`", + "purl": "pkg:npm/make-dir@4.0.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "nanoid@3.3.12", + "type": "library", + "name": "nanoid", + "version": "3.3.12", + "scope": "required", + "author": "Andrey Sitnik ", + "description": "A tiny (116 bytes), secure URL-friendly unique string ID generator", + "purl": "pkg:npm/nanoid@3.3.12", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.12.tgz" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "641f511ffdfdaa9ab956ee98f8d99468585047aa69f8cd97b7be970671300da19c540aa196fc6b9770766ca4b90f7347dd047beafdda4ab29a17f2a2cbb944b5" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "neo4j-driver@6.0.1", + "type": "library", + "name": "neo4j-driver", + "version": "6.0.1", + "scope": "required", + "author": "Neo4j", + "description": "The official Neo4j driver for Javascript", + "purl": "pkg:npm/neo4j-driver@6.0.1", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/neo4j/neo4j-javascript-driver.git" + } + ], + "licenses": [ + { + "license": { + "id": "Apache-2.0" + } + } + ] + }, + { + "bom-ref": "neo4j-driver-bolt-connection@6.0.1", + "type": "library", + "name": "neo4j-driver-bolt-connection", + "version": "6.0.1", + "scope": "required", + "author": "Neo4j", + "description": "Implements the connection with the Neo4j Database using the Bolt Protocol", + "purl": "pkg:npm/neo4j-driver-bolt-connection@6.0.1", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/neo4j/neo4j-javascript-driver.git" + }, + { + "type": "website", + "url": "https://github.com/neo4j/neo4j-javascript-driver#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/neo4j/neo4j-javascript-driver/issues" + } + ], + "licenses": [ + { + "license": { + "id": "Apache-2.0" + } + } + ] + }, + { + "bom-ref": "neo4j-driver-core@6.0.1", + "type": "library", + "name": "neo4j-driver-core", + "version": "6.0.1", + "scope": "required", + "author": "Neo4j", + "description": "Internals of neo4j-driver", + "purl": "pkg:npm/neo4j-driver-core@6.0.1", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/neo4j/neo4j-javascript-driver.git" + }, + { + "type": "website", + "url": "https://github.com/neo4j/neo4j-javascript-driver#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/neo4j/neo4j-javascript-driver/issues" + } + ], + "licenses": [ + { + "license": { + "id": "Apache-2.0" + } + } + ] + }, + { + "bom-ref": "obug@2.1.1", + "type": "library", + "name": "obug", + "version": "2.1.1", + "scope": "required", + "author": "Kevin Deng ", + "description": "A lightweight JavaScript debugging utility, forked from debug, featuring TypeScript and ESM support.", + "purl": "pkg:npm/obug@2.1.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/sxzz/obug.git" + }, + { + "type": "website", + "url": "https://github.com/sxzz/obug#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/sxzz/obug/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "pathe@2.0.3", + "type": "library", + "name": "pathe", + "version": "2.0.3", + "scope": "required", + "description": "Universal filesystem path utils", + "purl": "pkg:npm/pathe@2.0.3", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/pathe/-/pathe-2.0.3.tgz" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "5948c6700a8fd6041a72841ef8e049b0503b2dde03c97b9422367971cef970b1ef27b76d36c4ee8298712000f0b294be02b68051e3c22ab495b4f2c58ff17cf3" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "picocolors@1.1.1", + "type": "library", + "name": "picocolors", + "version": "1.1.1", + "scope": "required", + "author": "Alexey Raspopov", + "description": "The tiniest and the fastest library for terminal output formatting with ANSI colors", + "purl": "pkg:npm/picocolors@1.1.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "c5c787dac9e1b5be4cf658aa0ec984c39ea57b7efa993664117fe311bfd1c4d1727a036e97b78db250973fd1438ff2dcbb45fc284c8c71e3f69eda5a1eb0c454" + } + ], + "licenses": [ + { + "license": { + "id": "ISC" + } + } + ] + }, + { + "bom-ref": "picomatch@4.0.4", + "type": "library", + "name": "picomatch", + "version": "4.0.4", + "scope": "required", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "description": "Blazing fast and accurate glob matcher written in JavaScript, with no dependencies and full support for standard and extended Bash glob features, including braces, extglobs, POSIX brackets, and regular expressions.", + "purl": "pkg:npm/picomatch@4.0.4", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "website", + "url": "https://github.com/micromatch/picomatch" + }, + { + "type": "issue-tracker", + "url": "https://github.com/micromatch/picomatch/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "postcss@8.5.15", + "type": "library", + "name": "postcss", + "version": "8.5.15", + "scope": "required", + "author": "Andrey Sitnik ", + "description": "Tool for transforming styles with JS plugins", + "purl": "pkg:npm/postcss@8.5.15", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/postcss/-/postcss-8.5.15.tgz" + }, + { + "type": "website", + "url": "https://postcss.org/" + }, + { + "type": "issue-tracker", + "url": "https://github.com/postcss/postcss/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "15f47cb237787a6d93e9f6f723633000953b1d654cafdcdb6be7a799079e5857c26e6f94382ff45f80d2f17b6951333058c19b8ca60fef18df35e933c86981dc" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "require-from-string@2.0.2", + "type": "library", + "name": "require-from-string", + "version": "2.0.2", + "scope": "required", + "author": "Vsevolod Strukchinsky", + "description": "Require module from string", + "purl": "pkg:npm/require-from-string@2.0.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "5dfd2759ee91b1ece214cbbe029f5b8a251b9a996ae92f7fa7eef0ed85cffc904786b5030d48706bebc0372b9bbaa7d9593bde53ffc36151ac0c6ed128bfef13" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "rolldown@1.0.2", + "type": "library", + "name": "rolldown", + "version": "1.0.2", + "scope": "required", + "description": "Fast JavaScript/TypeScript bundler in Rust with Rollup-compatible API.", + "purl": "pkg:npm/rolldown@1.0.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/rolldown/-/rolldown-1.0.2.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/rolldown/rolldown.git" + }, + { + "type": "website", + "url": "https://rolldown.rs/" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "a19c79cd50ed541e38016dde6a27e00e6975816443646be371f771a27138b3034f1bdf0faeb5e368efcaae7523ce5327ced082455954b9e0359025e10111a4ea" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "rxjs@7.8.2", + "type": "library", + "name": "rxjs", + "version": "7.8.2", + "scope": "required", + "author": "Ben Lesh ", + "description": "Reactive Extensions for modern JavaScript", + "purl": "pkg:npm/rxjs@7.8.2", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/reactivex/rxjs.git" + }, + { + "type": "website", + "url": "https://rxjs.dev" + }, + { + "type": "issue-tracker", + "url": "https://github.com/ReactiveX/RxJS/issues" + } + ], + "licenses": [ + { + "license": { + "id": "Apache-2.0" + } + } + ] + }, + { + "bom-ref": "safe-buffer@5.2.1", + "type": "library", + "name": "safe-buffer", + "version": "5.2.1", + "scope": "required", + "author": "Feross Aboukhadijeh", + "description": "Safer Node.js Buffer API", + "purl": "pkg:npm/safe-buffer@5.2.1", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/feross/safe-buffer.git" + }, + { + "type": "website", + "url": "https://github.com/feross/safe-buffer" + }, + { + "type": "issue-tracker", + "url": "https://github.com/feross/safe-buffer/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "semver@7.7.4", + "type": "library", + "name": "semver", + "version": "7.7.4", + "scope": "required", + "author": "GitHub Inc.", + "description": "The semantic version parser used by npm.", + "purl": "pkg:npm/semver@7.7.4", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/npm/node-semver.git" + } + ], + "licenses": [ + { + "license": { + "id": "ISC" + } + } + ] + }, + { + "bom-ref": "siginfo@2.0.0", + "type": "library", + "name": "siginfo", + "version": "2.0.0", + "scope": "required", + "author": "Emil Bay ", + "description": "Utility module to print pretty messages on SIGINFO/SIGUSR1", + "purl": "pkg:npm/siginfo@2.0.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/emilbayes/siginfo.git" + }, + { + "type": "website", + "url": "https://github.com/emilbayes/siginfo#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/emilbayes/siginfo/issues" + } + ], + "licenses": [ + { + "license": { + "id": "ISC" + } + } + ] + }, + { + "bom-ref": "source-map-js@1.2.1", + "type": "library", + "name": "source-map-js", + "version": "1.2.1", + "scope": "required", + "author": "Valentin 7rulnik Semirulnik ", + "description": "Generates and consumes source maps", + "purl": "pkg:npm/source-map-js@1.2.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "website", + "url": "https://github.com/7rulnik/source-map-js" + } + ], + "licenses": [ + { + "license": { + "id": "BSD-3-Clause" + } + } + ] + }, + { + "bom-ref": "stackback@0.0.2", + "type": "library", + "name": "stackback", + "version": "0.0.2", + "scope": "required", + "author": "Roman Shtylman ", + "description": "return list of CallSite objects from a captured stacktrace", + "purl": "pkg:npm/stackback@0.0.2", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/shtylman/node-stackback.git" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "std-env@4.1.0", + "type": "library", + "name": "std-env", + "version": "4.1.0", + "scope": "required", + "description": "Runtime agnostic JS utils", + "purl": "pkg:npm/std-env@4.1.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "string_decoder@1.3.0", + "type": "library", + "name": "string_decoder", + "version": "1.3.0", + "scope": "required", + "description": "The string_decoder module from Node core", + "purl": "pkg:npm/string_decoder@1.3.0", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "git://github.com/nodejs/string_decoder.git" + }, + { + "type": "website", + "url": "https://github.com/nodejs/string_decoder" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "supports-color@7.2.0", + "type": "library", + "name": "supports-color", + "version": "7.2.0", + "scope": "required", + "author": "Sindre Sorhus", + "description": "Detect whether a terminal supports color", + "purl": "pkg:npm/supports-color@7.2.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "tinybench@2.9.0", + "type": "library", + "name": "tinybench", + "version": "2.9.0", + "scope": "required", + "purl": "pkg:npm/tinybench@2.9.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "tinyexec@1.1.1", + "type": "library", + "name": "tinyexec", + "version": "1.1.1", + "scope": "required", + "author": "James Garbutt (https://github.com/43081j)", + "description": "A minimal library for executing processes in Node", + "purl": "pkg:npm/tinyexec@1.1.1", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/tinylibs/tinyexec.git" + }, + { + "type": "website", + "url": "https://github.com/tinylibs/tinyexec#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/tinylibs/tinyexec/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "tinyglobby@0.2.16", + "type": "library", + "name": "tinyglobby", + "version": "0.2.16", + "scope": "required", + "author": "Superchupu", + "description": "A fast and minimal alternative to globby and fast-glob", + "purl": "pkg:npm/tinyglobby@0.2.16", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/SuperchupuDev/tinyglobby.git" + }, + { + "type": "website", + "url": "https://superchupu.dev/tinyglobby" + }, + { + "type": "issue-tracker", + "url": "https://github.com/SuperchupuDev/tinyglobby/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "tinyrainbow@3.1.0", + "type": "library", + "name": "tinyrainbow", + "version": "3.1.0", + "scope": "required", + "description": "A small library to print colourful messages.", + "purl": "pkg:npm/tinyrainbow@3.1.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "git+https://github.com/tinylibs/tinyrainbow.git" + }, + { + "type": "website", + "url": "https://github.com/tinylibs/tinyrainbow#readme" + }, + { + "type": "issue-tracker", + "url": "https://github.com/tinylibs/tinyrainbow/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "tslib@2.8.1", + "type": "library", + "name": "tslib", + "version": "2.8.1", + "scope": "required", + "author": "Microsoft Corp.", + "description": "Runtime library for TypeScript helper functions", + "purl": "pkg:npm/tslib@2.8.1", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/Microsoft/tslib.git" + }, + { + "type": "website", + "url": "https://www.typescriptlang.org/" + }, + { + "type": "issue-tracker", + "url": "https://github.com/Microsoft/TypeScript/issues" + } + ], + "licenses": [ + { + "license": { + "id": "0BSD" + } + } + ] + }, + { + "bom-ref": "typescript@6.0.3", + "type": "library", + "name": "typescript", + "version": "6.0.3", + "scope": "required", + "author": "Microsoft Corp.", + "description": "TypeScript is a language for application scale JavaScript development", + "purl": "pkg:npm/typescript@6.0.3", + "properties": [], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/microsoft/TypeScript.git" + }, + { + "type": "website", + "url": "https://www.typescriptlang.org/" + }, + { + "type": "issue-tracker", + "url": "https://github.com/microsoft/TypeScript/issues" + } + ], + "licenses": [ + { + "license": { + "id": "Apache-2.0" + } + } + ] + }, + { + "bom-ref": "undici-types@7.24.6", + "type": "library", + "name": "undici-types", + "version": "7.24.6", + "scope": "required", + "description": "A stand-alone types package for Undici", + "purl": "pkg:npm/undici-types@7.24.6", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/undici-types/-/undici-types-7.24.6.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/nodejs/undici.git" + }, + { + "type": "website", + "url": "https://undici.nodejs.org" + }, + { + "type": "issue-tracker", + "url": "https://github.com/nodejs/undici/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "591356fac2608f9381378ff42691c5aadab38696e75741ae07e3a8cc0f6008bedaf7ddd2994fb5241642ccb37162c6cc7c87832fe953b29843e6337937e9f4ce" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "vite@8.0.14", + "type": "library", + "name": "vite", + "version": "8.0.14", + "scope": "required", + "author": "Evan You", + "description": "Native-ESM powered web dev build tool", + "purl": "pkg:npm/vite@8.0.14", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/vite/-/vite-8.0.14.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitejs/vite.git" + }, + { + "type": "website", + "url": "https://vite.dev" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitejs/vite/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "b3804927ee72d6960be8eb70e7514785525084f9ee4629ca8a0eb883fd7e11435a26c77780229d0f7d483c5becc14816f7feb4413f681476d91db40ae6299cc7" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "vitest@4.1.7", + "type": "library", + "name": "vitest", + "version": "4.1.7", + "scope": "required", + "author": "Anthony Fu ", + "description": "Next generation testing framework powered by Vite", + "purl": "pkg:npm/vitest@4.1.7", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/vitest/-/vitest-4.1.7.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/vitest-dev/vitest.git" + }, + { + "type": "website", + "url": "https://vitest.dev" + }, + { + "type": "issue-tracker", + "url": "https://github.com/vitest-dev/vitest/issues" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "7e56326857760a0a02a14fb450ab77a7192c802f92d368930cdd27dcbb6a68c797b08f5205c74dba37369340de14bcd49ffd24e77f32363392770802a9caf024" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "web-tree-sitter@0.26.9", + "type": "library", + "name": "web-tree-sitter", + "version": "0.26.9", + "scope": "required", + "author": "Max Brunsfeld", + "description": "Tree-sitter bindings for the web", + "purl": "pkg:npm/web-tree-sitter@0.26.9", + "properties": [], + "externalReferences": [ + { + "type": "distribution", + "url": "https://registry.npmjs.org/web-tree-sitter/-/web-tree-sitter-0.26.9.tgz" + }, + { + "type": "vcs", + "url": "git+https://github.com/tree-sitter/tree-sitter.git" + } + ], + "hashes": [ + { + "alg": "SHA-512", + "content": "609c121c0365e971607848c1f278ad823d2a658b7982421eb09e30dacad2db070b0781946b8c5c3a433461a32c53a58d479dd8548903498ec48f8a5fdc85ed08" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + }, + { + "bom-ref": "why-is-node-running@2.3.0", + "type": "library", + "name": "why-is-node-running", + "version": "2.3.0", + "scope": "required", + "author": "Mathias Buus (@mafintosh)", + "description": "Node is running but you don't know why? why-is-node-running is here to help you.", + "purl": "pkg:npm/why-is-node-running@2.3.0", + "properties": [ + { + "name": "cdx:npm:package:development", + "value": "true" + } + ], + "externalReferences": [ + { + "type": "vcs", + "url": "https://github.com/mafintosh/why-is-node-running.git" + }, + { + "type": "website", + "url": "https://github.com/mafintosh/why-is-node-running" + }, + { + "type": "issue-tracker", + "url": "https://github.com/mafintosh/why-is-node-running/issues" + } + ], + "licenses": [ + { + "license": { + "id": "MIT" + } + } + ] + } + ], + "dependencies": [ + { + "ref": "@lubab/madar@0.27.9-next.0", + "dependsOn": [ + "@vscode/tree-sitter-wasm@0.3.1", + "fflate@0.8.3", + "gpt-tokenizer@3.4.0", + "neo4j-driver@6.0.1", + "typescript@6.0.3", + "web-tree-sitter@0.26.9", + "@types/node@25.9.1", + "@vitest/coverage-v8@4.1.7", + "ajv@8.20.0", + "ajv-formats@3.0.1", + "vite@8.0.14", + "vitest@4.1.7" + ] + }, + { + "ref": "@babel/helper-string-parser@7.27.1", + "dependsOn": [] + }, + { + "ref": "@babel/helper-validator-identifier@7.28.5", + "dependsOn": [] + }, + { + "ref": "@babel/parser@7.29.2", + "dependsOn": [ + "@babel/types@7.29.0" + ] + }, + { + "ref": "@babel/types@7.29.0", + "dependsOn": [ + "@babel/helper-string-parser@7.27.1", + "@babel/helper-validator-identifier@7.28.5" + ] + }, + { + "ref": "@bcoe/v8-coverage@1.0.2", + "dependsOn": [] + }, + { + "ref": "@jridgewell/resolve-uri@3.1.2", + "dependsOn": [] + }, + { + "ref": "@jridgewell/sourcemap-codec@1.5.5", + "dependsOn": [] + }, + { + "ref": "@jridgewell/trace-mapping@0.3.31", + "dependsOn": [ + "@jridgewell/resolve-uri@3.1.2", + "@jridgewell/sourcemap-codec@1.5.5" + ] + }, + { + "ref": "@oxc-project/types@0.132.0", + "dependsOn": [] + }, + { + "ref": "@rolldown/binding-darwin-arm64@1.0.2", + "dependsOn": [] + }, + { + "ref": "@rolldown/pluginutils@1.0.1", + "dependsOn": [] + }, + { + "ref": "@standard-schema/spec@1.1.0", + "dependsOn": [] + }, + { + "ref": "@types/chai@5.2.3", + "dependsOn": [ + "@types/deep-eql@4.0.2", + "assertion-error@2.0.1" + ] + }, + { + "ref": "@types/deep-eql@4.0.2", + "dependsOn": [] + }, + { + "ref": "@types/estree@1.0.8", + "dependsOn": [] + }, + { + "ref": "@types/node@25.9.1", + "dependsOn": [ + "undici-types@7.24.6" + ] + }, + { + "ref": "@vitest/coverage-v8@4.1.7", + "dependsOn": [ + "@bcoe/v8-coverage@1.0.2", + "ast-v8-to-istanbul@1.0.0", + "istanbul-lib-coverage@3.2.2", + "istanbul-lib-report@3.0.1", + "istanbul-reports@3.2.0", + "magicast@0.5.2", + "obug@2.1.1", + "std-env@4.1.0", + "tinyrainbow@3.1.0", + "@vitest/utils@4.1.7" + ] + }, + { + "ref": "@vitest/expect@4.1.7", + "dependsOn": [ + "@standard-schema/spec@1.1.0", + "@types/chai@5.2.3", + "chai@6.2.2", + "tinyrainbow@3.1.0", + "@vitest/spy@4.1.7", + "@vitest/utils@4.1.7" + ] + }, + { + "ref": "@vitest/mocker@4.1.7", + "dependsOn": [ + "estree-walker@3.0.3", + "magic-string@0.30.21", + "@vitest/spy@4.1.7" + ] + }, + { + "ref": "@vitest/pretty-format@4.1.7", + "dependsOn": [ + "tinyrainbow@3.1.0" + ] + }, + { + "ref": "@vitest/runner@4.1.7", + "dependsOn": [ + "pathe@2.0.3", + "@vitest/utils@4.1.7" + ] + }, + { + "ref": "@vitest/snapshot@4.1.7", + "dependsOn": [ + "magic-string@0.30.21", + "pathe@2.0.3", + "@vitest/pretty-format@4.1.7", + "@vitest/utils@4.1.7" + ] + }, + { + "ref": "@vitest/spy@4.1.7", + "dependsOn": [] + }, + { + "ref": "@vitest/utils@4.1.7", + "dependsOn": [ + "convert-source-map@2.0.0", + "tinyrainbow@3.1.0", + "@vitest/pretty-format@4.1.7" + ] + }, + { + "ref": "@vscode/tree-sitter-wasm@0.3.1", + "dependsOn": [] + }, + { + "ref": "ajv@8.20.0", + "dependsOn": [ + "fast-deep-equal@3.1.3", + "fast-uri@3.1.2", + "json-schema-traverse@1.0.0", + "require-from-string@2.0.2" + ] + }, + { + "ref": "ajv-formats@3.0.1", + "dependsOn": [ + "ajv@8.20.0" + ] + }, + { + "ref": "assertion-error@2.0.1", + "dependsOn": [] + }, + { + "ref": "ast-v8-to-istanbul@1.0.0", + "dependsOn": [ + "@jridgewell/trace-mapping@0.3.31", + "estree-walker@3.0.3", + "js-tokens@10.0.0" + ] + }, + { + "ref": "base64-js@1.5.1", + "dependsOn": [] + }, + { + "ref": "buffer@6.0.3", + "dependsOn": [ + "base64-js@1.5.1", + "ieee754@1.2.1" + ] + }, + { + "ref": "chai@6.2.2", + "dependsOn": [] + }, + { + "ref": "convert-source-map@2.0.0", + "dependsOn": [] + }, + { + "ref": "detect-libc@2.1.2", + "dependsOn": [] + }, + { + "ref": "es-module-lexer@2.1.0", + "dependsOn": [] + }, + { + "ref": "estree-walker@3.0.3", + "dependsOn": [ + "@types/estree@1.0.8" + ] + }, + { + "ref": "expect-type@1.3.0", + "dependsOn": [] + }, + { + "ref": "fast-deep-equal@3.1.3", + "dependsOn": [] + }, + { + "ref": "fast-uri@3.1.2", + "dependsOn": [] + }, + { + "ref": "fdir@6.5.0", + "dependsOn": [] + }, + { + "ref": "fflate@0.8.3", + "dependsOn": [] + }, + { + "ref": "fsevents@2.3.3", + "dependsOn": [] + }, + { + "ref": "gpt-tokenizer@3.4.0", + "dependsOn": [] + }, + { + "ref": "has-flag@4.0.0", + "dependsOn": [] + }, + { + "ref": "html-escaper@2.0.2", + "dependsOn": [] + }, + { + "ref": "ieee754@1.2.1", + "dependsOn": [] + }, + { + "ref": "istanbul-lib-coverage@3.2.2", + "dependsOn": [] + }, + { + "ref": "istanbul-lib-report@3.0.1", + "dependsOn": [ + "istanbul-lib-coverage@3.2.2", + "make-dir@4.0.0", + "supports-color@7.2.0" + ] + }, + { + "ref": "istanbul-reports@3.2.0", + "dependsOn": [ + "html-escaper@2.0.2", + "istanbul-lib-report@3.0.1" + ] + }, + { + "ref": "js-tokens@10.0.0", + "dependsOn": [] + }, + { + "ref": "json-schema-traverse@1.0.0", + "dependsOn": [] + }, + { + "ref": "lightningcss@1.32.0", + "dependsOn": [ + "detect-libc@2.1.2", + "lightningcss-darwin-arm64@1.32.0" + ] + }, + { + "ref": "lightningcss-darwin-arm64@1.32.0", + "dependsOn": [] + }, + { + "ref": "magic-string@0.30.21", + "dependsOn": [ + "@jridgewell/sourcemap-codec@1.5.5" + ] + }, + { + "ref": "magicast@0.5.2", + "dependsOn": [ + "@babel/parser@7.29.2", + "@babel/types@7.29.0", + "source-map-js@1.2.1" + ] + }, + { + "ref": "make-dir@4.0.0", + "dependsOn": [ + "semver@7.7.4" + ] + }, + { + "ref": "nanoid@3.3.12", + "dependsOn": [] + }, + { + "ref": "neo4j-driver@6.0.1", + "dependsOn": [ + "neo4j-driver-bolt-connection@6.0.1", + "neo4j-driver-core@6.0.1", + "rxjs@7.8.2" + ] + }, + { + "ref": "neo4j-driver-bolt-connection@6.0.1", + "dependsOn": [ + "buffer@6.0.3", + "neo4j-driver-core@6.0.1", + "string_decoder@1.3.0" + ] + }, + { + "ref": "neo4j-driver-core@6.0.1", + "dependsOn": [] + }, + { + "ref": "obug@2.1.1", + "dependsOn": [] + }, + { + "ref": "pathe@2.0.3", + "dependsOn": [] + }, + { + "ref": "picocolors@1.1.1", + "dependsOn": [] + }, + { + "ref": "picomatch@4.0.4", + "dependsOn": [] + }, + { + "ref": "postcss@8.5.15", + "dependsOn": [ + "nanoid@3.3.12", + "picocolors@1.1.1", + "source-map-js@1.2.1" + ] + }, + { + "ref": "require-from-string@2.0.2", + "dependsOn": [] + }, + { + "ref": "rolldown@1.0.2", + "dependsOn": [ + "@oxc-project/types@0.132.0", + "@rolldown/pluginutils@1.0.1", + "@rolldown/binding-darwin-arm64@1.0.2" + ] + }, + { + "ref": "rxjs@7.8.2", + "dependsOn": [ + "tslib@2.8.1" + ] + }, + { + "ref": "safe-buffer@5.2.1", + "dependsOn": [] + }, + { + "ref": "semver@7.7.4", + "dependsOn": [] + }, + { + "ref": "siginfo@2.0.0", + "dependsOn": [] + }, + { + "ref": "source-map-js@1.2.1", + "dependsOn": [] + }, + { + "ref": "stackback@0.0.2", + "dependsOn": [] + }, + { + "ref": "std-env@4.1.0", + "dependsOn": [] + }, + { + "ref": "string_decoder@1.3.0", + "dependsOn": [ + "safe-buffer@5.2.1" + ] + }, + { + "ref": "supports-color@7.2.0", + "dependsOn": [ + "has-flag@4.0.0" + ] + }, + { + "ref": "tinybench@2.9.0", + "dependsOn": [] + }, + { + "ref": "tinyexec@1.1.1", + "dependsOn": [] + }, + { + "ref": "tinyglobby@0.2.16", + "dependsOn": [ + "fdir@6.5.0", + "picomatch@4.0.4" + ] + }, + { + "ref": "tinyrainbow@3.1.0", + "dependsOn": [] + }, + { + "ref": "tslib@2.8.1", + "dependsOn": [] + }, + { + "ref": "typescript@6.0.3", + "dependsOn": [] + }, + { + "ref": "undici-types@7.24.6", + "dependsOn": [] + }, + { + "ref": "vite@8.0.14", + "dependsOn": [ + "lightningcss@1.32.0", + "picomatch@4.0.4", + "postcss@8.5.15", + "rolldown@1.0.2", + "tinyglobby@0.2.16", + "fsevents@2.3.3" + ] + }, + { + "ref": "vitest@4.1.7", + "dependsOn": [ + "es-module-lexer@2.1.0", + "expect-type@1.3.0", + "magic-string@0.30.21", + "obug@2.1.1", + "pathe@2.0.3", + "picomatch@4.0.4", + "std-env@4.1.0", + "tinybench@2.9.0", + "tinyexec@1.1.1", + "tinyglobby@0.2.16", + "tinyrainbow@3.1.0", + "vite@8.0.14", + "why-is-node-running@2.3.0", + "@vitest/pretty-format@4.1.7", + "@vitest/expect@4.1.7", + "@vitest/runner@4.1.7", + "@vitest/spy@4.1.7", + "@vitest/mocker@4.1.7", + "@vitest/snapshot@4.1.7", + "@vitest/utils@4.1.7" + ] + }, + { + "ref": "web-tree-sitter@0.26.9", + "dependsOn": [] + }, + { + "ref": "why-is-node-running@2.3.0", + "dependsOn": [ + "siginfo@2.0.0", + "stackback@0.0.2" + ] + } + ] +} diff --git a/tests/unit/context-prompt-command.test.ts b/tests/unit/context-prompt-command.test.ts index 306b479..f70d1e6 100644 --- a/tests/unit/context-prompt-command.test.ts +++ b/tests/unit/context-prompt-command.test.ts @@ -202,7 +202,7 @@ describe('context-prompt-command', () => { await expect(runContextPromptCommand({ prompt: 'how does auth work', provider: 'claude', - graphPath: 'out/graph.json', + graphPath: 'out/missing/context-prompt-graph.json', requireFreshGraph: true, }, dependencies)).rejects.toThrow(/require-fresh-graph|fresh graph/i) expect(dependencies.retrieveContext).not.toHaveBeenCalled() diff --git a/tests/unit/telemetry.test.ts b/tests/unit/telemetry.test.ts index 7910851..025ebf0 100644 --- a/tests/unit/telemetry.test.ts +++ b/tests/unit/telemetry.test.ts @@ -332,7 +332,7 @@ describe('telemetry', () => { expect(recordTelemetryEvent({ command: 'status', stage: 'succeeded', - version: '0.27.8', + version: '0.27.9-next.0', os: 'darwin', nodeMajor: 20, statusBucket: 'healthy', @@ -373,7 +373,7 @@ describe('telemetry', () => { expect(recordTelemetryEvent({ command: 'status', stage: 'succeeded', - version: '0.27.8', + version: '0.27.9-next.0', os: 'darwin', nodeMajor: 20, statusBucket: 'healthy', diff --git a/tests/unit/try-command.test.ts b/tests/unit/try-command.test.ts index d1b9def..e7a8bf5 100644 --- a/tests/unit/try-command.test.ts +++ b/tests/unit/try-command.test.ts @@ -47,7 +47,7 @@ function createFreshness(status: GraphContextFreshnessStatus, graphPath: string) graph_modified_at: '2026-06-01T00:00:00.000Z', generated_ms: 1, generated_at: '2026-06-01T00:00:00.000Z', - madar_version: '0.27.8', + madar_version: '0.27.9-next.0', indexed_file_count: 12, changed_source_count: status === 'fresh' ? 0 : 2, missing_source_count: 0, From 2efe3c7d408c2d61d3722c532db5c2faa85160da Mon Sep 17 00:00:00 2001 From: mohammed naji Date: Wed, 3 Jun 2026 08:32:47 +0400 Subject: [PATCH 2/3] fix: unblock 0.27.9-next.0 release Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- CHANGELOG.md | 8 ++++++-- README.md | 3 ++- sbom.cdx.json | 4 ++-- src/infrastructure/compare.ts | 15 ++++++++++++++- 4 files changed, 24 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7c4d950..fb58482 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,11 +6,15 @@ All notable changes to the TypeScript package will be documented in this file. ### Added -- **Proof-first launch/distribution release guidance**: Madar now ships `docs/launch-checklist.md`, a reusable release/distribution template with a required proof block, explicit channel tracker, a benchmark-backed launch draft anchored to the public `#469` suite bundle, and guardrails against generic launch copy. Closes #474. +- **Adoption proof surfaces now cover the full next-track rollout bundle**: Madar now ships a public multi-repo benchmark suite and language fixtures, the one-command `madar try` first-run flow, verified agent-specific quickstarts and smoke-tested install docs, a design-partner feedback loop with reproducible receipts, and the proof-first launch/distribution checklist. Closes #469, #470, #472, #473, and #474. ### Changed -- **Prerelease README and release flow now point at the next-track launch surfaces**: the npm-visible README now links release-sensitive docs and release notes to `blob/next`, the release checklist calls out the launch-checklist working-notes flow, and the roadmap includes the new launch-checklist track on `next`. +- **Public adoption messaging and instrumentation are now aligned across the next track**: the README/npm discovery path now reflects the Madar positioning and legacy-name cleanup, prerelease docs stay on `blob/next`, and the opt-in telemetry funnel records coarse install/generate/pack/prompt/doctor/status/compare adoption stages without collecting source text or paths. Closes #467, #468, and #471. + +### Fixed + +- **Graph freshness and stale-context guarantees are now scoped and git-backed**: `madar pack`, `madar prompt`, `madar handoff`, `madar doctor`, and `madar status` now report whole-repo vs selected-context freshness using the graph build revision plus current git diff as the source of truth on git workspaces, with privacy-safe governance receipts and tighter stale-context behavior for follow-up flows. Closes #477 and #479. ## [0.27.8] - 2026-06-02 diff --git a/README.md b/README.md index bc03cb7..b19ea82 100644 --- a/README.md +++ b/README.md @@ -133,7 +133,8 @@ See the [`0.27.9-next.0` changelog entry](https://github.com/mohanagy/madar/blob Recent highlights: -- `0.27.9-next.0` adds a proof-first launch checklist so prerelease/stable distribution work starts from a dated receipt, explicit channel tracker, and benchmark-backed launch draft instead of generic launch copy. +- `0.27.9-next.0` is the current next-track adoption release: it bundles the public benchmark suite, one-command `madar try` proof flow, opt-in funnel telemetry, verified agent quickstarts, design-partner loop, and launch checklist from issues #469-#474. +- `0.27.9-next.0` also adds scoped graph freshness and stale-context guarantees across `madar pack`, `madar prompt`, `madar handoff`, `madar doctor`, and `madar status`, backed by the tightened git/diff freshness model from #477 and #479. - `0.27.8` refactors the README into a shorter npm-facing landing page and moves long-form Pack Schema, context-pack, MCP, installer, command, and discovery-rule details into dedicated docs. - `0.27.7` added the checked-in federation flagship proof: a reproducible frontend/backend/shared fixture plus a synthetic federation receipt. - Roadmap docs now cover design-partner workflow loops, plugin distribution channels, and language-expansion decisions. diff --git a/sbom.cdx.json b/sbom.cdx.json index 7091595..aed6c41 100644 --- a/sbom.cdx.json +++ b/sbom.cdx.json @@ -2,10 +2,10 @@ "$schema": "http://cyclonedx.org/schema/bom-1.5.schema.json", "bomFormat": "CycloneDX", "specVersion": "1.5", - "serialNumber": "urn:uuid:df18db93-3f06-4b34-a8da-3de1619e6be8", + "serialNumber": "urn:uuid:db58dce4-5b51-476c-88c0-25c8cf30ee26", "version": 1, "metadata": { - "timestamp": "2026-06-03T04:19:36.861Z", + "timestamp": "2026-06-03T04:28:23.799Z", "lifecycles": [ { "phase": "build" diff --git a/src/infrastructure/compare.ts b/src/infrastructure/compare.ts index 50bf4dc..6d61e9a 100644 --- a/src/infrastructure/compare.ts +++ b/src/infrastructure/compare.ts @@ -1,4 +1,4 @@ -import { spawn } from 'node:child_process' +import { spawn, spawnSync } from 'node:child_process' import { existsSync, mkdirSync, mkdtempSync, readFileSync, readdirSync, realpathSync, renameSync, rmSync, statSync, writeFileSync } from 'node:fs' import { tmpdir } from 'node:os' import { basename, dirname, extname, isAbsolute, join, relative, resolve, sep } from 'node:path' @@ -2967,6 +2967,19 @@ async function runShellCommand(command: string, options: { cwd?: string; signal? const handleAbort = () => { if (!useProcessGroup || child.pid === undefined) { + if (!useProcessGroup && child.pid !== undefined) { + try { + spawnSync('taskkill', ['/pid', String(child.pid), '/T', '/F'], { + shell: false, + stdio: 'ignore', + windowsHide: true, + }) + return + } catch { + child.kill() + return + } + } child.kill() return } From aa7f6a45aecd70ac33ea296114dfe3da9c4e7361 Mon Sep 17 00:00:00 2001 From: mohammed naji Date: Wed, 3 Jun 2026 08:40:48 +0400 Subject: [PATCH 3/3] test: relax compare timeout watchdog Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- tests/unit/compare-native-agent.test.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/unit/compare-native-agent.test.ts b/tests/unit/compare-native-agent.test.ts index 5d3b11e..828e1e1 100644 --- a/tests/unit/compare-native-agent.test.ts +++ b/tests/unit/compare-native-agent.test.ts @@ -1305,6 +1305,7 @@ describe('executeNativeAgentCompare', () => { task: 'implement', validationTimeoutSeconds: 0.01, } as Parameters[0] & { validationTimeoutSeconds: number } + const hangBudgetMs = 2000 const outcome = await Promise.race([ executeNativeAgentCompare( @@ -1315,7 +1316,7 @@ describe('executeNativeAgentCompare', () => { }, ).then((result) => ({ kind: 'resolved' as const, result })), new Promise<{ kind: 'hung' }>((resolve) => { - setTimeout(() => resolve({ kind: 'hung' }), 1000) + setTimeout(() => resolve({ kind: 'hung' }), hangBudgetMs) }), ])