Claude fixes #1

Merged
toasterson merged 3 commits from claude/priceless-turing-45892e into main 2026-04-17 19:54:51 +00:00
Owner
No description provided.
Phase 0 + 1 of the agent-driven dev loop:

- AGENTS.md: build/test/run/deploy cheatsheet for autonomous runs
- .claude/settings.json: permission allowlist (cargo/docker/kubectl-read/tea)
- .forgejo/workflows/ci.yml: new `snapshot` job uploading diff PNGs on drift
- crates/anima-desktop: headless software-renderer harness (`cargo run
  --example snapshot -p anima-desktop`) + golden-image diff test covering
  9 scenarios (login, dashboard, projects, create-project, project-detail,
  workitem-detail, workitem-edit, team, create-user).

Goldens are committed at tests/snapshots/golden/; actual/ and diff/ are
gitignored. Drift threshold: per-channel tolerance 4, max 0.1% of pixels.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
WorkItemRepo::create was inserting only id/project/plan/title/description/
workflow_id; status and priority were never bound and silently took their
DB defaults ('open', 'medium'). The service handler never mapped the proto
enums either, so every created item came back MEDIUM regardless of input.

- crates/anima-db: extend `create` with optional status/priority/current_phase
  parameters, COALESCE to the existing defaults if unset.
- crates/anima-server: map CreateWorkItemRequest.priority (and
  workflow_id) through to the repo call — same mapping logic the update
  path already uses.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
feat: agent triage loop — TriageWorkItem RPC + anima-triage crate
Some checks failed
CI / test (pull_request) Has been cancelled
CI / snapshot (pull_request) Has been cancelled
CI / docker (pull_request) Has been cancelled
CI / test (push) Failing after 11m1s
CI / snapshot (push) Failing after 7m53s
CI / docker (push) Successful in 10m10s
78ababd137
Phase 2a + 2b of the agent-driven dev loop.

anima-ai gains a TriageWorkItem RPC (ai.proto). The handler uses a new
triage_work_item prompt that asks the standard-tier model for markdown
with exactly five sections (Summary, Approach, Files likely to change,
Open questions, Complexity S/M/L). The response is returned whole as
plan_markdown plus a parsed summary and complexity tag.

anima-triage is a new workspace crate — the orchestrator that reads
work items from Anima and drives the AI. Three subcommands:

- `triage list --project-id <id>` — paginated agent-ready items sorted
  by priority desc, created_at asc.
- `triage promote <id>` — flip current_phase to "agent-ready".
- `triage plan <id>` — fetch the item, call anima-ai's TriageWorkItem,
  emit the markdown plan (no side effects on the work item).

Transport: tonic + native-roots TLS for Anima; plain HTTP for anima-ai
(local-only for now; Phase 4 points in-cluster service DNS). Admin
credentials via ANIMA_ADMIN_USER / ANIMA_ADMIN_PASS env.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
toasterson deleted branch claude/priceless-turing-45892e 2026-04-17 19:54:52 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
toasterson/Anima!1
No description provided.