zara-coding: add structured repository verification evidence #460

Open
nsaspy wants to merge 0 commits from rage/1-zara-coding-repository-evidence into main
Owner

Advances #1 toward pure Prolog-RLM verification by defining the repository evidence projection consumed by the trusted repository_head and repository_clean assertion providers.

This slice:

  • converts an already-bounded RepositoryInspector.inspect() snapshot into explicit source_class=repository, trust_class=observed, freshness=current evidence;
  • binds snapshot/state identity to exact repository root + full Git HEAD;
  • emits one stable repository snapshot evidence reference;
  • exposes values for both currently admitted trusted assertion kinds without collecting any new capability inside Prolog;
  • rejects missing root, non-full object IDs, and non-boolean dirty state.

RED-first commit: 335063e2. Implementation: 249a03f4.

This intentionally stops before exposing verification as a Zara tool: the next slice maps frozen requirement identities to these values and invokes canonical rlm_verify:spec_verify/4. Planning/execution and cross-plugin composition remain blocked behind Zara Core #400 rather than being duplicated here.

No Core, Android, dotfiles, or external todo changes. Full registry/plugin/Nix compatibility gate required before merge.

Advances #1 toward pure Prolog-RLM verification by defining the repository evidence projection consumed by the trusted `repository_head` and `repository_clean` assertion providers. This slice: - converts an already-bounded `RepositoryInspector.inspect()` snapshot into explicit `source_class=repository`, `trust_class=observed`, `freshness=current` evidence; - binds snapshot/state identity to exact repository root + full Git HEAD; - emits one stable repository snapshot evidence reference; - exposes values for both currently admitted trusted assertion kinds without collecting any new capability inside Prolog; - rejects missing root, non-full object IDs, and non-boolean dirty state. RED-first commit: `335063e2`. Implementation: `249a03f4`. This intentionally stops before exposing verification as a Zara tool: the next slice maps frozen requirement identities to these values and invokes canonical `rlm_verify:spec_verify/4`. Planning/execution and cross-plugin composition remain blocked behind Zara Core #400 rather than being duplicated here. No Core, Android, dotfiles, or external todo changes. Full registry/plugin/Nix compatibility gate required before merge.
Some checks failed
CI / test (pull_request) Failing after 16s
This branch is already included in the target branch. There is nothing to merge.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin rage/1-zara-coding-repository-evidence:rage/1-zara-coding-repository-evidence
git switch rage/1-zara-coding-repository-evidence

Merge

Merge the changes and update on Forgejo.

Warning: The "Autodetect manual merge" setting is not enabled for this repository, you will have to mark this pull request as manually merged afterwards.

git switch main
git merge --no-ff rage/1-zara-coding-repository-evidence
git switch rage/1-zara-coding-repository-evidence
git rebase main
git switch main
git merge --ff-only rage/1-zara-coding-repository-evidence
git switch rage/1-zara-coding-repository-evidence
git rebase main
git switch main
git merge --no-ff rage/1-zara-coding-repository-evidence
git switch main
git merge --squash rage/1-zara-coding-repository-evidence
git switch main
git merge --ff-only rage/1-zara-coding-repository-evidence
git switch main
git merge rage/1-zara-coding-repository-evidence
git push origin main
Sign in to join this conversation.
No description provided.