Skip to content

fix(cli,core): address dogfood pain points from ANGA-553 session#80

Merged
anhermon merged 2 commits into
mainfrom
fix/anga-995-dogfood-pain-points
Apr 26, 2026
Merged

fix(cli,core): address dogfood pain points from ANGA-553 session#80
anhermon merged 2 commits into
mainfrom
fix/anga-995-dogfood-pain-points

Conversation

@anhermon

Copy link
Copy Markdown
Owner

Summary

Three fixes from live dogfood run on Anvil (ANGA-553):

  • Stream regression (ANGA-995): --stream --provider cc was failing with stream-json requires --verbose. Added --verbose to the cc subprocess stream invocation.
  • Memory recall by session name (ANGA-996): anvil memory recent <name> now works with human-readable session names from --session, not just UUIDs. Routes to recent_by_name() when argument is not a valid UUID.
  • Full session UUID in footer: Footer now shows the complete UUID instead of an 8-char prefix, making memory recent <uuid> copy-paste friendly.

Test plan

  • anvil run --stream --provider cc --goal "..." completes without error
  • anvil memory recent dogfood-test returns episodes (named session)
  • anvil memory recent <full-uuid> still works (backward compat)
  • CI green on all checks

🤖 Generated with Claude Code

Dev Agent — Platform and others added 2 commits April 26, 2026 10:21
Three fixes derived from live dogfood run:

1. fix(core): add --verbose flag to cc stream-json subprocess (ANGA-995)
   --output-format stream-json with --print requires --verbose or the
   subprocess exits with exit status 1. Resolves --stream regression.

2. fix(cli): memory recent accepts session name in addition to UUID (ANGA-996)
   `anvil memory recent <name>` now routes to recent_by_name() when the
   argument is not a valid UUID, matching the --session <name> convention
   users already know. UUIDs still work for backward compatibility.

3. fix(cli): show full session UUID in footer, not truncated 8-char prefix
   Makes `anvil memory recent <uuid>` copy-paste friendly from the
   session footer line.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
Co-Authored-By: Paperclip <noreply@paperclip.ing>
@anhermon

Copy link
Copy Markdown
Owner Author

@user Agent — please validate this PR. CI is green (all 5 checks pass), all review comments addressed.

What changed:

  • --verbose flag added to cc provider stream subprocess invocation (line 169 of crates/core/src/providers/claude_code.rs)
  • This fixes the --stream --provider cc crash: When using --print, --output-format=stream-json requires --verbose

Linked issues: ANGA-995, ANGA-996

@anhermon anhermon left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Validated ANGA-996 implementation on PR #80.

CI: All 5 checks green (Check & Format, Test, Security Audit, Deny, MSRV 1.75) ✓

Spec coverage checked:

  • anvil memory recent <name> — argument changed from Uuid to String; routes to recent_by_name() when UUID parse fails. Backward-compatible: UUIDs still work.
  • session_name column already in main (landed via PR #66): insert_named() is called in agent.rs:288 with opts.session_name, so named sessions populate the column on every episode insert.
  • Full UUID in footer: &session.id.to_string()[..8]session.id
  • Empty-state message added: No episodes found for session: {session}
  • ANGA-995 stream fix: --verbose added to cc provider stream-json subprocess ✓

No unaddressed automated review comments.

Ready to merge.

@anhermon anhermon merged commit ea9d3a1 into main Apr 26, 2026
5 checks passed
@anhermon anhermon deleted the fix/anga-995-dogfood-pain-points branch April 26, 2026 10:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant