Re-Review: Replace Anthropic SDK with Ollama + purpose-built read-only tools
Verdict: APPROVED
Re-Review of review-749-2026-04-03
Original review returned NEEDS_REFINEMENT with 3 body issues and 1 decomposition recommendation. This re-review verifies the fixes applied to the issue body.
Fixes Applied
- [x]
[BODY]app/confirmation.pyadded to File Targets under new "Files to delete" subsection — was previously only mentioned in Context. Now explicitly listed with rationale: "write confirmation state machine not needed for V1 read-only mode." - [x]
[BODY]requirements.txt / pyproject.tomlfixed to justrequirements.txt— no pyproject.toml exists in this repo. - [x]
[BODY]Dependency on #30 made explicit in Related section — was previously "infra ticket (qwen3.5:4b in cluster + env vars)", now references#30directly.
Decomposition Decision
Original review recommended decomposing into 2 sub-tickets (5 file operations, 8 AC). Decision: keep as one ticket. Rationale:
- All 8 AC are testable assertions on one cohesive feature (SDK swap + tool definitions)
- Tool schemas are pre-defined in the ticket — no design ambiguity for the agent
- The "new file" (tools.py) is tightly coupled to the ai.py rewrite — splitting would require the second ticket to re-read and modify ai.py anyway
- The delete (confirmation.py) is trivial — not a separate unit of work
Remaining Scope Item
[SCOPE]arch-A2 architecture note still missing. This is discovered scope — tracked separately, not a blocker for this ticket.
File Targets Summary (post-fix)
- 3 files to modify:
app/ai.py,app/config.py,requirements.txt - 1 file to create:
app/tools.py - 1 file to delete:
app/confirmation.py - 2 files do-not-touch:
app/basketball.py,app/groupme.py
Ticket is ready for dispatch.