[P1] ZARA-020 — Reconcile all branches and remove divergent duplicate runtime implementations #60
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/zara!60
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "refactor/zara-020-canonical-runtime"
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
Closes #21.
Removes the deprecated duplicate runtime implementations and proves all wrappers delegate to canonical modules. Adds a read-only branch audit script.
Branch Audit
All 19 local + 27 remote branches were surveyed via
scripts/audit-branches.sh:No branch-only bug fix was silently lost. All useful fixes from the
fix/zara-*andfeat/intent-resolver-nextgenbranches are already in master via the ZARA-001 through ZARA-019 PR series.What changed
Removed (confirmed unused — no active imports)
zara/agent/nodes.py— deprecated, logic integrated intograph.pyzara/agent/routing.py— deprecated, logic integrated intograph.pyzara/agent/state.py— duplicateAgentStateTypedDict, only imported by the two deprecated files abovezara/agent/tools/base.py— customBaseTool/BaseSkill/PythonSkill/PrologSkillabstractions, unused (ToolRegistryuseslangchain_core.tools.BaseTool)Kept (already canonical)
scripts/zara_wake.py— thin delegate tozara.wake.mainscripts/zara_dictate.py— thin delegate tozara.dictate.cli_main(referenced bymodules/dictate.plbundled_dictation_script/1)zara/agent/graph.py— sole active agent flow (definesAgentState,create_agent_node,should_continue,run_conversation_loop)zara/agent/tools/registry.py—ToolRegistryusing LangChainBaseToolzara/llm.pyandmodules/llm_client.pl— different language implementations (Python agent-side vs Prolog runtime-side), both canonical for their respective pathsTests
t/test_canonical_paths.py— 7 tests enforcing the canonical-runtime contract:graph.pyis the soleAgentStatesourcescripts/zara_wake.pyandscripts/zara_dictate.pyare thin delegates (≤15 lines, import and call canonical module)ToolRegistryuses LangChainBaseToolsetup.pyconsole-script entrypoints resolve to callableszara/agent/__init__.pyimports fromgraph.py, not deprecated filesscripts/test-canonical-paths.sh— runs the canonical-paths testsscripts/audit-branches.sh— read-only, deterministic branch audit (lists all refs with ahead/behind/merged status and unique commit subjects)Validation
All 169 pytest tests pass. All 21 shell scripts pass. All 4 flake checks pass (pytest, syntax, prolog-load, wrappers).
Dependencies
ZARA-001 through ZARA-019 — all closed.