Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ npm run bench # frozen routing/satisfaction benchmark — run it if you touc

There is no hidden CI magic yet: the suite you run locally is the gate. If you change routing behavior, paste the before/after bench output in the PR description.

**Platform note (honest).** The router, matcher, planner, receipts, and Claude Code hooks run on any Node ≥18 platform, and so does `npm run bench`. The corpus labeling harness (`scripts/label-corpus.js`) requires **Linux** — it uses `/proc/self/fd` with `O_NOFOLLOW` for race-safe I/O and fails with `race-safe exam I/O requires Linux /proc/self/fd and O_NOFOLLOW` elsewhere; `extract-corpus.js` degrades gracefully via `(O_NOFOLLOW || 0)`. Some replay and provenance tests also exercise symlink-rejection paths, which need symlink-creation rights (e.g. Windows Developer Mode). If you're on a non-Linux host, expect `scripts/label-corpus.js` to error while the core router suites and `npm run bench` stay green — that's a harness constraint, not a regression you introduced.

## What goes where

* **Quick fixes** (typo, doc bug, obvious regression) → straight to a PR.
Expand Down
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,8 @@ npx github:Nazim22/leadline init --claude-code # flip to enforce

Dry-run mode is the benchmark: it watches your own sessions and shows you your agent’s wrong-source calls, empty receipts, and unproven “done” claims — your data, your numbers — before a single call is ever denied.

**Platform note.** The router, matcher, planner, receipts, and Claude Code hooks run anywhere Node ≥18 runs, and so does `npm run bench`. The corpus labeling harness (`scripts/label-corpus.js`) requires **Linux**: it uses `/proc/self/fd` with `O_NOFOLLOW` for race-safe I/O and fails with `race-safe exam I/O requires Linux /proc/self/fd and O_NOFOLLOW` elsewhere. Some replay and provenance tests also exercise symlink-rejection paths, which need symlink creation rights (on Windows, Developer Mode).

## Policy packs — enforcement with receipts

Every shipped rule carries a `why` field with the real measurement behind it. Packs without receipts are opinions.
Expand Down
Loading