Add declarative Project source and grammar registry #115
No reviewers
Labels
No labels
bug
documentation
duplicate
enhancement
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
nsaspy/prolog-rlm!115
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "agent/95-project-source-registry"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Implements #95 above the merged #94 direct Tree-sitter FFI.
tree_sitterfor supported polyglot source andswi_nativefor PrologIdentity and authority boundary
Project identities here are epistemic source identities supplied as closed ground data. A host may reuse/reference #75's future canonical security-sensitive ProjectIdentity, but this module does not derive authorization identity from paths, cwd, Git metadata, parser output, or model text.
Grammar registration does not grant filesystem, process, network, tool, or execution authority.
ts_grammar_activate/3only works when the trusted host has already loadedrlm_tree_sitter; ordinary core module loading remains usable without Tree-sitter installed.Source-analysis layering
This PR deliberately stops before CST traversal/materialization, query packs, symbols/references, and incremental reparsing.
Tests
Pure deterministic coverage includes:
swi_nativeProlog selectionThe native Tree-sitter lane additionally covers generic activation of C, Lua and Tree-sitter Query fixtures, active parser selection, deactivate/reactivate, active unregister cleanup, incompatible grammar ABI, and declared-ABI mismatch.
Verification
GitHub Actions on the exact final head is authoritative. The normal CI lane must pass the complete deterministic suite and REAL OpenRouter integration; the Tree-sitter lane must build the native FFI/fixtures and run both #94 and #95 native tests.
Closes #95