zara-coding: add persistent Prolog-owned task state #362

Open
nsaspy wants to merge 0 commits from rage/238-prolog-task-state into main
Owner

Implements #238 as a bounded local #1 slice.

Adds one service-owned persistent SWI-Prolog task-state process with a closed JSON-line protocol for create/get/record-evidence/complete, bounded input/output fields, verification-evidence-gated completion, deterministic shutdown, and honest degraded behavior when Prolog configuration/runtime is unavailable. The Zara entrypoint passes the resolved verbatim plugin root so the packaged Prolog driver works in both source and generated Nix runtime layouts.

TDD started with the task-state contract test before implementation. The earliest CI run was superseded/cancelled as the branch advanced, so this PR does not claim an observed CI RED result; the test referenced the intentionally absent zara_coding.task_state module at that point. The merge gate is the exact final head's full compatibility, registry/plugin, Nix, and package CI.

No cross-plugin composition or Zara Core changes.

Implements #238 as a bounded local #1 slice. Adds one service-owned persistent SWI-Prolog task-state process with a closed JSON-line protocol for create/get/record-evidence/complete, bounded input/output fields, verification-evidence-gated completion, deterministic shutdown, and honest degraded behavior when Prolog configuration/runtime is unavailable. The Zara entrypoint passes the resolved verbatim plugin root so the packaged Prolog driver works in both source and generated Nix runtime layouts. TDD started with the task-state contract test before implementation. The earliest CI run was superseded/cancelled as the branch advanced, so this PR does not claim an observed CI RED result; the test referenced the intentionally absent `zara_coding.task_state` module at that point. The merge gate is the exact final head's full compatibility, registry/plugin, Nix, and package CI. No cross-plugin composition or Zara Core changes.
Some checks failed
CI / test (pull_request) Failing after 19s
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/238-prolog-task-state:rage/238-prolog-task-state
git switch rage/238-prolog-task-state

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/238-prolog-task-state
git switch rage/238-prolog-task-state
git rebase main
git switch main
git merge --ff-only rage/238-prolog-task-state
git switch rage/238-prolog-task-state
git rebase main
git switch main
git merge --no-ff rage/238-prolog-task-state
git switch main
git merge --squash rage/238-prolog-task-state
git switch main
git merge --ff-only rage/238-prolog-task-state
git switch main
git merge rage/238-prolog-task-state
git push origin main
Sign in to join this conversation.
No description provided.