mirror of
https://github.com/BradGroux/veritas-kanban.git
synced 2026-08-28 02:44:59 +00:00
* chore: prepare v6.1.2 release * chore: refresh reviewed gitleaks fingerprints * docs: record release gate corrections * docs: record v6.1.2 release evidence
2.4 KiB
2.4 KiB
CLAUDE.md — Claude-Specific Supplement for Veritas Kanban
Canonical instructions are in
AGENTS.md. Read that file first. This supplement contains Claude-specific lessons and common mistakes caught by previous Claude runs. Do not duplicateAGENTS.mdcontent here.Last updated: 2026-08-24 (v6.1.2 release freshness) Freshness check: Update after mistakes; review monthly.
What changed in v2.1
AGENTS.md is now the canonical project instruction file. It supersedes the duplicate context
that was previously embedded here. The fields updated from their stale v2.0 values:
- pnpm: was
9+→ now≥ 11.0.0(pinnedpnpm@11.1.1) - Node: was
22+→ now≥ 22.22.1 - Providers: managed Buzz, Grok Build, Codex, Claude Code, Copilot CLI,
Hermes, and OpenClaw contracts are documented in
AGENTS.md
Lessons learned (Claude-specific)
Security
- ❌ Forgot global middleware — flagged missing per-route auth that was already in
app.use(). Global middleware is inserver/src/middleware/; check there before adding per-route auth. - ❌ Used
path.join()without validation — allows../traversal. Always follow withvalidatePathSegment()+ensureWithinBase().
Architecture
- ❌ Imported
fsdirectly in service files — breaks storage abstraction. - ❌ Added polling when WebSocket hook existed — use
useRealtimeAgentStatus. - ❌ Frontend interface didn't match server response (
totalAgentsvstotal). Server response is the source of truth; interfaces must match exactly. - ❌ Agent provider guessing — always verify flag names and interfaces against versioned docs before implementing a new provider adapter.
Testing
- ❌ Used wrong schema field in test fixtures (
status: "success"vssuccess: true). Copy fixture shapes from live runtime output or type definitions, not from memory. - ✅
pnpm-lock.yamlis generated by pnpm; never reformat or hand-edit it.
Multi-agent runtime
- Heartbeat timeout: 5 min. Stale-check interval: 1 min.
- Activity source of truth:
status-historyfiles, notactivity.json. - Dashboard optimistic updates: use
onMutate, not refetch-after-mutate.
When to update this file
- After a mistake that a rule would have prevented.
- After any review catches a systemic pattern worth preserving.
- Monthly freshness review.
Structure inspired by Anthropic's CLAUDE.md convention.