Skip to content

Keep chat focused with shared compact activity and dismissible task receipts - #1607

Closed
santoshkumarradha wants to merge 23 commits into
devfrom
codex/chat-notifications-cleanup
Closed

santoshkumarradha wants to merge 23 commits into
devfrom
codex/chat-notifications-cleanup

Conversation

@santoshkumarradha

@santoshkumarradha santoshkumarradha commented Sep 27, 2026 •

Copy link
Copy Markdown
Member

Chat previously left task receipts, internal coordination and failed-call details mixed into the conversation. The shared renderer now preserves human questions, steering, completed answers and explicit interim updates while operational work uses the existing three-row scrolling animation and folds afterward. This applies to ordinary chat, managers, task views and nested transcripts.

Three minutes in the real TUI

Actual live workflow: disclosure, steering follow-up and tested final handoff

180 seconds at 1× speed, continuously captured from tmux. The full 254.792-second original, checkpoint captions, generated program and independent verification are preserved. Earlier resize and pre-steer checkpoints are in that bundle; the GIF covers 74.792–254.792 seconds.

The live model implemented strict reimbursement validation and a safe exporter. Real steering required failures to preserve an existing CSV; a later correction required a tested import condition. Independent execution verifies 39 tests, exit codes, preserved/replaced files, and an importer that runs only after success.

Behavior and underlying fix

  • Settled task notifications start compact. /dismiss, /dismiss undo, and Delete support dismissal without deleting output; pending decisions stay actionable.
  • Failed tools show a compact failure indicator. Tool details, team traffic, reasoning, task provenance and maintenance records remain available through disclosure.
  • The explicit [update] protocol preserves formatted human-directed interim messages while consuming its marker. Typed, occurrence-owned audience and interruption metadata survive journal replay, compaction and rewind without changing provider history.
  • Consumed steering resets response boundaries and clears abandoned tool arguments. Stopped human updates remain readable and marked interrupted; retries and late events cannot promote them into completed answers.

Older ambiguous mixed prose is deliberately preserved because those journals lack reliable audience metadata. New records carry that metadata at the source.

Validation

  • Four live tmux scenarios passed in 112.054 seconds: task completion/dismissal, manager replay with a live follow-up, actual failed-call recovery, and steering/interim-update/reopen.
  • 76 completed live requests across the sustained workflow (41) and focused scenarios (35), all OpenRouter deepseek/deepseek-v4.1-flash on Spark. Request starts and auxiliary roles were audited too.
  • UX transition matrix: stop, retry, consumed steering, late events, replay, compaction, rewind, narrow widths, all chat lenses, disclosure and pending decisions.
  • Full make pr-ready passed on 561e1c5f1: build, vet, formatting, bundled manual search, repository laws and fresh affected-package suites. After recorded application source 18a6ec5f2, follow-ups restored a help-search heading and corrected a completed-versus-interrupted test fixture; application code is unchanged. Existing reviewed fix: recover and cancel held tasks through their original run #1619/fix(standing): preserve shared timer ownership on first approval #1622 test teardown fixes were reused after the standalone gate reproduced their known cleanup race. No new known-red exclusions.
  • Final CI passed on the published head. Logs, model audits and screenshots include the exact revisions and clearly labeled intermediate failures.

Manager traffic in the focused scenario is seeded historical traffic plus a real live follow-up, not a claim of live teammate delivery. The sustained recording is an actual adaptive workflow.

Closes #1564
Closes #1565
Closes #1605
Closes #1609
Closes #1613
Closes #1614
Closes #1617
Closes #1620

@santoshkumarradha santoshkumarradha added bug Something the code does that it should not area:chat The v3 surface a person sits in front of (internal/tui3) area:session The engine — turns, tasks, the toolbelt, checkpoints area:tests The suite itself — flakes, harnesses, laws, CI reds labels Sep 27, 2026
Preserve explicit audience without confirming partial responses, retain full operational disclosure on replay, and exercise stop/steer/retry transitions across all lenses. Refs #1620.
Reuse the existing #1619 orphan-run cleanup and #1622 owner-completion helper already integrated into Santosh/dev. No application code changes; avoids duplicating or masking the known temporary-directory race.
santoshkumarradha added a commit that referenced this pull request Sep 27, 2026
# Conflicts:
#	internal/manual/chat/team-manager.md
@santoshkumarradha

Copy link
Copy Markdown
Member Author

Superseded by the shared review PR #1627. Exact reviewed source 77f3132a20b52f9776809353c57a1da20aed78a8 is included in Santosh/dev at merge efc86fdfdb94933eeae9a6787b5526338717a504; all linked issues, the live GIF, original recording, screenshots and validation receipts are preserved in the #1607 evidence section there. Source checks are green and the integration build passed on Spark. The aggregate remains draft for the coordinator’s final combined verification. Source branch retained.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment