sync: bug fixes + eval system from private repo

- Fix chunk_status: pass chunk_status/chunk/metadata to context builder
- Fix vector search: scope by node_id BEFORE similarity search
- Add eval logging system (RAH_EVALS_LOG=1)
- Add eval dashboard at /evals
- Add vitest for testing

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
“BeeRad”
2025-12-28 16:09:25 +11:00
co-authored by Claude Opus 4.5
parent e15f223ed8
commit 2f2ef10ec9
29 changed files with 1489 additions and 50 deletions
@@ -0,0 +1,15 @@
import { Scenario } from '../types';
export const scenario: Scenario = {
id: 'dimension-lifecycle',
name: 'Dimension lifecycle (create/update/lock/unlock)',
description: 'Create a dimension, update its description, lock it, then unlock it.',
tools: ['createDimension', 'updateDimension', 'lockDimension', 'unlockDimension'],
input: {
message: 'Create a dimension named "eval-dim" with description "temporary eval dimension", then update the description to "eval dimension updated", then lock it, then unlock it.',
},
expect: {
toolsCalledSoft: ['createDimension', 'updateDimension', 'lockDimension', 'unlockDimension'],
responseContainsSoft: ['eval-dim'],
},
};