Commit graph

8 commits

Author SHA1 Message Date
Himanshu Dongre
28dbdedae9 Show author_agent in LineagePage checkpoint cards 2026-04-12 10:48:15 +05:30
Himanshu Dongre
73c71b4c9d Add delete endpoints for spaces, checkpoints, and sessions
Two rounds of agent-handoff dogfood testing surfaced that Smriti had no
way to delete spaces, sessions, or checkpoints via any surface. This
adds DELETE endpoints to the V2/V4 API, new CLI commands, and UI
affordances on the workspace overview and chat history panel so the
daily cleanup path does not require opening a Python shell.

Checkpoint delete refuses with 409 Conflict when child commits or
forked sessions reference the target, because silently orphaning them
would cause walk_ancestors to collapse lineage and forked sessions to
lose isolation. The refusal is escaped via ?cascade=true on the API,
--cascade on the CLI, and a two-step confirm with a dependents list
plus checkbox in the UI modal.

Space delete relies on the existing DB-level cascade chain from the
earlier commit/session/turn migrations — no new Alembic migration is
needed. Session delete cascades turn events but preserves commits
authored by the session, since commits are space-owned artifacts.

14 integration tests cover cascade correctness, 409 refusal, the
cascade escape hatch, cross-user 404s, subtree ordering, and
idempotency. Existing tests pass unchanged (143/143).
2026-04-11 17:25:36 +05:30
Himanshu Dongre
9408fae00c Add workspace overview landing page
Replace the auto-session landing behavior with a resume-focused
overview at /. When returning after a break, the root page now
shows the most recent checkpointed session as a Resume card with
its current objective and last checkpoint summary visible, plus
cards for other recent spaces. New sessions explicitly go through
/sessions/new instead of being created on bare /.
2026-04-10 23:30:45 +05:30
Himanshu Dongre
1eea01d949 Compose drift, review, and restore into one flow
Surface a soft drift hint in the chat header when many turns have
passed since the last checkpoint (turn-count based, not semantic).
Add a Restore action to the checkpoint detail panel as a peer to
Review, so users can act on a checkpoint without leaving the
inspection flow. When review surfaces issues, show an inline
Continue from this checkpoint button so recovery is one click away.
2026-04-10 17:54:20 +05:30
Himanshu Dongre
d01a180975 Add artifact-aware checkpoints
Checkpoints can now hold attached artifacts — text content captured
from chat messages or added manually. Artifacts are included in
prompt context when a checkpoint is active, grounding reasoning in
actual content rather than just summaries. Add capture button on
messages, artifact management in checkpoint modal, and collapsible
artifact display in checkpoint detail.
2026-04-04 21:35:41 +05:30
Himanshu Dongre
2f155e8dcc Add checkpoint review and assumptions field
Separate assumptions from decisions as a first-class checkpoint
field. Add review endpoint that surfaces reasoning consistency
issues: contradictions, hidden assumptions, resolved questions,
and unused entities. Extend draft extraction, prompt context,
and compare diff to include assumptions.
2026-04-04 21:07:41 +05:30
Himanshu Dongre
97b7845cb5 Improve checkpoint restore UX with visual state transitions
Rename mount/unmount flow to restore/exit restore. Add visual
restore boundary divider in chat timeline. Dim pre-restore turns
to make isolation visually obvious. Show contextual empty state
and one-time hint for restored context.
2026-04-04 20:33:30 +05:30
Himanshu Dongre
befea97bf6 Initial public release 2026-03-22 13:48:50 +05:30