mirror of
https://github.com/aaronsb/obsidian-mcp-plugin.git
synced 2026-07-22 06:45:14 +00:00
PR1 of 2 for #180 (ADR-201). Lands the regression net independently of library choice, against the *current* `new Function` evaluator as the behavioural oracle. - Expand tests/fixtures/base-corpus.ts: EVAL_CASES (~57 expr/expected pairs spanning every operator class + every fn/property the evaluator exposes), makeNoteContext() canonical fixed context, SECURITY_EXPRESSIONS (sandbox-escape set). FILTER_EXPRESSIONS kept as a derived export. - tests/bases-expression-evaluator.test.ts: locks current behaviour over the corpus AND proves the live RCE — constructor.constructor reaches the Function constructor through the `with` scope chain (returns 2/42/99 today). PR2 inverts the SECURITY block. Time-dependent primitives (now/today) appear only inside relations stable for all wall-clock times, so expectations never rot. 209/209 tests pass; build + lint clean. Refs #180, ADR-201 |
||
|---|---|---|
| .. | ||
| __mocks__ | ||
| fixtures | ||
| security | ||
| validation | ||
| bases-expression-evaluator.test.ts | ||
| bases-yaml.test.ts | ||
| dataview-integration.test.ts | ||
| graph-search-traversal.test.ts | ||
| list-files-recursive.test.ts | ||
| mcp-server.test.ts | ||
| patch-operations.test.ts | ||
| read-only-mode.test.ts | ||
| recursive-copy.test.ts | ||
| search-tag-operator.test.ts | ||
| setup.ts | ||