build: Fix property resolution in src/lib/base.ts. Obsidian's base dialect namespaces property tokens as note.KEY, but the eval #13

Merged
Joel merged 1 commit from build/82aa94b5 into main 2026-09-11 16:21:20 +00:00
Owner

Fix property resolution in src/lib/base.ts. Obsidian's base dialect namespaces property tokens as note.KEY, but the evaluator indexes frontmatter with the raw token, so the lookup of note.code is always undefined: every property-equals filter matches nothing and every property column renders empty, while folder filters keep working because they only touch path. Add one resolver helper that prefers an exact frontmatter key and otherwise strips a leading note. prefix and retries, then apply it at all three call sites: the property-equality comparison near line 99, the second comparison path near line 111, and the column fill near line 148. Tokens prefixed file. must keep resolving against the file record (path, name, folder), not frontmatter. Add unit tests pinning both dialects: notes with bare frontmatter keys matched by a base written in the namespaced dialect, and the same base written with bare keys, both returning rows and filling columns. Run the repo's own gate before finishing.


Built by Connor's backend backburner (dispatch 82aa94b5) in an isolated clone; shipped deterministically by ship.py. The full build notes were spoken in conversation and stored in memory (agent-dispatch:82aa94b5). Review is the gate. Gate: npm run gate.

Fix property resolution in src/lib/base.ts. Obsidian's base dialect namespaces property tokens as note.KEY, but the evaluator indexes frontmatter with the raw token, so the lookup of note.code is always undefined: every property-equals filter matches nothing and every property column renders empty, while folder filters keep working because they only touch path. Add one resolver helper that prefers an exact frontmatter key and otherwise strips a leading note. prefix and retries, then apply it at all three call sites: the property-equality comparison near line 99, the second comparison path near line 111, and the column fill near line 148. Tokens prefixed file. must keep resolving against the file record (path, name, folder), not frontmatter. Add unit tests pinning both dialects: notes with bare frontmatter keys matched by a base written in the namespaced dialect, and the same base written with bare keys, both returning rows and filling columns. Run the repo's own gate before finishing. --- Built by Connor's backend backburner (dispatch `82aa94b5`) in an isolated clone; shipped deterministically by `ship.py`. The full build notes were spoken in conversation and stored in memory (`agent-dispatch:82aa94b5`). Review is the gate. Gate: `npm run gate`.
build: Fix property resolution in src/lib/base.ts. Obsidian's base dialect name
All checks were successful
gate / gate (pull_request) Successful in 8s
f370609682
Fix property resolution in src/lib/base.ts. Obsidian's base dialect namespaces property tokens as note.KEY, but the evaluator indexes frontmatter with the raw token, so the lookup of note.code is always undefined: every property-equals filter matches nothing and every property column renders empty, while folder filters keep working because they only touch path. Add one resolver helper that prefers an exact frontmatter key and otherwise strips a leading note. prefix and retries, then apply it at all three call sites: the property-equality comparison near line 99, the second comparison path near line 111, and the column fill near line 148. Tokens prefixed file. must keep resolving against the file record (path, name, folder), not frontmatter. Add unit tests pinning both dialects: notes with bare frontmatter keys matched by a base written in the namespaced dialect, and the same base written with bare keys, both returning rows and filling columns. Run the repo's own gate before finishing.

Built by my backend backburner (dispatch 82aa94b5), diff verified by git; shipped by ship.py. Nothing merges without review.
Joel merged commit 6df1bfc2c9 into main 2026-09-11 16:21:20 +00:00
Joel deleted branch build/82aa94b5 2026-09-11 16:21:20 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
ZSDev/obsidian-connor!13
No description provided.