From a65c387f3ea79280e97d5e95861e77998f5631c1 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 10:45:17 -0400 Subject: [PATCH 01/23] Unify compact chat activity and preserve explicit user updates --- docs/changes/unreleased/1605-clean-chat.md | 14 + docs/design/chat-cleanup/README.md | 38 ++ docs/design/chat-cleanup/render-evidence.py | 39 ++ internal/e2e/chatclean_e2e_test.go | 380 ++++++++++++++++++++ internal/e2e/tmux_test.go | 18 +- internal/manual/chat/commands.md | 8 + internal/manual/chat/keys.md | 39 +- internal/manual/chat/reading-a-task-page.md | 97 ++--- internal/manual/chat/screen.md | 34 +- internal/manual/chat/tasks.md | 48 ++- internal/manual/chat/team-manager.md | 9 + internal/session/agent.go | 17 +- internal/session/display_answer_test.go | 22 ++ internal/session/prompts/system.md | 13 +- internal/session/team_wakewatch.go | 2 +- internal/session/teamwake_note.go | 4 + internal/session/userupdate.go | 19 + internal/session/userupdate_test.go | 22 ++ internal/tui3/app.go | 18 + internal/tui3/bundle_test.go | 7 +- internal/tui3/caption.go | 8 +- internal/tui3/chat_replay_clean_test.go | 83 +++++ internal/tui3/chat_steering_clean_test.go | 84 +++++ internal/tui3/chatcleanup_test.go | 263 ++++++++++++++ internal/tui3/commands.go | 2 + internal/tui3/feed.go | 13 +- internal/tui3/feed_update.go | 60 ++++ internal/tui3/hierarchy.go | 34 +- internal/tui3/hierarchy_test.go | 8 +- internal/tui3/input.go | 3 + internal/tui3/lens.go | 63 ++-- internal/tui3/livesteps.go | 70 ++-- internal/tui3/livesteps_test.go | 65 ++-- internal/tui3/nested_disclosure_test.go | 90 +++++ internal/tui3/phasehierarchy_test.go | 8 +- internal/tui3/render.go | 115 ++++-- internal/tui3/replay.go | 6 +- internal/tui3/room.go | 10 +- internal/tui3/roomfold_test.go | 34 +- internal/tui3/roomorch.go | 78 +++- internal/tui3/roomorch_test.go | 26 ++ internal/tui3/taskdismiss.go | 36 ++ internal/tui3/taskdismiss_test.go | 152 ++++++++ internal/tui3/taskdone.go | 125 +++---- internal/tui3/taskresult_test.go | 11 +- internal/tui3/timestamps.go | 2 +- internal/tui3/timestamps_test.go | 19 +- internal/tui3/unverified_test.go | 3 + internal/tui3/workfold.go | 255 ++++++++----- internal/tui3/workfold_test.go | 14 +- 50 files changed, 2069 insertions(+), 519 deletions(-) create mode 100644 docs/changes/unreleased/1605-clean-chat.md create mode 100644 docs/design/chat-cleanup/README.md create mode 100755 docs/design/chat-cleanup/render-evidence.py create mode 100644 internal/e2e/chatclean_e2e_test.go create mode 100644 internal/session/display_answer_test.go create mode 100644 internal/session/userupdate.go create mode 100644 internal/session/userupdate_test.go create mode 100644 internal/tui3/chat_replay_clean_test.go create mode 100644 internal/tui3/chat_steering_clean_test.go create mode 100644 internal/tui3/chatcleanup_test.go create mode 100644 internal/tui3/feed_update.go create mode 100644 internal/tui3/nested_disclosure_test.go create mode 100644 internal/tui3/taskdismiss.go create mode 100644 internal/tui3/taskdismiss_test.go diff --git a/docs/changes/unreleased/1605-clean-chat.md b/docs/changes/unreleased/1605-clean-chat.md new file mode 100644 index 0000000000..f49ba5d48d --- /dev/null +++ b/docs/changes/unreleased/1605-clean-chat.md @@ -0,0 +1,14 @@ +--- +kind: changed +title: chat keeps messages readable and folds operational work across every conversation view +pr: 1605 +surface: [chat, engine, docs] +invalidates: + - "Task completion cards and batches stayed expanded and could not be dismissed. They now start as one row; /dismiss hides settled notifications and /dismiss undo restores them without changing task records or pending decisions." + - "Manager team exchanges, failed calls, skills, and compaction could spill outside live activity. Operational work now shares the existing scrolling activity view, capped at three rows, with a failure mark and full detail behind disclosure." + - "Later work or task receipts could demote a completed answer into raw Markdown. Explicit tool-free response boundaries and marked user updates now keep messages to the person readable in live and replayed conversations, including updates before more work." + - "A nested node transcript bypassed folding and an opened workfold could omit non-caption details. Node transcripts now share task-room disclosure, retain their own expansion state, and expose the complete history when opened." + - "Team wake instructions invited repeated status paragraphs. The manager now uses the existing exact no-change response when coordination produces nothing new to tell the person." +--- + +Closes the presentation gaps tracked in #1564, #1565, and #1605. diff --git a/docs/design/chat-cleanup/README.md b/docs/design/chat-cleanup/README.md new file mode 100644 index 0000000000..85c6b85c95 --- /dev/null +++ b/docs/design/chat-cleanup/README.md @@ -0,0 +1,38 @@ +# Clean chat terminal evidence + +The acceptance suite launches `bin/codeaf` in real tmux terminals at 140 × 42. +All live text requests use Spark's OpenRouter key with +`deepseek/deepseek-v4.1-flash`. The fixture pins all text seats, uses +`--one-model`, restricts the crew's allowed model, and disables the shared model +pool. No key is stored in these artifacts. The `*-models.json` files retain only +request timestamps, IDs, phases, role tags, model names, and HTTP statuses. + +## Scenarios + +| Test | What it checks | +| --- | --- | +| `TestCleanChat` | A live bash call folds; its details remain accessible through work and step disclosures. A real task finishes, its notification is compact, `/dismiss` hides it, and `/dismiss undo` restores it. | +| `TestCleanManagerReplay` | A deterministic historical manager journal contains a team send, a team delivery, an internal wake note, and a Markdown answer. The real TUI resumes it without exposing traffic or raw Markdown, then takes a live model follow-up. This is **replay plus live follow-up**, not a claim that a live teammate sent the fixture. | +| `TestCleanChatFailureRecovery` | A live model makes an intentionally failing bash call and a separate recovery call. Polling checks that the failure output never auto-expands; the real journal confirms that the failure actually happened. | +| `TestCleanChatSteering` | Real keyboard input is sent while a command runs. The user correction, an explicit `[update]` assistant progress message, and the final answer remain visible after two tool calls. The assistant marker is consumed by the renderer. Closing and reopening the real journal preserves all three messages. | + +The narrow unit regressions additionally cover the three-row activity bound +across conversation, task, and nested views, plus interrupted intermediate +updates and Markdown rendering. + +## Reproduce + +```sh +make build +CODEAF_E2E_EVIDENCE_DIR=/tmp/codeaf-chat-cleanup-evidence \ + go test -tags=e2e ./internal/e2e \ + -run '^TestClean(Chat|ManagerReplay|ChatFailureRecovery|ChatSteering)$' \ + -count=1 -v -timeout=15m +python3 docs/design/chat-cleanup/render-evidence.py \ + /tmp/codeaf-chat-cleanup-evidence docs/design/chat-cleanup/evidence +``` + +Every `.cast` contains the actual ANSI framebuffer read by `tmux capture-pane`. +`agg` renders those bytes into GIF screenshots; the corresponding `.txt` is the +plain terminal capture. `notification-sequence.gif` cycles three separate +screenshots (before dismissal, dismissed, restored); it is not continuous video. diff --git a/docs/design/chat-cleanup/render-evidence.py b/docs/design/chat-cleanup/render-evidence.py new file mode 100755 index 0000000000..1cd07aa375 --- /dev/null +++ b/docs/design/chat-cleanup/render-evidence.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python3 +"""Render unmodified tmux framebuffer captures using agg (no provider calls).""" +import argparse +import json +from pathlib import Path +import shutil +import subprocess + +parser = argparse.ArgumentParser(description=__doc__) +parser.add_argument("source", type=Path) +parser.add_argument("output", type=Path) +args = parser.parse_args() +args.output.mkdir(parents=True, exist_ok=True) +agg = shutil.which("agg") +if not agg: + raise SystemExit("agg is required on PATH") + +for source in sorted(args.source.glob("*.cast")): + target = args.output / source.name + shutil.copyfile(source, target) + subprocess.run([agg, "--font-size", "16", "--theme", "dracula", str(target), str(target.with_suffix(".gif"))], check=True) +for pattern in ("*.txt", "*-models.json"): + for source in sorted(args.source.glob(pattern)): + shutil.copyfile(source, args.output / source.name) + +# A labelled slideshow of actual screen captures, not a continuous recording. +frames = ["02-notification", "03-dismissed", "04-restored"] +sequence = [] +for number, stem in enumerate(frames): + rows = [json.loads(line) for line in (args.source / (stem + ".cast")).read_text().splitlines()] + if number == 0: + header = rows[0] + header["title"] = "Task notification, dismissed, restored — screenshot sequence" + sequence.append(header) + sequence.append([number * 2, "o", rows[1][2]]) +sequence.append([6, "o", ""]) +cast = args.output / "notification-sequence.cast" +cast.write_text("\n".join(json.dumps(row) for row in sequence) + "\n") +subprocess.run([agg, "--font-size", "16", "--theme", "dracula", str(cast), str(cast.with_suffix(".gif"))], check=True) diff --git a/internal/e2e/chatclean_e2e_test.go b/internal/e2e/chatclean_e2e_test.go new file mode 100644 index 0000000000..f027b7cda3 --- /dev/null +++ b/internal/e2e/chatclean_e2e_test.go @@ -0,0 +1,380 @@ +//go:build e2e + +package e2e + +import ( + "encoding/json" + "os" + "os/exec" + "path/filepath" + "strings" + "testing" + "time" +) + +// TestCleanChat keeps this acceptance on the shipped terminal and a live model. +// --one-model covers every text errand as well as the visible conversation. +func TestCleanChat(t *testing.T) { + requireTmuxAndKey(t) + const model = "deepseek/deepseek-v4.1-flash" + home := newHome(t, map[string]any{ + "model.talk": model, "model.work": model, "model.plan": model, + "models.tiers.low": model, "models.tiers.high": model, + "models.tiers.worker": model, "models.tiers.reflex": model, + "models.tiers.mastermind": model, "task.model": model, + "models.fallbacks": "", "tools.approvalMode": "allow", + "models.crew.allowed": model, "model_pool": "off", + "daily_budget_usd": 0, "task.audit": "off", + "task.parallel": 1, "task.max_load": 0, + }) + ws := newWorkspace(t, "clean-chat", false) + t.Cleanup(func() { + if t.Failed() { + cleanChatAuditModels(t, home, model, "chat-failed") + } + }) + r := start(t, "clean_chat", home, ws, 140, 42, + "chat", "--model", model, "--one-model", "--no-host") + r.lit("Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.") + r.keys("Enter") + if _, active := r.glimpse(25*time.Second, "running", "thinking", "working"); active { + cleanChatCapture(t, r, "00-active") + } + screen := cleanChatWaitAnswer(t, r, "The terminal check passed", 3*time.Minute) + if strings.Contains(screen, "nothing to compact") { + t.Fatalf("maintenance chatter leaked into the conversation:\n%s", screen) + } + if strings.Count(screen, "CLEAN_CHAT_TOOL_OUTPUT_7319") != 1 { + t.Fatalf("tool details leaked outside the closed work disclosure:\n%s", screen) + } + cleanChatCapture(t, r, "01-chat") + r.keys("C-e") + // The work disclosure opens the grouped step; the step itself retains its + // own disclosure for raw command/output detail. + for i, line := range strings.Split(r.capture(), "\n") { + if strings.Contains(line, "▸") && strings.Contains(line, "1 call") { + r.mouseClick(12, i+1) + break + } + } + deadlineDetails := time.Now().Add(10 * time.Second) + for strings.Count(r.capture(), "CLEAN_CHAT_TOOL_OUTPUT_7319") < 2 && time.Now().Before(deadlineDetails) { + time.Sleep(pollEvery) + } + if screen = r.capture(); strings.Count(screen, "CLEAN_CHAT_TOOL_OUTPUT_7319") < 2 { + t.Fatalf("expanding work lost the tool detail:\n%s", screen) + } + cleanChatCapture(t, r, "01-expanded") + r.keys("C-e") + r.lit("/task solo write a file called hello.txt containing the word hello; no other changes") + r.keys("Enter") + screen = r.waitFor(6*time.Minute, say(t, "taskDoneGlyph"), say(t, "taskDoneWord")) + head := statesHeadLine(screen, say(t, "taskDoneGlyph"), say(t, "taskDoneWord")) + if head == "" { + t.Fatalf("no completed task notification:\n%s", screen) + } + if strings.Contains(screen, "nothing checked this work") { + t.Fatalf("the collapsed notification leaked its audit detail:\n%s", screen) + } + cleanChatCapture(t, r, "02-notification") + r.lit("/dismiss") + r.keys("Enter") + deadline := time.Now().Add(10 * time.Second) + for strings.Contains(r.capture(), strings.TrimSpace(head)) && time.Now().Before(deadline) { + time.Sleep(pollEvery) + } + if screen = r.capture(); strings.Contains(screen, strings.TrimSpace(head)) { + t.Fatalf("dismiss left the completed notification visible:\n%s", screen) + } + cleanChatCapture(t, r, "03-dismissed") + r.lit("/dismiss undo") + r.keys("Enter") + r.waitFor(10*time.Second, strings.TrimSpace(head)) + cleanChatCapture(t, r, "04-restored") + r.quit() + cleanChatAuditModels(t, home, model, "chat") +} + +// Save the actual tmux framebuffer, including ANSI colours, as an asciicast. +// An optional directory keeps evidence outside Go's temporary test home. These +// are screen captures, not reconstructed layouts or a claim of continuous video. +func cleanChatCapture(t *testing.T, r *rig, stage string) { + t.Helper() + dir := os.Getenv("CODEAF_E2E_EVIDENCE_DIR") + if dir == "" { + return + } + if err := os.MkdirAll(dir, 0o755); err != nil { + t.Fatal(err) + } + frame, err := exec.Command("tmux", "capture-pane", "-p", "-e", "-t", r.name).Output() + if err != nil { + t.Fatal(err) + } + header, _ := json.Marshal(map[string]any{"version": 2, "width": 140, "height": 42, "title": stage}) + output, _ := json.Marshal([]any{0.0, "o", "\x1b[2J\x1b[H" + strings.ReplaceAll(strings.TrimRight(string(frame), "\n"), "\n", "\r\n")}) + hold, _ := json.Marshal([]any{2.0, "o", ""}) + data := append(append(append(header, '\n'), output...), '\n') + data = append(append(data, hold...), '\n') + if err := os.WriteFile(filepath.Join(dir, stage+".cast"), data, 0o644); err != nil { + t.Fatal(err) + } + if err := os.WriteFile(filepath.Join(dir, stage+".txt"), []byte(r.capture()), 0o644); err != nil { + t.Fatal(err) + } + t.Logf("captured real tmux frame: %s", filepath.Join(dir, stage+".cast")) +} + +// TestCleanManagerReplay resumes a representative manager journal, then asks +// the live model a follow-up. The historical team delivery is a deterministic +// fixture, not a claim that a live teammate sent it during this run. +func TestCleanManagerReplay(t *testing.T) { + requireTmuxAndKey(t) + const model = "deepseek/deepseek-v4.1-flash" + home := newHome(t, map[string]any{"model.talk": model, "tools.approvalMode": "allow", "daily_budget_usd": 0, "models.crew.allowed": model, "model_pool": "off"}) + ws := newWorkspace(t, "manager-replay", false) + t.Cleanup(func() { + if t.Failed() { + cleanChatAuditModels(t, home, model, "manager-failed") + } + }) + journal := filepath.Join(t.TempDir(), "manager.jsonl") + rows := []map[string]any{ + {"type": "session", "version": 1, "id": "abc0123456789def", "cwd": ws, "model": model, "timestamp": time.Now().UTC().Format(time.RFC3339)}, + {"type": "message", "role": "user", "content": "Check the review status with the team."}, + {"type": "message", "role": "assistant", "content": "Checking the reviewers.", "toolCalls": []map[string]any{{"id": "team1", "type": "function", "function": map[string]any{"name": "team_send", "arguments": `{"to":"@reviewer","text":"Please check the review status.","kind":"directive"}`}}}}, + {"type": "message", "role": "tool", "toolCallId": "team1", "content": "sent #1 to @reviewer"}, + {"type": "message", "role": "user", "note": true, "content": "Your team's replies started this turn; the person did not speak. Act on them: hand out what comes next, or tell the person where the work stands."}, + {"type": "message", "role": "user", "note": true, "content": "Team traffic in \"review\" for you (manager). These are the team's messages, not the person's words:\nfrom @reviewer to manager #2: PRIVATE_TEAM_RECEIPT_4721 checks passed"}, + {"type": "message", "role": "assistant", "content": "## Review ready\n\n**All checks passed.** The change is ready for your review."}, + } + var data []byte + for _, row := range rows { + line, err := json.Marshal(row) + if err != nil { + t.Fatal(err) + } + data = append(append(data, line...), '\n') + } + if err := os.WriteFile(journal, data, 0o600); err != nil { + t.Fatal(err) + } + r := start(t, "clean_manager", home, ws, 140, 42, "chat", "--session", journal, "--model", model, "--one-model", "--no-host") + screen := r.waitFor(30*time.Second, "All checks passed.") + for _, hidden := range []string{"PRIVATE_TEAM_RECEIPT_4721", "Your team's replies started", "## Review ready", "**All checks passed.**"} { + if strings.Contains(screen, hidden) { + t.Fatalf("manager replay leaked %q:\n%s", hidden, screen) + } + } + cleanChatCapture(t, r, "05-manager-replay") + r.lit("Answer with only the words Still / ready / for / review. joined by spaces. No tools or delegation.") + r.keys("Enter") + cleanChatWaitAnswer(t, r, "Still ready for review", 2*time.Minute) + cleanChatCapture(t, r, "06-manager-live-followup") + r.quit() + cleanChatAuditModels(t, home, model, "manager") +} + +func TestCleanChatFailureRecovery(t *testing.T) { + requireTmuxAndKey(t) + const model = "deepseek/deepseek-v4.1-flash" + home := newHome(t, map[string]any{"model.talk": model, "tools.approvalMode": "allow", "daily_budget_usd": 0, "models.crew.allowed": model, "model_pool": "off"}) + ws := newWorkspace(t, "failure-recovery", false) + t.Cleanup(func() { + if t.Failed() { + cleanChatAuditModels(t, home, model, "recovery-failed") + } + }) + r := start(t, "clean_recovery", home, ws, 140, 42, "chat", "--model", model, "--one-model", "--no-host") + r.lit("Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is intentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed. joined by spaces. Do not echo stdout, delegate, or write files.") + r.keys("Enter") + deadline := time.Now().Add(3 * time.Minute) + captured := false + for time.Now().Before(deadline) { + screen := r.capture() + if strings.Contains(screen, "CLEAN_FAILURE_TRACE_7319") { + t.Fatalf("raw failed-call output autoexpanded:\n%s", screen) + } + if !captured && (strings.Contains(screen, "failed") || strings.Contains(screen, "✕")) && strings.Contains(screen, "working") { + cleanChatCapture(t, r, "07-failure-recovery-active") + captured = true + } + if strings.Contains(screen, "2 tool calls") && strings.Contains(screen, "idle") { + break + } + time.Sleep(pollEvery) + } + screen := r.waitFor(2*time.Second, "2 tool calls", "idle") + if strings.Contains(screen, "CLEAN_FAILURE_TRACE_7319") { + t.Fatalf("failed-call detail leaked after recovery:\n%s", screen) + } + cleanChatCapture(t, r, "08-recovery-finished") + // The fixture requires a genuine failed tool result, not just a model that + // answered the requested phrase without exercising the terminal path. + journals, err := filepath.Glob(filepath.Join(home, "v3", "projects", "*", "*", "transcript.jsonl")) + if err != nil { + t.Fatal(err) + } + failed := false + for _, p := range journals { + raw, err := os.ReadFile(p) + if err != nil { + t.Fatal(err) + } + if strings.Contains(string(raw), "CLEAN_FAILURE_TRACE_7319") { + failed = true + } + } + if !failed { + t.Fatal("live model never produced the required failed-call output") + } + r.quit() + cleanChatAuditModels(t, home, model, "recovery") +} + +func cleanChatWaitAnswer(t *testing.T, r *rig, want string, within time.Duration) string { + t.Helper() + deadline := time.Now().Add(within) + for time.Now().Before(deadline) { + screen := r.capture() + if cleanChatHasAnswer(screen, want) { + return screen + } + time.Sleep(pollEvery) + } + t.Fatalf("no assistant answer %q:\n%s", want, r.capture()) + return "" +} + +func cleanChatAuditModels(t *testing.T, home, model, stage string) { + t.Helper() + raw, err := os.ReadFile(filepath.Join(home, "logs", "calls.jsonl")) + if err != nil { + t.Fatal(err) + } + var safe []map[string]any + completed := 0 + for _, line := range strings.Split(string(raw), "\n") { + if strings.TrimSpace(line) == "" { + continue + } + var row map[string]any + if err := json.Unmarshal([]byte(line), &row); err != nil { + t.Fatal(err) + } + entry := map[string]any{} + for _, key := range []string{"ts", "id", "phase", "tag", "model", "status"} { + if v, ok := row[key]; ok { + entry[key] = v + } + } + safe = append(safe, entry) + if row["phase"] != "start" { + completed++ + } + if used, ok := row["model"].(string); ok && used != "" && used != model { + t.Errorf("unexpected live model %q for tag %v", used, row["tag"]) + } + } + if len(safe) == 0 { + t.Fatal("no live model records") + } + if dir := os.Getenv("CODEAF_E2E_EVIDENCE_DIR"); dir != "" { + if err := os.MkdirAll(dir, 0o755); err != nil { + t.Fatal(err) + } + data, err := json.MarshalIndent(safe, "", " ") + if err != nil { + t.Fatal(err) + } + if err := os.WriteFile(filepath.Join(dir, stage+"-models.json"), data, 0o644); err != nil { + t.Fatal(err) + } + } + t.Logf("%s: %d completed model requests; every call-log record checked against %s", stage, completed, model) +} + +func TestCleanChatSteering(t *testing.T) { + requireTmuxAndKey(t) + const model = "deepseek/deepseek-v4.1-flash" + home := newHome(t, map[string]any{"model.talk": model, "tools.approvalMode": "allow", "daily_budget_usd": 0, "models.crew.allowed": model, "model_pool": "off"}) + ws := newWorkspace(t, "steering", false) + t.Cleanup(func() { + if t.Failed() { + cleanChatAuditModels(t, home, model, "steering-failed") + } + }) + r := start(t, "clean_steering", home, ws, 140, 42, "chat", "--model", model, "--one-model", "--no-host") + r.lit("Run bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls emit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do not delegate or write files.") + r.keys("Enter") + r.waitFor(45*time.Second, "working") + // Send real keyboard input while the first command is still running. + const steer = "Also mention that no files were changed in your final answer." + r.lit(steer) + r.keys("Enter") + r.waitFor(10*time.Second, steer) + cleanChatCapture(t, r, "09-user-steering") + cleanChatWaitAnswer(t, r, "First check is complete", 2*time.Minute) + cleanChatCapture(t, r, "09-assistant-update") + var screen string + finished := false + for deadline := time.Now().Add(3 * time.Minute); time.Now().Before(deadline); { + screen = r.capture() + if strings.Contains(screen, "idle") { + for _, line := range strings.Split(screen, "\n") { + if strings.HasPrefix(strings.ToLower(strings.TrimSpace(line)), "checks finished") { + finished = true + break + } + } + } + if finished { + break + } + time.Sleep(pollEvery) + } + if !finished { + t.Fatalf("steered conversation never finished:\n%s", screen) + } + if !strings.Contains(screen, steer) { + t.Fatalf("steering disappeared after the turn finished:\n%s", screen) + } + if !strings.Contains(strings.ToLower(screen), "no files") { + t.Fatalf("the assistant did not retain the steering request:\n%s", screen) + } + if !cleanChatHasAnswer(screen, "First check is complete") { + t.Fatalf("intended assistant update disappeared after subsequent work:\n%s", screen) + } + // The user explicitly typed the protocol once; only that original request + // may contain its raw marker, never the assistant's rendered update. + if strings.Count(screen, "[update]") > 1 { + t.Fatalf("raw assistant update marker leaked:\n%s", screen) + } + cleanChatCapture(t, r, "10-steering-finished") + journals, err := filepath.Glob(filepath.Join(home, "v3", "projects", "*", "*", "transcript.jsonl")) + if err != nil || len(journals) != 1 { + t.Fatalf("cannot identify steering journal: %v %v", journals, err) + } + r.quit() + resumed := start(t, "clean_steering_resumed", home, ws, 140, 42, "chat", "--session", journals[0], "--model", model, "--one-model", "--no-host") + screen = cleanChatWaitAnswer(t, resumed, "First check is complete", 30*time.Second) + if !strings.Contains(screen, steer) || !strings.Contains(strings.ToLower(screen), "checks finished") { + t.Fatalf("reopening lost the user steer or final response:\n%s", screen) + } + if strings.Count(screen, "[update]") > 1 { + t.Fatalf("reopening leaked the assistant marker:\n%s", screen) + } + cleanChatCapture(t, resumed, "11-steering-resumed") + resumed.quit() + cleanChatAuditModels(t, home, model, "steering") +} + +func cleanChatHasAnswer(screen, want string) bool { + for _, line := range strings.Split(screen, "\n") { + line = strings.Trim(strings.ReplaceAll(strings.TrimSpace(line), " / ", " "), ". ") + if line == want { + return true + } + } + return false +} diff --git a/internal/e2e/tmux_test.go b/internal/e2e/tmux_test.go index 294ac62a4b..26fb3796a7 100644 --- a/internal/e2e/tmux_test.go +++ b/internal/e2e/tmux_test.go @@ -601,7 +601,7 @@ func (r *rig) kill() { return } for deadline := time.Now().Add(10 * time.Second); time.Now().Before(deadline); { - if syscall.Kill(pid, 0) != nil { + if terminalProcessExited(pid) { return } time.Sleep(20 * time.Millisecond) @@ -610,7 +610,7 @@ func (r *rig) kill() { // wait. This PID belongs to the test's own pane, never to another rig. _ = syscall.Kill(pid, syscall.SIGKILL) for deadline := time.Now().Add(2 * time.Second); time.Now().Before(deadline); { - if syscall.Kill(pid, 0) != nil { + if terminalProcessExited(pid) { return } time.Sleep(20 * time.Millisecond) @@ -618,6 +618,20 @@ func (r *rig) kill() { r.t.Errorf("the test terminal process %d did not exit before cleanup", pid) } +// On Linux an exited child can remain a zombie until tmux reaps it. Such a +// process cannot write into the fixture, but kill(pid, 0) still succeeds. +func terminalProcessExited(pid int) bool { + if syscall.Kill(pid, 0) != nil { + return true + } + status, err := os.ReadFile(fmt.Sprintf("/proc/%d/stat", pid)) + if err != nil { + return false + } // Other hosts keep the portable signal check. + end := strings.LastIndexByte(string(status), ')') + return end >= 0 && len(status) > end+2 && status[end+2] == 'Z' +} + // dump is the transcript this suite owes anybody reading a failure: the screen, // and the state root the run built. config.json is skipped on purpose. func (r *rig) dump() { diff --git a/internal/manual/chat/commands.md b/internal/manual/chat/commands.md index c730e3d391..9830bad720 100644 --- a/internal/manual/chat/commands.md +++ b/internal/manual/chat/commands.md @@ -2165,3 +2165,11 @@ you closed*, including what a terminal that cannot send the key does instead. `alt+k` is the other way back: it lists every conversation on this machine, closed tabs included, and opening a row brings the tab and its draft back too. + +## Dismiss task notifications + +`/dismiss` hides settled task notifications in the current conversation window. +`/dismiss undo` restores them. With an empty message box, select a task +notification and press `delete` to dismiss just that notification. Pending +`your call` decisions stay visible. Dismissal does not stop work, accept a +result, delete a task, or remove its output from Sessions. diff --git a/internal/manual/chat/keys.md b/internal/manual/chat/keys.md index 0423cc2136..b259ebacc3 100644 --- a/internal/manual/chat/keys.md +++ b/internal/manual/chat/keys.md @@ -616,7 +616,7 @@ key arrives as ordinary `enter` and the message steers instead. | `alt+l` (`opt+l`) | Close the column on the right, or bring it back, in every chat: the same column holds the Tasks and, in a chat in a team, the Traffic. The key is named at the right of the column's header. Under 100 columns it lays the column over the body, and a second press takes it off. Remembered for the next session | | `alt+m` | In a team that has a manager: go to the manager. Over `--host` against an older codeaf on the far machine it says managers are not available there | | `ctrl+g` | A foreground command that can be kept takes the key first. Otherwise it does what `alt+l` does: close the column, or bring it back; the column stands even with no tasks in it. Remembered for the next session | -| `ctrl+e` | Empty box: open or close the running conversation’s compact steps first; otherwise the newest `▸ worked` chip onto its outline of captions — the latest completed turn's out here, the newest settled phase's inside a task's page — or the most recent thinking block when there is no chip. A caption is a short status line per step; its tool rows are one expand further. Otherwise: go to end of line | +| `ctrl+e` | Empty box: open or close the running conversation’s compact steps first; otherwise the newest `▸ worked` chip onto its outline of captions — the latest completed turn's out here, the newest completed work inside a task's page — or the most recent thinking block when there is no chip. A caption is a short status line per step; its tool rows are one expand further. Otherwise: go to end of line | | `pgup` / `pgdown` | Scroll one page — the height of the view minus one, never less than one row | | `tab` | Open or commit path completion, over a command's path argument only — and over an **empty** box with no completion showing, go back to the last conversation. Does nothing when this terminal holds only one | @@ -635,7 +635,7 @@ key arrives as ordinary `enter` and the message steers instead. | `super+right` / `meta+right` | End of the line — one of the two spellings `cmd+→` can arrive as | | `home` / `ctrl+a` | Start of the current line | | `end` | End of the current line, always | -| `ctrl+e` | End of the line — unless the box is empty, where it opens or closes the running conversation’s compact steps, or the newest `▸ worked` chip onto its caption outline (the latest completed turn's out here, the newest settled phase's inside a task's page), falling through to the most recent thinking block when there is no chip | +| `ctrl+e` | End of the line — unless the box is empty, where it opens or closes the running conversation’s compact steps, or the newest `▸ worked` chip onto its caption outline (the latest completed turn's out here, the newest completed work inside a task's page), falling through to the most recent thinking block when there is no chip | | `shift+←` / `shift+→` | Select a character at a time, the way shift does in any text field. Does nothing over an empty box | | `shift+↑` / `shift+↓` | Select a line at a time | | `shift+home` / `shift+end` | Select to the start or end of the line | @@ -3374,8 +3374,8 @@ two-column gutter is work done on your behalf: thinking, tool calls and their de results, and assistant text that was followed by another call. Below 60 columns the gutter disappears and the dim treatment carries the same distinction. -Indented reply text is also **greyer** than the answer, and carries no markdown — no -bold, no headings, no code colouring. See "Why is part of the reply grey, and where is +Indented reply text is also **greyer** than the answer. Opened narration renders +markdown structure in quiet ink, so headings, lists and code remain readable. See "Why is part of the reply grey, and where is the actual answer" on the screen page. ## How do I see what codeaf did — see codeaf's work and tool calls behind the answer @@ -3388,7 +3388,8 @@ When a successful turn has work and a trailing answer, the finished work collaps one indented chip between your message and the answer, such as `▸ worked 47s · thought 6s · 6 tool calls · ctrl+e`. Its figures are the whole turn's elapsed time, the thinking block's time when there was one, and the real call count. -There is a blank row between the chip and the answer under it. +There is a blank row between the chip and the answer under it. Detailed time, +token and spend receipts appear only when you open the work. **A turn you stopped with `esc` says so instead**, and it collapses whole: `▸ stopped by you at 40s · 4 tool calls · ctrl+e`, with nothing left standing under it. @@ -3402,25 +3403,21 @@ steps, then the latest completed turn’s work. The running view shows up to thr wrapped rows of recent captions, with the newest live step shimmering. Opening shows the existing outline: click a caption to inspect its calls, or click the whole-work door to return to the compact steps. Completion collapses work opened -during the turn. The newest caption may exceed three rows on a narrow frame so -its words remain intact. -Questions, approval prompts, failure lines, text-only turns, and work with no trailing -answer are never hidden — nor is a second message you sent into a running turn, which +during the turn. A caption longer than three rows ends with an ellipsis in the +compact view; open the work to read its full text. +Confirmed replies stay visible even when later work follows them. Team exchanges +and compaction details stay inside the work disclosure; opening it preserves +reasoning, notes and receipts alongside the step captions. +Questions, approval prompts and text-only answers are never hidden — nor is a second message you sent into a running turn, which ends the chip above it and starts a new one. Fold state belongs to this window; resumed sessions derive fresh closed chips from their saved entries. -**A task's page has chips too, cut differently.** The conversation folds by turn — one -chip per question you asked. A task's page is one long turn, so it folds by **phase** -instead: the work that came before each paragraph the task wrote goes behind its own -chip, and every paragraph stays standing. The work it is doing right now never folds. -`ctrl+e` opens the newest chip there, a click opens any of them, and scrolling up when -the page is already at its top opens the one nearest the top. `ui.work = open` opens them -all, exactly as it does out here. Where a task's page has no chip yet, `ctrl+e` falls -through to the thinking block as before. - -**A node's transcript inside an adaptive run's page never folds.** You got there by -asking to see what that one node did, and the page draws the tail of its journal under -the graph — so there is nothing there to fold away. +**The same rule applies inside tasks and nested task transcripts.** Current work +uses one compact activity window of at most three rows. Earlier steps in that +turn stay behind its disclosure, including across a correction or an interim +reply. When work finishes, settled operations collapse into work chips around +your messages and confirmed replies. `ctrl+e` or a click opens the details; +`ui.work = open` opens them by default. No journal detail is deleted. ## How do I keep everything expanded? diff --git a/internal/manual/chat/reading-a-task-page.md b/internal/manual/chat/reading-a-task-page.md index 2ded16aa33..4b0c1d5d1b 100644 --- a/internal/manual/chat/reading-a-task-page.md +++ b/internal/manual/chat/reading-a-task-page.md @@ -87,82 +87,37 @@ card exists for spent on the punctuation around the answer. calls go", "why can I not see what the task did", and "what are these little grey lines".** Nothing is lost. Settled work is folded, and one gesture opens it. -Between each paragraph the task wrote is the thinking and the calls that led to it, and -that stretch collapses to one dim chip: +Finished operational work collapses to a dim chip such as: ``` ▸ worked 2m · thought 10s · 14 tool calls · ctrl+e ``` -The figures are counted from the rows the chip covers — how long that stretch took, the -thinking time when there was any, the number of captioned steps, and the real call count. -The chip is still counted fact, not a summary. - -**Three ways open the outline**, and any of them works on a page that has already finished: - -- **`ctrl+e`** over an empty message box opens the newest chip. Press it again to close it. -- **click** the chip. -- **scroll up** when the page is already at its top — one wheel tick, `pgup`, or `↑`. It - opens the chip nearest the top and keeps your place: the rows you were reading stay on - the same screen lines and the work appears above them. Nothing jumps. The same gesture - opens a folded run of tool calls, so scrolling up keeps reaching further back rather - than stopping dead. - -An opened chip stays open, and the chip line stays with it so you can close it again. -Under it is one caption per step: the short line the model said before that batch, the -plain floor made from the calls when it said nothing, or — after a long silence — a line -from the dwell narrator. Click a caption, select it and press `enter`, or use `ctrl+o` on -the live caption to open the tool rows under that one step. The outline is the account; -the rows are one expand further. - -**A caption can be wrong.** It is a heading about what the step is trying to settle, not -proof of what ran or what came back. The tool rows beneath it are the truth. Open the -caption whenever its words and the work appear to disagree. - -## What is that line — caption, why did it collapse, and how do I see what it did - -The short status line over a batch is its **caption** — one sentence of about -5 to 10 words naming what the step is doing and where. A collapsed stack of -those lines is the **outline**. On a narrow window a caption wraps; it is never -cut mid-sentence with an ellipsis. A caption ends only where its sentence ends, -so a filename, version number or path keeps its whole self: `reading livesteps.go` -is not shortened to `reading livesteps`, and a caption never begins in the middle -of a word. It says what each step is trying to settle rather than repeating commands -the rows already name. A live caption may shimmer while its rows are folded; opening -it stops the shimmer and shows the running calls. - -Use **`ctrl+e` on an empty box** to open the newest `▸ worked` chip onto the outline. -Then click the caption, select it and press `enter`, or press **`ctrl+o` on the live -caption** to see what it did. Press the same gesture again to fold those rows. A caption -keeps the present-tense words it was born with after the work ends, so an old outline may -say `checking the parser` rather than rewriting history to `checked the parser`. - -**Keep everything open**: set `ui.work` to `open` and no chip on any page starts folded — -in a task's page exactly as in the conversation. - -### What stays on the page whatever happens - -**Every paragraph the task wrote stays standing**, above the chip that covers the work -before it, and so does the report at the end. So the page reads as the story of the work -with its steps folded, rather than as a scroll you have to read to find out what -happened. - -**What the task is doing right now keeps its caption standing.** Its tool rows may fold -under that live line; `ctrl+o` or a click opens them. A long live run that has no caption -yet still uses the older overflow fallback described below, so silence never removes the -door to its calls. - -**These never fold either**, wherever they are on the page: your instruction, every -correction you typed into the running work, every call that failed, and every question the -task asked you. They are the record of what you asked for and what you decided, and a -fold may never hide your own words. - -### Why the conversation's chips are cut differently - -Out in the conversation the page folds **by turn** — one chip per question you asked, -hiding the work between the question and its answer. A task's page folds **by phase** -instead, because a task is one long question and folding it by turn would put the whole -page behind one chip. +Its figures count the work retained inside. Click the chip or press `ctrl+e` with +an empty message box to open the outline. Click a step to inspect its calls. +The same controls close it again. Scrolling a finished page leaves its work folded. +`ui.work = open` opens details by default. + +While the task runs, one compact activity window shows at most three rows for the +current turn. Completed steps in that turn stay behind the same disclosure; +they do not accumulate extra phase chips. A failed call shows a failure mark, +with the complete error behind the step's disclosure. Ordinary team exchanges, +compaction notes and task receipts share that compact work area. + +Your instructions, corrections, questions requiring your decision and confirmed +replies remain visible. A completed tool-free response stays formatted as a reply +even if more work starts later. Stopping that later work preserves the completed +reply. Opened narration renders markdown in quieter ink, without raw markers. + +These rules are shared by ordinary chat, the manager, task pages and nested task +transcripts. The retained history is available through disclosure on each page. + +## What is that line over the tool calls — step captions + +The line over the tool calls is the step caption: a short description of what the +model is doing. While work runs, the latest captions share a scrolling window of +at most three rows. Earlier captions remain in the work disclosure. Open the work +with `ctrl+e`, then click a caption to see its calls and their output. ## See earlier tool calls in one long run with no caption yet — the `↳` fallback, scroll up or `ctrl+o` diff --git a/internal/manual/chat/screen.md b/internal/manual/chat/screen.md index 41c4f336c8..b9f0f8e4c5 100644 --- a/internal/manual/chat/screen.md +++ b/internal/manual/chat/screen.md @@ -1765,26 +1765,20 @@ look like a reply that opened in bold, which is a different thing. ## Why is part of the reply grey, and where is the actual answer -Because that part was never the answer. It was codeaf saying what it was about to do. - -A turn is usually prose, then tool calls, then more prose. **Any paragraph that had more -work start under it in the same turn is narration** — "let me check the config first" — -and the moment the next tool call opens, that paragraph becomes work. In the compact -conversation it supplies a step description; inside the opened outline it uses the same -two-column gutter as the tool rows and drops one shade below the body text. - -**The answer is the last thing the turn says, and it is the only flush-left, full-ink -block in it.** So: scan down the left edge. Text that starts at the margin was said to -you. Text that starts two columns in was done for you. There is one blank row above the -answer whenever the turn did any work, so it stands away from the machinery. - -Grey narration carries **no markdown** — no bold, no headings, no code colouring. That is -deliberate: a bold heading inside working notes would be heavier than the answer under it, -and the loudest thing on screen would be the part you did not ask for. - -Nothing here reads what the model wrote. It is decided entirely by the shape of the turn — -what came after what — so it is the same on a conversation you resume as it was live, and -the same on a task's own page. +Prose that accompanies tool calls describes work. In the compact view it supplies +step descriptions; inside the opened outline it uses the work gutter and quieter ink. +A response with no tool calls confirms a reply to you. That reply stays visible, +with full markdown formatting, even if the model resumes work afterwards. + +Your messages and confirmed replies stand outside the work disclosure. Team +exchanges, reasoning and compaction details stay inside it. A failed call shows a compact `×` status; its details open only when you ask. An +approval question remains visible so you can act on it. Open the work with +`ctrl+e` to inspect the retained details, then open a step to see its calls. + +Disclosed narration renders markdown structure in quiet ink: headings, lists and +code remain readable without exposing raw markdown markers. Classification uses +response and tool boundaries, not guessed keywords in the model's prose. The same +rule applies in ordinary chat, the manager and task pages. One thing that is **not** work, and so never greys the paragraph above it: a line codeaf writes about the turn itself. What the turn changed, what it cost, a notice that a request diff --git a/internal/manual/chat/tasks.md b/internal/manual/chat/tasks.md index 19f753a8ec..edc808f2c9 100644 --- a/internal/manual/chat/tasks.md +++ b/internal/manual/chat/tasks.md @@ -1744,25 +1744,21 @@ the roster or `jobs kill` is your decision and is drawn as `stopped`, with the b ## How work lands — what the card means by merged, branch kept, in your own folder, or conflicted -Every landing writes a card into the conversation, with a blank row on each side, and moves -the task's row on the roster. +Every landing writes a compact, expandable notification into the conversation and moves +the task's row on the roster. A settled notification takes one line: ``` -✓ ◆ Fix nil-map crash · done · 4m12s · 3 files - "the guard is in and the regression test passes" · started 14:02 · ctrl+o output +✓ ◆ Fix nil-map crash · done · 4m12s · 3 files · ctrl+o ``` -The head is what happened. The muted line under it is what came of it, in the task's own -first sentence, quoted because they are its words and not codeaf's. +Click the notification or select it and press `ctrl+o` to read its output and details. +Press `enter` on the selected notification to open the task's room. Pending `your call` +decisions keep their reason visible, including inside a folded batch. -**The quoted sentence is the first line of the report that says something**, not its -literal first line. Work that ran a command, produced a diff or answered in JSON often -opens its report with the code fence around that — the fence is how the answer is spelled, -not a sentence — so a fence marker, three backticks or three tildes with or without a -language word after it, is passed over the way a blank line is. The first line that is -neither is what the card quotes, which for a report that is nothing but a fenced block is -the first line inside it. A report with no line to quote draws no quotation marks at all, -only the start stamp. +With an empty message box, select a notification and press `delete` to dismiss it. +Use `/dismiss` to hide settled task notifications from this conversation view, or +`/dismiss undo` to show them again. Dismissal does not delete tasks, output or history, +and cannot hide a pending `your call` decision. The task remains available in Sessions. **The conversation replies only when its task was started while answering your question.** That task carries the question until its family lands, then one short reply answers from the @@ -1820,7 +1816,7 @@ git's: `a branch of your repository`, `its own copy of the folder`, or `your own the same labels the settled card uses, listed under *Does a task touch my working copy?* in *how tasks run*. A landing whose copy codeaf has no record of falls back to `branch`. -More than two landings in a row become one rollup — `✓ 3 tasks done · 9m14s` with a compact +Two or more landings in a row become one folded rollup — `✓ 3 tasks done · 9m14s` on one line. Click it or select it and press `ctrl+o` to show a compact row per task under it. Any failure in the batch swaps the header to `✕ N tasks landed`; any `your call` swaps it to `? N tasks landed`. A task you answered straight after it landed is counted once, by what became of it — the `?` goes with the answer. A delivery that did not land also keeps a @@ -3582,14 +3578,15 @@ Scrolling a finished task, including at the top of its page, keeps those details collapsed. Open work shows `▾ worked`; closed work shows `▸ worked`. Click the chip or press `ctrl+e` again to collapse the whole outline, including open tool steps. Your later messages and corrections remain visible at their original boundaries. -A stretch with no final reply keeps its available work visible, so an interrupted -or tool-only record does not pretend to have an answer. +Settled work without a final reply also has a disclosure; it never invents an +answer. Failed work carries a `×` count. Open the chip to inspect error details. -While a task is running, settled phases keep their individual chips. Current work -uses the conversation’s compact step display: recent step headings, with a moving +While a task is running, its current turn uses one shared compact activity window. +Earlier steps stay behind that disclosure. It shows recent step headings, with a moving heading for the active call or `Working` between calls. Click it or press `ctrl+e` -to open the details, and use the same control to close them. Questions, failures, -your corrections, and the final reply remain visible outside this display. +to open the details, and use the same control to close them. Questions, +your corrections, and confirmed replies remain visible outside this display. +Failed calls show `×` in compact activity, without opening error output. When the task finishes, live expansion choices reset so they do not accidentally expand the entire finished task. `ui.work = open` still opens details by default. @@ -3615,10 +3612,11 @@ Within expanded work, the existing disclosure controls still apply: ## Why a task’s progress paragraph changes to a step caption -A paragraph followed by more work in the same stretch becomes progress narration, -even if it previously ended a settled phase. It uses the quieter work styling and -can supply the next step’s caption. The trailing reply keeps answer styling; a -message or correction from you preserves the reply before that boundary. +Prose accompanying a tool call becomes progress narration and can supply that +step’s caption. A completed response with no tool calls is a confirmed reply to +you: it stays visible and formatted even when later work starts. This rule also +applies in the manager, ordinary chat and nested task pages. Opened narration +renders markdown in quieter ink rather than showing raw formatting markers. The caption is a short summary. Open it to read any narration left out of the heading alongside that step’s calls; shortening a heading does not discard text. diff --git a/internal/manual/chat/team-manager.md b/internal/manual/chat/team-manager.md index ae3ff57821..977324dba4 100644 --- a/internal/manual/chat/team-manager.md +++ b/internal/manual/chat/team-manager.md @@ -389,3 +389,12 @@ while it was closed. The traffic itself is kept in the profile of the machine the conversations run on, in `teams//traffic.jsonl`, one line per message, only ever added to. + +## Quiet updates from the team + +Team exchanges are work details: they stay in the compact activity view while +work runs and fold behind the work line afterwards. Open the work line and its +step to read the complete exchange, or open Traffic. The manager is instructed +to tell you meaningful new results, blockers, decisions, and requested updates, +without repeating an unchanged status. Its exact `[no change]` response is kept +in the model record but does not add another answer to your conversation. diff --git a/internal/session/agent.go b/internal/session/agent.go index d9733396d7..4310eb3701 100644 --- a/internal/session/agent.go +++ b/internal/session/agent.go @@ -4529,9 +4529,12 @@ type DisplayEntry struct { // mark, so a line from a file written before the mark existed still arrives as // "user", which is exactly what it always was. Role string - Text string - Tool string // set when the entry is one call in a batch - Hint string // the call's gloss, as the tool cluster rendered it + // Answer marks a completed tool-free response or an explicit human update. This + // boundary survives replay so a later response cannot demote its message. + Answer bool + Text string + Tool string // set when the entry is one call in a batch + Hint string // the call's gloss, as the tool cluster rendered it // CallID is the provider's own identity for a tool entry's call, exactly as // the record holds it, and "" for every entry that is not a call. @@ -4783,9 +4786,15 @@ func shapeEntries(messages []ai.Message, journal *sessionFile) []DisplayEntry { tags = append([]TaskReplyTag(nil), replyTags...) replyTags = nil } + displayText := messageContentText(msg) + update := false + if role == "assistant" { + displayText, update = UserFacingUpdate(displayText) + } entries = append(entries, DisplayEntry{ Role: role, - Text: messageContentText(msg), + Answer: role == "assistant" && (len(msg.ToolCalls) == 0 || update), + Text: displayText, ImageRefs: journal.imageRefs(msg), ReplyTags: tags, // The journal is the only thing that remembers a user line was typed diff --git a/internal/session/display_answer_test.go b/internal/session/display_answer_test.go new file mode 100644 index 0000000000..72847ab503 --- /dev/null +++ b/internal/session/display_answer_test.go @@ -0,0 +1,22 @@ +package session + +import ( + "github.com/Agent-Field/agentfield/sdk/go/ai" + "testing" +) + +func TestDisplayAnswerComesFromResponseBoundary(t *testing.T) { + preamble := textMessage("assistant", "Checking next.") + preamble.ToolCalls = []ai.ToolCall{{ID: "r", Type: "function"}} + preamble.ToolCalls[0].Function.Name = "read" + preamble.ToolCalls[0].Function.Arguments = `{"path":"a"}` + update := textMessage("assistant", "[update] **First finding is ready.**") + update.ToolCalls = preamble.ToolCalls + es := shapeEntries([]ai.Message{textMessage("user", "Check both"), textMessage("assistant", "First is ready."), preamble, update, textMessage("assistant", "Both are ready.")}, nil) + for _, e := range es { + want := e.Text == "First is ready." || e.Text == "Both are ready." || e.Text == "**First finding is ready.**" + if e.Answer != want { + t.Fatalf("%s %q answer=%v, want %v", e.Role, e.Text, e.Answer, want) + } + } +} diff --git a/internal/session/prompts/system.md b/internal/session/prompts/system.md index 2032fa771c..1897a4deec 100644 --- a/internal/session/prompts/system.md +++ b/internal/session/prompts/system.md @@ -9,10 +9,15 @@ your tools to ground your answers. Keep continuity while delegated work runs. - Unexpected repo changes are the user's work; adapt. # The answer -Once a turn ends, only its last message stays in view; the rest folds into a -closed "worked" line. -- The last message carries the whole deliverable; the person cannot see earlier - ones, so never write "as above" or "see my previous message". +User-facing replies stay visible; routine narration, tools and team coordination +fold into a closed "worked" line. +- To keep an important interim result, blocker, decision, or requested update + visible while also calling tools, start your assistant text with `[update]` + followed by the message. The interface removes this exact leading marker. + Use it only for something the person needs to hear, never routine tool + narration, private reasoning, or team coordination. Final answers need no marker. +- The last message carries the whole deliverable, so never write "as above" or + "see my previous message". - Line one answers the question or states the outcome. Then the thing asked for, in the form asked. Then, if needed, a few lines of why. Evidence and blocking details stay complete. diff --git a/internal/session/team_wakewatch.go b/internal/session/team_wakewatch.go index 5d909190dd..d5a1986295 100644 --- a/internal/session/team_wakewatch.go +++ b/internal/session/team_wakewatch.go @@ -524,7 +524,7 @@ func (a *Agent) teamWakeManager(profile string, roles []teamRole, batch map[stri if len(groups) == 0 { return } - text := teamWakeManagerLead + "\n\n" + + text := teamWakeManagerLead + "\n\n" + teamWakeDeliveryRule + "\n\n" + strings.Join(groups, "\n\n") woke, reason := a.teamWakeWith(text) if woke { diff --git a/internal/session/teamwake_note.go b/internal/session/teamwake_note.go index 050ee1617e..8e44311718 100644 --- a/internal/session/teamwake_note.go +++ b/internal/session/teamwake_note.go @@ -24,6 +24,10 @@ const ( teamWakeEarlierLead = "Your manager's directive started this turn;" ) +// A wake can require internal coordination without another status paragraph. +// The exact token is already understood by live and replay renderers. +const teamWakeDeliveryRule = "Keep team coordination in the team tools. Tell the person only a meaningful new result, blocker, decision, or requested update; do not repeat a status you already told them. If there is nothing new to tell the person after handling this traffic, reply with exactly " + NoChangeReply + " and nothing else." + // TeamWakeNote reports whether text is a note the session wrote to wake a // turn on team traffic. func TeamWakeNote(text string) bool { diff --git a/internal/session/userupdate.go b/internal/session/userupdate.go new file mode 100644 index 0000000000..456b4cd949 --- /dev/null +++ b/internal/session/userupdate.go @@ -0,0 +1,19 @@ +package session + +import "strings" + +// UserUpdatePrefix explicitly addresses an interim response to the person. +// Ordinary tool narration remains operational work; its wording is never used +// to guess the intended audience. The marker is retained in the model journal +// and removed only from the display projection. +const UserUpdatePrefix = "[update]" + +// UserFacingUpdate recognizes only a leading protocol marker, never a quoted +// mention or a marker in the middle of an answer. Unmarked content is unchanged. +func UserFacingUpdate(text string) (string, bool) { + trimmed := strings.TrimLeft(text, " \t\r\n") + if !strings.HasPrefix(trimmed, UserUpdatePrefix) { + return text, false + } + return strings.TrimLeft(strings.TrimPrefix(trimmed, UserUpdatePrefix), " \t\r\n"), true +} diff --git a/internal/session/userupdate_test.go b/internal/session/userupdate_test.go new file mode 100644 index 0000000000..2d8d40e447 --- /dev/null +++ b/internal/session/userupdate_test.go @@ -0,0 +1,22 @@ +package session + +import "testing" + +func TestUserFacingUpdateRequiresExplicitLeadingMarker(t *testing.T) { + for _, tc := range []struct { + in, out string + marked bool + }{ + {"[update] **First result is ready.**", "**First result is ready.**", true}, + {" \n[update]\nFirst result.", "First result.", true}, + {"[update]", "", true}, + {"[up", "[up", false}, + {"Ordinary tool narration.", "Ordinary tool narration.", false}, + {"Use `[update]` to address a person.", "Use `[update]` to address a person.", false}, + } { + out, marked := UserFacingUpdate(tc.in) + if out != tc.out || marked != tc.marked { + t.Fatalf("%q => %q,%v; want %q,%v", tc.in, out, marked, tc.out, tc.marked) + } + } +} diff --git a/internal/tui3/app.go b/internal/tui3/app.go index d63a807534..8a61b407f1 100644 --- a/internal/tui3/app.go +++ b/internal/tui3/app.go @@ -6934,6 +6934,9 @@ func (a *app) unfold(turn int) { // folded the transcript's newest turn while a node's page was up would be // folding a cluster nobody can see. func (a *app) bodyTurn() int { + if run := a.orchOf(); run != nil && run.transcript != "" && len(run.journal) > 0 { + return run.journal[len(run.journal)-1].turn + } if a.room != nil { return a.room.turn } @@ -7363,6 +7366,17 @@ func selectedCaption(sel int) (int, bool) { // that is typed in full and entered arrives here too, so an alias typed out and // an alias chosen from the list run the same road. func (a *app) slash(line string) tea.Cmd { + // A command's direct response is addressed to the person who asked for it. + // Mark that origin here so compact work never hides /help or /cost output. + before := len(a.entries) + defer func() { + for i := before; i < len(a.entries); i++ { + if a.entries[i].kind == entryNote { + a.entries[i].told = true + a.entries[i].stale = true + } + } + }() name, rest, _ := strings.Cut(strings.TrimPrefix(line, "/"), " ") rest = strings.TrimSpace(rest) // The unknown-command hint below says back what was typed and not what it @@ -7389,6 +7403,10 @@ func (a *app) slash(line string) tea.Cmd { } return a.quit() + case "dismiss": + a.dismissNotifications(rest) + return nil + case "help": // THE KEY SHEET CARRIES ITS PAYLOAD ON THE LEFT (payload.go): the chord is // the thing a person came here to find and the sentence beside it is the diff --git a/internal/tui3/bundle_test.go b/internal/tui3/bundle_test.go index 37b06a24b5..94bd2a1e29 100644 --- a/internal/tui3/bundle_test.go +++ b/internal/tui3/bundle_test.go @@ -3509,6 +3509,7 @@ func TestALandedNodeWritesOneCardWhateverLaneCarriedIt(t *testing.T) { drive(t, a, streamEventMsg{gen: a.gen, ev: update(9, "Collect sources", session.TaskFailed, session.TaskNotice{ Elapsed: 4 * time.Second, Report: "the tests did not build\nsee the log", })}) + a.openDone(a.doneEntryFor(9)) for _, want := range []string{ // `failed` is deleted as a landing's word: the head reads `incomplete` and // the row under it says why, in the engine's own sentence for a fault @@ -3520,6 +3521,7 @@ func TestALandedNodeWritesOneCardWhateverLaneCarriedIt(t *testing.T) { t.Fatalf("the failure card does not carry %q:\n%s", want, taskText(a)) } } + a.openDone(a.doneEntryFor(9)) if strings.Contains(taskText(a), "see the log") { t.Fatalf("the collapsed card leaked the rest of the report:\n%s", taskText(a)) } @@ -3534,9 +3536,10 @@ func TestALandedNodeWritesOneCardWhateverLaneCarriedIt(t *testing.T) { Elapsed: 90 * time.Second, Report: "stopped: 40 steps and no finish", Merge: mergeWordAborted, Branch: "task/mix", })}) + a.openDone(a.doneEntryFor(11)) for _, want := range []string{ - "Mix audio · " + taskIncompleteState + " · " + taskSpanWord(90*time.Second) + - " · " + taskBranchKept + " · task/mix", + "Mix audio · " + taskIncompleteState + " · " + taskSpanWord(90*time.Second), + "branch · task/mix", "stopped: 40 steps and no finish", } { if !strings.Contains(taskText(a), want) { diff --git a/internal/tui3/caption.go b/internal/tui3/caption.go index fb66a95e98..f0be25c4e7 100644 --- a/internal/tui3/caption.go +++ b/internal/tui3/caption.go @@ -612,7 +612,13 @@ func captionText(c caption) string { if c.source != captionSaid && c.told != "" { return captionWords(c.told) } - return shortCaption(c.text) + text := shortCaption(c.text) + if strings.ContainsAny(text, "#*`[") { + // Caption prose is rendered as markdown too, then reduced to its + // readable text before the caption applies its own status styling. + text = strings.TrimSpace(ansi.Strip(strings.Join(proseRows(markdownStyler(), text, 500), " "))) + } + return text } // captionRows draws the step title. IT WRAPS; IT NEVER ELLIPSIS-CUTS. A diff --git a/internal/tui3/chat_replay_clean_test.go b/internal/tui3/chat_replay_clean_test.go new file mode 100644 index 0000000000..a467eedcd0 --- /dev/null +++ b/internal/tui3/chat_replay_clean_test.go @@ -0,0 +1,83 @@ +package tui3 + +import ( + "github.com/Agent-Field/codeaf/internal/config" + "github.com/Agent-Field/codeaf/internal/session" + "strings" + "testing" +) + +func TestReplayedConfirmedUpdateStaysVisibleBeforeLaterWork(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.workMode = config.WorkFold + es, _ := a.replayBlocks([]session.DisplayEntry{ + {Role: "user", Text: "Check both items"}, + {Role: "assistant", Text: "**First result is ready.**", Answer: true}, + {Role: "assistant", Text: "Checking the other item."}, + {Role: "tool", Tool: "read", CallID: "r", Answered: true, Args: `{"path":"other.txt"}`, Output: "second"}, + {Role: "assistant", Text: "**Both results are ready.**", Answer: true}, + }, chatReplay(0)) + a.entries = es + a.touch() + page := strings.Join(plainRows(a), "\n") + for _, want := range []string{"First result is ready.", "Both results are ready."} { + if !strings.Contains(page, want) { + t.Fatalf("lost confirmed update %q:\n%s", want, page) + } + } + if strings.Contains(page, "**") || strings.Contains(page, "Checking the other item") { + t.Fatalf("unclean replay:\n%s", page) + } +} + +func TestNestedTranscriptDisclosurePersistsAndStaysLocal(t *testing.T) { + a, _ := orchApp(t, orchRun4()) + a.workMode = config.WorkFold + run := a.orchOf() + run.transcript, run.journal = "plan", foldFixture() + first := a.orchTranscriptDeck() + if len(a.deckFolds(first)) == 0 { + t.Fatal("nested transcript has no fold") + } + a.toggleWorkfold(1) + if !a.orchTranscriptDeck().workOpen[1] { + t.Fatal("disclosure lost at next frame") + } + a.toggleWorkfold(1) + if a.orchTranscriptDeck().workOpen[1] { + t.Fatal("disclosure cannot close") + } + a.setCapOpen(a.bodyDeck(), 3, true) + if !a.orchTranscriptDeck().capOpen[3] { + t.Fatal("caption expansion lost at next frame") + } + if a.room.workOpen[1] || a.room.capOpen[3] || a.workOpen[1] { + t.Fatal("nested state leaked to parent") + } +} + +func TestDismissCommandRunsWithOneEnter(t *testing.T) { + a, _, _ := taskApp(t) + drive(t, a, streamEventMsg{gen: a.gen, ev: update(1, "Finished", session.TaskDone, session.TaskNotice{})}) + typeLine(t, a, "/dismiss") + if !a.input.empty() || !a.doneCardAt(a.doneEntryFor(1)).dismissed { + t.Fatalf("dismiss did not execute with one Enter; draft=%q", a.input.String()) + } + typeLine(t, a, "/dismiss undo") + if a.doneCardAt(a.doneEntryFor(1)).dismissed { + t.Fatal("undo did not execute") + } +} + +func TestRequestedCommandOutputDoesNotBecomeInternalWork(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.workMode = config.WorkFold + a.slash("/help") + if len(a.entries) == 0 || !a.entries[len(a.entries)-1].told { + t.Fatal("requested help was not marked as addressed to person") + } + a.touch() + if page := strings.Join(plainRows(a), "\n"); !strings.Contains(page, "/dismiss") { + t.Fatalf("requested help hidden:\n%s", page) + } +} diff --git a/internal/tui3/chat_steering_clean_test.go b/internal/tui3/chat_steering_clean_test.go new file mode 100644 index 0000000000..f544967a5f --- /dev/null +++ b/internal/tui3/chat_steering_clean_test.go @@ -0,0 +1,84 @@ +package tui3 + +import ( + "strconv" + "strings" + "testing" +) + +// A human correction and a completed response are conversation, even when +// asynchronous work resumes on either side of them. Exercise the same deck +// renderer used by chat, task pages and nested transcripts at narrow widths. +func TestCleanChatSteeringAndInterimReplySurviveResumedWork(t *testing.T) { + for _, width := range []int{32, 100} { + for _, surface := range []struct { + name string + lens lens + }{ + {"chat", participantLens}, {"task", overseerLens}, {"nested", transcriptLens}, + } { + t.Run(surface.name+strconv.Itoa(width), func(t *testing.T) { + a := liveStepsApp(t) + es := liveStepsFixture() + es[9].status = toolOK + es = append(es, + entry{kind: entryAssistant, text: "**First result is ready.**", turn: 1, settled: true, confirmed: &responseConfirmation{done: true}}, + entry{kind: entrySteer, turn: 1, steer: &steerElbow{id: 1, words: "Use the second option", consumed: true}}, + entry{kind: entryNote, turn: 1, text: "INTERNAL HOUSEKEEPING", settled: true}, + entry{kind: entryAssistant, turn: 1, text: "Checking the corrected option.", settled: true}, + entry{kind: entryTool, turn: 1, tool: "bash", status: toolRunning, detail: toolDetail{Output: "PRIVATE OUTPUT"}}, + ) + d := deck{entries: es, lens: surface.lens, runningTurn: 1} + rendered, _ := a.deckRows(d, width) + var lines []string + activity := 0 + for _, r := range rendered { + lines = append(lines, plain(r.text)) + if r.hit == hitWorkFold { + activity++ + } + } + page := strings.Join(lines, "\n") + for _, want := range []string{"First result is ready.", "Use the second option"} { + if !strings.Contains(page, want) { + t.Fatalf("lost human conversation %q:\n%s", want, page) + } + } + for _, hidden := range []string{"INTERNAL HOUSEKEEPING", "PRIVATE OUTPUT", "**First", "Searching the tree for the caller"} { + if strings.Contains(page, hidden) { + t.Fatalf("leaked old work or markup %q:\n%s", hidden, page) + } + } + if activity > liveStepRows { + t.Fatalf("%d activity rows exceed shared budget:\n%s", activity, page) + } + }) + } + } +} + +func TestCleanChatSettledToolOnlyTailDoesNotLeakAcrossViews(t *testing.T) { + for _, surface := range []struct { + name string + lens lens + }{ + {"chat", participantLens}, {"task", overseerLens}, {"nested", transcriptLens}, + } { + t.Run(surface.name, func(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + es := []entry{ + {kind: entryUser, text: "Check the service", turn: 1}, + {kind: entryAssistant, text: "Inspecting the service.", turn: 1, settled: true}, + {kind: entryTool, tool: "bash", turn: 1, status: toolFailed, detail: toolDetail{Output: "PRIVATE FAILURE TRACEBACK"}, open: true}, + } + rs, _ := a.deckRows(deck{entries: es, lens: surface.lens}, 100) + var lines []string + for _, r := range rs { + lines = append(lines, plain(r.text)) + } + if page := strings.Join(lines, "\n"); strings.Contains(page, "PRIVATE FAILURE TRACEBACK") { + t.Fatalf("settled failure leaked without disclosure:\n%s", page) + } + }) + } +} diff --git a/internal/tui3/chatcleanup_test.go b/internal/tui3/chatcleanup_test.go new file mode 100644 index 0000000000..659270ce5c --- /dev/null +++ b/internal/tui3/chatcleanup_test.go @@ -0,0 +1,263 @@ +package tui3 + +import ( + "github.com/Agent-Field/codeaf/internal/config" + "github.com/Agent-Field/codeaf/internal/tui2/tokens" + "strings" + "testing" + "time" +) + +func TestCleanChatKeepsConfirmedUpdatesAcrossLaterWork(t *testing.T) { + es := foldFixture() + es[5].confirmed = &responseConfirmation{done: true} + es = append(es, entry{kind: entryTool, tool: "read", status: toolOK, turn: 1}, entry{kind: entryAssistant, text: "Final answer", settled: true, turn: 1}) + for name, folds := range map[string]map[int]workfold{"chat": deriveWorkfolds(es, 0), "room": derivePhaseFolds(es)} { + for _, f := range folds { + if f.start <= 5 && f.answer > 5 { + t.Fatalf("%s hid confirmed update: %+v", name, f) + } + } + stampHierarchy(es, folds) + if es[5].demoted { + t.Fatalf("%s demoted confirmed update", name) + } + } +} + +func TestCleanChatImportantToolBoundariesRemainVisible(t *testing.T) { + for _, status := range []toolState{toolConsent} { + es := foldFixture() + es[4].status = status + folds := deriveWorkfolds(es, 0) + for _, f := range folds { + if f.start <= 4 && f.answer > 4 { + t.Fatalf("status %v hidden: %+v", status, f) + } + } + if len(folds) == 0 { + t.Fatalf("status %v prevented preceding successful work folding", status) + } + } +} + +func TestCleanChatDisclosureIncludesNonCaptionHistory(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.entries = foldFixture() + a.entries = append(a.entries[:5], entry{kind: entryNote, text: "saved operational receipt", turn: 1, settled: true}, a.entries[5]) + a.workMode = config.WorkFold + a.touch() + if text := strings.Join(plainRows(a), "\n"); strings.Contains(text, "saved operational receipt") { + t.Fatal("receipt leaked from closed work") + } + a.toggleLatestWorkfold() + text := strings.Join(plainRows(a), "\n") + if !strings.Contains(text, "saved operational receipt") || !strings.Contains(text, "thought") { + t.Fatalf("opened work lost uncaptained detail:\n%s", text) + } +} + +func TestCleanChatManagerTrafficFoldsWithoutDemotingAnswer(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.entries = []entry{ + {kind: entryUser, text: "check the team", turn: 1}, + {kind: entryTool, tool: "team_send", status: toolOK, turn: 1, settled: true}, + {kind: entryAssistant, text: "## Ready\n\n**Review is ready.**", turn: 1, settled: true, confirmed: &responseConfirmation{done: true}}, + {kind: entryTeam, text: "private delivery", turn: 1, settled: true}, + {kind: entryCompact, text: "internal compaction", turn: 1, ended: time.Unix(100, 0)}, + } + a.workMode = config.WorkFold + a.touch() + text := strings.Join(plainRows(a), "\n") + if a.entries[2].demoted || strings.Contains(text, "## Ready") || strings.Contains(text, "private delivery") || strings.Contains(text, "internal compaction") { + t.Fatalf("manager leaked work or raw answer markup:\n%s", text) + } + if !strings.Contains(text, "Review is ready.") { + t.Fatalf("missing answer:\n%s", text) + } +} + +func TestCleanChatDisclosedNarrationRendersMarkdown(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + text := strings.Join(a.workingProse("## Inspecting\n\n**Checking** the `config`.\n\n```go\nvalue := 1\n```", 100), "\n") + for _, raw := range []string{"## ", "**", "```"} { + if strings.Contains(text, raw) { + t.Fatalf("raw markdown %q in %s", raw, text) + } + } + if !strings.Contains(text, "value := 1") { + t.Fatalf("lost code: %s", text) + } +} + +func TestCleanChatOpenedCaptionKeepsInterveningReasoning(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.entries = hierarchyLab() + a.entries[2].open = true + a.workMode = config.WorkFold + a.workOpen = map[int]bool{1: true} + a.capOpen = map[int]bool{1: true} + a.touch() + text := strings.Join(plainRows(a), "\n") + if !strings.Contains(text, "the prefix is read twice") { + t.Fatalf("caption swallowed its intervening reasoning:\n%s", text) + } +} + +func TestCleanChatLiveCaptionNeverExceedsThreeRows(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + w := liveWork{key: 1, turn: 1, steps: []caption{{text: strings.Repeat("long caption ", 20), source: captionSaid}}, last: true} + got := a.liveStepBlock(w, 20, deck{}) + if len(got) > liveStepRows { + t.Fatalf("compact activity has %d rows", len(got)) + } +} + +func TestCleanChatFailureIsCompactStatusUntilOpened(t *testing.T) { + a := liveStepsApp(t) + a.entries = append(a.entries, entry{kind: entryTool, tool: "bash", status: toolFailed, turn: 1, text: "failed command", detail: toolDetail{Output: "PRIVATE TRACEBACK"}}) + a.touch() + text := strings.Join(plainRows(a), "\n") + if strings.Contains(text, "PRIVATE TRACEBACK") || !strings.Contains(text, a.icon(tokens.GFailed)) { + t.Fatalf("failure not compact status:\n%s", text) + } +} + +func TestCleanChatLiveReceiptRemainsClickableAfterDisclosure(t *testing.T) { + a := liveStepsApp(t) + at := len(a.entries) + a.entries = append(a.entries, entry{kind: entryDone, turn: 1, done: &taskDone{id: 7, title: "background receipt", ident: identFor(7)}}) + a.touch() + if got := strings.Join(plainRows(a), "\n"); strings.Contains(got, "background receipt") { + t.Fatalf("receipt escaped compact work: %s", got) + } + a.toggleLatestWorkfold() + for _, r := range rows(a) { + if r.entry == at && r.hit == hitDone && strings.Contains(plain(r.text), "background receipt") { + return + } + } + t.Fatal("opened work lost the clickable task receipt") +} + +func TestCleanChatHousekeepingSharesTurnDisclosureWithoutExtraChips(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.entries = append([]entry{{kind: entryNote, text: "startup housekeeping", turn: 0}}, foldFixture()...) + a.entries = append(a.entries, entry{kind: entryNote, text: "cache housekeeping", turn: 1}) + a.workMode = config.WorkFold + a.touch() + got := strings.Join(plainRows(a), "\n") + if strings.Count(got, "worked") != 1 || strings.Contains(got, "housekeeping") { + t.Fatalf("housekeeping created extra visible work:\n%s", got) + } + a.toggleLatestWorkfold() + got = strings.Join(plainRows(a), "\n") + for _, text := range []string{"startup housekeeping", "cache housekeeping"} { + if !strings.Contains(got, text) { + t.Fatalf("turn disclosure lost %q:\n%s", text, got) + } + } +} + +func TestCleanChatSteeringAndConfirmedUpdateKeepOneActivityWindow(t *testing.T) { + a := liveStepsApp(t) + a.entries = append(a.entries, entry{kind: entryAssistant, text: "A useful interim reply.", turn: 1, settled: true, confirmed: &responseConfirmation{done: true}}, entry{kind: entrySteer, text: "also check formatting", turn: 1, steer: &steerElbow{words: "also check formatting", at: liveStepsBase}}, entry{kind: entryNote, text: "internal chatter", turn: 1}, entry{kind: entryTool, tool: "bash", text: "second command", status: toolRunning, turn: 1}) + a.touch() + got := strings.Join(plainRows(a), "\n") + if !strings.Contains(got, "A useful interim reply") || !strings.Contains(got, "also check formatting") || strings.Contains(got, "internal chatter") { + t.Fatalf("interim reply or steering boundary broken:\n%s", got) + } + n := 0 + for _, r := range rows(a) { + if r.hit == hitWorkFold { + n++ + } + } + if n > liveStepRows { + t.Fatalf("steering produced %d activity rows:\n%s", n, got) + } +} + +func TestCleanChatInterruptPreservesConfirmedInterimReply(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.entries = foldFixture() + a.entries[5].confirmed = &responseConfirmation{done: true} + a.entries = append(a.entries, entry{kind: entryThinking, turn: 1, text: "unfinished work", settled: false}, entry{kind: entryAssistant, turn: 1, text: "unfinished sentence"}) + a.cutTurn(1) + if a.entries[5].cut || !a.entries[7].cut { + t.Fatal("interrupt crossed the confirmed response boundary") + } + a.workMode = config.WorkFold + a.touch() + got := strings.Join(plainRows(a), "\n") + if !strings.Contains(got, "Done.") || strings.Contains(got, "unfinished sentence") { + t.Fatalf("interrupt lost reply or exposed partial work:\n%s", got) + } +} + +func TestCleanChatPhaseKeepsUserDirectedNotesAndDecisions(t *testing.T) { + for _, kept := range []entry{{kind: entryNote, text: "your requested help", told: true, turn: 1}, {kind: entryTool, tool: "bash", status: toolOK, decision: "allowed", turn: 1}} { + es := []entry{{kind: entryTool, tool: "read", status: toolOK, turn: 1}, kept, {kind: entryTool, tool: "read", status: toolOK, turn: 1}, {kind: entryAssistant, text: "reply", settled: true, turn: 1}} + for _, f := range derivePhaseFolds(es) { + if f.start <= 1 && f.answer > 1 { + t.Fatalf("phase hid user decision/notice: %+v", f) + } + } + } +} + +func TestCleanChatSettledTailAfterUserNoticeStillFolds(t *testing.T) { + es := []entry{{kind: entryUser, text: "check", turn: 1}, {kind: entryNote, text: "requested help", told: true, turn: 1}, {kind: entryTool, tool: "bash", status: toolFailed, turn: 1}} + folds := deriveWorkfolds(es, 0) + f, ok := folds[2] + if !ok || f.answer != 3 || f.failures != 1 { + t.Fatalf("operational tail after notice escaped disclosure: %+v", folds) + } +} + +func TestCleanChatInterruptWithUserNoticeStillCollapsesWork(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.entries = []entry{{kind: entryUser, text: "check", turn: 1}, {kind: entryTool, tool: "bash", status: toolOK, turn: 1}, {kind: entryNote, text: "requested help", told: true, turn: 1}, {kind: entryTool, tool: "bash", status: toolRunning, text: "unfinished command", turn: 1}} + a.cutTurn(1) + folds := deriveWorkfolds(a.entries, 0) + for _, at := range []int{1, 3} { + if _, ok := folds[at]; !ok { + t.Fatalf("interrupted work exposed around user notice: %+v", folds) + } + } + for _, f := range folds { + if f.start <= 2 && f.answer > 2 { + t.Fatal("user notice folded on interrupt") + } + } +} + +func TestCleanChatSettledToolOnlyTailAcrossAllSurfaces(t *testing.T) { + for _, l := range []lens{participantLens, overseerLens, transcriptLens} { + for _, status := range []toolState{toolOK, toolFailed} { + a := newTestApp(&fakeAgent{model: "m"}) + es := []entry{{kind: entryUser, text: "Run a check", turn: 1}, {kind: entryAssistant, text: "Checking the repository.", turn: 1, settled: true}, {kind: entryTool, tool: "bash", text: "PRIVATE COMMAND", detail: toolDetail{Output: "PRIVATE OUTPUT"}, turn: 1, status: status}} + d := deck{entries: es, lens: l, workOpen: map[int]bool{}, capOpen: map[int]bool{1: true}} + rendered, _ := a.deckRows(d, 100) + var lines []string + for _, r := range rendered { + lines = append(lines, plain(r.text)) + } + got := strings.Join(lines, "\n") + if !strings.Contains(got, "worked") || strings.Contains(got, "PRIVATE") { + t.Fatalf("settled tool-only tail expanded: %s", got) + } + for _, f := range a.deckFolds(d) { + d.workOpen[f.key] = true + } + rendered, _ = a.deckRows(d, 100) + lines = nil + for _, r := range rendered { + lines = append(lines, plain(r.text)) + } + if !strings.Contains(strings.Join(lines, "\n"), "PRIVATE COMMAND") { + t.Fatal("settled tail cannot be disclosed") + } + } + } +} diff --git a/internal/tui3/commands.go b/internal/tui3/commands.go index 07b9c5a081..57a087610e 100644 --- a/internal/tui3/commands.go +++ b/internal/tui3/commands.go @@ -129,6 +129,8 @@ var commands = []command{ // looking, /compact is one of them, and a row inserted above it would push // the daily command behind a scroll (deliverables_test.go pins exactly // that). So it lands as close to its pair as the law allows (home.go). + {name: "dismiss", desc: "hide settled task notifications here"}, + {name: "dismiss", args: "undo", desc: "restore dismissed task notifications"}, {name: "home", desc: "every project and conversation on this machine"}, // AND THE TWO PLACES THAT HAD NO TYPED DOOR, directly under the one that // does. /home, /memory, /standing, /history and /settings each open a place diff --git a/internal/tui3/feed.go b/internal/tui3/feed.go index aa0d281c8a..7000fcc2ce 100644 --- a/internal/tui3/feed.go +++ b/internal/tui3/feed.go @@ -42,7 +42,8 @@ import ( // the entry EXISTS is this file's, for every surface at once, and // salience_test.go walks every event kind through both to hold it. type feed struct { - entries []entry + entries []entry + updateDelivery userUpdateStream // live is the assistant entry currently being streamed into, or -1. live int // think is the reasoning block currently streaming, or -1 (thinking.go). @@ -265,7 +266,9 @@ func (f *feed) ingestStream(ev session.Event, lump bool) { f.sayStream(ev.Text, lump) case session.EventAssistantDone: + f.flushUpdatePrefix() f.confirmResponse() + f.updateDelivery = userUpdateStream{} case session.EventReasoning: f.reasonStream(ev.Text, lump) @@ -307,17 +310,21 @@ func (f *feed) ingestStream(ev session.Event, lump bool) { f.toldNote(ev.Text) case session.EventRetrying: + f.updateDelivery = userUpdateStream{} f.retry(ev) case session.EventToolForming: + f.confirmUserUpdate() // THE CALL IS ARRIVING. Nothing has been asked for yet — this is the // model writing the instruction, drawn while it writes it. f.formTool(ev) case session.EventToolAnnounced: + f.confirmUserUpdate() f.announceTool(ev) case session.EventToolBegin: + f.confirmUserUpdate() f.beginTool(ev) case session.EventToolFinished: @@ -1038,6 +1045,10 @@ func (f *feed) say(text string) { f.sayStream(text, false) } // walk. The bare form is text handed over WHOLE, with no wire behind it that // could have lumped it, so it paces nothing. func (f *feed) sayStream(text string, lump bool) { + f.sayVisibleStream(f.updateText(text), lump) +} + +func (f *feed) sayVisibleStream(text string, lump bool) { if text == "" { return } diff --git a/internal/tui3/feed_update.go b/internal/tui3/feed_update.go new file mode 100644 index 0000000000..bb97e7d443 --- /dev/null +++ b/internal/tui3/feed_update.go @@ -0,0 +1,60 @@ +package tui3 + +import ( + "github.com/Agent-Field/codeaf/internal/session" + "strings" +) + +// The probe belongs to a response, so reasoning fragments and queued user +// messages cannot split a control marker or let part of it reach the screen. +type userUpdateStream struct { + turn int + pending string + resolved, marked, trimSpace bool +} + +func (f *feed) updateText(text string) string { + p := &f.updateDelivery + if p.turn != f.turn { + *p = userUpdateStream{turn: f.turn} + } + if !p.resolved { + p.pending += text + prefix := strings.TrimLeft(p.pending, " \t\r\n") + if strings.HasPrefix(session.UserUpdatePrefix, prefix) && prefix != session.UserUpdatePrefix { + return "" + } + p.resolved = true + if body, marked := session.UserFacingUpdate(p.pending); marked { + text, p.marked, p.trimSpace = body, true, true + } else { + text = p.pending + } + p.pending = "" + } + if p.trimSpace { + text = strings.TrimLeft(text, " \t\r\n") + if text != "" { + p.trimSpace = false + } + } + return text +} + +// An incomplete marker that ends as ordinary text must not lose characters. +func (f *feed) flushUpdatePrefix() { + if text := f.updateDelivery.pending; text != "" { + f.updateDelivery.pending = "" + f.sayVisibleStream(text, false) + } +} + +// A marked preamble is a delivered message, even though this response also +// calls tools. Ordinary preambles keep their original operational classification. +func (f *feed) confirmUserUpdate() { + f.flushUpdatePrefix() + if f.updateDelivery.marked { + f.confirmResponse() + } + f.updateDelivery = userUpdateStream{} +} diff --git a/internal/tui3/hierarchy.go b/internal/tui3/hierarchy.go index e8b49aa743..1281429fe3 100644 --- a/internal/tui3/hierarchy.go +++ b/internal/tui3/hierarchy.go @@ -1,6 +1,9 @@ package tui3 -import "strings" +import ( + "github.com/charmbracelet/x/ansi" + "strings" +) // ── THE ANSWER HIERARCHY ──────────────────────────────────────────────────── // @@ -57,20 +60,9 @@ import "strings" // loudness ([hueNarr]): quieter than the answer in lightness, and never a // different KIND of thing in hue. // -// - A DEMOTED BLOCK IS PLAIN, WITH NO MARKDOWN AT ALL. This is the honest -// simplification, and MARKDOWN OWNS WEIGHT (render.go's user-entry comment) -// is what forces it. Weight is the one channel a block cannot borrow without -// lying: a bold lead-in or a `##` heading inside demoted narration would -// render HEAVIER than the settled answer below it, and the hierarchy would be -// inverted by the very block it was drawn on. Nor can the weight simply be -// stripped — prose hands back rows with its own foregrounds already spliced -// in, and a second colour wrapped around them tears open at the first inner -// SGR 39 (render.go's [app.assistantRows] says why the promoted head is never -// repainted). So the demoted block takes the ONE rendering that carries no -// weight and no colour of its own: wrapped plain text, one tier, exactly the -// shape the live tail already uses with a different lightness in it. Nothing -// is lost that a person wanted — narration is two sentences and a verb — and -// what the reader gets instead is a block that cannot shout. +// - DISCLOSED NARRATION USES MARKDOWN STRUCTURE IN MUTED INK. Render the +// headings, lists and fences first, then strip terminal styling before +// applying the narration tier. Raw markdown markers never become the UI. // // ── AND THE BREATH ABOVE THE ANSWER ───────────────────────────────────────── // @@ -151,7 +143,7 @@ func stampCaptions(es []entry, captions []caption) { // in — which is the overhang [workIndentCols] exists to let a block subtract, and // the reason [app.toolLine] subtracts it too. func (a *app) workingProse(text string, width int) []string { - rows := wrap(text, width-workIndentCols(width)) + rows := a.renderMarkdown(text, max(1, width-workIndentCols(width))) for i, line := range rows { // A ROW WITH NOTHING ON IT IS LEFT ALONE, for [app.liveTail]'s reason: // [trimBlanks] decides what to drop by asking whether a row is blank, and a @@ -159,7 +151,7 @@ func (a *app) workingProse(text string, width int) []string { if strings.TrimSpace(line) == "" { continue } - rows[i] = a.pal.narr(line) + rows[i] = a.pal.narr(ansi.Strip(line)) } return trimBlanks(rows) } @@ -233,7 +225,15 @@ func answerBreath(es []entry, i int) bool { // the turn still claiming to be an answer. func (a *app) cutTurn(turn int) { changed := false + // A completed response already said its words to the person. Only the + // activity resumed after its boundary is being interrupted now. + from := 0 for i := range a.entries { + if a.entries[i].turn == turn && confirmedAnswer(&a.entries[i]) { + from = i + 1 + } + } + for i := from; i < len(a.entries); i++ { e := &a.entries[i] // AND A CORRECTION IS NOT MARKED EITHER, for the person's own message's // reason said again: it is a thing they said in full, and only the work diff --git a/internal/tui3/hierarchy_test.go b/internal/tui3/hierarchy_test.go index 0b74fb1228..05395b4bf7 100644 --- a/internal/tui3/hierarchy_test.go +++ b/internal/tui3/hierarchy_test.go @@ -85,11 +85,11 @@ func TestDemotedNarrationDropsItsMarkdown(t *testing.T) { a.touch() body := strings.Join(plainRows(a), "\n") - if !strings.Contains(body, "## Plan") { - t.Fatalf("the heading's own characters were rendered away:\n%s", body) + if strings.Contains(body, "## Plan") || !strings.Contains(body, "Plan") { + t.Fatalf("the heading was not rendered as readable text:\n%s", body) } - if strings.Contains(rowWithText(t, a, "## Plan").text, sgrOf(a.pal.bold)) { - t.Fatalf("a demoted heading was drawn bold: %q", rowWithText(t, a, "## Plan").text) + if strings.Contains(rowWithText(t, a, "Plan").text, sgrOf(a.pal.bold)) { + t.Fatalf("a demoted heading was drawn bold: %q", rowWithText(t, a, "Plan").text) } } diff --git a/internal/tui3/input.go b/internal/tui3/input.go index 663bbc33da..58f33d0d97 100644 --- a/internal/tui3/input.go +++ b/internal/tui3/input.go @@ -1095,6 +1095,9 @@ func (a *app) key(msg tea.KeyPressMsg) tea.Cmd { } return a.edited() case "delete": + if len(a.input.value) == 0 && !a.roomOpen() && a.dismissDone(a.sel) { + return nil + } if a.dropDraftPick() { return a.edited() } diff --git a/internal/tui3/lens.go b/internal/tui3/lens.go index 3bf5344ea7..ca956cd6c9 100644 --- a/internal/tui3/lens.go +++ b/internal/tui3/lens.go @@ -6,9 +6,8 @@ package tui3 // conversation — thinking alongside the model, owed every word of the dialogue // at full fidelity, with finished work folded away behind a chip. // [overseerLens] is a person CHECKING ON work another agent is doing — owed the -// trajectory at a glance, with the machinery one gesture down. A third surface -// picks one of these or argues, in writing, for a third; [transcriptLens] is -// the one that argued, and its comment is the argument. +// trajectory at a glance, with the machinery one gesture down. Nested node +// transcripts share the task page posture and retain their own disclosure state. // // It exists because the two pages had drifted apart one knob at a time. The // deck carried a `clock` bool, a `showsWork` bool and a `toolTail` int, each @@ -59,8 +58,7 @@ const ( foldPhases // foldNone folds nothing at all. It is not a default — [foldTurns] is the // zero value on purpose, because the conversation is the surface every - // other one is derived from — and the one page that takes it argues for it - // at [transcriptLens]. + // other one is derived from. No conversation surface selects this policy. foldNone ) @@ -69,8 +67,23 @@ const ( // from being unreadable — the table also states, by omission, that [foldNone] // derives nothing rather than deriving an empty answer twice. var folders = map[foldStyle]func(d deck) map[int]workfold{ - foldTurns: func(d deck) map[int]workfold { return deriveWorkfolds(d.entries, d.runningTurn) }, - foldPhases: func(d deck) map[int]workfold { return derivePhaseFolds(d.entries) }, + foldTurns: func(d deck) map[int]workfold { return deriveWorkfolds(d.entries, d.runningTurn) }, + foldPhases: func(d deck) map[int]workfold { + if d.runningTurn == 0 { + return deriveWorkfolds(d.entries, 0) + } + folds := derivePhaseFolds(d.entries) + // The current turn has one shared live window on every surface. + // Historical phase chips must not become extra activity rows. + if d.runningTurn != 0 { + for at, f := range folds { + if f.turn == d.runningTurn { + delete(folds, at) + } + } + } + return folds + }, } // lens is the WHOLE of what one page does differently from another. @@ -133,35 +146,7 @@ var overseerLens = lens{ toolTail: (*app).roomToolTail, } -// transcriptLens is THE THIRD SURFACE, AND HERE IS THE ARGUMENT. -// -// A run's page is a graph, and clicking a node in it opens that node's -// transcript inside the graph (roomorch.go). The gesture that gets a person -// there is already "show me what this one did" — they descended two pages to -// ask it — and the page answers by drawing the tail of the journal under the -// graph. Folding settled phases back up would answer a request to see the -// machinery with a chip saying machinery happened, which is the shape ruling 1 -// reversed for the ROOM and would be reintroducing it one page down. -// -// AND THE LADDER WOULD DEAD-END, which is the half that settles it. That page -// mints its fold state fresh on every read — the map is a literal in -// [app.orchTranscriptDeck], not a field anything keeps — so a chip drawn there -// could be pressed and would never open. A fold whose door does nothing is -// worse than no fold, and DISCOVERABILITY BEFORE PURITY says a disclosure -// ships with its working door or does not ship. -// -// THE SECOND HALF IS A LIMITATION AND NOT A PRINCIPLE, and the difference -// matters for whoever reads this next. Only the first paragraph is an argument -// about what a person came to that page for; the dead end is an accident of how -// that deck is built. So if [app.orchTranscriptDeck] ever KEEPS its fold map — -// on the run, the way a room keeps its own — this lens should collapse back into -// [overseerLens] and be deleted, not go on standing as a third posture because -// it happens to exist. A page that folds nothing has to re-earn that every time -// somebody asks. -// -// It keeps the room's tool tail: the same reason, said about the same rows. -var transcriptLens = lens{ - receipts: receiptsHeader, - foldPast: foldNone, - toolTail: (*app).roomToolTail, -} +// Nested node transcripts use the same disclosure policy as task rooms. +// Their maps live on the run's transcript, so every disclosure has a working +// click and keyboard door and stays open across journal refreshes. +var transcriptLens = overseerLens diff --git a/internal/tui3/livesteps.go b/internal/tui3/livesteps.go index 81c0d6c5cf..6c21e8f6b4 100644 --- a/internal/tui3/livesteps.go +++ b/internal/tui3/livesteps.go @@ -2,6 +2,7 @@ package tui3 import ( "github.com/Agent-Field/codeaf/internal/session" + "github.com/Agent-Field/codeaf/internal/tui2/tokens" "github.com/charmbracelet/x/ansi" ) @@ -68,8 +69,8 @@ import ( // surface where a reader's expansion does not outlive what it was about. // // WHAT IT MAY NEVER COVER is [liveWorkKeeps], and the list is the conversation's -// own: the person's words, a question waiting to be answered, a failed call, a -// notice this surface wrote, a seam, an answer. A window that swallowed one of +// own: the person's words, a question waiting to be answered, an explicit +// user-directed notice, a seam, an answer. A window that swallowed one of // those would be hiding the one row on the frame that needed a person. // // THE LENS OPTS INTO LIVE COMPACTNESS separately from its past folds. A task @@ -220,12 +221,9 @@ func liveWorkRuns(d deck) map[int]liveWork { // [phaseKeeps]'s reason: the list IS the argument, and an argument written as // control flow cannot be read. // -// A STEP IS ATOMIC. The second pass is what makes that true: a caption whose -// batch holds a failed call is kept WHOLE — its narration, its calls, all of it — -// rather than half-compacted, because a step drawn twice (once as a line in the -// window and once as the machinery under it) is the same work claiming to be two -// things. ONLY FAILURE SPEAKS on this surface, and the row that was allowed to -// raise its voice may not then be filed away by a rolling window. +// A step remains atomic around an actionable boundary. Ordinary operational +// notes and failed calls stay within the window; failure is a compact glyph, +// while the complete error remains available when the reader opens the work. func liveWorkKeeps(d deck) []bool { es := d.entries keeps := make([]bool, len(es)) @@ -260,6 +258,12 @@ func liveWorkKeeps(d deck) []bool { // liveWorkKeepsRow is the per-row half of the table above. func liveWorkKeepsRow(e *entry) bool { switch e.kind { + case entryDone: + return e.done != nil && e.done.status.Tier == session.TaskTierYourCall + case entryNote: + return e.told + case entryTeam, entryCompact: + return false case entryThinking: // PRIVATE MACHINERY, AND THE LOUDEST OF IT. A wall of dim italic scrolling // under the answer a person is waiting for is the defect this whole block @@ -274,18 +278,10 @@ func liveWorkKeepsRow(e *entry) bool { // exactly as the person left it, and shutting the work hides it again. return false case entryTool: - // A CALL THAT FAILED IS NEVER COVERED, and neither is one waiting on a - // person: a consent question is a thing the work could not decide alone - // (consent.go), and hiding it would hide the only row on the frame that - // needs a hand. - // - // AND NEITHER IS ONE THE PERSON ANSWERED. [entry.decision] is the receipt - // of their own keypress — `allowed`, `denied`, and the `always · saved — - // /permissions to change` slot beside it — and a window that swallowed the - // row a moment after they pressed the key would be answering a decision - // they made with a screen that says nothing happened. It is theirs, like - // their words, and it stands. - return e.status == toolFailed || e.status == toolConsent || e.decision != "" + // Consent and the person's decision remain actionable. Failed calls + // use a status glyph in the compact caption; error output is disclosed + // only when the reader opens that step. + return e.status == toolConsent || e.decision != "" case entryAssistant: // NARRATION IS THE STEP TITLE ITSELF — its first line is lifted into the // caption this block draws (hierarchy.go's [stampCaptions]), so covering it @@ -294,11 +290,7 @@ func liveWorkKeepsRow(e *entry) bool { // streamed prose stays compact until that response boundary arrives. return !e.demoted } - // EVERYTHING ELSE STANDS. The person's own words and their corrections, a - // proposal, a standing card, a sign-in, a sub-harness offer, a landed task, a - // seam, a compaction with its own clock, a divider, and every note this - // surface wrote in its own voice — each of them is either something said TO - // the person or something they have to answer. + // Other explicit conversation boundaries and actionable cards stand. return true } @@ -354,14 +346,9 @@ func (a *app) collapseLiveWork(turn int) { // liveStepBlock is the compact block itself: the last few steps, oldest faintest, // the live one shimmering. // -// THE NEWEST STEP IS NEVER CHOPPED, which is what the budget costs on a narrow -// frame. Rows are taken newest-first and a step is only admitted whole, so a -// caption that wraps to two lines pushes the oldest step out of the window -// rather than being cut to fit. A current caption that alone wraps past the -// budget is drawn in full. Between calls, the current activity takes priority: -// a finished caption too tall to fit beside it remains behind the disclosure. A step title is five to ten words that -// somebody has to be able to read; an ellipsis in the middle of one would be the -// surface saving a row at the cost of the only thing the row was for. +// The compact display spends at most three rows. Whole older steps leave first; +// a newest caption taller than the budget ends with an ellipsis. Its complete +// text is retained behind the work disclosure. func (a *app) liveStepBlock(w liveWork, width int, d deck) []row { room := width - workIndentCols(width) - actionGutter if room < 1 { @@ -406,6 +393,7 @@ func (a *app) liveStepBlock(w liveWork, width int, d deck) []row { type step struct { lines []string live bool + failed bool age string category session.ActionCategory } @@ -417,10 +405,21 @@ func (a *app) liveStepBlock(w liveWork, width int, d deck) []row { if len(lines) == 0 { continue } + // A very narrow pane must keep the same reading budget. The full + // caption remains available through the work disclosure. + if len(picked) == 0 && len(lines) > liveStepRows { + lines = lines[:liveStepRows] + lines[liveStepRows-1] = ansi.Truncate(lines[liveStepRows-1], max(1, room-1), "") + "…" + } if len(picked) > 0 && used+len(lines) > liveStepRows { break } - picked = append(picked, step{lines: lines, live: w.steps[at].ended.IsZero(), + failed := false + from, to := captionTools(w.steps[at], d.entries) + for i := from; i < to && i < len(d.entries); i++ { + failed = failed || d.entries[i].status == toolFailed + } + picked = append(picked, step{failed: failed, lines: lines, live: w.steps[at].ended.IsZero(), age: compactStepAge(w.steps[at].began, a.now()), category: stepCategory(w.steps[at], d.entries)}) used += len(lines) if used >= liveStepRows { @@ -466,6 +465,9 @@ func (a *app) liveStepBlock(w liveWork, width int, d deck) []row { } // The action icon remains still while its caption carries the sweep. lead := a.actionLead(s.category, i == 0) + if s.failed && i == 0 { + lead = a.linearMark(a.icon(tokens.GFailed), "x") + " " + } if waiting { lead = a.pal.narr(lead) if !inline && i == 0 { diff --git a/internal/tui3/livesteps_test.go b/internal/tui3/livesteps_test.go index 5648593aa1..23c71391aa 100644 --- a/internal/tui3/livesteps_test.go +++ b/internal/tui3/livesteps_test.go @@ -407,29 +407,14 @@ func TestTheWindowNeverCoversWordsFailuresOrNotices(t *testing.T) { page := livePage(a) for _, want := range []string{ "check the parser instead", // their correction - "context is 84% full", // this surface's own voice "Running the suite", // the failed step's own heading, kept whole } { if !strings.Contains(page, want) { t.Fatalf("the window swallowed %q:\n%s", want, page) } } - // AND THE FAILURE IS DRAWN WHERE IT HAPPENED, AS MACHINERY. The step that - // failed keeps the outline row it has always had — its own door and its own - // count — rather than becoming a faded line in a window that says nothing - // went wrong. Whether a PAST step shows its calls unasked is - // [app.captionCallsOpen]'s answer and this block does not change it. - failed := false - for _, r := range rows(a) { - if r.hit == hitCaption && strings.Contains(plain(r.text), "Running the suite") { - failed = true - } - if r.hit == hitWorkFold && strings.Contains(plain(r.text), "Running the suite") { - t.Fatalf("a failed step was compacted into the window: %q", plain(r.text)) - } - } - if !failed { - t.Fatalf("the failed step lost its outline row:\n%s", page) + if strings.Contains(page, "prefix mismatch") || strings.Contains(page, "context is 84% full") || !strings.Contains(page, a.icon(tokens.GFailed)) { + t.Fatalf("operational details escaped the compact window:\n%s", page) } // The step still running is compact all the same. if !strings.Contains(page, "Checking what changed") || strings.Contains(page, "git status --porcelain") { @@ -459,8 +444,12 @@ func TestAFailureAtTheFrontierIsDrawnWithItsRow(t *testing.T) { a.touch() page := livePage(a) - if !strings.Contains(page, "go test") { - t.Fatalf("the failed call is not on the page:\n%s", page) + if !strings.Contains(page, a.icon(tokens.GFailed)) || strings.Contains(page, "prefix mismatch") { + t.Fatalf("failure should be a compact status until opened:\n%s", page) + } + a.toggleLatestWorkfold() + if expanded := livePage(a); !strings.Contains(expanded, "go test") { + t.Fatalf("failure details are not reachable:\n%s", expanded) } if !strings.Contains(page, "Reading the loader first") { t.Fatalf("the step before the failure was swallowed:\n%s", page) @@ -522,28 +511,30 @@ func TestTheLinearTierDrawsTheWindowStill(t *testing.T) { } } -// ── ONE SURFACE ONLY ──────────────────────────────────────────────────────── - -// A node transcript is an explicitly detailed view. Its lens does not opt -// into compact live work; task rooms are covered by roomcompact_test.go. +// Nested node transcripts use the same compact view and retain every detail. func TestTheNodeTranscriptKeepsItsMachinery(t *testing.T) { a := newTestApp(&fakeAgent{model: "m"}) a.width, a.height = 80, 40 - for _, l := range []lens{transcriptLens} { - d := deck{entries: liveStepsFixture(), unfolded: map[int]bool{}, - workOpen: map[int]bool{}, capOpen: map[int]bool{}, lens: l, runningTurn: 1} - d.captions = deriveCaptions(d.entries, d.runningTurn) - if got := deriveLiveWork(d); len(got) != 0 { - t.Fatalf("a page that is not the conversation derived a window: %#v", got) - } - drawn, _ := a.deckRows(d, 60) - var page strings.Builder - for _, r := range drawn { - page.WriteString(plain(r.text) + "\n") - } - if !strings.Contains(page.String(), "git status --porcelain") { - t.Fatalf("the page lost its live machinery:\n%s", page.String()) + d := deck{entries: liveStepsFixture(), unfolded: map[int]bool{}, + workOpen: map[int]bool{}, capOpen: map[int]bool{}, lens: transcriptLens, runningTurn: 1} + d.captions = deriveCaptions(d.entries, d.runningTurn) + if got := deriveLiveWork(d); len(got) == 0 { + t.Fatal("node transcript has no compact work window") + } + text := func() string { + rows, _ := a.deckRows(d, 60) + var b strings.Builder + for _, r := range rows { + b.WriteString(plain(r.text) + "\n") } + return b.String() + } + if page := text(); strings.Contains(page, "git status --porcelain") { + t.Fatalf("raw call escaped compact view:\n%s", page) + } + d.unfolded[1] = true + if page := text(); !strings.Contains(page, "git status --porcelain") { + t.Fatalf("expanded transcript lost work:\n%s", page) } } diff --git a/internal/tui3/nested_disclosure_test.go b/internal/tui3/nested_disclosure_test.go new file mode 100644 index 0000000000..b7e9fe9251 --- /dev/null +++ b/internal/tui3/nested_disclosure_test.go @@ -0,0 +1,90 @@ +package tui3 + +import ( + "os" + "path/filepath" + "strings" + "testing" + + tea "charm.land/bubbletea/v2" + "github.com/Agent-Field/codeaf/internal/config" + "github.com/Agent-Field/codeaf/internal/orchestrate" +) + +func TestNestedDisclosureSurvivesSettledRefreshAndClosesOnLanding(t *testing.T) { + for _, live := range []bool{false, true} { + name := "already settled" + if live { + name = "running to settled" + } + t.Run(name, func(t *testing.T) { + snap := orchRun4() + if live { + snap.Nodes[0].State = orchestrate.Running + } + a, agent := orchApp(t, snap) + a.workMode = config.WorkFold + path := filepath.Join(t.TempDir(), "plan.jsonl") + journal := strings.Join([]string{ + `{"type":"message","role":"user","content":"read the file"}`, + `{"type":"message","role":"assistant","content":"","toolCalls":[{"id":"c1","type":"function","function":{"name":"read","arguments":"{\"path\":\"notes.txt\"}"}}]}`, + `{"type":"message","role":"tool","toolCallId":"c1","content":"the notes"}`, + `{"type":"message","role":"assistant","content":"The result is ready."}`, + }, "\n") + if err := os.WriteFile(path, []byte(journal), 0600); err != nil { + t.Fatal(err) + } + agent.journals = map[string]string{"r1:plan": path} + a.orchOpenTranscript("plan") + // Exercise the rendered mouse door, not only the disclosure map. + key := -1 + for i, r := range a.roomRows(a.bodyWidth()) { + if r.hit != hitWorkFold { + continue + } + key = r.turn + y := roomRowY(a, i) + drive(t, a, tea.MouseClickMsg{X: 4, Y: y, Button: tea.MouseLeft}, tea.MouseReleaseMsg{X: 4, Y: y, Button: tea.MouseLeft}) + break + } + if key < 0 { + t.Fatalf("no disclosure: %s", roomText(a)) + } + if !a.orchTranscriptDeck().workOpen[key] { + t.Fatal("click did not open disclosure") + } + if live { + changed := agent.snaps["r1"] + changed.Nodes[0].State = orchestrate.Done + agent.snaps["r1"] = changed + } + orchPollNow(t, a) + if got := a.orchTranscriptDeck().workOpen[key]; got == live { + t.Fatalf("after poll open=%v, want %v", got, !live) + } + if a.orchTranscriptDeck().workOpen[key] { + a.toggleWorkfold(key) + } + rows := a.roomRows(a.bodyWidth()) + if a.roomUnfoldAtTop(len(rows), len(rows)) || a.orchTranscriptDeck().workOpen[key] { + t.Fatal("scroll reopened settled nested transcript inside live parent") + } + // A different node must not inherit an old call's index-based state. + for i := range a.orchOf().journal { + if a.orchOf().journal[i].kind == entryTool { + a.orchOf().journal[i].open = true + } + } + agent.journals["r1:rfcs"] = path + a.orchOpenTranscript("rfcs") + for _, e := range a.orchOf().journal { + if e.open || e.full { + t.Fatal("another node inherited expanded content") + } + } + if len(a.orchTranscriptDeck().workOpen) != 0 { + t.Fatal("another node inherited an open disclosure") + } + }) + } +} diff --git a/internal/tui3/phasehierarchy_test.go b/internal/tui3/phasehierarchy_test.go index 4efe6e8753..518335426a 100644 --- a/internal/tui3/phasehierarchy_test.go +++ b/internal/tui3/phasehierarchy_test.go @@ -1,6 +1,7 @@ package tui3 import ( + "github.com/Agent-Field/codeaf/internal/tui2/tokens" "strings" "testing" @@ -108,12 +109,7 @@ func TestARoomPhaseCaptionDoesNotHideAFailedNextStep(t *testing.T) { if !a.room.entries[2].demoted || a.room.entries[4].demoted { t.Fatal("the failed step did not separate progress from its final explanation") } - for _, f := range a.deckFolds(a.room.deck()) { - if f.start <= 3 && f.answer > 3 { - t.Fatalf("a fold hid the failed step: %#v", f) - } - } - phaseHierarchyRow(t, drawn, "integration assertion failed") + phaseHierarchyRow(t, drawn, a.icon(tokens.GFailed)+" 1 failed") phaseHierarchyRow(t, drawn, "The migration still fails its compatibility check") } diff --git a/internal/tui3/render.go b/internal/tui3/render.go index 74dbb1aed3..0b96eceb47 100644 --- a/internal/tui3/render.go +++ b/internal/tui3/render.go @@ -390,6 +390,10 @@ func (a *app) deckRows(d deck, width int) ([]row, bool) { // chip per phase, and a row that carried the turn would make every // chip on it one control. open := a.workFoldOpen(d, f.key) + if !open && housekeepingFold(es, f) { + i = f.answer - 1 + continue + } // The chip stands where the turn's work stood, so it takes the same // blank the work's first block would have taken — which after the // person's message is the change-of-speaker gap wasUser buys. @@ -407,33 +411,34 @@ func (a *app) deckRows(d deck, width int) ([]row, bool) { wasCluster, wasBlock, wasUser, wasNote = false, false, false, false continue } - // OPEN IS THE OUTLINE: every finished step as a caption line. A click - // (or enter) on a caption opens only that step's calls — so the page - // stays a stack of what happened, not a dump of every tool again. - drewCaption := false + // Captions own only their own spans. Walk every other entry too: + // reasoning, team replies and receipts must remain reachable when + // the reader opens the disclosure. + captions := make(map[int]caption) for _, c := range d.captions { - toolsFrom, toolsTo := captionTools(c, es) - if toolsFrom < f.start || toolsFrom >= f.answer { - continue + if c.start >= f.start && c.end <= f.answer { + captions[c.start] = c } - drewCaption = true - capOpen := a.captionCallsOpen(d, c) - out = append(out, a.captionRows(c, false, capOpen, width, d)...) - if capOpen { - out = append(out, a.captionBody(d, c, width)...) - for at := toolsFrom; at < toolsTo; at++ { - out = append(out, a.toolRows(d, at, at == toolsTo-1, width)...) + } + for at := f.start; at < f.answer; at++ { + if c, ok := captions[at]; ok { + capOpen := a.captionCallsOpen(d, c) + out = append(out, a.captionRows(c, false, capOpen, width, d)...) + if capOpen { + out = append(out, a.captionSpanBody(d, c, width)...) + from, to := captionTools(c, es) + for call := from; call < to; call++ { + out = append(out, a.toolRows(d, call, call == to-1, width)...) + } } + at = c.end - 1 + continue } + out = append(out, a.disclosedEntryRows(d, at, width)...) } - if drewCaption { - i = f.answer - 1 - wasCluster, wasBlock, wasUser, wasNote = true, false, false, false - continue - } - // A fold with no captions keeps the old expansion so history is never - // behind an empty outline. - wasUser = false + i = f.answer - 1 + wasCluster, wasBlock, wasUser, wasNote = true, false, false, false + continue } if e.turn != walk.turn { // The turn before this one is over: its receipt, and then the mark @@ -460,8 +465,12 @@ func (a *app) deckRows(d deck, width int) ([]row, bool) { // working. The frontier keeps everything it has, and a non-frontier run // that DOES hold steps still draws its block: those steps are work with // nothing else on the page to say it. - if w, ok := lives[i]; ok && (w.last || len(w.steps) > 0) { + if w, ok := lives[i]; ok { if !a.workFoldOpen(d, w.key) { + if !w.last { + i = w.end - 1 + continue + } // The block owns its activity door before the first caption, // and spends the ordinary gap only when it actually draws. rows := a.liveStepBlock(w, width, d) @@ -492,9 +501,7 @@ func (a *app) deckRows(d deck, width int) ([]row, bool) { step := 0 for at := w.start; at < w.end; at++ { if step >= len(w.steps) || at != w.steps[step].start { - for _, text := range a.entryRows(d, at, width) { - out = append(out, row{text: text, entry: at}) - } + out = append(out, a.disclosedEntryRows(d, at, width)...) continue } c := w.steps[step] @@ -507,7 +514,7 @@ func (a *app) deckRows(d deck, width int) ([]row, bool) { if !capOpen { continue } - out = append(out, a.captionBody(d, c, width)...) + out = append(out, a.captionSpanBody(d, c, width)...) toolsFrom, toolsTo := captionTools(c, es) // AND AN OPEN STEP KEEPS THE CALL WINDOW IT ALREADY HAD. This is // the same batch the cluster below draws with the same budget @@ -577,9 +584,11 @@ func (a *app) deckRows(d deck, width int) ([]row, bool) { for end < len(es) && es[end].kind == entryDone { end++ } - gap() - out = a.doneCluster(d, out, i, end, width) - wasCluster, wasBlock, wasUser, wasNote = false, true, false, false + if cards := a.doneCluster(d, nil, i, end, width); len(cards) > 0 { + gap() + out = append(out, cards...) + wasCluster, wasBlock, wasUser, wasNote = false, true, false, false + } i = end - 1 continue } @@ -863,6 +872,52 @@ func (a *app) captionBody(d deck, c caption, width int) []row { return out } +// captionSpanBody restores entries skipped together with a folded caption. +// The ordinary unfurled walk renders these itself; compact and workfold walks +// skip the entire span and must include intervening reasoning and deliveries. +func (a *app) captionSpanBody(d deck, c caption, width int) []row { + out := a.captionBody(d, c, width) + from, _ := captionTools(c, d.entries) + for at := c.start; at < from; at++ { + if at == c.head { + continue + } + out = append(out, a.disclosedEntryRows(d, at, width)...) + } + return out +} + +// disclosedEntryRows preserves each retained entry's interaction when the +// surrounding work is opened, including landed-card doors and assistant links. +func (a *app) disclosedEntryRows(d deck, at, width int) []row { + e := &d.entries[at] + if e.kind == entryDone { + return a.doneCluster(d, nil, at, at+1, width) + } + if e.kind == entryTool { + return a.toolRows(d, at, true, width) + } + var out []row + links := 0 + for n, text := range a.entryRows(d, at, width) { + r := row{text: text, entry: at} + if e.kind == entryAssistant { + hot := -1 + if h := a.hoveringLink(at); h >= 0 { + hot = h - links + } + r.text, r.links = a.linkTasks(text, hot) + for j := range r.links { + r.links[j].ord = links + j + } + links += len(r.links) + r.foot = e.feet[n] + } + out = append(out, r) + } + return out +} + // opensTurn reports whether the entry at i is the first thing its turn drew. // A cluster that opens a turn follows the person's own message, whose // change-of-speaker gap (wasUser, in [app.deckRows]) is the one blank that diff --git a/internal/tui3/replay.go b/internal/tui3/replay.go index d11383a022..58d5134f00 100644 --- a/internal/tui3/replay.go +++ b/internal/tui3/replay.go @@ -697,11 +697,15 @@ func (a *app) replayBlocks(entries []session.DisplayEntry, shape replayShape) ([ }) case "assistant": + var confirmation *responseConfirmation + if e.Answer { + confirmation = &responseConfirmation{done: true} + } if text == "" { continue // a step that only called tools; its calls follow } blocks = append(blocks, entry{ - kind: entryAssistant, text: text, turn: turn, settled: true, + kind: entryAssistant, text: text, turn: turn, settled: true, confirmed: confirmation, replyTags: append([]session.TaskReplyTag(nil), e.ReplyTags...), }) diff --git a/internal/tui3/room.go b/internal/tui3/room.go index 3e7953e005..60c8534d85 100644 --- a/internal/tui3/room.go +++ b/internal/tui3/room.go @@ -8,6 +8,7 @@ import ( tea "charm.land/bubbletea/v2" "github.com/charmbracelet/x/ansi" + "github.com/Agent-Field/codeaf/internal/orchestrate" "github.com/Agent-Field/codeaf/internal/provider" "github.com/Agent-Field/codeaf/internal/session" "github.com/Agent-Field/codeaf/internal/tui2/tokens" @@ -4155,6 +4156,13 @@ func (a *app) roomUnfoldAtTop(total, height int) bool { if room == nil || room.done { return false } + // The nested node can be finished while its containing run is still live. + // Scrolling that transcript must not reopen completed work automatically. + if run := a.orchOf(); run != nil && run.transcript != "" { + if node, ok := orchNodeOf(run.snap, run.transcript); !ok || node.State != orchestrate.Running { + return false + } + } rows := a.roomRows(a.bodyWidth()) end := min(height, total) var open func() @@ -4204,7 +4212,7 @@ func (a *app) roomFoldDoor(r row) func() { case hitWorkFold: // A CHIP ALREADY SHOWING ITS WORK IS NOT A DOOR — whether the reader // opened it or `ui.work = open` did (render.go's [app.deckRows]). - if a.room == nil || a.workFoldOpen(a.room.deck(), r.turn) { + if a.room == nil || a.workFoldOpen(a.bodyDeck(), r.turn) { return nil } return func() { a.openWorkfold(r.turn) } diff --git a/internal/tui3/roomfold_test.go b/internal/tui3/roomfold_test.go index b029303dfa..5ef6308c2d 100644 --- a/internal/tui3/roomfold_test.go +++ b/internal/tui3/roomfold_test.go @@ -10,6 +10,7 @@ package tui3 import ( "errors" + "github.com/Agent-Field/codeaf/internal/tui2/tokens" "reflect" "strings" "testing" @@ -236,13 +237,17 @@ func TestTrailingWorkWithNoReplyStaysWholeOnALandedRoom(t *testing.T) { )) landRoom(t, a) - if folds := a.deckFolds(readingDeck(a)); len(folds) != 0 { - t.Fatalf("a stretch with no reply folded anyway: %+v", folds) + if folds := a.deckFolds(readingDeck(a)); len(folds) == 0 { + t.Fatal("settled operational tail has no disclosure") } page := readingPage(a) - if strings.Contains(page, "▸ worked") { - t.Fatalf("a chip was drawn over work that reached no reply:\n%s", page) + if !strings.Contains(page, "▸ worked") || strings.Contains(page, "index.html") { + t.Fatalf("settled tail was not compact:\n%s", page) } + a.toggleLatestWorkfold() + a.room.capOpen = map[int]bool{1: true} + a.room.dirty = true + page = readingPage(a) for _, want := range []string{"Draw two posters", "Reading the site first", "index.html"} { if !strings.Contains(page, want) { t.Fatalf("the page lost %q, which is all the account there is:\n%s", want, page) @@ -280,8 +285,8 @@ func TestAFailedCallAtTheTailIsStillOnALandedPage(t *testing.T) { t.Fatalf("the fixture never drew a failed call: %#v", a.room.entries) } page := readingPage(a) - if !strings.Contains(page, "generate_image") { - t.Fatalf("the failed call was folded away:\n%s", page) + if !strings.Contains(page, a.icon(tokens.GFailed)+" 1 failed") { + t.Fatalf("the compact failure status is missing:\n%s", page) } if !strings.Contains(page, "Now generating both.") { t.Fatalf("the last thing the node said is gone:\n%s", page) @@ -304,8 +309,8 @@ func TestARunningRoomStillReadsByPhaseAndKeepsItsFrontier(t *testing.T) { }}) page := readingPage(a) - if n := strings.Count(page, "▸ worked"); n != 2 { - t.Fatalf("want a chip per settled phase behind the frontier, got %d:\n%s", n, page) + if n := strings.Count(page, "▸ worked"); n != 0 { + t.Fatalf("running work must use one activity window, found %d historical chips:\n%s", n, page) } if !strings.Contains(page, "Still working") || strings.Contains(page, "bash") { t.Fatalf("compact frontier lost prose or exposed the call:\n%s", page) @@ -317,8 +322,8 @@ func TestARunningRoomStillReadsByPhaseAndKeepsItsFrontier(t *testing.T) { t.Fatalf("opened frontier lost %q:\n%s", want, page) } } - if n := strings.Count(page, "▸ worked"); n != 2 { - t.Fatalf("opening live work changed settled phases:\n%s", page) + if n := strings.Count(page, "▸ worked"); n != 0 { + t.Fatalf("opening live work introduced extra phase chips:\n%s", page) } } @@ -361,13 +366,10 @@ func TestOnlyTheFoldStyleChangesWhenARoomLands(t *testing.T) { func TestOpenedChipsShutWhenTheWorkLands(t *testing.T) { a := openRoomOn(t, landedJournal(t)) live := readingDeck(a) - folds := a.deckFolds(live) - if len(folds) == 0 { - t.Fatal("the running page folded nothing, so this proves nothing") - } - for _, f := range folds { - a.setWorkOpen(live, f.key, true) + if folds := a.deckFolds(live); len(folds) != 0 { + t.Fatal("running turn has extra phase chips outside its activity window") } + a.setWorkOpen(live, liveWorkKey(live), true) landRoom(t, a) diff --git a/internal/tui3/roomorch.go b/internal/tui3/roomorch.go index 3e0a347540..a33f91ec74 100644 --- a/internal/tui3/roomorch.go +++ b/internal/tui3/roomorch.go @@ -130,9 +130,11 @@ type orchRun struct { // transcript is the node journal descended into from its card. It is another // level of this page, not another room: esc returns to the card and the room's // own scroll remains private from the main conversation. - transcript string - journal []entry - journalSet bool + transcript string + journal []entry + journalSet bool + journalWork, journalCaps, journalUnfolded map[int]bool + journalLive bool // following says the last poll found the open transcript's node still // running, which is what buys it ONE more read after the node stops — see @@ -487,7 +489,12 @@ func (a *app) orchRead() { if live || run.following { a.orchReadTranscript() } - run.following = live + if run.journalLive && !live { + clear(run.journalWork) + clear(run.journalCaps) + clear(run.journalUnfolded) + } + run.following, run.journalLive = live, live } } // THE FIRST READ MARKS NOTHING. "New" means "this arrived while you were @@ -1032,6 +1039,11 @@ func (a *app) orchOpenTranscript(node string) { return } run.transcript, run.journalSet, run.following = node, false, true + run.journalWork, run.journalCaps, run.journalUnfolded = nil, nil, nil + run.journalLive = false + if n, ok := orchNodeOf(run.snap, node); ok { + run.journalLive = n.State == orchestrate.Running + } a.orchReadTranscript() a.room.stick, a.room.offset = true, 0 a.roomTouched() @@ -1052,17 +1064,48 @@ func (a *app) orchReadTranscript() { if run.journalSet && reflect.DeepEqual(run.journal, next) { return } + previous := run.journal + previousFolds := a.deckFolds(a.orchTranscriptDeck()) + if !run.journalSet { + previous, previousFolds = nil, nil + } // A LIVE NODE'S JOURNAL IS RE-READ WHOLE as it grows, and the fresh parse // knows nothing about what the reader opened. The expansion state is // carried across by index — the journal is append-only, so an index still // names the call it named — because a person reading a diff they opened // must not have it snap shut every time the node says another line. for i := range next { - if i < len(run.journal) { - next[i].open, next[i].full = run.journal[i].open, run.journal[i].full + if i < len(previous) { + next[i].open, next[i].full = previous[i].open, previous[i].full } } run.journal, run.journalSet = next, true + // A new response can wrap a previously visible call in its first phase + // disclosure. Carry the reader's explicit expansion into that new wrapper; + // an existing closed disclosure stays closed. The actual node landing + // clears these maps in orchRead, so completion still restores compactness. + captions := deriveCaptions(next, 0) + for _, fold := range a.deckFolds(a.orchTranscriptDeck()) { + if old, exists := previousFolds[fold.start]; exists { + if run.journalWork[old.key] { + run.journalWork[fold.key] = true + } + continue + } + for i := fold.start; i < fold.answer && i < len(previous); i++ { + if i >= 0 && (previous[i].kind == entryTool || previous[i].kind == entryThinking) && + (previous[i].open || previous[i].full) { + run.journalWork[fold.key] = true + for _, c := range captions { + if i >= c.start && i < c.end { + if _, chosen := run.journalCaps[c.start]; !chosen { + run.journalCaps[c.start] = true + } + } + } + } + } + } if a.room != nil { a.room.dirty, a.room.stick = true, true } @@ -1094,15 +1137,24 @@ func (a *app) orchTranscriptRows(page *orchPage, width int) { // expansion doors both read — ONE deck, so a click that opens a call and the // next paint that draws it are looking at the same entries. // -// IT TAKES [transcriptLens], WHICH IS THE ONE POSTURE THAT FOLDS NOTHING, and -// lens.go carries the argument in full: somebody descended from a graph into a -// node's transcript to read what that node did, and this deck mints its fold -// state fresh on every read — so a chip here would both answer the gesture -// with the line they already had and have no door that worked. +// Disclosure belongs to the selected node and survives each journal refresh. func (a *app) orchTranscriptDeck() deck { run := a.orchOf() - return deck{entries: run.journal, unfolded: map[int]bool{}, workOpen: map[int]bool{}, - capOpen: map[int]bool{}, lens: transcriptLens} + if run.journalWork == nil { + run.journalWork = make(map[int]bool) + } + if run.journalCaps == nil { + run.journalCaps = make(map[int]bool) + } + if run.journalUnfolded == nil { + run.journalUnfolded = make(map[int]bool) + } + running := 0 + if node, ok := orchNodeOf(run.snap, run.transcript); ok && node.State == orchestrate.Running && len(run.journal) > 0 { + running = run.journal[len(run.journal)-1].turn + } + return deck{entries: run.journal, unfolded: run.journalUnfolded, workOpen: run.journalWork, + capOpen: run.journalCaps, lens: transcriptLens, runningTurn: running} } // orchCardOpen puts one node's card up, with the cursor at the top of its links. diff --git a/internal/tui3/roomorch_test.go b/internal/tui3/roomorch_test.go index 0caabd4456..b3e8c6f3dc 100644 --- a/internal/tui3/roomorch_test.go +++ b/internal/tui3/roomorch_test.go @@ -920,6 +920,32 @@ func TestANodeTranscriptsToolCallsOpenOnAClick(t *testing.T) { a.orchOpenTranscript("write") a.touch() + // Open the default folded work and its step before inspecting one call. + for step := 0; step < 2; step++ { + visible := a.roomRows(a.bodyWidth()) + toolVisible := false + for _, r := range visible { + if r.hit == hitTool { + toolVisible = true + break + } + } + if toolVisible { + break + } + for i, r := range visible { + if r.hit != hitWorkFold && r.hit != hitCaption { + continue + } + if r.hit == hitWorkFold && a.workFoldOpen(a.bodyDeck(), r.turn) { + continue + } + y := roomRowY(a, i) + drive(t, a, tea.MouseClickMsg{X: 4, Y: y, Button: tea.MouseLeft}, tea.MouseReleaseMsg{X: 4, Y: y, Button: tea.MouseLeft}) + break + } + } + rows := a.roomRows(a.bodyWidth()) at := -1 for i, r := range rows { diff --git a/internal/tui3/taskdismiss.go b/internal/tui3/taskdismiss.go new file mode 100644 index 0000000000..462f0acb5b --- /dev/null +++ b/internal/tui3/taskdismiss.go @@ -0,0 +1,36 @@ +package tui3 + +import "github.com/Agent-Field/codeaf/internal/session" + +// Dismissal is presentation state. It never stops, deletes or accepts work. +func (a *app) dismissDone(i int) bool { + card := a.doneCardAt(i) + if card == nil || card.dismissed || card.status.Tier == session.TaskTierYourCall { + return false + } + card.dismissed = true + a.sel = -1 + a.touch() + return true +} + +func (a *app) dismissNotifications(arg string) { + if a.roomOpen() { + a.note("return to the conversation to dismiss notifications") + return + } + if arg != "" && arg != "undo" { + a.note("use /dismiss or /dismiss undo") + return + } + for i := range a.entries { + if arg == "undo" { + if card := a.doneCardAt(i); card != nil { + card.dismissed = false + } + } else { + a.dismissDone(i) + } + } + a.touch() +} diff --git a/internal/tui3/taskdismiss_test.go b/internal/tui3/taskdismiss_test.go new file mode 100644 index 0000000000..92674a7854 --- /dev/null +++ b/internal/tui3/taskdismiss_test.go @@ -0,0 +1,152 @@ +package tui3 + +import ( + "strings" + "testing" + + "github.com/Agent-Field/codeaf/internal/session" +) + +func TestSettledNotificationIsOneRowUntilOpened(t *testing.T) { + a, _, _ := taskApp(t) + card := &taskDone{title: "Fix parser", status: session.ProjectTask(session.TaskFacts{State: session.TaskDone}), outcome: "internal account", result: "**Visible answer**"} + if rows := a.doneRows(card, 100, false); len(rows) != 1 || strings.Contains(plain(strings.Join(rows, "\n")), "internal account") { + t.Fatalf("collapsed card: %v", rows) + } + card.open = true + if rows := plain(strings.Join(a.doneRows(card, 100, false), "\n")); !strings.Contains(rows, "Visible answer") { + t.Fatalf("answer lost: %s", rows) + } +} + +func TestNotificationBatchFoldsAndKeepsPendingDecisionVisible(t *testing.T) { + a, _, _ := taskApp(t) + for i := 1; i <= 3; i++ { + drive(t, a, streamEventMsg{gen: a.gen, ev: update(uint64(i), "Completed work", session.TaskDone, session.TaskNotice{Report: "account"})}) + } + d := deck{entries: a.entries} + rows := a.doneCluster(d, nil, 0, len(d.entries), 100) + if len(rows) != 1 { + t.Fatalf("batch has %d rows, want one", len(rows)) + } + a.openDone(rows[0].entry) + if rows = a.doneCluster(d, nil, 0, len(d.entries), 100); len(rows) <= 3 { + t.Fatalf("batch did not expand: %v", rows) + } + a.openDone(rows[0].entry) + drive(t, a, streamEventMsg{gen: a.gen, ev: update(4, "Needs decision", session.TaskUnverified, unverifiedNotice("needs review"))}) + d = deck{entries: a.entries} + rows = a.doneCluster(d, nil, 0, len(d.entries), 100) + text := "" + for _, r := range rows { + text += plain(r.text) + "\n" + } + if !strings.Contains(text, "Needs decision") || !strings.Contains(text, askCheckReason) { + t.Fatalf("pending decision hidden: %s", text) + } +} + +func TestDismissNotificationsPreservesRecordsAndUndo(t *testing.T) { + a, _, _ := taskApp(t) + drive(t, a, streamEventMsg{gen: a.gen, ev: update(1, "Finished", session.TaskDone, session.TaskNotice{Report: "saved output"})}, streamEventMsg{gen: a.gen, ev: update(2, "Needs decision", session.TaskUnverified, unverifiedNotice("needs review"))}) + count := len(a.entries) + first := a.doneEntryFor(1) + if !a.dismissDone(first) { + t.Fatal("settled card not dismissed") + } + if len(a.entries) != count || a.doneCardAt(first).report != "saved output" { + t.Fatal("dismissal changed record") + } + if a.dismissDone(a.doneEntryFor(2)) { + t.Fatal("pending decision dismissed") + } + a.dismissNotifications("undo") + if a.doneCardAt(first).dismissed { + t.Fatal("undo did not restore card") + } + a.dismissNotifications("") + if !a.doneCardAt(first).dismissed || a.doneCardAt(a.doneEntryFor(2)).dismissed { + t.Fatal("dismiss all changed pending decision") + } +} + +func TestDeleteDismissesSelectedNotificationAndNavigationSkipsHiddenCards(t *testing.T) { + a, _, _ := taskApp(t) + for i := 1; i <= 3; i++ { + drive(t, a, streamEventMsg{gen: a.gen, ev: update(uint64(i), "Completed work", session.TaskDone, session.TaskNotice{})}) + } + first := a.doneEntryFor(1) + if head := plain(a.doneHead(a.doneCardAt(first), 120, true)); !strings.Contains(head, "delete dismiss") { + t.Fatalf("selected notification has no dismissal hint: %s", head) + } + a.sel = -1 + if !a.selectTool(1) || a.sel != first { + t.Fatalf("folded header not selectable: %d", a.sel) + } + if a.selectTool(1) { + t.Fatalf("folded child selected: %d", a.sel) + } + a.sel = first + drive(t, a, key("delete")) + if !a.doneCardAt(first).dismissed { + t.Fatal("delete did not dismiss selected card") + } + if !a.selectTool(1) || a.sel == first { + t.Fatalf("navigation selected hidden card: %d", a.sel) + } + a.dismissNotifications("") + a.sel = -1 + if a.selectTool(1) { + t.Fatalf("dismissed batch selectable: %d", a.sel) + } + a.dismissNotifications("undo") + if !a.selectTool(1) { + t.Fatal("undo did not restore keyboard access") + } +} + +func TestPendingDecisionStaysOutsideConversationWorkfold(t *testing.T) { + a, _, _ := taskApp(t) + card := &taskDone{id: 7, title: "Review parser", status: session.ProjectTask(session.TaskFacts{State: session.TaskUnverified})} + a.entries = []entry{ + {kind: entryUser, text: "Fix it", turn: 1}, + {kind: entryTool, tool: "read", status: toolOK, turn: 1}, + {kind: entryDone, done: card, turn: 1}, + {kind: entryAssistant, text: "Please review the result.", settled: true, turn: 1}, + } + a.touch() + text := taskText(a) + if !strings.Contains(text, "Review parser") || !strings.Contains(text, askCheckReason) { + t.Fatalf("pending decision folded away: %s", text) + } +} + +func TestDismissedNotificationStaysHiddenOnUpdateButNewDecisionAppears(t *testing.T) { + a, _, _ := taskApp(t) + drive(t, a, streamEventMsg{gen: a.gen, ev: update(1, "Finished", session.TaskDone, session.TaskNotice{Report: "output"})}) + at := a.doneEntryFor(1) + a.dismissDone(at) + drive(t, a, streamEventMsg{gen: a.gen, ev: update(1, "Finished", session.TaskDone, session.TaskNotice{Report: "output", CostUSD: 1})}) + if !a.doneCardAt(at).dismissed { + t.Fatal("same landing reappeared after metadata update") + } + drive(t, a, streamEventMsg{gen: a.gen, ev: update(1, "Finished", session.TaskUnverified, unverifiedNotice("new decision"))}) + latest := a.doneCardAt(a.doneEntryFor(1)) + if latest.dismissed || latest.status.Tier != session.TaskTierYourCall { + t.Fatal("new decision hidden by earlier dismissal") + } +} + +func TestDismissedNotificationsLeaveNoBlankRowsOrEmptyWorkfold(t *testing.T) { + a, _, _ := taskApp(t) + base := []entry{{kind: entryUser, text: "Hello", turn: 1}, {kind: entryAssistant, text: "Answer.", settled: true, turn: 1}} + a.entries = append([]entry(nil), base...) + a.touch() + want := taskText(a) + card := &taskDone{title: "Hidden", dismissed: true, status: session.ProjectTask(session.TaskFacts{State: session.TaskDone})} + a.entries = []entry{base[0], {kind: entryDone, done: card, turn: 1}, base[1]} + a.touch() + if got := taskText(a); got != want { + t.Fatalf("dismissal left clutter:\nwant %q\ngot %q", want, got) + } +} diff --git a/internal/tui3/taskdone.go b/internal/tui3/taskdone.go index 7df8570343..0b04192154 100644 --- a/internal/tui3/taskdone.go +++ b/internal/tui3/taskdone.go @@ -10,37 +10,8 @@ import ( "github.com/Agent-Field/codeaf/internal/tui2/tokens" ) -// WORK COMING HOME IS AN EVENT, AND IT GETS A CARD. -// -// What stood here was one dim line — "task Fix the nil-map crash done in 2m 10s -// · merged" — wedged into the transcript between two paragraphs, in the same -// grey the surface uses to mutter about its own housekeeping. That line is -// wrong in proportion to how much it is worth: it is the END of something a -// person delegated ten minutes ago, it is the only place the outcome is ever -// stated, and it was drawn quieter than the tool call that read a file. -// -// ✓ ◆ Fix nil-map crash · done · 4m12s · 3 files -// "the guard is in and the regression test passes" · started 14:02 · ctrl+o output -// -// TWO ROWS, AND THE SECOND IS THE ONE THAT PAYS. The head is what happened; the -// muted line under it is what came of it, in the node's own first sentence, -// with the two facts that let a person go back to it — when it started, and the -// key that opens what it actually did. -// -// It is the same card in three states, which is the whole of decision 4: a -// proposal collapsed is a title and a subtitle (task.go), a landed node -// collapsed is a title and an outcome, and BOTH open onto the full context -// behind the same two gestures. A person who has learned that a card has more -// inside it has learned it once. -// -// ── A BATCH IS ONE OBJECT ── -// -// Three nodes finishing within a second of each other used to write three -// lines, each repeating the word "task", and between them they said one thing: -// the batch is home. So a run of more than two lands as a ROLLUP — a header -// that counts them, a compact row each, and the outcome sentence on the most -// recent one only. The rest of the outcomes are one keystroke away on their own -// rows, which is where they were going to be read anyway. +// Landings stay compact until opened. Dismissal changes only presentation; +// records, output and pending decisions remain available. // taskDone is one landed node, as the transcript keeps it. // @@ -126,6 +97,8 @@ type taskDone struct { // open says the full context is showing, behind the same expand mechanic // every other card on this surface is behind. open bool + // Dismissal only affects this window; the task record stays in Sessions. + dismissed bool // gut is how many columns of the READING GUTTER this card's rows already // carry (gutter.go), for the reason the proposal's own spans carry one // (task.go's [taskCard]). @@ -397,12 +370,18 @@ func (a *app) openDone(i int) bool { // it: whether a batch rolls up is a property of the RUN and not of any card in // it. func (a *app) doneCluster(d deck, out []row, from, to, width int) []row { - if to-from > doneRollupFloor { + visible := 0 + for i := from; i < to; i++ { + if card := d.entries[i].done; card != nil && !card.dismissed && !supersededIn(d, i, to) { + visible++ + } + } + if visible > doneRollupFloor { return a.rollupRows(d, out, from, to, width) } for i := from; i < to; i++ { card := d.entries[i].done - if card == nil { + if card == nil || card.dismissed || supersededIn(d, i, to) { continue } for _, text := range a.doneRows(card, width, a.selected(i)) { @@ -412,20 +391,20 @@ func (a *app) doneCluster(d deck, out []row, from, to, width int) []row { return out } -// doneRollupFloor is how many cards a batch has to have before it becomes one -// object. Two full cards are four rows and read as two events, which is what -// they are; three are six rows saying the word "task" three times. -const doneRollupFloor = 2 +// doneRollupFloor keeps two or more adjacent notifications in one folded row. +const doneRollupFloor = 1 -// doneRows is one card whole: the head, the outcome line, and the full context -// when it is open. +// doneRows draws one compact notification. Only an open card or pending +// decision needs more than its headline. func (a *app) doneRows(card *taskDone, width int, sel bool) []string { - if card == nil || width < 8 { + if card == nil || card.dismissed || width < 8 { return nil } out := []string{a.doneHead(card, width, sel)} - if line := a.doneUnder(card, width); line != "" { - out = append(out, line) + if card.open || card.status.Tier == session.TaskTierYourCall { + if line := a.doneUnder(card, width); line != "" { + out = append(out, line) + } } return append(out, a.doneDetail(card, width)...) } @@ -450,6 +429,12 @@ func (a *app) doneRows(card *taskDone, width int, sel bool) []string { func (a *app) doneHead(card *taskDone, width int, sel bool) string { lead := a.doneMark(card) + " " + a.taskMarkSel(card.ident, sel) + " " tail := a.doneTail(card) + if !card.open { + tail += " · ctrl+o" + } + if sel && card.status.Tier != session.TaskTierYourCall { + tail += " · delete dismiss" + } // THE TAIL GOES FIRST WHEN THE TERMINAL IS NARROW, which is the tool line's // own rule for the same reason (toolview.go): the name is the substance, and // an outcome hung off a title nobody can read is a fact about nothing. @@ -1111,42 +1096,42 @@ func capFieldMark(lines []string, mark string) []string { // ── the rollup ────────────────────────────────────────────────────────────── -// rollupRows draws a batch as one object: -// -// ✓ 3 tasks done · 9m14s -// ◆ Fix nil-map crash · 4m12s · 3 files -// ▲ Collect sources · 1m02s -// ● Mix audio · 4m00s -// "the mix is level and the stems are kept" · started 14:02 · ctrl+o output -// -// THE OUTCOME IS THE MOST RECENT ONE'S, AND ONLY ITS. Three quoted sentences -// stacked under a header is the thing this rollup exists to stop being; the -// last one is the one a person is most likely to be waiting on, and every other -// card opens its own on its own row. -// -// Each compact row keeps its own entry, so a click expands THAT card in place -// and the rollup stays a rollup. The header carries the run's first card, which -// is the only entry a header could honestly point at. +// rollupRows draws one expandable batch, with pending decisions always visible. func (a *app) rollupRows(d deck, out []row, from, to, width int) []row { - out = append(out, row{text: a.rollupHead(d, from, to, width), entry: from, hit: hitDone}) - last := -1 + first := -1 + for i := from; i < to; i++ { + if card := d.entries[i].done; card != nil && !card.dismissed && !supersededIn(d, i, to) { + first = i + break + } + } + if first < 0 { + return out + } + open := d.entries[first].done.open + head := a.rollupHead(d, from, to, width) + if !open { + head = fitPainted(head+a.pal.dim(" · ctrl+o expand · /dismiss"), width) + } + out = append(out, row{text: head, entry: first, hit: hitDone}) for i := from; i < to; i++ { card := d.entries[i].done - if card == nil || supersededIn(d, i, to) { + if card == nil || card.dismissed || supersededIn(d, i, to) { continue } - last = i - out = append(out, row{text: a.rollupRow(card, width, a.selected(i)), entry: i, hit: hitDone}) - for _, text := range a.doneDetail(card, width-2) { - out = append(out, row{text: " " + text, entry: i, hit: hitDone}) + // A decision is never hidden inside a folded batch. + if !open && card.status.Tier != session.TaskTierYourCall { + continue } - } - if last >= 0 { - if card := d.entries[last].done; card != nil && !card.open { + out = append(out, row{text: a.rollupRow(card, width, a.selected(i)), entry: i, hit: hitDone}) + if card.status.Tier == session.TaskTierYourCall { if line := a.doneUnder(card, width-2); line != "" { - out = append(out, row{text: " " + line, entry: last, hit: hitDone}) + out = append(out, row{text: " " + line, entry: i, hit: hitDone}) } } + for _, text := range a.doneDetail(card, width-2) { + out = append(out, row{text: " " + text, entry: i, hit: hitDone}) + } } return out } @@ -1163,7 +1148,7 @@ func (a *app) rollupHead(d deck, from, to, width int) string { var first, last time.Time for i := from; i < to; i++ { card := d.entries[i].done - if card == nil || supersededIn(d, i, to) { + if card == nil || card.dismissed || supersededIn(d, i, to) { continue } count++ diff --git a/internal/tui3/taskresult_test.go b/internal/tui3/taskresult_test.go index 9a8d427aa4..10c25f8d66 100644 --- a/internal/tui3/taskresult_test.go +++ b/internal/tui3/taskresult_test.go @@ -166,23 +166,20 @@ func TestTheLandingsOwnDetailStaysOnTheCardUnderTheHeadline(t *testing.T) { } } -// AN OPEN CARD DOES NOT REPEAT ITS OWN PREVIEW. The muted line under the head -// quotes the landing's first sentence, which is the sentence the expansion -// prints in full one row lower — so on an open card the quote stands down. It -// is still there the moment the card is closed again. +// A compact card keeps its account inside; opening draws that account once. func TestAnOpenCardDropsTheQuotedPreviewItIsAboutToPrintInFull(t *testing.T) { a := doneResultApp(t, 160, session.TaskDone, conflictedStoryNotice()) collapsed := taskText(a) - if !strings.Contains(collapsed, `"its branch task/write-a-10-chapter-story-9c1a did not merge cleanly`) { - t.Fatalf("the collapsed card lost its preview:\n%s", collapsed) + if strings.Contains(collapsed, "did not merge cleanly") { + t.Fatalf("the collapsed card leaked its detail:\n%s", collapsed) } clickHit(t, a, hitDone) open := taskText(a) if strings.Contains(open, `"its branch`) { t.Fatalf("the open card still quotes the sentence it prints in full:\n%s", open) } - // And closing it brings the preview back, unchanged. + // Closing it restores the compact notification unchanged. clickHit(t, a, hitDone) if again := taskText(a); again != collapsed { t.Fatalf("closing the card did not restore it:\nwas:\n%s\nnow:\n%s", collapsed, again) diff --git a/internal/tui3/timestamps.go b/internal/tui3/timestamps.go index 04996c40ef..a9c109d942 100644 --- a/internal/tui3/timestamps.go +++ b/internal/tui3/timestamps.go @@ -267,7 +267,7 @@ type stampWalk struct { // each block asks once. func (a *app) stampBlock(d deck, out []row, walk *stampWalk, i, width int, gap func()) ([]row, bool) { drew := false - if line := a.stampRow(walk.turn, width); line != "" { + if line := a.stampRow(walk.turn, width); line != "" && (a.workFoldOpen(d, walk.turn) || d.unfolded[walk.turn]) { gap() out = append(out, row{text: line, entry: -1}) drew = true diff --git a/internal/tui3/timestamps_test.go b/internal/tui3/timestamps_test.go index 3dfada00cc..209e6cb1da 100644 --- a/internal/tui3/timestamps_test.go +++ b/internal/tui3/timestamps_test.go @@ -21,7 +21,7 @@ import ( func clockApp(t *testing.T, agent Agent, rung string) (*app, func(time.Duration)) { t.Helper() dir := t.TempDir() - body := []byte(`{"` + config.KeyTimestamps + `":"` + rung + `"}`) + body := []byte(`{"` + config.KeyTimestamps + `":"` + rung + `","ui.work":"open"}`) if err := os.WriteFile(filepath.Join(dir, "config.json"), body, 0o600); err != nil { t.Fatalf("writing the profile: %v", err) } @@ -29,6 +29,7 @@ func clockApp(t *testing.T, agent Agent, rung string) (*app, func(time.Duration) a.width, a.height = 120, 24 a.profileDir = dir a.timestamps = config.TimestampsAt(dir) + a.workMode = config.WorkOpen now := time.Date(2026, 8, 14, 14, 0, 0, 0, time.UTC) a.clock = func() time.Time { return now } return a, func(d time.Duration) { now = now.Add(d) } @@ -258,3 +259,19 @@ func TestARunningTurnHasNoReceipt(t *testing.T) { t.Fatalf("a running turn drew a receipt:\n%s", page) } } + +func TestCleanChatReceiptsRequireWorkDisclosure(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.entries = foldFixture() + a.workMode = config.WorkFold + a.timestamps = config.TimestampsFooters + a.stamps = map[int]turnStamp{1: {at: time.Date(2026, 8, 14, 14, 1, 0, 0, time.UTC), took: time.Second}} + a.touch() + if got := strings.Join(plainRows(a), "\n"); strings.Contains(got, "14:01") { + t.Fatalf("receipt escaped closed work: %s", got) + } + a.toggleLatestWorkfold() + if got := strings.Join(plainRows(a), "\n"); !strings.Contains(got, "14:01") { + t.Fatalf("receipt unavailable after disclosure: %s", got) + } +} diff --git a/internal/tui3/unverified_test.go b/internal/tui3/unverified_test.go index 3bbabb6192..384cc1df93 100644 --- a/internal/tui3/unverified_test.go +++ b/internal/tui3/unverified_test.go @@ -173,6 +173,9 @@ func TestARollupCountsADecidedNodeOnceByItsNewestCard(t *testing.T) { if strings.Contains(text, glyphAsk) { t.Fatalf("the rollup still asks a question that was answered:\n%s", text) } + // Settled batches keep their task list behind the expansion. + a.openDone(a.doneEntryFor(1)) + text = taskText(a) if n := strings.Count(text, "Port the parser"); n != 1 { t.Fatalf("the decided node is drawn %d times in its batch, want once:\n%s", n, text) } diff --git a/internal/tui3/workfold.go b/internal/tui3/workfold.go index db15f9a5ff..c18c4594e8 100644 --- a/internal/tui3/workfold.go +++ b/internal/tui3/workfold.go @@ -1,12 +1,14 @@ package tui3 import ( + "github.com/Agent-Field/codeaf/internal/tui2/tokens" "strings" "time" "github.com/charmbracelet/x/ansi" "github.com/Agent-Field/codeaf/internal/config" + "github.com/Agent-Field/codeaf/internal/session" ) // workfold is render-time structure. Nothing here is journaled: replaying the @@ -26,6 +28,7 @@ type workfold struct { key int turn, start, answer int tools int + failures int thought time.Duration took time.Duration // stopped says this chip covers A TURN THE PERSON STOPPED (hierarchy.go's @@ -84,46 +87,58 @@ func (a *app) deckFolds(d deck) map[int]workfold { if !ok { return nil } - return fold(d) + folds := fold(d) + // Startup housekeeping belongs to the first conversation's disclosure, + // rather than minting a phantom work chip before the person speaks. + for at, f := range folds { + if !housekeepingFold(d.entries, f) { + continue + } + for next := f.answer; next < len(d.entries); next++ { + if groupBreaks(&d.entries[next]) { + if f.turn == 0 { + f.key = d.entries[next].turn + folds[at] = f + } + break + } + } + } + return folds } -// ── A PHASE IS SETTLED WORK WITH A SETTLED PARAGRAPH AFTER IT ─────────────── -// -// derivePhaseFolds is the room's chips. A PHASE is the settled work — thought, -// calls, compaction, the surface's own notes — that precedes a settled block of -// the node's prose. A step's introducing narration belongs to the same chip as -// its calls. The latest paragraph stays visible; if another step follows it, -// that paragraph becomes working narration and folds with that next step. -// -// THE LIVE FRONTIER NEVER BECOMES A SETTLED PHASE. A run with no settled -// paragraph after it never closes, so this walk mints no chip over it. The -// independent live policy can compact that unowned frontier (livesteps.go); -// opening it retains the room's whole-screenful tool tail. -// -// WHAT NEVER FOLDS, AND WHY EACH ONE. A run carrying any of these keeps every -// row it has, exactly as the conversation's `blocked` runs do: -// -// - THE PERSON'S OWN WORDS — the brief, and every correction they typed into -// running work. A FOLD MAY NEVER HIDE THE PERSON'S WORDS ([groupBreaks]), -// and an elbow ends a run for the same reason it ends one out in the thread. -// The brief keeps its own three-lines-and-a-door instead (brieffold.go). -// - A FAILED CALL. ONLY FAILURE SPEAKS on this surface, so the one row that -// was allowed to raise its voice may not then be filed away by a chip. -// - AN ASK — a consent question, a task proposal, a standing card. It is a -// thing the work could not decide alone, and the record of what the person -// answered is the only account of where the next hour came from. -// - A CALL STILL IN FLIGHT, which is not settled work and therefore not part -// of a settled phase at all. -// - A SEAM, for [deriveWorkfolds]'s reason: a fold that swallowed one would be -// claiming the page above it is the same unbroken page. -// -// THE FINAL REPORT STANDS BY CONSTRUCTION. It is the last settled paragraph, so -// it is the block the last chip stops at rather than a case anything tests for. -// -// Nothing here is journaled and nothing is summarised: a chip states counted -// facts about the rows it covers, and a phrase that paraphrased the work would -// be a second account of it that can drift from the work -// ([app.workfoldLabel]). +// housekeepingFold is retained operational bookkeeping, not another phase of +// work. Its entries share the turn's disclosure without drawing a second chip. +func housekeepingFold(es []entry, f workfold) bool { + if f.start >= f.answer { + return false + } + for at := f.start; at < f.answer; at++ { + e := &es[at] + switch e.kind { + case entryNote: + if e.told { + return false + } + case entryCompact, entryTeam, entryDivider: + case entryDone: + if e.done == nil || !e.done.dismissed { + return false + } + default: + return false + } + } + return true +} + +// derivePhaseFolds groups settled operational phases in running task pages. +// A settled paragraph closes the work before it. Confirmed tool-free responses +// remain visible even when later tools arrive; unconfirmed tool narration can +// belong to its following step. User messages, consent and decisions are +// boundaries. Failures stay compact with a status count and retain their full +// details inside disclosure. In-flight tools remain in the live activity window. +// A completed page uses deriveWorkfolds, including for settled tool-only tails. func derivePhaseFolds(es []entry) map[int]workfold { out := make(map[int]workfold) phase := phaseRun{start: -1} @@ -131,10 +146,14 @@ func derivePhaseFolds(es []entry) map[int]workfold { e := &es[i] switch { case groupBreaks(e) || phaseKeeps(e): - // The run is abandoned, not emitted: whatever it held, this row is - // something a chip may not cover, and a chip that stopped short of it - // would be a fold whose reason nobody can see. - phase = phaseRun{start: -1, key: phase.key, floor: phase.floor} + // Important rows stand outside the disclosure. Their preceding + // settled work can still close without hiding the decision or fault. + if phase.start >= 0 && askSegmentSettled(es, phase.start, i) { + if f, ok := phase.close(es, i); ok { + out[f.start] = f + } + } + phase = phaseRun{start: -1, key: phase.key, floor: i + 1} case e.kind == entryAssistant && e.settled && strings.TrimSpace(e.text) != "": if f, ok := phase.close(es, i); ok { out[f.start] = f @@ -189,7 +208,7 @@ func (p *phaseRun) close(es []entry, answer int) (workfold, bool) { } for at := p.start - 1; at >= p.floor && es[at].turn == f.turn; at-- { e := &es[at] - if groupBreaks(e) || phaseKeeps(e) || e.kind == entryTool { + if groupBreaks(e) || phaseKeeps(e) || confirmedAnswer(e) || e.kind == entryTool { break } if e.kind == entryAssistant && e.settled && strings.TrimSpace(e.text) != "" { @@ -204,28 +223,23 @@ func (p *phaseRun) close(es []entry, answer int) (workfold, bool) { return f, true } -// phaseKeeps reports whether this row is one a chip may never cover. The list is -// the argument in [derivePhaseFolds]'s comment, said once, as a table of -// predicates rather than a condition spelled into the walk. +// phaseKeeps preserves actionable boundaries and calls still in flight. func phaseKeeps(e *entry) bool { switch e.kind { case entryTask, entryStanding, entryConnect, entrySeam, entryHarness, entryDone: return true + case entryNote: + return e.told case entryTool: - return e.status != toolOK + return (e.status != toolOK && e.status != toolFailed) || e.decision != "" } return false } -// deriveWorkfolds finds completed turns with machinery followed by a real -// trailing answer. A question, failure, cancellation, or tools-only tail has -// no eligible trailing answer and therefore cannot disappear into a chip. -// -// AND TURNS THE PERSON STOPPED, which are the one kind that folds with NOTHING -// left standing under the chip (hierarchy.go). A stopped turn reached no answer, -// so there is no block to promote and no block to leave out of the fold: the -// machinery and the half-sentence it got to are all working material, and the -// chip says so in its own words ([app.workfoldLabel]). +// deriveWorkfolds groups completed operational work between user messages, +// confirmed replies and actionable decisions. Tool-only settled tails still get +// a disclosure without inventing an answer. Failed calls count toward its +// failure status and remain inspectable. Stopped turns say who stopped them. func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { out := make(map[int]workfold) for lo := 0; lo < len(es); { @@ -238,7 +252,7 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { // middle of it would fold that question away — and the one thing on this // surface a fold may never hide is the person's own words. hi := lo + 1 - for hi < len(es) && es[hi].turn == es[lo].turn && !groupBreaks(&es[hi]) { + for hi < len(es) && es[hi].turn == es[lo].turn && !groupBreaks(&es[hi]) && !confirmedAnswer(&es[hi-1]) { hi++ } answer := -1 @@ -263,11 +277,14 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { // program has already ended. Ordinary task cards keep their old // placement and folding rules. if es[i].kind == entryTask || es[i].kind == entryConnect || es[i].kind == entryStanding || - (es[i].kind == entryDone && es[i].done != nil && es[i].done.program != "") { + (es[i].kind == entryDone && es[i].done != nil && (es[i].done.program != "" || es[i].done.status.Tier == session.TaskTierYourCall)) { + asks = append(asks, i) + } + if es[i].kind == entryTool && ((es[i].status != toolOK && es[i].status != toolFailed && !es[i].cut) || es[i].decision != "") { asks = append(asks, i) } if es[i].kind == entryNote && (es[i].told || strings.HasPrefix(es[i].text, "cancel")) { - blocked = true + asks = append(asks, i) } // A SEAM IS NEVER FOLDED AWAY. A chip hides the machinery between a // question and its answer, and the run of blocks it hides is chosen by @@ -276,13 +293,21 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { // conversation above it is the same unbroken conversation. The whole // group keeps its rows instead (replay.go's [entrySeam]). if es[i].kind == entrySeam { - blocked = true + asks = append(asks, i) } - // NOR IS A MANAGER'S QUESTION TO ITS TEAM. Its answers land under - // it after the turn has ended (teamthreadcard.go), and a chip that - // swallowed the card would hide the one place they arrive. - if es[i].kind == entryTool && es[i].tool == "team_send" && es[i].status == toolOK { - blocked = true + // Team exchanges are operational work. Their replies remain available + // inside the disclosure and in Traffic after the turn settles. + + } + // A settled tool preamble is not an answer when its calls are the + // last record. Fold that complete operational span without inventing + // a reply or leaving its caption outside the disclosure. + if answer >= 0 && !confirmedAnswer(&es[answer]) { + for at := answer + 1; at < hi; at++ { + if es[at].kind == entryTool || es[at].kind == entryThinking { + answer = -1 + break + } } } // AN ASK STANDS, AND THE WORK BEFORE IT STILL FOLDS. A task proposal, a @@ -295,20 +320,28 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { // asks folds behind a chip that ends at the ask, the ask stands, and the // stretch after the last ask folds by the ordinary rule, up to its answer. // A running turn, a stopped one and a blocked one are unchanged below. - if len(asks) > 0 && !blocked && !stopped && (runningTurn == 0 || es[lo].turn != runningTurn) { + if len(asks) > 0 && !blocked && (runningTurn == 0 || es[lo].turn != runningTurn) { from := lo for _, at := range asks { - if askSegmentSettled(es, from, at) { - f := workfold{key: es[lo].turn, turn: es[lo].turn, start: -1, answer: at} - if countWork(es, from, at, &f); f.start >= 0 { + end := at + if answer >= from && answer < at { + end = answer + } + if stopped || askSegmentSettled(es, from, end) { + f := workfold{key: es[lo].turn, turn: es[lo].turn, start: -1, answer: end, stopped: stopped} + if countWork(es, from, end, &f); f.start >= 0 { out[f.start] = f } } from = at + 1 } - if answer >= from && es[answer].settled { - f := workfold{key: es[lo].turn, turn: es[lo].turn, start: -1, answer: answer} - if countWork(es, from, answer, &f); f.start >= 0 { + end := answer + if stopped || (answer < from && settledBackgroundTail(es[from:hi])) { + end = hi + } + if end >= from && (end == hi || es[end].settled) { + f := workfold{key: es[lo].turn, turn: es[lo].turn, start: -1, answer: end, stopped: stopped} + if countWork(es, from, end, &f); f.start >= 0 { out[f.start] = f } } @@ -353,13 +386,13 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { if answer >= 0 { from = answer + 1 } - for from < to && (groupBreaks(&es[from]) || es[from].kind == entryNote || es[from].kind == entryDivider) { + for from < to && (groupBreaks(&es[from]) || es[from].kind == entryDivider) { from++ } - for to > from && (es[to-1].kind == entryNote || es[to-1].kind == entryDivider) { + for to > from && (es[to-1].kind == entryDivider) { to-- } - if confirmedReasoningTail(es[from:to]) { + if confirmedReasoningTail(es[from:to]) || settledBackgroundTail(es[from:to]) { f := workfold{key: es[lo].turn, turn: es[lo].turn, start: -1, answer: to} if countWork(es, from, to, &f); f.start >= 0 { out[f.start] = f @@ -372,8 +405,8 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { } // askSegmentSettled reports whether the rows before an ask are settled work a -// chip may cover: no prose still streaming, no call still running or waiting on -// the person, and no call that failed, because only failure speaks here. +// chip may cover: no prose still streaming or call still running/waiting on +// the person. Failed calls are settled work with a visible compact status. func askSegmentSettled(es []entry, from, to int) bool { for i := from; i < to; i++ { e := &es[i] @@ -383,7 +416,7 @@ func askSegmentSettled(es []entry, from, to int) bool { return false } case entryTool: - if e.status != toolOK { + if e.status != toolOK && e.status != toolFailed { return false } } @@ -408,6 +441,45 @@ func confirmedReasoningTail(es []entry) bool { return found } +// Background deliveries can follow a completed response without producing a +// second answer. Keep these receipts behind the same disclosure in that case. +func settledBackgroundTail(es []entry) bool { + found := false + for i := range es { + e := &es[i] + switch e.kind { + case entryAssistant: + if !e.settled || confirmedAnswer(e) { + return false + } + case entryNote: + if e.told { + return false + } + case entryThinking: + if !e.settled { + return false + } + case entryTeam: + if !e.settled { + return false + } + case entryTool: + if e.status != toolOK && e.status != toolFailed { + return false + } + case entryCompact: + if e.ended.IsZero() { + return false + } + default: + return false + } + found = true + } + return found +} + // countWork fills in WHAT A CHIP COUNTS over es[from:to] — where the work it // covers begins, how many calls it made, how long it thought, and how long the // whole of it took. @@ -416,10 +488,7 @@ func confirmedReasoningTail(es []entry) bool { // grammar, and a chip that counted differently on two pages would be the same // sentence meaning two things. THE PERSON'S OWN ROWS ARE NOT WORK and never // start a chip: a question, a divider and an elbow are all things a fold stops -// at rather than things it measures. Nor is the line naming the skills the -// question carried ([entry.carried]) while it still sits directly under the -// question: the chip starts below it, so the record stays beside the words it -// belongs to. +// at rather than things it measures. Skill-loading notes are retained work. func countWork(es []entry, from, to int, f *workfold) { f.start = -1 var began, ended time.Time @@ -428,7 +497,7 @@ func countWork(es []entry, from, to int, f *workfold) { if e.kind == entryUser || e.kind == entryDivider || e.kind == entrySteer { continue } - if f.start < 0 && e.kind == entryNote && e.carried { + if e.kind == entryDone && e.done != nil && e.done.dismissed { continue } if f.start < 0 { @@ -436,6 +505,9 @@ func countWork(es []entry, from, to int, f *workfold) { } if e.kind == entryTool { f.tools++ + if e.status == toolFailed { + f.failures++ + } } if e.kind == entryThinking { f.thought += e.ended.Sub(e.began) @@ -459,6 +531,12 @@ func workIndent(width int) string { return strings.Repeat(" ", spacingConversationLead) } +// A tool-free response boundary is an explicit message to the person, even +// when the session continues working afterwards. No prose keywords are guessed. +func confirmedAnswer(e *entry) bool { + return e.kind == entryAssistant && e.confirmed != nil && e.confirmed.done && !e.cut +} + // workIndentCols is what the indent law costs, in columns. It is asked at // LAYOUT and again at the pass that applies it (render.go's [app.deckRows]), and // it is one function because those two must never be able to disagree: a block @@ -493,6 +571,9 @@ func workEntry(es []entry, folds map[int]workfold, i int) bool { if e.cut { return true } + if confirmedAnswer(&e) { + return false + } // A block inside a chip is work. A turn fold certifies its final answer, // including when a task card later lands in the same turn. A phase endpoint // still needs the forward scan: it may introduce the next tool. @@ -535,7 +616,10 @@ func workEntry(es []entry, folds map[int]workfold, i int) bool { continue } } - if es[at].kind != entryDivider && es[at].kind != entryNote && !entryWithdrawn(&es[at]) { + // Background receipts and team deliveries are not the next step of + // this response. Only response work can demote its preceding prose. + if (es[at].kind == entryAssistant || es[at].kind == entryTool || + es[at].kind == entryThinking) && !entryWithdrawn(&es[at]) { return true } } @@ -598,6 +682,9 @@ func (a *app) workfoldLabel(d deck, f workfold) string { // calls and used to spell them differently. parts = append(parts, toolCallWord(f.tools)) } + if f.failures > 0 { + parts = append(parts, a.linearMark(a.icon(tokens.GFailed), "x")+" "+itoa(f.failures)+" failed") + } parts = append(parts, "ctrl+e") return strings.Join(parts, " · ") } diff --git a/internal/tui3/workfold_test.go b/internal/tui3/workfold_test.go index 6490b766d9..fdafb1aca4 100644 --- a/internal/tui3/workfold_test.go +++ b/internal/tui3/workfold_test.go @@ -55,7 +55,7 @@ func TestWorkIndentReclassifiesAndDropsAtPhoneFloor(t *testing.T) { func TestWorkfoldNeverHidesTextOnlyFailureOrNoAnswer(t *testing.T) { cases := [][]entry{ {{kind: entryUser, text: "hi", turn: 1}, {kind: entryAssistant, text: "hello", turn: 1, settled: true}}, - {{kind: entryUser, text: "do", turn: 1}, {kind: entryTool, tool: "bash", turn: 1}, {kind: entryNote, text: "error: boom", turn: 1}}, + {{kind: entryUser, text: "do", turn: 1}, {kind: entryTool, tool: "bash", turn: 1}, {kind: entryNote, text: "error: boom", turn: 1, told: true}}, {{kind: entryUser, text: "do", turn: 1}, {kind: entryTool, tool: "bash", turn: 1}}, } for _, entries := range cases { @@ -118,9 +118,9 @@ func TestWorkfoldSettlementAnchorsBottomAndScrolledReader(t *testing.T) { return -1 } beforeAt, afterAt := rowOf(before), rowOf(after) - // Settlement adds the receipt below the answer. Relative to the live - // edge excluding that new receipt, collapse itself has not moved it. - if beforeAt < 0 || len(before)-1-beforeAt != len(after)-2-afterAt { + // Closed work keeps the receipt inside disclosure, so settlement + // preserves the answer at the same bottom-relative row. + if beforeAt < 0 || len(before)-1-beforeAt != len(after)-1-afterAt { t.Fatalf("the answer left the bottom anchor: before=%v after=%v", before, after) } }) @@ -194,8 +194,10 @@ func TestWorkfoldNeverHidesNewsAboutAPersonsOwnRow(t *testing.T) { {kind: entryTool, tool: "read", turn: 1, status: toolOK, began: base.Add(6 * time.Second), ended: base.Add(8 * time.Second)}, {kind: entryAssistant, text: "ok", turn: 1, settled: true}, } - if got := deriveWorkfolds(entries, 0); len(got) != 0 { - t.Fatalf("the chip swallowed a sentence addressed to the person: %#v", got) + for _, f := range deriveWorkfolds(entries, 0) { + if f.start <= 1 && f.answer > 1 { + t.Fatalf("the chip swallowed a sentence addressed to the person: %#v", f) + } } a := newTestApp(&fakeAgent{model: "m"}) a.entries, a.workMode = entries, config.WorkFold From 76d6394c84ddab94e21887c5c135ba8a10d6808f Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 10:46:36 -0400 Subject: [PATCH 02/23] Cover explicit interim updates, fragmented markers and steering --- internal/manual/chat/keys.md | 7 +- internal/tui3/feed_update_test.go | 118 ++++++++++++++++++++++++++++++ 2 files changed, 124 insertions(+), 1 deletion(-) create mode 100644 internal/tui3/feed_update_test.go diff --git a/internal/manual/chat/keys.md b/internal/manual/chat/keys.md index b259ebacc3..bff03a2469 100644 --- a/internal/manual/chat/keys.md +++ b/internal/manual/chat/keys.md @@ -3405,7 +3405,12 @@ shows the existing outline: click a caption to inspect its calls, or click the whole-work door to return to the compact steps. Completion collapses work opened during the turn. A caption longer than three rows ends with an ellipsis in the compact view; open the work to read its full text. -Confirmed replies stay visible even when later work follows them. Team exchanges +Confirmed replies stay visible even when later work follows them. An important +interim result, blocker, decision or requested update also stays visible when +codeaf explicitly addresses it to you with a leading `[update]` marker. The +interface removes the marker and renders the message normally, including when +that same response calls tools. Routine tool narration has no marker and folds +with the work; you do not need to type any marker yourself. Team exchanges and compaction details stay inside the work disclosure; opening it preserves reasoning, notes and receipts alongside the step captions. Questions, approval prompts and text-only answers are never hidden — nor is a second message you sent into a running turn, which diff --git a/internal/tui3/feed_update_test.go b/internal/tui3/feed_update_test.go new file mode 100644 index 0000000000..0ba8577dcc --- /dev/null +++ b/internal/tui3/feed_update_test.go @@ -0,0 +1,118 @@ +package tui3 + +import ( + "strings" + "testing" + + "github.com/Agent-Field/codeaf/internal/config" + "github.com/Agent-Field/codeaf/internal/session" +) + +func TestExplicitUpdateSurvivesToolsAtEveryMarkerSplit(t *testing.T) { + for split := 0; split <= len(session.UserUpdatePrefix); split++ { + a := newTestApp(&fakeAgent{model: "m"}) + a.workMode = config.WorkFold + a.turn = 1 + a.entries = append(a.entries, entry{kind: entryUser, text: "Check both", turn: 1}) + first := session.UserUpdatePrefix[:split] + a.ingest(session.Event{Kind: session.EventTextDelta, Text: first}) + for _, e := range a.entries { + if e.kind == entryAssistant && strings.Contains(e.text, "[") { + t.Fatalf("split %d leaked marker: %q", split, e.text) + } + } + a.ingest(session.Event{Kind: session.EventTextDelta, Text: session.UserUpdatePrefix[split:] + "\n **First result"}) + a.ingest(session.Event{Kind: session.EventReasoning, Text: "private analysis"}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: " is ready.**"}) + runBatch(&a.feed, "read", "c1") + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "Routine tool narration."}) + runBatch(&a.feed, "read", "c2") + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "Both results are ready."}) + a.ingest(session.Event{Kind: session.EventAssistantDone}) + a.touch() + page := strings.Join(plainRows(a), "\n") + for _, want := range []string{"First result is ready.", "Both results are ready."} { + if strings.Count(page, want) != 1 { + t.Fatalf("split %d lost/duplicated %q:\n%s", split, want, page) + } + } + for _, hidden := range []string{session.UserUpdatePrefix, "Routine tool narration", "private analysis", "**"} { + if strings.Contains(page, hidden) { + t.Fatalf("split %d leaked %q:\n%s", split, hidden, page) + } + } + } +} + +func TestUpdatePrefixPreservesOrdinaryTextAndIncompleteLiteral(t *testing.T) { + for _, text := range []string{"[updated] report", "[up", "Mention [update] here", " ordinary trailing ", "[update](url)"} { + f := newFeed(feedHooks{}) + f.turn = 1 + for _, r := range text { + f.ingest(session.Event{Kind: session.EventTextDelta, Text: string(r)}) + } + f.ingest(session.Event{Kind: session.EventAssistantDone}) + want, _ := session.UserFacingUpdate(text) + got := "" + for _, e := range f.entries { + if e.kind == entryAssistant { + got += e.text + } + } + if got != want { + t.Fatalf("%q became %q, want %q", text, got, want) + } + } +} + +func TestExplicitUpdateKeepsQueuedUserOrderAndSurvivesLaterStop(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.turn = 1 + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] First"}) + a.said(entry{kind: entryUser, text: "Also check exports", turn: 1}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: " result ready."}) + runBatch(&a.feed, "read", "c1") + updateAt, userAt := -1, -1 + for i, e := range a.entries { + if e.kind == entryAssistant && e.text == "First result ready." { + updateAt = i + if !confirmedAnswer(&e) { + t.Fatal("marked update not confirmed before tools") + } + } + if e.kind == entryUser && e.text == "Also check exports" { + userAt = i + } + } + if updateAt < 0 || userAt < updateAt { + t.Fatalf("queued user reordered: update=%d user=%d", updateAt, userAt) + } + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "unfinished later narration"}) + a.cutTurn(1) + if a.entries[updateAt].cut || !confirmedAnswer(&a.entries[updateAt]) { + t.Fatal("later stop withdrew delivered update") + } +} + +func TestUpdateMarkerDoesNotLeakAcrossRetryOrTurn(t *testing.T) { + f := newFeed(feedHooks{}) + f.turn = 1 + f.ingest(session.Event{Kind: session.EventTextDelta, Text: "[up"}) + f.ingest(session.Event{Kind: session.EventRetrying, Hint: "retrying"}) + f.ingest(session.Event{Kind: session.EventTextDelta, Text: "ordinary preamble"}) + runBatch(&f, "read", "c1") + for _, e := range f.entries { + if e.kind == entryAssistant && confirmedAnswer(&e) { + t.Fatal("retry inherited explicit update marker") + } + } + f.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] "}) + f.turn++ + f.ingest(session.Event{Kind: session.EventTextDelta, Text: "ordinary next turn"}) + runBatch(&f, "read", "c2") + for _, e := range f.entries { + if e.turn == f.turn && e.kind == entryAssistant && confirmedAnswer(&e) { + t.Fatal("next turn inherited update marker") + } + } +} From eb824b38348d75f7bf6d1da45feb26122e0bbf0c Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 10:48:28 -0400 Subject: [PATCH 03/23] Stream explicitly addressed updates immediately across chat views --- internal/e2e/chatclean_e2e_test.go | 5 +- internal/tui3/app.go | 4 ++ internal/tui3/feed.go | 1 + internal/tui3/feed_update_test.go | 32 +++++++++ internal/tui3/hierarchy.go | 112 ++++++----------------------- internal/tui3/workfold.go | 5 ++ 6 files changed, 69 insertions(+), 90 deletions(-) diff --git a/internal/e2e/chatclean_e2e_test.go b/internal/e2e/chatclean_e2e_test.go index f027b7cda3..757884fe7a 100644 --- a/internal/e2e/chatclean_e2e_test.go +++ b/internal/e2e/chatclean_e2e_test.go @@ -314,7 +314,10 @@ func TestCleanChatSteering(t *testing.T) { r.keys("Enter") r.waitFor(10*time.Second, steer) cleanChatCapture(t, r, "09-user-steering") - cleanChatWaitAnswer(t, r, "First check is complete", 2*time.Minute) + interim := cleanChatWaitAnswer(t, r, "First check is complete", 2*time.Minute) + if !strings.Contains(interim, "working") { + t.Fatalf("interim update was not visible while work continued:\n%s", interim) + } cleanChatCapture(t, r, "09-assistant-update") var screen string finished := false diff --git a/internal/tui3/app.go b/internal/tui3/app.go index 8a61b407f1..27ace994a4 100644 --- a/internal/tui3/app.go +++ b/internal/tui3/app.go @@ -530,6 +530,10 @@ type entry struct { // Provisional prose has arrived, but the response has not yet confirmed // whether it ends in an answer or a tool call. It stays in the work view. provisional bool + // addressed is an explicit assistant update, visible while its body streams. + // Completion remains a separate response confirmation, so stopping a partial + // update cannot present it as a finished reply. + addressed bool // The same identity can be attached while the reply is still pending. Its // done flag confirms ownership before any private tail receives a work fold. confirmed *responseConfirmation diff --git a/internal/tui3/feed.go b/internal/tui3/feed.go index 7000fcc2ce..5de6dab0a0 100644 --- a/internal/tui3/feed.go +++ b/internal/tui3/feed.go @@ -1066,6 +1066,7 @@ func (f *feed) sayVisibleStream(text string, lump bool) { f.mdAt = f.now() } e := &f.entries[f.live] + e.addressed = e.addressed || f.updateDelivery.marked e.text += text // AND THE LIVE EDGE OPENS OR EXTENDS HERE, on the bytes that were just // appended and nowhere else (reveal.go). It is in the reducer rather than in diff --git a/internal/tui3/feed_update_test.go b/internal/tui3/feed_update_test.go index 0ba8577dcc..d3a9c36243 100644 --- a/internal/tui3/feed_update_test.go +++ b/internal/tui3/feed_update_test.go @@ -116,3 +116,35 @@ func TestUpdateMarkerDoesNotLeakAcrossRetryOrTurn(t *testing.T) { } } } + +func TestExplicitUpdateStreamsAsAddressedButNotCompletedAcrossLenses(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.turn = 1 + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] A result is arriving"}) + at := a.live + if at < 0 || !a.entries[at].addressed || confirmedAnswer(&a.entries[at]) { + t.Fatal("audience was confused with completion") + } + for _, l := range []lens{participantLens, overseerLens, transcriptLens} { + d := deck{entries: a.entries, lens: l, runningTurn: 1} + folds := a.deckFolds(d) + if workEntry(d.entries, folds, at) { + t.Fatal("marked live update treated as operational narration") + } + rows, _ := a.deckRows(d, 100) + text := "" + for _, r := range rows { + text += plain(r.text) + "\n" + } + if !strings.Contains(text, "A result is arriving") || strings.Contains(text, "[update]") { + t.Fatalf("live update hidden/leaking protocol: %s", text) + } + } + a.cutTurn(1) + if confirmedAnswer(&a.entries[at]) || !a.entries[at].cut { + t.Fatal("interrupted partial update claimed completion") + } + if !workEntry(a.entries, nil, at) { + t.Fatal("audience bypass promoted an interrupted partial update") + } +} diff --git a/internal/tui3/hierarchy.go b/internal/tui3/hierarchy.go index 1281429fe3..27349073e8 100644 --- a/internal/tui3/hierarchy.go +++ b/internal/tui3/hierarchy.go @@ -5,81 +5,25 @@ import ( "strings" ) -// ── THE ANSWER HIERARCHY ──────────────────────────────────────────────────── -// -// An agentic turn is prose, then tools, then prose, then tools, then prose. This -// surface used to paint every one of those prose blocks identically, so "let me -// check the config first" arrived in the same ink, at the same margin, with the -// same headings and the same weight as the sentence that actually answered the -// question. A person scrolling back through an hour of work read a wall of -// paragraphs with no way of telling which of them they had been waiting for. -// -// THE FIX IS STRUCTURAL AND NEEDS NO COOPERATION FROM THE MODEL. Four statements, -// each true by construction: -// -// 1. PROSE FOLLOWED BY MORE WORK IN THE SAME TURN WAS NEVER THE ANSWER. It was -// narration — the surface saying what it was about to do — and the proof -// arrives the moment the next tool call opens under it. Nothing has to be -// guessed and nothing has to be parsed: the entry list's own shape says it. -// 2. STREAMED PROSE STAYS COMPACT UNTIL THE RESPONSE CONFIRMS ITS ROLE. The -// provider can write a preamble before its tool call arrives. A tool-free -// response boundary promotes the reply without waiting for later checks. -// 3. SETTLE IS THE CONFIRMATION. When the turn ends, whatever is last is the -// answer and everything above it in that turn is working material. -// 4. AN INTERRUPTED TURN PROMOTES NOTHING ([entry.cut]). The turn ended without -// reaching an answer, and the absence of a flush, full-ink block under the -// work is the surface stating that plainly rather than pretending the last -// half-sentence was a reply. -// -// ── WHAT THE TWO TIERS LOOK LIKE, AND WHY ─────────────────────────────────── -// -// THE ANSWER is unchanged: flush to the margin, the body ink, full markdown. It -// is what this surface drew for every assistant block before the hierarchy -// existed, and it goes on being drawn that way, because the answer is the thing -// the reader came for and the rendering it already had is the right one. -// -// NARRATION DROPS INTO THE WORK COLUMN AT THE MUTED TIER, PLAIN. Three decisions, -// each of them a law rather than a taste: -// -// - THE INDENT IS THE ONE THE MACHINERY ALREADY WEARS (workfold.go's -// [workIndent]). Demoted prose is the surface doing things, which is what the -// two-column gutter means on every other row of a turn — a thought, a call, -// a call's output. It costs nothing to state and it says the whole thing: -// flush is said TO you, indented is done FOR you. [workEntry] has classified -// assistant blocks this way since the fold wave; this file is what finally -// makes the ink agree with the column. -// -// - THE TIER IS THE NARRATION RUNG, NOT MUTED AND NOT DIM. Dim is the lane -// this surface says its OWN lines in — a note, a seam, a fold chip, a tool -// row's figures — and narration is not the surface talking about itself; it -// is the model's own prose, one rung back. It wore muted for a wave, and -// muted was the wrong hue for a paragraph: muted is the ACCENT one step -// back, right for a tool's name or a heading — a word or two of label — -// and paragraphs of it turned a working turn into a field of blue prose. -// So the working tier is the body's own hue family at the second voice's -// loudness ([hueNarr]): quieter than the answer in lightness, and never a -// different KIND of thing in hue. -// -// - DISCLOSED NARRATION USES MARKDOWN STRUCTURE IN MUTED INK. Render the -// headings, lists and fences first, then strip terminal styling before -// applying the narration tier. Raw markdown markers never become the UI. -// -// ── AND THE BREATH ABOVE THE ANSWER ───────────────────────────────────────── -// -// A promoted answer under a turn that did work opens with ONE blank row -// ([answerBreath]). It is emitted by [app.deckRows] with every other blank on -// this surface, because [app.layout] is THE SPACING LAW and a block that appended -// a row of its own would be a second one. A turn with no work in it is not given -// the breath and renders byte-identically to what it rendered before this file -// existed — pinned by TestATurnWithNoWorkIsUntouchedByTheHierarchy. -// -// ── ONE IDEOLOGY, EVERY CHAT SURFACE ──────────────────────────────────────── -// -// Nothing here reads [app.entries]. The stamp runs over whatever deck is being -// laid out, so the conversation, a task's room and a node's transcript inside a -// run's page get the same hierarchy from the same rule — which is the guarantee -// [deck] exists to make. Both chat and task rooms use the same response -// boundary; the hierarchy is a property of the prose, not of its page. +// The hierarchy separates conversation from operational work on every deck. +// User messages, confirmed tool-free responses and explicitly addressed [update] +// messages stay visible. The audience marker is parsed by the shared session +// layer; it is a protocol declaration, not a guess based on prose keywords. +// Addressed updates can stream before the response boundary confirms them. +// +// Tool preambles and reasoning belong to the work disclosure. Unclassified +// streaming prose remains compact until its response role is known. A completed +// response remains a reply when later work starts. Interrupting that later work +// preserves the completed reply and marks only the unfinished continuation cut. +// +// Replies use full markdown at the body margin. Opened narration retains +// markdown structure in quieter ink in the work column; raw markdown markers do +// not substitute for rendering. Captions take the introducing narration, while +// the remaining text and all intervening entries remain behind the step door. +// +// These decisions are computed over the deck, so chat, manager, task and nested +// transcript pages use the same classification. Explicit audience metadata is +// persisted for replay alongside structural response boundaries. // stampHierarchy writes THE ANSWER HIERARCHY onto the blocks of one deck, before // any of them is asked for its rows. @@ -128,20 +72,10 @@ func stampCaptions(es []entry, captions []caption) { } } -// workingProse is a demoted block's rows: the model's own words, wrapped plain, -// at the tier one rung back from the body. -// -// It is a method of its own for [app.liveTail]'s reason — a test can ask for the -// rows the renderer builds instead of spelling the paint out a second time — and -// it is deliberately that function with one value changed, because the two are -// the same idea at two ends of a block's life: the growing edge is the body ink -// one step UP, and the working tier is the body ink one step DOWN. -// -// THE WIDTH IS THE COLUMN'S AND NOT THE FRAME'S. These rows are shifted two cells -// right by the indent law after layout (render.go's [app.deckRows]), so a block -// wrapped to the whole frame would be two cells wider than the column it is drawn -// in — which is the overhang [workIndentCols] exists to let a block subtract, and -// the reason [app.toolLine] subtracts it too. +// workingProse renders disclosed narration as markdown structure in quiet ink. +// Strip the markdown renderer's styling before applying the narration palette +// so nested foreground resets cannot accidentally promote part of the block. +// Layout uses the work column width; the shared row pass applies its indent. func (a *app) workingProse(text string, width int) []string { rows := a.renderMarkdown(text, max(1, width-workIndentCols(width))) for i, line := range rows { diff --git a/internal/tui3/workfold.go b/internal/tui3/workfold.go index c18c4594e8..7fedbc203f 100644 --- a/internal/tui3/workfold.go +++ b/internal/tui3/workfold.go @@ -559,6 +559,11 @@ func workEntry(es []entry, folds map[int]workfold, i int) bool { if e.kind != entryAssistant { return false } + // Explicitly addressed updates are visible while streaming. This does + // not confirm the response; interrupted partial updates still recede. + if e.addressed && !e.cut { + return false + } // Streaming content can still be a preamble to an upcoming tool. The // response boundary confirms it before the answer receives full emphasis. if e.provisional && !e.settled { From b414288a126a417e526055b24ef7f53afec42b98 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 10:50:12 -0400 Subject: [PATCH 04/23] Verify task receipts remain available behind disclosure --- internal/tui3/phasehierarchy_test.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/internal/tui3/phasehierarchy_test.go b/internal/tui3/phasehierarchy_test.go index 518335426a..011f887ddd 100644 --- a/internal/tui3/phasehierarchy_test.go +++ b/internal/tui3/phasehierarchy_test.go @@ -92,6 +92,17 @@ func TestARoomPhaseEndpointKeepsItsAnswerAcrossReceiptsAndPersonBoundaries(t *te if r.hit == hitCaption || strings.Contains(plain(r.text), "## Verified") { t.Fatalf("answer lost its markdown rendering: %q", r.text) } + if boundary == entryNote { + // Operational receipts no longer occupy the default conversation. + // Opening its work restores the retained receipt. + for _, r := range drawn { + if strings.Contains(plain(r.text), next.text) { + t.Fatal("ordinary receipt escaped closed work") + } + } + a.setWorkOpen(a.room.deck(), 1, true) + drawn, _ = a.deckRows(a.room.deck(), 90) + } if boundary != entryDivider { phaseHierarchyRow(t, drawn, "Review the integration coverage next") } From fa6984581bc55c3112961dba01cff02c3e953855 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 10:52:44 -0400 Subject: [PATCH 05/23] Keep resumed work in one activity window without stray receipts --- internal/e2e/chatclean_e2e_test.go | 2 +- internal/tui3/chatcleanup_test.go | 41 ++++++++++++++++++++++++++++++ internal/tui3/render.go | 6 +++++ internal/tui3/workfold.go | 8 ++++++ 4 files changed, 56 insertions(+), 1 deletion(-) diff --git a/internal/e2e/chatclean_e2e_test.go b/internal/e2e/chatclean_e2e_test.go index 757884fe7a..260160fd07 100644 --- a/internal/e2e/chatclean_e2e_test.go +++ b/internal/e2e/chatclean_e2e_test.go @@ -112,7 +112,7 @@ func cleanChatCapture(t *testing.T, r *rig, stage string) { t.Fatal(err) } header, _ := json.Marshal(map[string]any{"version": 2, "width": 140, "height": 42, "title": stage}) - output, _ := json.Marshal([]any{0.0, "o", "\x1b[2J\x1b[H" + strings.ReplaceAll(strings.TrimRight(string(frame), "\n"), "\n", "\r\n")}) + output, _ := json.Marshal([]any{0.0, "o", "\x1b[?25l\x1b[2J\x1b[H" + strings.ReplaceAll(strings.TrimRight(string(frame), "\n"), "\n", "\r\n")}) hold, _ := json.Marshal([]any{2.0, "o", ""}) data := append(append(append(header, '\n'), output...), '\n') data = append(append(data, hold...), '\n') diff --git a/internal/tui3/chatcleanup_test.go b/internal/tui3/chatcleanup_test.go index 659270ce5c..a285366fda 100644 --- a/internal/tui3/chatcleanup_test.go +++ b/internal/tui3/chatcleanup_test.go @@ -261,3 +261,44 @@ func TestCleanChatSettledToolOnlyTailAcrossAllSurfaces(t *testing.T) { } } } + +func TestCleanChatCacheReceiptBeforeCommandAckStaysDisclosed(t *testing.T) { + for _, confirmed := range []bool{false, true} { + a := newTestApp(&fakeAgent{model: "m"}) + es := foldFixture() + if confirmed { + es[5].confirmed = &responseConfirmation{done: true} + } + es = append(es, entry{kind: entryNote, turn: 1, text: "PRIVATE CACHE RECEIPT"}, entry{kind: entryNote, turn: 1, text: "task started", told: true}, entry{kind: entryDone, turn: 1, done: &taskDone{id: 7, title: "done task", ident: identFor(7)}}, entry{kind: entryThinking, turn: 2, text: "PRIVATE THINKING"}) + d := deck{entries: es, lens: participantLens, runningTurn: 2, workOpen: map[int]bool{}} + rendered, _ := a.deckRows(d, 100) + var lines []string + for _, r := range rendered { + lines = append(lines, plain(r.text)) + } + got := strings.Join(lines, "\n") + if strings.Contains(got, "PRIVATE CACHE") || !strings.Contains(got, "task started") { + t.Fatalf("receipt leaked or command ack lost: %s", got) + } + d.workOpen[1] = true + rendered, _ = a.deckRows(d, 100) + found := false + for _, r := range rendered { + found = found || strings.Contains(plain(r.text), "PRIVATE CACHE RECEIPT") + } + if !found { + t.Fatal("cache receipt lost from disclosure") + } + } +} + +func TestCleanChatResumedActivityDoesNotLeaveAnchoredLogo(t *testing.T) { + a := workLogoApp(t) + a.entries = append(a.entries, entry{kind: entryTool, tool: "bash", status: toolOK, turn: 1}, entry{kind: entryAssistant, text: "Interim result", turn: 1, settled: true, confirmed: &responseConfirmation{done: true}}, entry{kind: entryTool, tool: "bash", status: toolRunning, turn: 1}) + rendered, _ := a.deckRows(a.conversation(), 100) + for _, r := range rendered { + if r.activity && r.hit != hitWorkFold { + t.Fatalf("separate anchored animation leaked beside compact activity: %q", plain(r.text)) + } + } +} diff --git a/internal/tui3/render.go b/internal/tui3/render.go index 0b96eceb47..5305372180 100644 --- a/internal/tui3/render.go +++ b/internal/tui3/render.go @@ -382,6 +382,12 @@ func (a *app) deckRows(d deck, width int) ([]row, bool) { // tense earlier. The lens chooses live compactness independently of its // settled fold policy, and each page owns its disclosure key. lives := deriveLiveWork(d) + // The compact work window already owns the activity indication. Keep + // the anchored logo for the initial waiting state, not as a second + // animated row stranded above a reply after work resumes. + if len(lives) > 0 { + showActivity = false + } for i := 0; i < len(es); i++ { e := &es[i] if f, ok := folds[i]; ok { diff --git a/internal/tui3/workfold.go b/internal/tui3/workfold.go index 7fedbc203f..e0b2a4c9b9 100644 --- a/internal/tui3/workfold.go +++ b/internal/tui3/workfold.go @@ -333,6 +333,14 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { out[f.start] = f } } + // Receipts between an answer and a later user-directed notice + // belong to the same disclosure, not to the visible answer. + if end < at && end >= from && settledBackgroundTail(es[end+1:at]) { + f := workfold{key: es[lo].turn, turn: es[lo].turn, start: -1, answer: at} + if countWork(es, end+1, at, &f); f.start >= 0 { + out[f.start] = f + } + } from = at + 1 } end := answer From 09d24b5ac5bffdbf8755302581a98bf9ed55c7e5 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 11:04:44 -0400 Subject: [PATCH 06/23] Fold asynchronous task housekeeping while preserving requested command results --- internal/e2e/chatclean_e2e_test.go | 13 +++-- internal/tui3/app.go | 16 +++--- .../tui3/async_command_visibility_test.go | 49 +++++++++++++++++ internal/tui3/chat_async_receipt_test.go | 52 +++++++++++++++++++ internal/tui3/deliverables.go | 6 +-- internal/tui3/export.go | 6 +-- internal/tui3/feed.go | 9 ++-- internal/tui3/modelrefresh.go | 4 +- internal/tui3/tui3_test.go | 37 +++++++++---- internal/tui3/workfold.go | 13 ++--- 10 files changed, 163 insertions(+), 42 deletions(-) create mode 100644 internal/tui3/async_command_visibility_test.go create mode 100644 internal/tui3/chat_async_receipt_test.go diff --git a/internal/e2e/chatclean_e2e_test.go b/internal/e2e/chatclean_e2e_test.go index 260160fd07..1e6a3c38a9 100644 --- a/internal/e2e/chatclean_e2e_test.go +++ b/internal/e2e/chatclean_e2e_test.go @@ -66,6 +66,7 @@ func TestCleanChat(t *testing.T) { } cleanChatCapture(t, r, "01-expanded") r.keys("C-e") + cleanChatCapture(t, r, "01-closed") r.lit("/task solo write a file called hello.txt containing the word hello; no other changes") r.keys("Enter") screen = r.waitFor(6*time.Minute, say(t, "taskDoneGlyph"), say(t, "taskDoneWord")) @@ -76,6 +77,12 @@ func TestCleanChat(t *testing.T) { if strings.Contains(screen, "nothing checked this work") { t.Fatalf("the collapsed notification leaked its audit detail:\n%s", screen) } + for _, line := range strings.Split(screen, "\n") { + line = strings.TrimSpace(line) + if strings.Contains(line, "single task 1 started") || (strings.HasPrefix(line, "·") && strings.Contains(line, "cached")) { + t.Fatalf("closed conversation leaked operational receipt at task landing:\n%s", screen) + } + } cleanChatCapture(t, r, "02-notification") r.lit("/dismiss") r.keys("Enter") @@ -199,12 +206,12 @@ func TestCleanChatFailureRecovery(t *testing.T) { cleanChatCapture(t, r, "07-failure-recovery-active") captured = true } - if strings.Contains(screen, "2 tool calls") && strings.Contains(screen, "idle") { + if strings.Contains(screen, keyedWord("2", "tool calls")) && strings.Contains(screen, "idle") { break } time.Sleep(pollEvery) } - screen := r.waitFor(2*time.Second, "2 tool calls", "idle") + screen := r.waitFor(2*time.Second, keyedWord("2", "tool calls"), "idle") if strings.Contains(screen, "CLEAN_FAILURE_TRACE_7319") { t.Fatalf("failed-call detail leaked after recovery:\n%s", screen) } @@ -325,7 +332,7 @@ func TestCleanChatSteering(t *testing.T) { screen = r.capture() if strings.Contains(screen, "idle") { for _, line := range strings.Split(screen, "\n") { - if strings.HasPrefix(strings.ToLower(strings.TrimSpace(line)), "checks finished") { + if strings.Contains(strings.ToLower(line), "checks finished") && !strings.Contains(strings.ToLower(line), "say checks finished") { finished = true break } diff --git a/internal/tui3/app.go b/internal/tui3/app.go index 27ace994a4..5b8de9308e 100644 --- a/internal/tui3/app.go +++ b/internal/tui3/app.go @@ -3906,7 +3906,7 @@ func (a *app) route(msg tea.Msg) (tea.Model, tea.Cmd) { case pictureOpenedMsg: if msg.err != nil { - a.note(filesOpenFailedWord + drawableLine(msg.path)) + a.toldNote(filesOpenFailedWord + drawableLine(msg.path)) } return a, nil @@ -5108,7 +5108,7 @@ func (a *app) route(msg tea.Msg) (tea.Model, tea.Cmd) { case compactedMsg: if msg.err != nil { - a.note("compact failed: " + msg.err.Error()) + a.toldNote("compact failed: " + msg.err.Error()) } else { a.noticeEvent(eventCompacted) } @@ -5117,13 +5117,13 @@ func (a *app) route(msg tea.Msg) (tea.Model, tea.Cmd) { case landNoteMsg: // A landing's whole answer is one line, the clean one and the one that // could not go in alike (landcmd.go). - a.note(msg.line) + a.toldNote(msg.line) return a, nil case cacheNoteMsg: // A cache errand's whole answer is one line, success and refusal alike // (cachecmd.go). - a.note(msg.line) + a.toldNote(msg.line) return a, nil case spelledMsg: @@ -8203,18 +8203,18 @@ func (a *app) renewRefusing(say func(string)) (tea.Cmd, bool) { // conversation they were in is still running. switch { case replacing && a.file != "": - a.note("new session · " + a.hostedPath(a.file)) + a.toldNote("new session · " + a.hostedPath(a.file)) case replacing: - a.note("new session") + a.toldNote("new session") default: - a.note("new conversation · " + a.place) + a.toldNote("new conversation · " + a.place) } if conv.Notice != "" { // The door had something to say about HOW this conversation came to be // open — "session open elsewhere — started a new one" is the sentence // that exists — and the entry line is where the first conversation's own // notice lands too ([Options.Notice]). - a.note(conv.Notice) + a.toldNote(conv.Notice) } if key := a.convKey(a.file); key != "" { a.rememberOpen(key) diff --git a/internal/tui3/async_command_visibility_test.go b/internal/tui3/async_command_visibility_test.go new file mode 100644 index 0000000000..757ff6b3d5 --- /dev/null +++ b/internal/tui3/async_command_visibility_test.go @@ -0,0 +1,49 @@ +package tui3 + +import ( + "errors" + "io/fs" + "strings" + "testing" + "time" + + tea "charm.land/bubbletea/v2" + "github.com/Agent-Field/codeaf/internal/config" +) + +func TestAsyncUserCommandResponsesStayVisibleInCleanConversation(t *testing.T) { + cases := []struct { + name, want string + msg tea.Msg + }{ + {"cache status", "cache holds", cacheNoteMsg{line: "the cache holds 12 MB"}}, + {"cache confirmation", "type /cache clean now", cacheNoteMsg{line: "type /cache clean now to go ahead"}}, + {"landing", "branch landed", landNoteMsg{line: "branch landed"}}, + {"compaction error", "compact failed", compactedMsg{err: errors.New("disk busy")}}, + {"export", "exported", exportedMsg{path: "/tmp/conversation.md"}}, + {"export refusal", "already there", exportedMsg{path: "/tmp/conversation.md", err: fs.ErrExist}}, + {"export error", "export failed", exportedMsg{err: errors.New("disk full")}}, + {"copy", "copied", copiedMsg{path: "/tmp/answer.md"}}, + {"copy refusal", filesThereWord, copiedMsg{path: "/tmp/answer.md", err: fs.ErrExist}}, + {"copy error", filesCopyFailedWord, copiedMsg{err: errors.New("disk full")}}, + {"picture error", filesOpenFailedWord, pictureOpenedMsg{path: "/tmp/image.png", err: errors.New("no viewer")}}, + {"model refresh error", ModelsFetchFailed, modelsFetchedMsg{err: errors.New("offline")}}, + {"model refresh", modelsNoteHead, modelsFetchedMsg{rows: pickerCatalog, at: time.Unix(100, 0)}}, + } + for _, tc := range cases { + t.Run(tc.name, func(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.workMode = config.WorkFold + drive(t, a, tc.msg) + page := strings.Join(plainRows(a), "\n") + if !strings.Contains(page, tc.want) { + t.Fatalf("requested result hidden: %s", page) + } + for _, r := range rows(a) { + if r.hit == hitWorkFold { + t.Fatalf("direct answer acquired a work disclosure: %s", page) + } + } + }) + } +} diff --git a/internal/tui3/chat_async_receipt_test.go b/internal/tui3/chat_async_receipt_test.go new file mode 100644 index 0000000000..4a07eddf39 --- /dev/null +++ b/internal/tui3/chat_async_receipt_test.go @@ -0,0 +1,52 @@ +package tui3 + +import ( + "strings" + "testing" + + "github.com/Agent-Field/codeaf/internal/config" +) + +// Reproduce the real command road: slash returns before taskStartedMsg adds +// its ordinary acknowledgement. A synthetic told note misses this regression. +func TestCleanChatAsyncTaskReceiptDoesNotUnfoldEarlierCacheNote(t *testing.T) { + for _, wake := range []bool{false, true} { + a := newTestApp(&taskCommandFake{Agent: &fakeAgent{model: "m"}}) + a.entries = foldFixture() + a.entries[5].confirmed = &responseConfirmation{done: true} + a.turn = 1 + a.workMode = config.WorkFold + a.note("PRIVATE CACHE RECEIPT") + a.toggleLatestWorkfold() + a.setCapOpen(a.conversation(), 2, true) + a.toggleLatestWorkfold() + if a.workOpen[1] { + t.Fatal("test did not close the old work") + } + _, _ = a.Update(taskMsg(a.slash("/task solo write a hello file"))) + last := len(a.entries) - 1 + if !strings.Contains(a.entries[last].text, "task 7 started") || a.entries[last].told { + t.Fatalf("expected real async ordinary task acknowledgement: %+v", a.entries[last]) + } + a.entries = append(a.entries, entry{kind: entryDone, turn: 1, done: &taskDone{id: 7, title: "hello file", ident: identFor(7)}}) + if wake { + a.turn = 2 + a.state = stateWorking + } + a.touch() + page := strings.Join(plainRows(a), "\n") + for _, hidden := range []string{"PRIVATE CACHE RECEIPT", "task 7 started"} { + if strings.Contains(page, hidden) { + t.Fatalf("async landing exposed %q: %s", hidden, page) + } + } + if !strings.Contains(page, "hello file") || !strings.Contains(page, "Done.") { + t.Fatalf("lost notification or final answer: %s", page) + } + a.setWorkOpen(a.conversation(), 1, true) + page = strings.Join(plainRows(a), "\n") + if !strings.Contains(page, "PRIVATE CACHE RECEIPT") || !strings.Contains(page, "task 7 started") { + t.Fatalf("operational receipts are not recoverable: %s", page) + } + } +} diff --git a/internal/tui3/deliverables.go b/internal/tui3/deliverables.go index 444be2ca34..8b20d8c510 100644 --- a/internal/tui3/deliverables.go +++ b/internal/tui3/deliverables.go @@ -580,11 +580,11 @@ func (a *app) copiedFile(msg copiedMsg) { short := shortPath(msg.path, a.tilde, 0) switch { case msg.err == nil: - a.note(filesCopiedWord + short) + a.toldNote(filesCopiedWord + short) case errors.Is(msg.err, fs.ErrExist): - a.note(short + filesThereWord) + a.toldNote(short + filesThereWord) default: - a.note(filesCopyFailedWord + msg.err.Error()) + a.toldNote(filesCopyFailedWord + msg.err.Error()) } } diff --git a/internal/tui3/export.go b/internal/tui3/export.go index 216ea94d19..d957980d76 100644 --- a/internal/tui3/export.go +++ b/internal/tui3/export.go @@ -165,12 +165,12 @@ func (a *app) exportDone(msg exportedMsg) { } switch { case msg.err == nil: - a.note("exported · " + short + here) + a.toldNote("exported · " + short + here) a.noticeEvent(eventDeliverableMade) case errors.Is(msg.err, fs.ErrExist): - a.note(short + " is already there · /export writes it somewhere else") + a.toldNote(short + " is already there · /export writes it somewhere else") default: - a.note("export failed: " + msg.err.Error()) + a.toldNote("export failed: " + msg.err.Error()) } } diff --git a/internal/tui3/feed.go b/internal/tui3/feed.go index 5de6dab0a0..37dedce66d 100644 --- a/internal/tui3/feed.go +++ b/internal/tui3/feed.go @@ -1304,10 +1304,11 @@ func (f *feed) reserveResponseContinuation() { func (f *feed) note(text string) { f.noteWritten(text, false, nil) } // toldNote is a note ADDRESSED TO THE PERSON: same dim line, same door, and the -// work chip may not swallow it ([entry.told]). Its one caller today is the news -// that a row they wrote has stopped being sent (session's EventRowNews). -func (f *feed) toldNote(text string) { - f.noteWritten(text, false, nil) +// work chip may not swallow it ([entry.told]). Explicit user-directed notices +// and asynchronous command responses use this door; optional facts retain the +// same emphasis as noteFacts. +func (f *feed) toldNote(text string, facts ...string) { + f.noteWritten(text, false, facts) if n := len(f.entries); n > 0 && f.entries[n-1].kind == entryNote { f.entries[n-1].told = true } diff --git a/internal/tui3/modelrefresh.go b/internal/tui3/modelrefresh.go index cb38a2bb4a..01673c0dd8 100644 --- a/internal/tui3/modelrefresh.go +++ b/internal/tui3/modelrefresh.go @@ -182,7 +182,7 @@ func (a *app) modelsFetched(msg modelsFetchedMsg) { err = errNoModelList } if err != nil { - a.note(ModelsFetchFailed + " · " + strings.Join(strings.Fields(err.Error()), " ")) + a.toldNote(ModelsFetchFailed + " · " + strings.Join(strings.Fields(err.Error()), " ")) return } // AND A FETCH THAT LANDED REWROTE THE CACHE ON DISK (cmd/codeaf's v3 door), @@ -200,7 +200,7 @@ func (a *app) modelsFetched(msg modelsFetchedMsg) { a.pick.restock(list) } note, named := modelsNote(list, msg.shown) - a.noteFacts(note, named...) + a.toldNote(note, named...) } // modelsNote is the landed fetch in one line — `models · 612 · 9 new · a, b, diff --git a/internal/tui3/tui3_test.go b/internal/tui3/tui3_test.go index 8d2183e9b0..3ffbcaf595 100644 --- a/internal/tui3/tui3_test.go +++ b/internal/tui3/tui3_test.go @@ -1183,8 +1183,13 @@ func TestAFailedToolIsMarkedAndSaysWhy(t *testing.T) { runTurn(t, a, agent, "build it") got := plain(frame(a)) - if !strings.Contains(got, glyphBad) || !strings.Contains(got, "exit 2") { - t.Fatalf("a failed tool has to say so:\n%s", got) + if !strings.Contains(got, glyphBad+" 1 failed") { + t.Fatalf("the closed work must flag its failed call:\n%s", got) + } + drive(t, a, key("ctrl+e")) + openFirstCaption(t, a) + if opened := plain(frame(a)); !strings.Contains(opened, "exit 2") { + t.Fatalf("the disclosed failed call lost its reason:\n%s", opened) } } @@ -1308,7 +1313,7 @@ func collapse(shape []string) []string { // A cluster that is the WHOLE turn still opens under the change-of-speaker // blank: the person said "build it", and the surface answering with a call is // a different voice, so exactly one row of silence sits between the message -// and the first work row — the caption heading, with the tool under it. +// and the first work row — the compact summary until the reader opens it. func TestAClusterThatIsTheWholeTurnTakesTheSpeakerBlankAboveIt(t *testing.T) { agent := &fakeAgent{model: "m", turns: [][]session.Event{{ toolBegin("bash", "go build ./..."), @@ -1325,9 +1330,6 @@ func TestAClusterThatIsTheWholeTurnTakesTheSpeakerBlankAboveIt(t *testing.T) { strings.HasPrefix(bare, "╰─▶") || strings.HasPrefix(bare, "├─▶")) { continue } - if strings.HasPrefix(bare, "▸ worked") || strings.HasPrefix(bare, "▾ worked") { - continue - } if i < 2 || strings.TrimSpace(list[i-1]) != "" || strings.TrimSpace(list[i-2]) == "" { t.Fatalf("the call does not sit one blank under the person's message:\n%s", strings.Join(list, "\n")) @@ -1350,6 +1352,9 @@ func TestToolLinesAreOneUnbrokenCluster(t *testing.T) { // outline treats them as one step — the rail still tees inside that step. overlapToolClocks(a) + drive(t, a, key("ctrl+e")) + openFirstCaption(t, a) + list := plainRows(a) first, last := -1, -1 for i, r := range list { @@ -1379,8 +1384,7 @@ func TestToolLinesAreOneUnbrokenCluster(t *testing.T) { } } -// Past three calls the older ones fold into one line under their caption, and -// ctrl+o opens them. +// A completed cluster stays behind its caption, and ctrl+o reveals every call. func TestTheClusterFoldsPastThreeCalls(t *testing.T) { var events []session.Event for _, name := range []string{"a.go", "b.go", "c.go", "d.go", "e.go"} { @@ -1402,6 +1406,8 @@ func TestTheClusterFoldsPastThreeCalls(t *testing.T) { a.entries[i].ended = base.Add(time.Second) } + drive(t, a, key("ctrl+e")) + list := plainRows(a) page := strings.Join(list, "\n") // The turn is over and all five reads came back, so the floor caption is in @@ -1412,8 +1418,8 @@ func TestTheClusterFoldsPastThreeCalls(t *testing.T) { if strings.Contains(page, "earlier tool calls") { t.Fatalf("the old fold line survived under a caption:\n%s", page) } - if n := countTools(a); n != toolWindow { - t.Fatalf("%d tool lines are visible, want %d:\n%s", n, toolWindow, page) + if n := countTools(a); n != 0 { + t.Fatalf("%d tool lines escaped the closed caption:\n%s", n, page) } if strings.Contains(strings.Join(list, "\n"), "a.go") { t.Fatalf("a folded call is still on screen:\n%s", strings.Join(list, "\n")) @@ -1429,7 +1435,7 @@ func TestTheClusterFoldsPastThreeCalls(t *testing.T) { } drive(t, a, key("ctrl+o")) - if n := countTools(a); n != toolWindow { + if n := countTools(a); n != 0 { t.Fatalf("ctrl+o did not fold back: %d calls visible", n) } } @@ -1460,6 +1466,8 @@ func TestOpeningOneCallShowsItsResultUnderTheRail(t *testing.T) { }}} a := newTestApp(agent) runTurn(t, a, agent, "find main") + drive(t, a, key("ctrl+e")) + openFirstCaption(t, a) call := -1 for i := range a.entries { @@ -1539,6 +1547,8 @@ func TestAClickOpensTheCallUnderIt(t *testing.T) { }}} a := newTestApp(agent) runTurn(t, a, agent, "read it") + drive(t, a, key("ctrl+e")) + openFirstCaption(t, a) at := -1 for i, r := range rows(a) { @@ -1909,6 +1919,11 @@ func TestScrollSticksToTheBottomUntilTheReaderLeaves(t *testing.T) { for i := range 40 { a.note("line " + itoa(i)) } + // Operational notes are retained behind a disclosure; scroll the opened log. + drive(t, a, key("ctrl+e")) + if len(a.visible(a.width)) <= a.viewHeight() { + t.Fatal("opened fixture does not fill the viewport") + } if !a.stick { t.Fatal("a surface that never scrolled has to be stuck to the bottom") } diff --git a/internal/tui3/workfold.go b/internal/tui3/workfold.go index e0b2a4c9b9..856f79b9cd 100644 --- a/internal/tui3/workfold.go +++ b/internal/tui3/workfold.go @@ -8,7 +8,6 @@ import ( "github.com/charmbracelet/x/ansi" "github.com/Agent-Field/codeaf/internal/config" - "github.com/Agent-Field/codeaf/internal/session" ) // workfold is render-time structure. Nothing here is journaled: replaying the @@ -271,13 +270,11 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { if es[i].cut { stopped = true } - // A program's ending is news the person must see before the chat's - // wake reply. It lands through the standing task lane inside that - // reply's turn, so it is a boundary like an ask even though the - // program has already ended. Ordinary task cards keep their old - // placement and folding rules. - if es[i].kind == entryTask || es[i].kind == entryConnect || es[i].kind == entryStanding || - (es[i].kind == entryDone && es[i].done != nil && (es[i].done.program != "" || es[i].done.status.Tier == session.TaskTierYourCall)) { + // A landed task owns its compact, dismissible receipt. Treat every + // landing as a boundary so unrelated housekeeping on either side + // still folds, even when an async command acknowledgement arrived + // after the response without a new user message. + if es[i].kind == entryTask || es[i].kind == entryConnect || es[i].kind == entryStanding || es[i].kind == entryDone { asks = append(asks, i) } if es[i].kind == entryTool && ((es[i].status != toolOK && es[i].status != toolFailed && !es[i].cut) || es[i].decision != "") { From d19673f856f17c3a71f3a7e7cd8d49b70449e088 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 11:10:16 -0400 Subject: [PATCH 07/23] Reset interim-update probes before textless new responses --- internal/tui3/feed_update.go | 13 +++++++--- internal/tui3/feed_update_test.go | 42 +++++++++++++++++++++++++++++++ 2 files changed, 52 insertions(+), 3 deletions(-) diff --git a/internal/tui3/feed_update.go b/internal/tui3/feed_update.go index bb97e7d443..17d339d001 100644 --- a/internal/tui3/feed_update.go +++ b/internal/tui3/feed_update.go @@ -13,11 +13,17 @@ type userUpdateStream struct { resolved, marked, trimSpace bool } +// A new turn can begin with a tool or an empty response, before any text arrives. +// Discard the previous response's probe at every entry that can consume it. +func (f *feed) syncUpdateTurn() { + if f.updateDelivery.turn != f.turn { + f.updateDelivery = userUpdateStream{turn: f.turn} + } +} + func (f *feed) updateText(text string) string { + f.syncUpdateTurn() p := &f.updateDelivery - if p.turn != f.turn { - *p = userUpdateStream{turn: f.turn} - } if !p.resolved { p.pending += text prefix := strings.TrimLeft(p.pending, " \t\r\n") @@ -43,6 +49,7 @@ func (f *feed) updateText(text string) string { // An incomplete marker that ends as ordinary text must not lose characters. func (f *feed) flushUpdatePrefix() { + f.syncUpdateTurn() if text := f.updateDelivery.pending; text != "" { f.updateDelivery.pending = "" f.sayVisibleStream(text, false) diff --git a/internal/tui3/feed_update_test.go b/internal/tui3/feed_update_test.go index d3a9c36243..d64ef0a2e9 100644 --- a/internal/tui3/feed_update_test.go +++ b/internal/tui3/feed_update_test.go @@ -148,3 +148,45 @@ func TestExplicitUpdateStreamsAsAddressedButNotCompletedAcrossLenses(t *testing. t.Fatal("audience bypass promoted an interrupted partial update") } } + +func TestUpdateProbeDoesNotCrossIntoTextlessNewTurn(t *testing.T) { + for _, boundary := range []struct { + name string + event session.Event + }{ + {"tool forming", session.Event{Kind: session.EventToolForming, Tool: "read"}}, + {"tool announced", session.Event{Kind: session.EventToolAnnounced, Tool: "read"}}, + {"tool begin", session.Event{Kind: session.EventToolBegin, Tool: "read"}}, + {"empty response", session.Event{Kind: session.EventAssistantDone}}, + } { + for _, prefix := range []string{"[up", "[update] "} { + t.Run(boundary.name+"/"+prefix, func(t *testing.T) { + f := newFeed(feedHooks{}) + f.turn = 1 + f.ingest(session.Event{Kind: session.EventTextDelta, Text: prefix}) + f.closeLive() + f.turn = 2 + f.ingest(boundary.event) + for _, e := range f.entries { + if e.turn == 2 && e.kind == entryAssistant { + t.Fatalf("new turn inherited old response probe: %#v", e) + } + } + f.ingest(session.Event{Kind: session.EventTextDelta, Text: "ordinary next turn"}) + f.ingest(session.Event{Kind: session.EventToolBegin, Tool: "read"}) + found := false + for _, e := range f.entries { + if e.turn == 2 && e.kind == entryAssistant { + found = true + if e.text != "ordinary next turn" || e.addressed || confirmedAnswer(&e) { + t.Fatalf("ordinary response inherited explicit audience: %#v", e) + } + } + } + if !found { + t.Fatal("next turn lost legitimate text") + } + }) + } + } +} From 845b6200546022e9f6a91b73fe1a72334dc1b5e3 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 11:14:54 -0400 Subject: [PATCH 08/23] Record live terminal acceptance evidence for PR 1607 --- ...{1605-clean-chat.md => 1607-clean-chat.md} | 2 +- docs/design/chat-cleanup/README.md | 25 ++- .../chat-cleanup/evidence/00-active.cast | 3 + .../chat-cleanup/evidence/00-active.gif | Bin 0 -> 30018 bytes .../chat-cleanup/evidence/00-active.txt | 42 ++++ .../design/chat-cleanup/evidence/01-chat.cast | 3 + docs/design/chat-cleanup/evidence/01-chat.gif | Bin 0 -> 33600 bytes docs/design/chat-cleanup/evidence/01-chat.txt | 42 ++++ .../chat-cleanup/evidence/01-closed.cast | 3 + .../chat-cleanup/evidence/01-closed.gif | Bin 0 -> 33600 bytes .../chat-cleanup/evidence/01-closed.txt | 42 ++++ .../chat-cleanup/evidence/01-expanded.cast | 3 + .../chat-cleanup/evidence/01-expanded.gif | Bin 0 -> 48400 bytes .../chat-cleanup/evidence/01-expanded.txt | 42 ++++ .../evidence/02-notification.cast | 3 + .../chat-cleanup/evidence/02-notification.gif | Bin 0 -> 39349 bytes .../chat-cleanup/evidence/02-notification.txt | 42 ++++ .../chat-cleanup/evidence/03-dismissed.cast | 3 + .../chat-cleanup/evidence/03-dismissed.gif | Bin 0 -> 34846 bytes .../chat-cleanup/evidence/03-dismissed.txt | 42 ++++ .../chat-cleanup/evidence/04-restored.cast | 3 + .../chat-cleanup/evidence/04-restored.gif | Bin 0 -> 39653 bytes .../chat-cleanup/evidence/04-restored.txt | 42 ++++ .../evidence/05-manager-replay.cast | 3 + .../evidence/05-manager-replay.gif | Bin 0 -> 26231 bytes .../evidence/05-manager-replay.txt | 42 ++++ .../evidence/06-manager-live-followup.cast | 3 + .../evidence/06-manager-live-followup.gif | Bin 0 -> 36271 bytes .../evidence/06-manager-live-followup.txt | 42 ++++ .../evidence/07-failure-recovery-active.cast | 3 + .../evidence/07-failure-recovery-active.gif | Bin 0 -> 38464 bytes .../evidence/07-failure-recovery-active.txt | 42 ++++ .../evidence/08-recovery-finished.cast | 3 + .../evidence/08-recovery-finished.gif | Bin 0 -> 39671 bytes .../evidence/08-recovery-finished.txt | 42 ++++ .../evidence/09-assistant-update.cast | 3 + .../evidence/09-assistant-update.gif | Bin 0 -> 38214 bytes .../evidence/09-assistant-update.txt | 42 ++++ .../evidence/09-user-steering.cast | 3 + .../evidence/09-user-steering.gif | Bin 0 -> 35093 bytes .../evidence/09-user-steering.txt | 42 ++++ .../evidence/10-steering-finished.cast | 3 + .../evidence/10-steering-finished.gif | Bin 0 -> 45943 bytes .../evidence/10-steering-finished.txt | 42 ++++ .../evidence/11-steering-resumed.cast | 3 + .../evidence/11-steering-resumed.gif | Bin 0 -> 43503 bytes .../evidence/11-steering-resumed.txt | 42 ++++ .../chat-cleanup/evidence/chat-models.json | 184 ++++++++++++++++++ .../chat-cleanup/evidence/manager-models.json | 72 +++++++ .../evidence/notification-sequence.cast | 5 + .../evidence/notification-sequence.gif | Bin 0 -> 74011 bytes .../evidence/recovery-models.json | 100 ++++++++++ .../chat-cleanup/evidence/run-summary.json | 20 ++ .../evidence/steering-models.json | 127 ++++++++++++ 54 files changed, 1207 insertions(+), 3 deletions(-) rename docs/changes/unreleased/{1605-clean-chat.md => 1607-clean-chat.md} (99%) create mode 100644 docs/design/chat-cleanup/evidence/00-active.cast create mode 100644 docs/design/chat-cleanup/evidence/00-active.gif create mode 100644 docs/design/chat-cleanup/evidence/00-active.txt create mode 100644 docs/design/chat-cleanup/evidence/01-chat.cast create mode 100644 docs/design/chat-cleanup/evidence/01-chat.gif create mode 100644 docs/design/chat-cleanup/evidence/01-chat.txt create mode 100644 docs/design/chat-cleanup/evidence/01-closed.cast create mode 100644 docs/design/chat-cleanup/evidence/01-closed.gif create mode 100644 docs/design/chat-cleanup/evidence/01-closed.txt create mode 100644 docs/design/chat-cleanup/evidence/01-expanded.cast create mode 100644 docs/design/chat-cleanup/evidence/01-expanded.gif create mode 100644 docs/design/chat-cleanup/evidence/01-expanded.txt create mode 100644 docs/design/chat-cleanup/evidence/02-notification.cast create mode 100644 docs/design/chat-cleanup/evidence/02-notification.gif create mode 100644 docs/design/chat-cleanup/evidence/02-notification.txt create mode 100644 docs/design/chat-cleanup/evidence/03-dismissed.cast create mode 100644 docs/design/chat-cleanup/evidence/03-dismissed.gif create mode 100644 docs/design/chat-cleanup/evidence/03-dismissed.txt create mode 100644 docs/design/chat-cleanup/evidence/04-restored.cast create mode 100644 docs/design/chat-cleanup/evidence/04-restored.gif create mode 100644 docs/design/chat-cleanup/evidence/04-restored.txt create mode 100644 docs/design/chat-cleanup/evidence/05-manager-replay.cast create mode 100644 docs/design/chat-cleanup/evidence/05-manager-replay.gif create mode 100644 docs/design/chat-cleanup/evidence/05-manager-replay.txt create mode 100644 docs/design/chat-cleanup/evidence/06-manager-live-followup.cast create mode 100644 docs/design/chat-cleanup/evidence/06-manager-live-followup.gif create mode 100644 docs/design/chat-cleanup/evidence/06-manager-live-followup.txt create mode 100644 docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast create mode 100644 docs/design/chat-cleanup/evidence/07-failure-recovery-active.gif create mode 100644 docs/design/chat-cleanup/evidence/07-failure-recovery-active.txt create mode 100644 docs/design/chat-cleanup/evidence/08-recovery-finished.cast create mode 100644 docs/design/chat-cleanup/evidence/08-recovery-finished.gif create mode 100644 docs/design/chat-cleanup/evidence/08-recovery-finished.txt create mode 100644 docs/design/chat-cleanup/evidence/09-assistant-update.cast create mode 100644 docs/design/chat-cleanup/evidence/09-assistant-update.gif create mode 100644 docs/design/chat-cleanup/evidence/09-assistant-update.txt create mode 100644 docs/design/chat-cleanup/evidence/09-user-steering.cast create mode 100644 docs/design/chat-cleanup/evidence/09-user-steering.gif create mode 100644 docs/design/chat-cleanup/evidence/09-user-steering.txt create mode 100644 docs/design/chat-cleanup/evidence/10-steering-finished.cast create mode 100644 docs/design/chat-cleanup/evidence/10-steering-finished.gif create mode 100644 docs/design/chat-cleanup/evidence/10-steering-finished.txt create mode 100644 docs/design/chat-cleanup/evidence/11-steering-resumed.cast create mode 100644 docs/design/chat-cleanup/evidence/11-steering-resumed.gif create mode 100644 docs/design/chat-cleanup/evidence/11-steering-resumed.txt create mode 100644 docs/design/chat-cleanup/evidence/chat-models.json create mode 100644 docs/design/chat-cleanup/evidence/manager-models.json create mode 100644 docs/design/chat-cleanup/evidence/notification-sequence.cast create mode 100644 docs/design/chat-cleanup/evidence/notification-sequence.gif create mode 100644 docs/design/chat-cleanup/evidence/recovery-models.json create mode 100644 docs/design/chat-cleanup/evidence/run-summary.json create mode 100644 docs/design/chat-cleanup/evidence/steering-models.json diff --git a/docs/changes/unreleased/1605-clean-chat.md b/docs/changes/unreleased/1607-clean-chat.md similarity index 99% rename from docs/changes/unreleased/1605-clean-chat.md rename to docs/changes/unreleased/1607-clean-chat.md index f49ba5d48d..aad13c8c2d 100644 --- a/docs/changes/unreleased/1605-clean-chat.md +++ b/docs/changes/unreleased/1607-clean-chat.md @@ -1,7 +1,7 @@ --- kind: changed title: chat keeps messages readable and folds operational work across every conversation view -pr: 1605 +pr: 1607 surface: [chat, engine, docs] invalidates: - "Task completion cards and batches stayed expanded and could not be dismissed. They now start as one row; /dismiss hides settled notifications and /dismiss undo restores them without changing task records or pending decisions." diff --git a/docs/design/chat-cleanup/README.md b/docs/design/chat-cleanup/README.md index 85c6b85c95..999eaf132e 100644 --- a/docs/design/chat-cleanup/README.md +++ b/docs/design/chat-cleanup/README.md @@ -11,15 +11,36 @@ request timestamps, IDs, phases, role tags, model names, and HTTP statuses. | Test | What it checks | | --- | --- | -| `TestCleanChat` | A live bash call folds; its details remain accessible through work and step disclosures. A real task finishes, its notification is compact, `/dismiss` hides it, and `/dismiss undo` restores it. | +| `TestCleanChat` | A live bash call folds; its command details remain accessible through work and step disclosures. A real task finishes, its notification is compact, `/dismiss` hides it, and `/dismiss undo` restores it. | | `TestCleanManagerReplay` | A deterministic historical manager journal contains a team send, a team delivery, an internal wake note, and a Markdown answer. The real TUI resumes it without exposing traffic or raw Markdown, then takes a live model follow-up. This is **replay plus live follow-up**, not a claim that a live teammate sent the fixture. | | `TestCleanChatFailureRecovery` | A live model makes an intentionally failing bash call and a separate recovery call. Polling checks that the failure output never auto-expands; the real journal confirms that the failure actually happened. | -| `TestCleanChatSteering` | Real keyboard input is sent while a command runs. The user correction, an explicit `[update]` assistant progress message, and the final answer remain visible after two tool calls. The assistant marker is consumed by the renderer. Closing and reopening the real journal preserves all three messages. | +| `TestCleanChatSteering` | Real keyboard input is sent while the assistant is working. The user correction, an explicit `[update]` assistant progress message, and the final answer remain visible after two tool calls. The assistant marker is consumed by the renderer. Closing and reopening the real journal preserves all three messages. | The narrow unit regressions additionally cover the three-row activity bound across conversation, task, and nested views, plus interrupted intermediate updates and Markdown rendering. +## Verified run + +On 2026-09-27, `make build` from source `d19673f85` passed, followed by all four +real-tmux scenarios in **96.531 seconds**. The final run recorded **34 completed +request records**, all on `deepseek/deepseek-v4.1-flash`: chat/task 13, manager 5, +recovery 7, steering/resume 9. The audit also checks every start record. + +[Run output](evidence/run.log) · [Machine-readable summary](evidence/run-summary.json) + +## Captured screens + +1. [Clean conversation](evidence/01-chat.gif) and [expanded command details](evidence/01-expanded.gif). +2. [Notification → dismissed → restored](evidence/notification-sequence.gif), a sequence of three screenshots. +3. [Manager journal replay](evidence/05-manager-replay.gif) and [live follow-up](evidence/06-manager-live-followup.gif). +4. [Failure during recovery](evidence/07-failure-recovery-active.gif) and [finished recovery](evidence/08-recovery-finished.gif). +5. [User steering](evidence/09-user-steering.gif), [assistant update while working](evidence/09-assistant-update.gif), [final conversation](evidence/10-steering-finished.gif), and [reopened journal](evidence/11-steering-resumed.gif). + +![Explicit assistant update remains visible while work continues](evidence/09-assistant-update.gif) + +![Task notification dismissed and restored — screenshot sequence](evidence/notification-sequence.gif) + ## Reproduce ```sh diff --git a/docs/design/chat-cleanup/evidence/00-active.cast b/docs/design/chat-cleanup/evidence/00-active.cast new file mode 100644 index 0000000000..bdb45d74fa --- /dev/null +++ b/docs/design/chat-cleanup/evidence/00-active.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"00-active","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;179m•\u001b[39m \u001b[38;5;252m\u003e\u001b[39m \u001b[38;5;243mOptimizing a hunch\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.7k/1M · 1%\u001b[39m \u001b[38;5;146m⠙\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/00-active.gif b/docs/design/chat-cleanup/evidence/00-active.gif new file mode 100644 index 0000000000000000000000000000000000000000..bad94fc7074616dc2de2237da59f74c7433d8fff GIT binary patch literal 30018 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%0AQIQVFaGJOv^Y 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 Cr|KgB literal 0 HcmV?d00001 diff --git a/docs/design/chat-cleanup/evidence/00-active.txt b/docs/design/chat-cleanup/evidence/00-active.txt new file mode 100644 index 0000000000..e58f4d92d0 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/00-active.txt @@ -0,0 +1,42 @@ + >● codeaf home teams chats sessions spend settings sun 11:12am + ◐ Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by... × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / + terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. + + • > Optimizing a hunch + + + + + + + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.7k/1M · 1% ⠙ working ─ + › + + + esc interrupt project: /tmp/TestCleanChat2460052115/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/01-chat.cast b/docs/design/chat-cleanup/evidence/01-chat.cast new file mode 100644 index 0000000000..77de538cdf --- /dev/null +++ b/docs/design/chat-cleanup/evidence/01-chat.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"01-chat","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0047\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0058\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0005 · 49% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/01-chat.gif b/docs/design/chat-cleanup/evidence/01-chat.gif new file mode 100644 index 0000000000000000000000000000000000000000..a0e8360f5c324ec24ac41577af5b8d29b99f5e85 GIT binary patch literal 33600 zcmXV%cR1VM`?z13VuYBrh1xUrCSvc{+M=;)@2y5cjJ8I!w0M_>QmSa^(nTnxT6z z5YWG{=wF6_pi7D|AwhuXPbgIWUrhdgz5h2ZM_N{6cz8HIK0fE+l#Y&0&eW8wg4X%S zYpK<}GIE;o7=3-q3o6={p;sCR1V5a;PgGPC-oZ`Jz(PacPF7JTqkhQLF;H9A1Z!kv zY-+2jj!moS4-b!sEosB3=v!Zi_V*7^RK=Q^+qs8dv9)ut_eoa7=;|1|U^Gn9Yx)(G zbk3dg%Dg|KsH}J4f@gN~q@J0(kIyA@*N~Xl%aMgGp<$6yGU{FzeKfUk4x*_rWu^C?YZ{A|le#%F&;6$HRjVp5N>eOjcAk zN-S?TFtq6G>~eHEXX+eeVCAW0lSWd$(3C}S+(!qzgID^unLNbee%riVnTFuw2O<& zh3Eo9L&Jc~>aw!i9-fy>OiTiUB6Uq&T~ae6n_Hr;Ke~LUn?`H#ORKn$ofj7uXK!zx zlA1X*G<5E~-}M`}LhBl$uRnS5;$>1tXXePLb0EpjKWysZMOSx1Vp6K7*QJgQy0N{V zg@0gH_SM!$k9|_gE?0Kp&J${D>(q3t&Ye4#NzU=iziy28&zXAYd$XMMVIX5@C?YZ; z;Z^(Pu5M4SICT>nTWc#*@1T&{Yq?jh=~z1jRo7-sOz7d=+%s~qHWy#NZV!LZY;EgW zRb3O^`nWCLEj2aO%gd{|`QgRFlrVc!b4!nsk~T-Dz{0{7Z{J{h0|VReIRF3dq@`En zX?{%>2_Aai*k~?6@_3M z-}V9@6BHCouB#g~al91XScEfnsS9%&%J3*J?;s7I0T4paf=2DkL~zP_^wFx`Pf@I1NTS4bNx>qOg$vLxhiD+wDIGkz_A9;_fMNX zJ&RoKudsgBJohs3`{vyHXAeJj5FyOMHf^-UH@Td0ULV?8mU}5@tt)Mwx30b~RSlW{ z@chx*5Y_mauo@t`i^aO#m?6CNEa{ZL zorl|ZzuNx?coYaq()_TRpPY@x6u*u`3bm3^EAMr71MlWtX3^(eB(vhAMYAAJsJ4pG z)usMi@#Yw3C>TM&8c8=G9InZ+#u~Ap{6@_3OeAPShCf&C+KYcB-WuatnSWS=3 zC1|S;(-T)si|Og_MN8-c_aghaQ}%0DR*WtR$NJy=RbuJNJ<)CKMU>;)wbMM`UelZL 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⁡Oo9^OL*O8y>kJzPh2lV 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● codeaf home teams chats sessions spend settings 1 moving · $0.0047 · sun 11:12am + bash output and terminal check conversation × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / + terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. + + ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + + The terminal check passed. + + + + + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0058 · ⟲ saved $0.0005 · 49% cached 15.1k/1M · 1% idle ─ + › + + + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat2460052115/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/01-closed.cast b/docs/design/chat-cleanup/evidence/01-closed.cast new file mode 100644 index 0000000000..11153d492c --- /dev/null +++ b/docs/design/chat-cleanup/evidence/01-closed.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"01-closed","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0047\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0058\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0005 · 49% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/01-closed.gif b/docs/design/chat-cleanup/evidence/01-closed.gif new file mode 100644 index 0000000000000000000000000000000000000000..a0e8360f5c324ec24ac41577af5b8d29b99f5e85 GIT binary patch literal 33600 zcmXV%cR1VM`?z13VuYBrh1xUrCSvc{+M=;)@2y5cjJ8I!w0M_>QmSa^(nTnxT6z z5YWG{=wF6_pi7D|AwhuXPbgIWUrhdgz5h2ZM_N{6cz8HIK0fE+l#Y&0&eW8wg4X%S zYpK<}GIE;o7=3-q3o6={p;sCR1V5a;PgGPC-oZ`Jz(PacPF7JTqkhQLF;H9A1Z!kv zY-+2jj!moS4-b!sEosB3=v!Zi_V*7^RK=Q^+qs8dv9)ut_eoa7=;|1|U^Gn9Yx)(G zbk3dg%Dg|KsH}J4f@gN~q@J0(kIyA@*N~Xl%aMgGp<$6yGU{FzeKfUk4x*_rWu^C?YZ{A|le#%F&;6$HRjVp5N>eOjcAk zN-S?TFtq6G>~eHEXX+eeVCAW0lSWd$(3C}S+(!qzgID^unLNbee%riVnTFuw2O<& zh3Eo9L&Jc~>aw!i9-fy>OiTiUB6Uq&T~ae6n_Hr;Ke~LUn?`H#ORKn$ofj7uXK!zx zlA1X*G<5E~-}M`}LhBl$uRnS5;$>1tXXePLb0EpjKWysZMOSx1Vp6K7*QJgQy0N{V zg@0gH_SM!$k9|_gE?0Kp&J${D>(q3t&Ye4#NzU=iziy28&zXAYd$XMMVIX5@C?YZ; z;Z^(Pu5M4SICT>nTWc#*@1T&{Yq?jh=~z1jRo7-sOz7d=+%s~qHWy#NZV!LZY;EgW zRb3O^`nWCLEj2aO%gd{|`QgRFlrVc!b4!nsk~T-Dz{0{7Z{J{h0|VReIRF3dq@`En zX?{%>2_Aai*k~?6@_3M z-}V9@6BHCouB#g~al91XScEfnsS9%&%J3*J?;s7I0T4paf=2DkL~zP_^wFx`Pf@I1NTS4bNx>qOg$vLxhiD+wDIGkz_A9;_fMNX zJ&RoKudsgBJohs3`{vyHXAeJj5FyOMHf^-UH@Td0ULV?8mU}5@tt)Mwx30b~RSlW{ z@chx*5Y_mauo@t`i^aO#m?6CNEa{ZL zorl|ZzuNx?coYaq()_TRpPY@x6u*u`3bm3^EAMr71MlWtX3^(eB(vhAMYAAJsJ4pG z)usMi@#Yw3C>TM&8c8=G9InZ+#u~Ap{6@_3OeAPShCf&C+KYcB-WuatnSWS=3 zC1|S;(-T)si|Og_MN8-c_aghaQ}%0DR*WtR$NJy=RbuJNJ<)CKMU>;)wbMM`UelZL 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⁡Oo9^OL*O8y>kJzPh2lV z^r*XeCagYjyO<7(*Otur!}d@evhE}5zw^d?H0!U{UH2A2E?aa8lhw_7<~o0tuFUf) zH%G$mCy(P<%l*l$V?Af=*@f&t(@a({sKAV$$*u}m%;s**#X38kUSKxLQQ)wkUU9a) zHZeiyfa`{~^h&-AeKcgI8+PuBf9rs{1gMF{5=_)w1h6s?War?L_R9BBy-CZqz#kfY zK;eK&Yv;?kUA;EZ@|WQhRht;GmmLky=j77P^Hml8o@+7x@9clS8+%vp30O+x#O*UV zX2?|Z445nR#Z5o#vM{o6)l*aX#952^k@1^1H()?pGfDN;Vdd6AAG5;mIua=0@s1@) z7V=n!a^*$>nfel)a@G~m!L*HD@646Ypbr$H@7W>SKwm`Yn#~sv&xidvTI)zZJ!K#O zFogWmD1@p49~lQ`uT@3BO?!#-txe+DuMQ!q{#8($^VKD%S6=1FB$C(y&r4R-KK8Q| z@_YXVXF+7YYDQv-rS68K%2g37(byyp=IvIRj$kIHLbq=%n(GCT+mFCaW(4u{mGSbd zuupO3;~V!)s?kw7)|;ZN62vr6s^SsqjZ)qOXp_RPB!;MmoOSR+a(kbBkDb_%NK~0Du^kLVn|o zp~5zuH+~=rf}YYd#`B_ybte9@F3+u8pN^J1kwqt;kG^Jzs6jcDdy6_dAOv`75WIWc z{9BKN<*t4?%UcEki49Zyur}@IH93xeS^psZ|?<3O>*I z-`cxX#mhlGj2r+$|LWAG{-lA>)+kXds!xF*Y?6uCyI6gfDHZ#j!7s7r>c)!1^--$H z84{qc?s(6JDM~@^=}5)TP=v`@^hiijlpR&HCrPb;Bt!5!+dGdh{ND*86v6K5Anw3^1bgC->_6TN;-pml9Hu9j=fQr z^k&kzHj|^&j0xiYkI({{qbcf*zN!A_CtkQdeLB$;AwiHg9pi{VpGBq9nWd9axwytI zX=$BIDQL7Cmr$JQJl+)jg+OMn7Hc_;*?q%_;>hC#Y!wAwb$S}{0==>ttv8ysa4TZ` zulFY&ZYGz0ZXAZO9~?dutZwv2c4c?-R3n}(2UtcO*o)MPduE}$f;tj2eHq^=*4NV{pX7%N*=JMetQtiy z_HRMkJQqgzmHm5RJ3i)t?$3o+LIhF9EUrKnIv33>-WD8$+s$w-dCPHLB3}}P>0m82 z>*C4|$yR^m&6+U%CSp4x*Hq8Php(_($}H-t%PSwAXVX1O*-=+JCgJGu>9^{G^qja? zzQRY-y@sy-d0AUNoNOQa%*{@tua~^?lf1#(XP+HiT&w3Vd%5kMn+7$h<(0o;!pHX) z;V~sWdY4pgef$vcjk|Q>)g_H*9|t0`RY!*P0(7Q64ko;f30is;U~u$tC>?%4+t&-k zotYWVxfDX>ejRA0IWuBm7F#2sA7tgG(_HvA_MZCdAUlEX(L3%#LgH*AF>AH8c6_ZCrEQ>kzM_nW+wVJS|H<)aT5n>0Yz=){@tumoz_p z9LkP=T&o`z?DlD9>TUefC$Gc86Fz+tw7zM!4#gjcKj z5y?}Z=8xVcv>(2XNIUxU`4pZ=KZO}YW}KN_U@%YY;%<-3)|_2r%Sr5(Fo?S9HoJ7D zH}S1{dsIQf>@pCM&}V88ef`$#ij;X$ze{`c&1bW#N;yd%{0(Btr)Ixs_9hL+wZ~K* z&8`_TBoAj9#8#h~TQ@gP9xZ8)y{9?1VV{#cUTYB7;5N7E)|))}q&==VVeacihRf4E z2Jx-8=C%UNFV9T0$3J~Gw;hpld3Mzx;l=l2S8QdT4klltA}_x}f0)jN^~6XyQ`+thVa!{pIh^9Ob2shchx$&=6K z4K7j!|HXlg-15m-6>3S_29qFACCmNYs|WVgsSpo*Nd0Aq>7 z6J?|rFCYm0S9z$NBO3A5bdK_pkka|mynxoO5n3DxpEf!PB2Lk|(Qx0^(h#t6FcA<&8(t8M@N>B3uOuue#**fRp_l-6StM06kQVLRU z0Vna#C7CtSmd}Uwy#XZ}k0t`91Q1jj#sg(rAP`p~JIByQ=ReYacHTLs45%)Uex3tw z<4sPyO4S_`1m$wTDN~$djuRNbcFNAS&}_@Y}Fn=r;L^Fq@k0 zL0;?m+4<&TH>+ME#6*B3ijorv%rMRE{u*euar|~A5Ww9ofhIznEX<P4^iLY!uVQ7MmZR(wlhOd^E62Di4>Yhhyq97Y>BB z=#WpRh!!o^Ev||qxfVbY6cUF8NL3nHa9}~73Iv3xAdA~?&d@UpJ;d5{oT}fiCuW*X_pU6wkF6=_VtG#|%e@@8Xt~WQN#hUU>SW|4vH?bYDXje| z`5p2CBPIoGi6CESHmHwYtcMhu?VqGUMF}LhbvNrUsFlBO4r4p+Y?~E}I~^tBWMVNN zYi!j+StrGjmkA_IdD0mwamB-KG;nYY3aps0uKL-n9av(;Es8zfypl&U(Ym*bP0||& zcf_qs#Pi2ffH6Fgl?vKiK|^=PGIexSr|126mR9v7i4DxMMxs;o8-o1eR*px>L*#Ebx zEJjManM~85hbj4}6rv=>fgeU>TPIqnLD*ryWnPHT0ttRhKa)SgH<$l#sY_TK$x8(( zb7h2wA_c-S#A-)4d4UQ)l4PXgPd?&jd8GJ&!zf`?F4pmM%H3j=3h3@yeHBMeg(6|Y zAQ37^eAk#i5D=5beYeS1&$rY(w9V$S1E@~AJ!50Uu{oNZSYXDe#QHUKS~i=o`fV{OiQ%(3ylc)Y+uBijoS4v!`792#>-v+89FF%>&sK-Et zL85pop~QidlA#2b3`N_qNz^$2eeOmDPz-ZYh5^2-ot{0@602RHb)!NBWXT`*oF}eV zCtR<^<(F1`ypd{4l9*PS9le?FHfk}QRqH_69-Is$3+Y+cr@r|Q_My^rCgT6WqdeFL zfkPL_G;l*AAIb~Hw%Og4u#n?+8=ao^fH|fex)FtDuCBT^=_8fufhNC#Tz&UYZjUdC z5IyuGXnj^90ltbI86{+ZXbe1YBV5xUU1^f&@X#EhQ;0$`z!FDbfD$hef@cs}2M(b` zS6%=c2;*BPnpc<(!8}h#{LPtZMAmg+;R)bt1LFxK7McKk5_3q5=eP?wRS4jh1}TPF zOQIf_(Lc`pnH?6ILjhik5?*LqWQ&Kh5DO`G)pgRJIKTUb^%#I!5N8`5`a-*6g(h+S z7mr+=4@_9Ua)IYy#D|-f0Ait)p9p?BKB+}ewIvL0kMGo&3It}<*mU378ib|gH(2(J z0%Q;>18k7*u8^;5G2XPfFh%g3%JMwa1LhCsM@zv%^i1jL3|4}B1LNmK*nB~j_h%RY zuP3g+-f^ZaeuFJdQ9VEPc!DJJ!N?`iOYb;&e8lWXCi=jdz9%$yelF3B1|}{`EUlJ! zZ9bVlT{&Jr*%e5%&&?|2%T_MQa(Rjz6D0#Prnr1p{k^_z&y7?p^0#|u`!7poyEFdv zp2%7jn;bT_E8tF>oA&e*cbzke_a#Ud$XLuxOw5_IFR3)o-wd;!qWJ-Izdr{V<~{Qa z!(L;+=Y`e9rTi6xzn*Tw7Yzy)Ws7}GC6QM1D<0ogrg&E!C;dkImO0SA_tkyzlK%Wp zy#;?*d6^Z+^qD_W%l9$(;_T(0R_y2Tbcyrt@}N8W8L<&6YyhUQbEZB?M}tMxqia2%8BUnMx z#KJg007()?0~bJP3*Y?;9)8p9&~?VW5A~1MSIBU%KDb9-bT;U ztvLo?Ekw4GxOB$hikKmOZ}0g|aF z{Cj0YcV#&IcpK`rUE~*WlpXPz&*5K$ojvs; zd17~avcIvqUEs108!gRHkjOWye>>;CyJ;5ox@mh?acl4C`Z^R?Hv7hH7%^mkWzmVgJ&YX`_dJ zo}#o&5$jsA!Vi+XLyOCrSmKJ7>&9+wk$EDyx-a6vji9b>6ATi!iFCM@n6MT z6;F;;4>zcb4{`HG6@1rLLQ21l4-)|ll#Zh3;u*Kcs!R%OCGzz?$K2)Ads7&Uw33`7YhW&XUBg3hvZNHZLEpgkFy6yaXaz4hWS1bF*v>yy0`hgLmbpO`;jWc^RU|4Ncsar_PKmi03zSrZ$ld zSEqxaiUc>MxYfwNO7?%}@?)cJrCqpKknuEgl8D>iKFq(JA;L@ik&^J?A~0Yc&n`Ie za0p+1C;pI4LVTfXoGtaX5_0e;Wmx3sQSqr<&FNo;To9PS0u%{=h-7B?ZHx6?Q4_HQ zw3x$6BvU6@3NBAv-@E%p8iFUL1P*Z&g5<5VOjIHXMxwS@*H@(@=q@rF+y=mJ<{SUB zG_~}~qW$012y5mgCJrwSRstUFAC8@+>}!Es+WI2`>0Xsq)g{|NX9;WIs=-zw?aeg~ z5yt!N@(6;jc@yi@(^P?@#ayI_z^U49A~)9gHCa^HPVdR4Ef7#-&>Z|s{Nl67Rl6sp zsJou8gwx^NAv_Z2U$fqFPIUhs;|GxV)=X}fD1IQ z^=tc|klOB_)~&GH8a-iErqi@NoxF8j1#UAE{#WnhU~?q%lbPvG?rmZsIT8_A^ag)U z;Fbbo3SE@3%+bo?o_;qJtux+x$Jt5&Uc`4(>oGfv)gP(bf#`urp>s&^E;=PcqK3%U z9<}Bm0^!{)!Yi$sK=E+rUE_5As|esqdl-Uf5xMK?62@3jKSyC?S9ZeDi{omHt*l&X zTx}%JO{V^wKwyhjF=rD2F*;Vg`acQVo)?ZC1LcgBhR z{6e@b=reJHPbft_@V^fqzf?IQ{z2>z6qC+6I1A1cRFe&_D>p$|)sFz&^F2jLmvo9H zt1V^DivTxpGm>#4rdr;0j31v16vB04Hy8v{# zyrWk`;op;uvSf+>AxLoivN2l6PyWv1xKhf)i`>bCjKh)(L5@=@U*#V^jNS~&W*cd! zGjD5{tT*0I+YG|#_V>$CN6RluRq#wc{a1KwB^07l8}9970W253##-oDZ9IQ=@4p8W zTW!Cs7ecqjv8N2^2d`A#%h_|VsW$Z7LNUqzUcfV615>ZC%4IN*f|M{t!{y?jT{y?t z|9G+_Sv#@9G`Eb$nca+kXrM9!7R*5ej#HnbZUQGBIWFwjG{>OC+f-9W08_-u*!M87 zxgUP8v(Il@ART5xdSyT5>+@?T%&EVq;41z>!v``d;R%yVjOu^2Zi+p)r?p&Q-E3TS z;echN8NE9DbM3|XW`39+YD59~V1ojD4&}cGd3;{9DYgQ7K_6OXJ$-)k)h zt_-f?)8Fj>B-ia>9(kWDFX3Qen7T`FFJZOZyrK&8-GNlX04QOWth2jNE_Q*CikLY!sM- zq4Zw>ElY?61c;zaHkQ_~Umf1-32ZGeSf9a!Yl|nQ=@ff;XwjmSY01SQBJe87E(Xa} zvM^M%th>%|za%pG6hhod$$Z1|?SVQgyBP4}nZjacWRCd3#htVO-iJx3P}U%_ggc$@ zhbQIA>@R-Ha80An!x6-zM@z`}7TEGK8#yMjH*(edc?}iI@IHtS4Uw_Pr7a6T86Nz= zAx0MEVuBe{Ni0wCAh6M{X5@7v5!3?T$8`cDj}~3P=EhSIvKW(^MduIMz$&Jce@5vk z)-KAh%7o+I)w`H&Hb{kr_%3O8C?ia zx`3Mt@0nI(>-7Hw;mZ4+?sT!pB54%4<3kiux=tc|;uDjQ#IWnce=)5&=Y|z7Dy`cx;C%Km zNDYm-dMjE-q3q|Nlm=h%l6*kUFuIRz&xpYtlg-|}eb?n&pp5&%*>Tf(~E5a`5}5 zCz*k!s^{ezCNVi7`U{Rb8&DlP656pURPWAvcZ2BzR-FpUsqdo~lLGh*b0c5lPo3v)@4Mt04Eqco_2nL3Z8lmS_mgf zyb?c&M|V{G_!_h4nm#@Gv`aZ}%Qd7Yz5QN%hkxj|R<++Vw}u zH@}uhiO=2CpghU}!h(jLgFnPud=OcJ3C9vY#0zR7mD@tkhtx7&98?;=t9W?dNvI>G zS!Z(SF3`t9sB-wM+bL$Pab)0x<%;DE-M~AAA9{Ren>}HBkt(? zw7q}CXWhv&`v9G@eK$Mc<7YOJIIGlJ=b!$+!GeVs`~KDczZJXbec7ly{t(mtz4BCV zz0QEdP``ZFmqi~SqiPOAg%8nkFz}DBCm+WQHk%&me~WqeYwpb7AFodJcQchzD5=G; zh+|+Ii6KK8KODVDH#oSf^k>7V<7BeK;K!qff3{;fe$Ag69KTWeyLY4G_ZLIMld*?? z4`Ic_@ds*r9=UB(zA038&zdtiT|p(UKR7E*O_uEUpDpGtQ+_hNhYr3XPK7IZdS)X_JQqJEBOeiwB{8`0;5UKpQrqxx==Ib%$KcXd++Vl3aPOzyc|LWfqR{ z)Gz4NPoB}tUKVB-9}A+edO(Rm=GZ|lupX9k__p!-S;PKn{X7z@ntNu7pM?f7N4`c& zhb*LK1Y00YZj~pY1(Cb-J98Z1>9YotGd7drny#igH=)|)XLSsqR^LX92sLJ4tb+m6 z{Kv9G)SSH}%<}4rQ@k&((a*ZQ=GT@uEiB7b!py$i#98MqHuAlZWQ{8?9Uke76Q`rl zD0tNB^8OxRO1#rKop&pz5G_XBw68nmw>aV!G^JlEwV)pWaB_WE z2DD{)WPOeg56PzvYD;2WcVW=G+oc6{G_scGmIfngvVg$L)%KtkVjh!t?0I6WW1VAY zcYJ)^dG6D75+%^Ux$)~cI`~*Ssgg9at6k$)IZX3r z#`1KaQJ1ocqwm97Nf^5zd&a{&#MdvMAAY+WQ`k9_u$I>x}3! z1zsDuU;y*@Ef*U5H4${(UFt?~-JMo|TG{LUDiAjtRQWf%Dx8~ntN!LmeR=DBb87w7 zt64St_0T9ulg7=W>UH@rBhJ8&mvw@&@5xYD>x-VsTC4}(;@M1|55(PGQ))p~U;1}4 z>6E`4*IR>ef?dp8<2>a1l?BX=PlH><7-`M-W6~agWtS%K1#I;Lb%JF{tiXPlP|@qo zqU}@qdv8Ad@&|B6*MSL!;@W}dzwZX;GLmujD=Wi)p!p-Aq}LonaLR+{PmAa(fhJ(= zav;I-_^VA+(GdW^79N1tLr!Ax&gXzFc~bAmnZBjMuIo@95XvUl{GP!ON8USBS%cH? zgU;&y_XUN8>dR(SInMeA?>5<9S2~=j3he?njrhqIgl;k4ey?`5(HMh$CrNG-cHj_Y z|6o>hrs94M;q1bP&`#k{M*^AUK%jCq^n=&e-L24;lSW5$Si54A(ePHM&UUXPz?4U3 zLwBO4={&>hZTt##yYiplK4F0k6HAR*eN6*iO_M9~${8m8Vny!1!?;F5PE5|O-aLIU zLW8d!57s{%-Tfk)7B%nzI{Ko?ooyx##=sI_k6v+l@G%1-;4mQ^`t`)pgTMHixEF`y4B#jr#P~h zFvbD1n;#VR?6^7qmCVmzQ-&=7=*typi1eai_D>e;ymzqU?;sH3t=ZGy)0>evmQJuB zou?EGL6G`lX<%vu`#B7oZv(jZ8q^Il4BbQ3S@GO?r&b-=P#VD%qTGRN;d*A(WW$d* zr6C|^`9t>J0n5iYS`G!tC?I69g@Ip=G|%1JX0;bwGZnrJodPR~jolH;FgJ3Z-PhRp zZlxLd1kUL+r1c&Y`D(1!LP2sRi7yt3BdQU5bN71po2#rg<0)=lCuE8)z(dcD| zo$4GqmEQ!F6NNSpm?nF!(*(^KV?9*voqMDjkbN=IOhxk)v-o2DyG=|YuNmy!cYkt} z8mFnsMMYC`t5{GT-sZf7()UXFRzs(=LUKGG`}Q4vj|dmWD6hernPeAiI|uo0UDHZV_?_T5K6d1sC!-C-p*CmG~5dE%Mkl3=QhqHcFB09b_- zwI}8c($&yIOV$A`-D%O#H%xSvM-O6StDISEzCX6CJ;-T`R7w4yZcOHVK&y+qf|^21 zT~f^;k->U4-3Qkkq{wb;ExNZ%?C*Sk&i%Ew&H8EgHK%0(-%*s?uU6l!IM)YnT|Ym0 zU|{0BlN-d;=d7w~9+T%I9y=PRVDbCFnDY^SieUBdG|tsT{l)r+iy@B#cJ8ov79wq1 zjP+VAZajYFSmaw@WW;N6P--rs9jgEj{mjQK7=#LAqyNFyoLhhD)vfXVeB+sxr(Ci{ zf+f8i`a@yn&D-Idpjwri3TL@29l&G5v793o7Y?r_b%*ta9T9C4IG>To8hqOJ+Z4?h z`|!U6g{c*mhFzAjBF*%&RrgFN@0AhGCe65)2{^iD(ATWQH*x306OxYcOfUz?9z|CG zA3R!5~rZa|D)+n9GQ;)KY)KW+iYxn z+_yF)gq-EJIdY^Nks}HzcgW{ZlU;C)=6|Ag!dwnS{6X$1+2xwvkUcG1`0?C#9BG3o%k;>Ef*C zey`47@}Q~k5`8B>SF5Mi@~ke6-*sD%6uKiyMrFT%l|O& z^c?5$`uez1_2z}toY@KYRH-7PhnkbSW(y&bH)Wpw$cR2QT=uU28M9}}yRk6sk~HOU z2V90el8i?~&=(#Roy(-=Pt^Q-TRm&ye=zDl9h-B)kV)6}oaOWS2iE0x_6pzZK4E3> z-9h~;UQfoWX;9y5?vNee^Rub?zl^^=Y;WyKwxJGI<~(b4s8AKjU;k2TINPgg+`0U5 zi17Xmo5y}e%!lr!fkwMQn@6-;IXyv_dn#v|w?DqO|JY~v<#o-AShEGr)yYRe%P}XM z-rY%V<@&AP5YV|Gm~{MlCw#vo{Z+?ESb0!bFLUm_#|eGcb3D7WEFWc&W2fJrG;C+@ zGVo9~sB>&F74EHdl0Tzb;fAKo~hbH?w>SmQ%?^L$-0f=46G!}5tys-#U*n&-u5=7nd|HPRVg zHqUKqZj3jjd)vOa+7ZX2nc-t!>pt?-ra8m+^6Og*J?Wa6H=UaAY*0U21(4*M46oT66B)nr|mF^XcRU`+a_!dcw9XHzeTe`$D5koyVa;KPGG3C)*z1 zy|X^w5znWa7Z&pS>&P?P_Pp@Bf7ch@X6oigg#Y`y`E{~AKQfZBmtyxu3=P|$;h0`F zEEKZ3lCVjq(RR|&XqH4$^aEKl4?PNhU^RwC`1?i&(kAh!>uT)d@g~VkizABaz|Ei= zM!DvumhcFaZ?=nsq{-1Btbs@t-EyLFwCYXZGezuyT_1#5riEIJ<_P^&C@w;GWfL!O zTj`a^^x-_tBWx#*;6C>9ml!6O=n5CocKvW(4MP2WK67mA<)G%>)eq)l5fv0XQ>){V zG%?fbisgthlQt)p3QJo>i#j0_WjR3#9>Z@MICA!UR8br&|M}EHQ#mp6P>Qu->3D{P z)5^H6XXSRK*|A4Ym;p{ZCW^+fj`U=N5jT<1-vj~R3W;bXXRrc#P0Rn9RlQPO9)q9=|~a0WS3R&DE>W-fBqrVuUUDNB5~0bWQ-6%%XoZzR<{?Ejb*T7Fx@%wEY=q{`BnYpu zb1?g<0}2)fh6YY28Q=Xqr2BQ>Emqj$XpUzM;=SU<@)?e#{!{O@iqrUJ<^qPzZ_h#+ zmPLC*SLO0%JYt~CE}hseo697m!b;=0b*FNPi0vnbsTu<;b@95zEok-|@m_^`F{%{P113^A z(Gc1r5CavqBjZVQt@u(B6Q^t^UW-KblP+daBC=@M%xC3H?ZjP?of1_BlzJ{-8-1UMSZHJ8M&$1ADVbh_XGw z61<5!>KUF%?;D8Mx(JMf84H@Lo(FOtIFx^MKYg%k98apnzEP&JOyFOHKi;@Ywnl2N zm4Q*5Zo#%=&rZV^O%FJhGK4AkV}94)>9}q^IIb#vo>YyfQ8x%XLnSfg(g79-4PM#> z6*DoViVb-e%2WBp;-?w!Vnrobovg`6n>YG#5)ddVkQa%?0=feoI5(*%CYkS4tZ82Y zwCo%H=3awj8(Z9hqZlA&c!`|*(8^UTZ&S3>`dK+^xmAgmenp~dT+5kRCn>+K6@$ixX-whMCyuvm_OC zJsiB`boZo~hj~_PVmXP0Ll4IpZUQPqBfe6$Cc9bhXY0QUQ`uz#r*t1zTW@U zH}}K^>B2RQB#5wz+w^M$P#jXJ9b-6Cd5#M}%@}w_(M~ZfC0W4Gv1DY-BkZrJ*Id*e z>%n(pKK*%WSvfekKt>AFVH_%Kxax1BMCB2l*E`1LSkhHXJh1lD7IWiOf3(&~V&kCT zLh$WsAqCShR9VHlDvfEL{VimeIHVa1KtsG^pe7q{5=PU#BUF(~()|v+)#;AH{Mhzh z`LFoU!+-&?Vtqp(s&j_r_lzZr9|8uieW3H~07OZ^yBS z&6NE8FjiCv zG>Lm-VM7ASluYF$g5p^U;=#krWFoSo`qv7U6Y0vT+KGzp>Hi!H<5kYhl_s!jVE*V_+rNt#O{;$SLmo=EYenid)H!++Y)@-&EsOp zHVH`inPC(wDM-qqN@4!Ti zN~Ky!+mDJYY#t9!#Rxki9xMpGQ9P;dEetPWmB8`1V*z?MXO1_Q1fh)^ieZhCg?Gy8 zmvVU1h)@~`(6A>`kMeYDn;Lw)tQ`C#!1|WMXu1_XVka6 zqXJkpaR5UDfk7(*Lms$C0a)WPFtU^*^C1?kr1_c)XnJ^Roru+|yB3IJ_oB15k|(O#E#7mwvNG4<@6;JZZV6p4L|0*fAv`Zq?A+_Rb2fDb zk)>=3*4V{r{qZqbObt#zNN8ni5V`ZT?nr;b{xaHT5C3b&}4>c*=(GL z(2XHju~yq#tn%At5R&C&-6ij3eGHGK_yQ+FkEsCo!5M|2bYO4S+eU65yQ+YLLcbMRd5n(N+rc|+Q;aX4d3ag-BGwHDXpmKoca))V zfR&#EbEkvnDi^87k#+0}bEhIJx8si`yMTZ*cP~PhoVk6rop+gRTkEgQ_<=fP?o)-? zU=eE-4P4>4BKXHe0Oy)IZk`!*)|>mf=r5M!jd-#8YfUs3u?4P6WbW#hpm+yTTpEYB zk}w&?++T6aA9cZ70@o6W zEyBpFY{IMNw!3P^wG=$(6rJk^;HCKzw#Mx;eo2R$_ktz@h+AO4GlDB8VHiUNu&XLJ zUpU{?e1$#ac58jeX_{smlo1@bfTDtep&z*Lg|LT(xcfArD}JDxqU~{>o6Dzp9~=7T zll+;B`2Kyk_(X+YlFWb44{J>)a{XoXb+*m7WD_e3dc28t&ctqI+)5n@oZse;C$m|& zyqq{49AAxzeI0!7j0ELxaQdB)>0yiPzafQZLQC$1mc0(G{2N+x=5GC+yN$2!w*I}_ zaVD($PFUaTu))7!BWJ?L?}Sgk4xjrQzHlaD`A)>Q*AZ)fBR0=OZr_RAeI0r5Hxi;o zf(MgO4M$)Ii9?Od6HFFpAdBpfacWV=gQKJyqK+gKMYU+v;Ar)RXziV720<;xFgV7f zA?Ex}jHOzvO>nGzL#)$ItczOQ_24+qhB)7yI6t-cpy2qBhWPNEc(NKLHkgvoK)JU= zNmWZo4^GH#NO-)HP^gwz5}a7pkXX5sSfiFyADq83GNMmOBZYEhhD>fu6p)u>;ZdR&#HX}VGJG(La@osjZ z`lFJNM`ewVDt8~%sOQv&ZkE6DD+uK)3flsXJn1i*wE61rqX+RrKuWa>7ixWO=XYw$_h2gOG3-bn#wEp%4;;9 z*M~lDY|}gl?!0Afi;tp4opW@l~8yz1bZ?kTweuPRH_}H zM4-lM$6wbdTGfreMneH^iHW-I*9cPuP5ap}ZTd}S+^hGt#Eavvg6_T!X?`94?=@Mo zA@*)VLUY5te+{Xcjp=tAvzr?q|7$GNY%00iRMy;7`LC%)v$_6mb7OOJ>%Zm>&6e)F zEq%=`|K%&j@3u}ix6b`*UC?Y>zT5V#xoz!V+oopw_TBc~=Jtbs?GP;*JdB2Fp<(uE z99kVbVI2Z39U}W3IIYg(VV%+~o&QB8RKwn=x4dC!@4q2vbs2_rnY47B-|w>2>b42% zwr}Zn+V6JJ>bV})VyWiud^)@K%ZAi=8@cp-Bt=`zM-h`Ikd;7hqT7BtZec3I2 zkN5iuwfalK`pa7SEBE_rwBFT+y=!cF*Si0%Lu;TrY@n}YU~qq6L~C$7Y;d||aBhEa zL2GC^Z0K9d(Axgcrq=uIu=l$y?+^ChL$rtC;lrrbVa&lWhxQ0h_=rI3h{(YRPJ8rt z_^5R2sNBJ*qV@;X@DJ*(AG8lX5VXe(!^cco$Ic&&S!$2lgpb>|jyoNUyJ$~b51;UC zo$x)F@Y9|Q3ZD#VoeV#iBx_H_hEFB5PTf10Vx($Mr-x5xw@yDkm_EW3O2TK#T4yQ` zW@@x&>%(UoTW4DjW;?V$cKU>L&_?F%F?eXEaLY?m=5#P(&zE>W8uhIEYAMvBH?MLh3j}D#H z?ugaCw$;JI)e)Vw@rbqQwzav#wFRA@jOB=*-`akz9sboH4oG_YtQf&o|rwI~XOov~;kjWFa0wh-XNCKA%W zvOHo%wD&efnV;vOh%yL?T6RiHz4wpV@K$hOZ<=CaxP-0wqyiXJFz98_NaORR5k3_nAk9GN_ z4}#pGaix~U0YZ|!t_E;@G*rs~B=PIbcP9(9$y7h9S&D68q5C&H15U-Jh?^h!RR3Cj zpDsced-IIs<#{@iXIRY4?v+nXz1@x6QhZj4HB8uYg$D7UcXFJi12X^xdphnI`sc?l zN}(LH0?NiIvoE7;KGt7;wd$ZAJ=rV0dZ@j>v$8td9LcU*7^56LTIyoZ50KCyly2&_ zfgrf~^%x1t_>r2@$k@Bk)*js*evYk{W-8r5`fSp=`hz?Yv3g9@qape&=cglDDBi zA0`t_PmmR?DV09jlkG1rJBfpbA%Gy2p!I` zp7a>5lTtkrVUKy5(mdEU11{^ui+MdPdYE7ZNQUc3m_vSB_c)wyeEh)T>67jB*_)Zt}niZ`wvDEQR%F)3IM)`w0Hd9@an(fQ`SLiiVO-$n|_( zay-0ny1y+hxJgCVAuL*7^u7ERM@8|x^`n_*$m`2z{oSBc%0#Xx_FyCsON6@KSX%;OUV1dPg`_g-OWA=POqF*vvN~olj zw@dD3osu(LV4?==3D^@PK-B?^h7JJ*Z{L5Mv) zMg-lYC=g>ZB39Us=OG0m{?WM$2qc4sdWHlkj^r-@zV-AYb3tzIs{rs2!b6K+F^=uY)NNf^b@i zBF>CFziE9F`xr3ciy3unRskGZJq+&bDdn?m>(}w#k81cG^eh;|1#FmW8yJ+bZ^nA% zRSI5`QoRlDh!wwb=LeLOH~~~|>0LegUv5xlV^<^r2Gvyig=yr$Y>E>EtiP5@pOc_h zSc;A~1tqO>c&SGLu#4;0t^@PmH180sory6dY%S6gA_j5(?;wM}A>!<15C$#5?!}#H zzW3{9yfqHd^&}DY#2uK{>Ed7JFJ#6jInK)%yzX2c&%bp)Uy6m1oqID8W=wI7#r zxJ5C>vl%5CXLD5`_D`E|DmRdj792n$Qvr*S2f0^lv@;zo4oD(MGZ5PC*Vm43!|lU= zG-FY@BeDRj@h;)l%{y&;UF(*I18LVecPWn3nJ=lZcAy~cgjNgI`6m=rfloHb3&A~n z(UNX|HuQt?pgISoR&7>$z5J^H4$^)neU3?INxkba>p{=NN;YL`SUCuwwI8z57?CAb zpazf62MhBFknI^!`rzvsMyAH$3G_c(u&4u8JbUj;xZG8ReNcawqH zfe1BLWGM-bi`t)zx_eFF=u?}ygQbQ;=;<4aoNKIbJS+IuJTKMf-EA+VW%OxEbnPWz z>Na@JMz?4KvyVl;;t-H3jbfD|l`F@vx!hcND#Kg@O|&7Jj35X^zV$z`-0r~7izXtr zcEyIEyRn}ae;lF%;z|WsnK=;EP;Zi!d9)u;;P>8A_zE&kT>?lS16@h{tPLQ-87<-l zqBca>EoI;MgDQLh@^=zCcmh~CBJ+`ng;I%6j1x;d5}#2L%SsuE&yk7YF3{^PaMW2R zehau^rVCa-$s|6hzSQZc?A`8x?4Y6tH{tGh)Wd4jO)T?=*I=R)kbD$v@^NJXw}nrj ze(?Za0LGO@k;J1ys(E-e4V^5&4vVt@9(A2|Tdq2kvj}lxL9Y8X_`;Z_rq_kgkre+L ztj$XKo0XItpCa@n>BvNdegPx+fQ)6(iwJMZ41p6M9#|BF2#1gqkKnE6V>dCIR96Y- zPssa9mK-AAu0Suj?ZV~%lONcD>mJ}{uV}9dRq-OV|E-ei2$Yiu_acGUmco&c8}|)R zqe1Z5XCShS%1$=BTbR0L8G(erv@PPkpJ7~pL*hMyDHvShF+FqEASnjSSDfPGBAsDd zda*28aQFt>k$5HfLR^^O3aQ5nR)78^VW9-CSEE@5S>JB zBvIV+C*ZDoy=QA<7%YeBIS>HDQTX_y0EfdJl;s5c(Fw!r7OC!Z-hfPI)s3XCzgKsT zBOnFGJ*s&W30gtUyeDd@ISTpP_D=iR;J=WR=~x$;L~wZH4n`3jNMf0r1~U~v!2(DS ztpK2hq=LX>B8UR7{dm9}R04)kM`Ot&xn0D;A1lM5n0Q0^ zchQx8(DoJ2xE-hn0*+ZAAp|r;aVR@HIbD-x;DtP!SUj?s#_X4KQThT(F}L^H)2?nZ zKqsSnZBPXB_(brAJZa@GbdH6S~87ZmqUPnD&0tD z%m{-s*0ip{cfn243OPrOnG20q2@pvIWdS0*vkSCSU)!>>_ntTlW;K)g^*Ft>4JoxZ@k>+eqpWDXZUT8(la z4rS#iL3F%SV-3G>+4O=XcoamXDb%X`gP-)PWf6b+kZfk`eOA!xp|UvdRRxqg?ICvt z`dYuzO}a5+;ps?Cn$@}bOLr0Wtb!q4pk?2);7jR?rd6Lp1IRssEL5-f(}L45rsIy(TOkyH8HhM!^wA?znZBAn z%exY=jv09Mmsk2m4-dKT(MJi_b0wGhdv2~WaDG~00U!B$ReCQZQ_i+LJ<}IP@B;aU zdBZf7BW9nTl@{oQAsz?=X+C}Vg$?(UBJLmnv0RWNm&U#CUOH=8hA{uJWu9RLei&dL z50gHTZdFb6NpZ25aJGILH8>+{HRdSI6(sbEYGKOn(d7*e4_qj_Jv5y=wCyugo?yjT z8hpe%^f~$cU*X}23aQmxl<5@6jjw=XeOYRD~j>9Va;eN5;^rj9*zi;% z15`eM1vEIK!J~mI>SjS_!3e4t|DFO zwTUwHM;!#fw11(LNi*!JlXvGP_sCO7a+<;eED7^bO02uXcM4uOm3#mLzKfmd&GfNy1VfPHg-@c~)1y?MBdKx}EBj+|J*YCy(i2s_oJbANr5OI{}72u#Tcw`f{ zAO_phH#gNL!r;o_ng8uH@9L<0n#8hGz?)a_5;Zcvg~9x}CmDGeB>xjY9nQmXb6_U( zQSMhjhTlR!$X2;2cy}XZ*{9Ps%w z{!sHl$dbtwUpuyDc*l~&DnCan$Uf&=ZGm=oCAsXXFAG(mQZddb)|7tM>fyyxYq__l|7Y+L-M>GC&qafYLo4?7V2bFs5tru}%Qqv#Y(KH0BLSF?&Z|8` z2}hCQoxxQNS!f#R)N_lV;{;|VGD!4#GInzfUbuF&xc?{UKcbz`U(|Ifb08jNDk5Ts zg|xB(r$Ll;Ai^J?&-{$lynsVN#)u2ok5ELH65)>|jQTtbPd==D1Ye8LTsvmD_9?GV zW#;kReNJ@y+Q$oewqy zz5ZLFLCsN|`9T1$eTJz0NFJd|;*TxW$^Nv;k@|cH>LoZX>KXaxR^&@n3)tukztINr z=a7U9kqJ6nMO^^B znE+24+4nn6?Y}YK@4mJFHf6u>#s0hZ`-AKI@7WJVP91zOKN!DtFqv{N{o-Ku{lVP& z!94rn!l}d0=7-C-4!@=xetU8Fe|`7UORUgR%R9@$Wt3V4cBW z2LTwHgxxTm5QE~8cbghs(5G-5zff#9vS^qrpn7v@YUHyK6=!%~!hUqgBu(0;%58dd z`COLb^`T<>4`0sbst5gCn*Q+BynqnPcHCiX#j@BWUHC_Uk{d0Nt_4iy=>wPv!$EgjM zt^}S_2-YqNb5H7V^QVr}M_6haSJ#RQ_P6_Rp<#-o(@foYp)(r!H|A!xy{BrfpStf{ z-0$1|@6N_T zcgl&YpY}txzKy?dpZ|1lcV~0?{j;m{hvECX+v{KF=NXXz6E_hLWmVb0!?>)81cXrF z1_3FaM$}_DS+}8wRvshjvuSQ^=!5#)eg>T9R5lH`FIxK<@?H+yG~~aQ=66=myKeKW zaKM(@Dj zH{1bcO7B#Do2h)T4mf{$Ht_d(wa;k*7c_p<{l1{}dn~|Q=ikXwB8 zmrbDMS)rgUOJni$Kr7Re^;=eE%Hx3-FKBLWU9`~W39`02r@C#;u)b&$WOM0q(6)`; zwe+A%4&L?KmmCAegKV$d-QKo!j^?>-=bEJY$Ik7c&F$$^e$q6)8{;o=C(tk&x!CIk zkHTzf17H6-n#_X*@c<`M&(`VoseWv9I*ljOF`zHe*$INBB=7}fl=Hrv z6r+>+WD`9IS3)&Si{hicY_GTgTJ*oJ%=|jYB%#Dom)O|9PLuPgYJd3M$ml#{*JybP zBuaK>qXK(W^6kJXP7D`dGhJ>*N0CGC3wV$X8th0|B&WlTD1*GlZ$bH|_ZExUi_}&! z<9lY@i{K7>o>5hojF%$3t?b1z++QxIUA!VNSzs#ThpJ|vbBT+u$Sbde))R$$?Mmur zBbo~u-i^|J2D(IvKP195uIdIWq$SI?r5M^(AmHio1z zT>J=~j*-O!bm9q4zJ#DjmrN0$5BDn6fuQrl+KWnH#d+P}&PK z^Y+LFBM*y6p+{NJ&| zL${T`&FM$jav7lSV`IHh+%HKW^UWoaj0v5<@4?GS9XP(w3lkP*Zk*s&Fyrbn9^yR< za$f0*flKSbRP^*Xv=;q=f+(O@fr`E_!H83?Sil%gft;@v$cA@?HztOwqUu~QSQv?k z3rqD{8%VI=rVRlF+A&DQyM{4(7Y&Y}wUdt!Trc&=W*mT}k1KCpLyruLL6U)+ zn4r)D{YU#$oU}@x=nlv#7xpF^Rz}Bng7OA&tbFhhs2KVsYXnV?wZa0gPux&q!*?j3 zRvdP@`mxad7`$1DOY@ z_hl*aOzOR{|2a>!Gljx@iNWG&5bE6tbmR1amp@fO zP4wILaAraizJItxR8)4gc@C>Np|fqGfBDk`Z1Il{X_3+BoDroe{wyy}n8SFS-iPPR z9nT349$>wfKUOgI*%jY}cQfd&qoW5OHKr3yx>?)`zb!r1e{6bQ+&JUq<8TiHLc?_I z_%Dx!0f505B}v*rNgxQ-KUOC!E<}CAz5qPPKrR5xu@%2=Z!Ho)jm}JlvZFJZ#0eR9 z4V8E^aj_!CM7WY8{U>kpm%z$N=gZ)C`LB7qZbjE$B-&ROp03WX{2DxO>hMPN z*4^XqK#iNm;kWTwE3^zRNr&=<(W6Oz9Q@amoG zD+5=aeLA2pKxPW@y^j7uga4j83+Jcd*+Xfr=mDzu?%b_N#yKj$-avz%RRFlnK*8Uc z?1xSiE*J)VvP*R*1V2aay zVx(U-aA#NU7m!=;ztrNZ6`CNInmhS;dt-j&k~L2_cgsa6CS6C*iTMQKDusWvIH9j` zaSINAxGIHl>u;7_yKMz6!FJIO+isLGncvmQE1Pi$<37{+|KeqES) zt)ULpFf)4*(Cy`LE46?ipJI>Nr6|kb7SA$#6&p=`cPZ3RH_#s^-+m_m;~H4NDuUZ@ zQwRKymgavrE=U^dx4S3F$-r!!@w#}4wpu^ZX z=FF8qmr8EPZ`klIc|#FrLxFG$EB$Sn*Ioyv{^8|4sO_w^{IwacH<_%D{$2Qa<#7+3MqplqpvM@zxZ*R~26lz;@Yi7& zW$|dh?S9xGl#yS%O89!KI!dQ@{$L}r?dP$Me@3|*NNBYeV%|7P>}A{ScRKNOop?OV zjvuK_gTE)nT;VU)mLd@zwa#3YVPk=iH)5ekCIH#eahDd0$HU!d51<5qLPHg6&Ro<6 z8ffT`c=86GjMaMDuUr0EmyBorS{>ABGL2?iU-qxGKJ}T$FZ>XG!C6*aisj1PTZTqFrm(O9JE9n?W77) zyIkjcbZ6J|_Lb&##W7vs)r#m9ZJj!qkG1X3IJAE;7D$^AfQ1h1F-4VkK#Nh(&j}~; zyz_Xd8bE2+XotayVD?`bBoDqT3a=4`Zz}tiX)a7rZc#tiWpKWw>$woc!puPZduMl% zp7l$;D&<<$F0HP1e44BUG)G!O_av-Kh}&RA8TiJ9)aORQgJaE%B_54x!u?y@ z#F6jpFM^=b!l zf)7d(lsdsg=}pMhiB@=dnhq5nZc}FbdK<3**g3=FJ($jLAr<}^Uy7=X+>-;d+I5&r z3uUF!miQ9Ua<6K|uq1w&D0D`kNmjB6Wan*6?2t}oVpB`j33q;_(#@Am!?h-ixCMh3aP zUDu!{9`$Kpr2AXFGMCNL4F-Z%i|=*yMFF*DAB~cXNn$H)LmhgZDrSmXZ;}HuhqWjw zb!Oe%$`Fsf%q_k5xo?!unGNh$Jxnt$7S>El5+9SL^g5W5rv}qv&b}9>43(@a8_LO}XJZ8GGGaQBK#_X?+Z&&l_{ ztHqT)KhAYg0VY4W_`R~s2OjE|6R|gkh17!TM2+u6Ypvkjy z&GU6da3{XrgdVDMtQj><0m)<_1w{F@Mt|%fQ(~QEfSe;r!OoJ+8p&6EJlk6wDJT|2 zgqYNJzAYZ4V57x|z?K=39d5~S+)_`;7{D6?79-AHBVw2lj^n-27GfOEEfK}N(I$iR zI^%oA1LWZmGO0_@iCo+_pxQ9X+B@3sb^^5E)6GhX1FUf2NXx8uag?EG@M3^+`zUw6 zuJ!=r{6$%YoLHZt($m0Na$(aM9+Fx(QbS}krZ>)&6bq%q`T(jgVCP=$TSyyP0o90F z2?`(PDZdTUwBFimOkp{ev3! z1y@zA?*W%0IM65MtfTsDPKv3!8d|H1jj48*4w+FTNF*W;MYh3!#{#0vLlGRVG9unL zGwb@9)@>(D@w#3ViJ6jP(Y2DGB#hg6uL;M;YEWz%66KIYIf{oi^0)tFP-=r#5^mRa+y%nWS zvj#s3mZg-}oB1>qii(_1-LNl!+xXOBxd-u23}+Myq+jq*3Y;ip5u}2GwX5ocd~5GD zRb)q9A*(9Cg7;-|@MTa#IZ6Q{WykbrjbciVj>lR=H(XZQu-OT4B$wy{8?*GTqs>uM zHCM5Y;~!H=Oh&!1rlfO#n#6_kmjS!WFNMd+b~8^gBhP%1M~dnB^mn5N_VtEVEn3J4 z-?_=|@w@N~J+Y1{$qw0=cHrAYlhen(7TgJ83J>BP)~nR+gJEifIi#TEtOk8yf{G0JU+CY?%2OP9Ss~^ftuLXepK!` zD7d2YV^PjmguXTkw0R!?!h<|mzADx^wW3F_FvR^-r9&s=eMKmUKYBkOU%4$u*^>Lz z8+5rLb~<*$IXQ56@Av}d{Lq6e_~nz*)xI5OYRD`6m!l}HY{ju;=O~40(>L#+3Kt)1U}lK#F9z3Ou!nMn=7u<`-Di^$)(GWN;5IB;rfN zQGM$YMW;%ygZ}l@7u%avnOE>IM05I4)} z{}D|xz4%nTZH5eZ%RLmeH2b6*Lqa>(bdFQ5@_#SV@rpA0Uh-4=S=@IQ8Oke3uP1p6 zx>{mr3Q3eS>-*zXoZxC-AiaiH(Lwl1KiY$H=LZc@C@2PLPRQp^B&jAr#1%dz;bGH3 z$U7gJvQ2y}V?M5Kd((P6-*rPw#q)aGii~JJ3d24_uaKTAu~*gLj>a&#Qi+G`zgYU%W=@-{D>UN5K9 zE~7f43y-U-ev&05!DvMvsutzfS$mA$ErpHml{(GX;73TjcfF20WXeb9%g5Ra-e?Q* zs)(YDI3?Hq$4?R4igW9@rquz&M$Ym&)Lk_79WaNZ^i{1gzqqx1L0~Lmtsj1Yr*{K$ zYBN;CFJkT%^tH?r2=u3m7@|s0rl4-JFKV9`xq?y@clMZ_d3lU6$Wy8?p0Fv9FT(51 z1ffIG!@L-~Uy_mj_fP)ve$xp*LlMmv#m@i2oe&c^CKA>6D+=iwJiAF=+4xz;Uxn}! z4)W=}w?gBlr4hG|AGLK7caM39#HoKQ6~txdTxRUg2g6? zm>2czC3#*K2%Jv{?*(}XX!&%9cK+RY%EW?uV#Iq>c4l9Wkaq!s`Sy)f@iA@s6_}y- zwR(P4`uI7kqhVN+bu$S70Y4~$tyh|tDFPs%*`9Ix!sUYbdVA-!CFg(wTcSU`KN|X@ zduFoxfe8A8h5G{CmJtBl|Bu@riQoSdJ(|O+ zum&x#dA^AKnNa>JA^wOs91LJ`355wD`A~h0(4*=nknA6c?HB%aZJO`@59W`F@t+ds zhX}o2gC3avra1p-d4KqifBBz(`mcZczkmGCfBoNo{_lVP|9^l0AaEeTf(8#FOsH@n z!-ftYLX0SJBE^apFJjE7aU;i$9zTK%DRLyqk|s~0OsR4u%a$%*!i*_%Ce4~QZ{p0U zb0^Q9K7RrYDs(8(qDGG*O{#P$)22?JLX9eQD%Gl1uVT%rbt~7dUcZ73D|Rf|vS!bs zO{;b-+qQ1s!i_6;F5S9z@8Zp?cQ4<*e*XdvEO;>C!iEncPONw_● codeaf home teams chats sessions spend settings 1 moving · $0.0047 · sun 11:12am + bash output and terminal check conversation × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / + terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. + + ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + + The terminal check passed. + + + + + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0058 · ⟲ saved $0.0005 · 49% cached 15.1k/1M · 1% idle ─ + › + + + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat2460052115/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/01-expanded.cast b/docs/design/chat-cleanup/evidence/01-expanded.cast new file mode 100644 index 0000000000..314c1001d9 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/01-expanded.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"01-expanded","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0047\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m▾ worked · ctrl+e\u001b[39m\r\n \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▾ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n \u001b[38;5;243m⠿ thought for 0s · 46 tok · ctrl+e\u001b[39m\r\n \u001b[38;5;243m▾ \u001b[38;5;103mprinting the tool output then sleeping three seconds\u001b[39m \u001b[38;5;243m1 call\u001b[39m\r\n \u001b[38;5;243m╰─▶ \u001b[38;5;110mbash\u001b[39m \u001b[38;5;243mecho CLEAN_CHAT_TOOL_OUTPUT_7319 \u0026\u0026 \u001b[38;5;252msleep\u001b[39m \u001b[38;5;243m3\u001b[39m \u001b[38;5;243m3.0s\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▾ worked 4.2s · ctrl+e\u001b[39m\r\n \u001b[38;5;243m· ⟲ 15k cached · saved $0.0005\u001b[39m\r\n \u001b[38;5;110m· 11:12 · 4.2s · 1 tool call · $0.0058 ·\u001b[39m\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0058\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0005 · 49% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/01-expanded.gif b/docs/design/chat-cleanup/evidence/01-expanded.gif new file mode 100644 index 0000000000000000000000000000000000000000..701ddb9ae8c941cf519e9979748fd19342c28b4a GIT binary patch literal 48400 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 RyezGJS>FBffFv3)`G2● codeaf home teams chats sessions spend settings 1 moving · $0.0047 · sun 11:12am + bash output and terminal check conversation × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + ▾ worked · ctrl+e + · esc interrupts · ctrl+c quits · ? for help + + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / + terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. + + ▾ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + ⠿ thought for 0s · 46 tok · ctrl+e + ▾ printing the tool output then sleeping three seconds 1 call + ╰─▶ bash echo CLEAN_CHAT_TOOL_OUTPUT_7319 && sleep 3 3.0s + + The terminal check passed. + ▾ worked 4.2s · ctrl+e + · ⟲ 15k cached · saved $0.0005 + · 11:12 · 4.2s · 1 tool call · $0.0058 · + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0058 · ⟲ saved $0.0005 · 49% cached 15.1k/1M · 1% idle ─ + › + + + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat2460052115/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/02-notification.cast b/docs/design/chat-cleanup/evidence/02-notification.cast new file mode 100644 index 0000000000..37d29e9ddd --- /dev/null +++ b/docs/design/chat-cleanup/evidence/02-notification.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"02-notification","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-d2ae66 · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15.1k\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────── \u001b[39m \u001b[38;5;252m$0.0070\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M · 1%\u001b[39m \u001b[38;5;146m⠧\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/02-notification.gif b/docs/design/chat-cleanup/evidence/02-notification.gif new file mode 100644 index 0000000000000000000000000000000000000000..1c7ede5be98f49ff7c77dea835c85bcd856d1a98 GIT binary patch literal 39349 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 P`&}F@_IEG● codeaf home teams chats sessions spend settings $0.01 · sun 11:12am + ◐ bash output and terminal check conversation × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / + terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. + + ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + + The terminal check passed. + + ✓ ◆ write hello file · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-d2ae66 · ctrl+o + + ▸ Working thinking · together · ctrl+e ↑ 15.1k + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────── $0.0070 · ⟲ saved $0.0029 · 74% cached 15.1k/1M · 1% ⠧ working ─ + › + + + esc interrupt project: /tmp/TestCleanChat2460052115/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/03-dismissed.cast b/docs/design/chat-cleanup/evidence/03-dismissed.cast new file mode 100644 index 0000000000..78f4ea542a --- /dev/null +++ b/docs/design/chat-cleanup/evidence/03-dismissed.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"03-dismissed","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 449\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M · 1%\u001b[39m \u001b[38;5;146m⠋\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/03-dismissed.gif b/docs/design/chat-cleanup/evidence/03-dismissed.gif new file mode 100644 index 0000000000000000000000000000000000000000..6874224d38f6ee5178aae9748ac402eeedc3a0db GIT binary patch literal 34846 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 H1Oxy(7fm5^ literal 0 HcmV?d00001 diff --git a/docs/design/chat-cleanup/evidence/03-dismissed.txt b/docs/design/chat-cleanup/evidence/03-dismissed.txt new file mode 100644 index 0000000000..eceaba829c --- /dev/null +++ b/docs/design/chat-cleanup/evidence/03-dismissed.txt @@ -0,0 +1,42 @@ + >● codeaf home teams chats sessions spend settings $0.01 · sun 11:12am + ◐ bash output and terminal check conversation × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / + terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. + + ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + + The terminal check passed. + ▸ Working thinking · together · ctrl+e ↑ 15.1k ↓ 449 + + + + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────── $0.01 · ⟲ saved $0.0029 · 74% cached 15.1k/1M · 1% ⠋ working ─ + › + + + esc interrupt project: /tmp/TestCleanChat2460052115/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/04-restored.cast b/docs/design/chat-cleanup/evidence/04-restored.cast new file mode 100644 index 0000000000..540552e18e --- /dev/null +++ b/docs/design/chat-cleanup/evidence/04-restored.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"04-restored","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-d2ae66 · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 568\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M · 1%\u001b[39m \u001b[38;5;146m⠹\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/04-restored.gif b/docs/design/chat-cleanup/evidence/04-restored.gif new file mode 100644 index 0000000000000000000000000000000000000000..ce5747fecd050881d8cc83197f3dd8b1a24edb0f GIT binary patch literal 39653 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 F=09CTa`ONH literal 0 HcmV?d00001 diff --git a/docs/design/chat-cleanup/evidence/04-restored.txt b/docs/design/chat-cleanup/evidence/04-restored.txt new file mode 100644 index 0000000000..2a91982181 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/04-restored.txt @@ -0,0 +1,42 @@ + >● codeaf home teams chats sessions spend settings $0.01 · sun 11:12am + ◐ bash output and terminal check conversation × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / + terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. + + ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + + The terminal check passed. + + ✓ ◆ write hello file · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-d2ae66 · ctrl+o + + ▸ Working thinking · together · ctrl+e ↑ 15.1k ↓ 568 + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────── $0.01 · ⟲ saved $0.0029 · 74% cached 15.1k/1M · 1% ⠹ working ─ + › + + + esc interrupt project: /tmp/TestCleanChat2460052115/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/05-manager-replay.cast b/docs/design/chat-cleanup/evidence/05-manager-replay.cast new file mode 100644 index 0000000000..eaf643d64f --- /dev/null +++ b/docs/design/chat-cleanup/evidence/05-manager-replay.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"05-manager-replay","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m Check the review status with the team. × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.8k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay3112663442/002/manager-replay\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/05-manager-replay.gif b/docs/design/chat-cleanup/evidence/05-manager-replay.gif new file mode 100644 index 0000000000000000000000000000000000000000..9310e5c1730aa050d923d223137d5122f11f1a96 GIT binary patch literal 26231 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 literal 0 HcmV?d00001 diff --git a/docs/design/chat-cleanup/evidence/05-manager-replay.txt b/docs/design/chat-cleanup/evidence/05-manager-replay.txt new file mode 100644 index 0000000000..9691589a03 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/05-manager-replay.txt @@ -0,0 +1,42 @@ + >● codeaf home teams chats sessions spend settings sun 11:12am + Check the review status with the team. × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Check the review status with the team. + + ▸ worked · 1 tool call · ctrl+e + + Review ready + + All checks passed. The change is ready for your review. + + + + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ────────────────────────────────────────────────────────────── $0.00 5.8k/1M · 1% idle ─ + › + + + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanManagerReplay3112663442/002/manager-replay diff --git a/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast b/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast new file mode 100644 index 0000000000..9f9f426386 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"06-manager-live-followup","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m checking review status with team reviewers × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mAnswer with only the words Still / ready / for / review. joined by spaces. No tools or delegation.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 0.7s · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mStill ready for review\u001b[39m\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0032\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0002 · 41% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay3112663442/002/manager-replay\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/06-manager-live-followup.gif b/docs/design/chat-cleanup/evidence/06-manager-live-followup.gif new file mode 100644 index 0000000000000000000000000000000000000000..823f1496fd0b170636e05e1f76b47a2d44ce7106 GIT binary patch literal 36271 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 iPXc973gu7|Wl● codeaf home teams chats sessions spend settings sun 11:12am + checking review status with team reviewers × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Check the review status with the team. + + ▸ worked · 1 tool call · ctrl+e + + Review ready + + All checks passed. The change is ready for your review. + + › Answer with only the words Still / ready / for / review. joined by spaces. No tools or delegation. + + ▸ worked 0.7s · ctrl+e + + Still ready for review + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0032 · ⟲ saved $0.0002 · 41% cached 15.1k/1M · 1% idle ─ + › + + + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanManagerReplay3112663442/002/manager-replay diff --git a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast new file mode 100644 index 0000000000..1e11d9379f --- /dev/null +++ b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"07-failure-recovery-active","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;103m✕ printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit\u001b[39m \u001b[38;5;238m+9.4k\u001b[39m \u001b[38;5;238m↑\u001b[38;5;252m 14.8k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 111\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───── \u001b[39m \u001b[38;5;252m$0.0029\u001b[38;5;243m · ⟲ 40% cached \u001b[38;5;252m14.8k/1M · 1%\u001b[39m \u001b[38;5;252mconnecting · 0.2s\u001b[38;5;243m · \u001b[38;5;146m⠏\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m · \u001b[38;5;146m1s\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery1487267512/002/failure-recovery\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.gif b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.gif new file mode 100644 index 0000000000000000000000000000000000000000..f6faee8682365f6fd85c0302ad16fb08d20b1a11 GIT binary patch literal 38464 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%0AB&gi(oVu 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● codeaf home teams chats sessions spend settings sun 11:12am + ◐ Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit 7. This... × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit 7. This failure is + intentional. Then recover with a second bash call: sleep 3; printf 'recovered\n'. Finally answer only with Recovery / check / passed. + joined by spaces. Do not echo stdout, delegate, or write files. + + ✕ printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit +9.4k ↑ 14.8k ↓ 111 + + + + + + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───── $0.0029 · ⟲ 40% cached 14.8k/1M · 1% connecting · 0.2s · ⠏ working · 1s ─ + › + + + esc interrupt project: /tmp/TestCleanChatFailureRecovery1487267512/002/failure-recovery diff --git a/docs/design/chat-cleanup/evidence/08-recovery-finished.cast b/docs/design/chat-cleanup/evidence/08-recovery-finished.cast new file mode 100644 index 0000000000..41f526c898 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/08-recovery-finished.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"08-recovery-finished","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0032\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m intentional bash failure recovery test × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.8s · thought 0.1s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mRecovery / check / passed\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0043\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0012 · 78% cached\u001b[38;5;243m \u001b[38;5;252m15.2k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery1487267512/002/failure-recovery\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/08-recovery-finished.gif b/docs/design/chat-cleanup/evidence/08-recovery-finished.gif new file mode 100644 index 0000000000000000000000000000000000000000..2c90ee11198073f7e9f2c7a929ca1b0ed7ba6710 GIT binary patch literal 39671 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

)ld?vaGIVh;1(eQt8! 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 B1=0Wj literal 0 HcmV?d00001 diff --git a/docs/design/chat-cleanup/evidence/09-user-steering.txt b/docs/design/chat-cleanup/evidence/09-user-steering.txt new file mode 100644 index 0000000000..9fc76efe32 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/09-user-steering.txt @@ -0,0 +1,42 @@ + >● codeaf home teams chats sessions spend settings sun 11:13am + ◐ Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between... × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between the two calls + emit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do + not delegate or write files. + + └ Also mention that no files were changed in your final answer. + + > • Linting common sense + + + + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.7k/1M · 1% ⠸ working ─ + › + + + esc interrupt project: /tmp/TestCleanChatSteering3496973854/002/steering diff --git a/docs/design/chat-cleanup/evidence/10-steering-finished.cast b/docs/design/chat-cleanup/evidence/10-steering-finished.cast new file mode 100644 index 0000000000..a0bd5a1dde --- /dev/null +++ b/docs/design/chat-cleanup/evidence/10-steering-finished.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"10-steering-finished","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0017\u001b[39m · \u001b[38;5;243msun 11:13am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m sequential bash sleep checks with interim update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;103mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 13s · thought 0.4s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;243m▸ worked 13s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mBoth commands ran: \u001b[48;5;234mfirst check finished\u001b[49m, then \u001b[48;5;234msecond check finished\u001b[49m. Checks finished.\u001b[39m\r\n\r\n \u001b[38;5;252mNo files were changed.\u001b[39m\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0019\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0016 · 97% cached\u001b[38;5;243m \u001b[38;5;252m15.3k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering3496973854/002/steering\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/10-steering-finished.gif b/docs/design/chat-cleanup/evidence/10-steering-finished.gif new file mode 100644 index 0000000000000000000000000000000000000000..236c5805eeaaad728daa60c34fd5a2fe33a7b4da GIT binary patch literal 45943 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

c%gP~B=Uo3`ayqapstNXH9-=(Cy*4ZA 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 literal 0 HcmV?d00001 diff --git a/docs/design/chat-cleanup/evidence/10-steering-finished.txt b/docs/design/chat-cleanup/evidence/10-steering-finished.txt new file mode 100644 index 0000000000..196be5d2e4 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/10-steering-finished.txt @@ -0,0 +1,42 @@ + >● codeaf home teams chats sessions spend settings 1 moving · $0.0017 · sun 11:13am + sequential bash sleep checks with interim update × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between the two calls + emit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do + not delegate or write files. + + └ Also mention that no files were changed in your final answer. + + ▸ worked 13s · thought 0.4s · 1 tool call · ctrl+e + + First check is complete. + ▸ worked 13s · 1 tool call · ctrl+e + + Both commands ran: first check finished, then second check finished. Checks finished. + + No files were changed. + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0019 · ⟲ saved $0.0016 · 97% cached 15.3k/1M · 1% idle ─ + › + + + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatSteering3496973854/002/steering diff --git a/docs/design/chat-cleanup/evidence/11-steering-resumed.cast b/docs/design/chat-cleanup/evidence/11-steering-resumed.cast new file mode 100644 index 0000000000..65d8b4c6e2 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/11-steering-resumed.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"11-steering-resumed","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.0020\u001b[39m · \u001b[38;5;243msun 11:13am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m sequential bash sleep checks with interim update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;103mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mBoth commands ran: \u001b[48;5;234mfirst check finished\u001b[49m, then \u001b[48;5;234msecond check finished\u001b[49m. Checks finished.\u001b[39m\r\n\r\n \u001b[38;5;252mNo files were changed.\u001b[39m\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────────────────── \u001b[39m \u001b[38;5;243m$0.0020 · ⟲ saved $0.0016 · 97% cached 5.9k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering3496973854/002/steering\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/11-steering-resumed.gif b/docs/design/chat-cleanup/evidence/11-steering-resumed.gif new file mode 100644 index 0000000000000000000000000000000000000000..2cc2cce7c417b5c5fe31c494adda86d126821d70 GIT binary patch literal 43503 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 literal 0 HcmV?d00001 diff --git a/docs/design/chat-cleanup/evidence/11-steering-resumed.txt b/docs/design/chat-cleanup/evidence/11-steering-resumed.txt new file mode 100644 index 0000000000..2392fcdb19 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/11-steering-resumed.txt @@ -0,0 +1,42 @@ + >● codeaf home teams chats sessions spend settings $0.0020 · sun 11:13am + sequential bash sleep checks with interim update × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between the two calls + emit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do + not delegate or write files. + + └ Also mention that no files were changed in your final answer. + + ▸ worked · 1 tool call · ctrl+e + + First check is complete. + ▸ worked · 1 tool call · ctrl+e + + Both commands ran: first check finished, then second check finished. Checks finished. + + No files were changed. + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ─────────────────────────────── $0.0020 · ⟲ saved $0.0016 · 97% cached 5.9k/1M · 1% idle ─ + › + + + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatSteering3496973854/002/steering diff --git a/docs/design/chat-cleanup/evidence/chat-models.json b/docs/design/chat-cleanup/evidence/chat-models.json new file mode 100644 index 0000000000..62e7554c85 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/chat-models.json @@ -0,0 +1,184 @@ +[ + { + "id": "5e857b56", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "title", + "ts": "2026-09-27T11:12:11.765-04:00" + }, + { + "id": "19eda597", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "router", + "ts": "2026-09-27T11:12:11.766-04:00" + }, + { + "id": "0c4da361", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "turn", + "ts": "2026-09-27T11:12:11.766-04:00" + }, + { + "id": "19eda597", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "router", + "ts": "2026-09-27T11:12:12.453-04:00" + }, + { + "id": "0c4da361", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "turn", + "ts": "2026-09-27T11:12:12.654-04:00" + }, + { + "id": "ad13a298", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "caption", + "ts": "2026-09-27T11:12:13.162-04:00" + }, + { + "id": "ad13a298", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "caption", + "ts": "2026-09-27T11:12:13.597-04:00" + }, + { + "id": "5e857b56", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "title", + "ts": "2026-09-27T11:12:14.453-04:00" + }, + { + "id": "92d56a62", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "turn", + "ts": "2026-09-27T11:12:15.715-04:00" + }, + { + "id": "92d56a62", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "turn", + "ts": "2026-09-27T11:12:15.933-04:00" + }, + { + "id": "3e2d1b7d", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "reflex", + "ts": "2026-09-27T11:12:15.936-04:00" + }, + { + "id": "3e2d1b7d", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "reflex", + "ts": "2026-09-27T11:12:16.481-04:00" + }, + { + "id": "686f4756", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "taskname", + "ts": "2026-09-27T11:12:17.425-04:00" + }, + { + "id": "686f4756", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "taskname", + "ts": "2026-09-27T11:12:18.682-04:00" + }, + { + "id": "a75af0c3", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "shaper", + "ts": "2026-09-27T11:12:21.006-04:00" + }, + { + "id": "d0b002f5", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "task", + "ts": "2026-09-27T11:12:21.008-04:00" + }, + { + "id": "d0b002f5", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "task", + "ts": "2026-09-27T11:12:21.462-04:00" + }, + { + "id": "8cab93a4", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "task", + "ts": "2026-09-27T11:12:21.482-04:00" + }, + { + "id": "8cab93a4", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "task", + "ts": "2026-09-27T11:12:22.204-04:00" + }, + { + "id": "732485dc", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "task", + "ts": "2026-09-27T11:12:22.212-04:00" + }, + { + "id": "732485dc", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "task", + "ts": "2026-09-27T11:12:22.476-04:00" + }, + { + "id": "33dca5ec", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "task", + "ts": "2026-09-27T11:12:22.499-04:00" + }, + { + "id": "a75af0c3", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "shaper", + "ts": "2026-09-27T11:12:22.700-04:00" + }, + { + "id": "33dca5ec", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "task", + "ts": "2026-09-27T11:12:22.962-04:00" + }, + { + "id": "e379da3c", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "turn", + "ts": "2026-09-27T11:12:23.570-04:00" + }, + { + "id": "e379da3c", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "turn", + "ts": "2026-09-27T11:12:24.612-04:00" + } +] \ No newline at end of file diff --git a/docs/design/chat-cleanup/evidence/manager-models.json b/docs/design/chat-cleanup/evidence/manager-models.json new file mode 100644 index 0000000000..8b1fbe41af --- /dev/null +++ b/docs/design/chat-cleanup/evidence/manager-models.json @@ -0,0 +1,72 @@ +[ + { + "id": "79221053", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "title", + "ts": "2026-09-27T11:12:37.277-04:00" + }, + { + "id": "e62b4afd", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "router", + "ts": "2026-09-27T11:12:37.278-04:00" + }, + { + "id": "392435a4", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "turn", + "ts": "2026-09-27T11:12:37.278-04:00" + }, + { + "id": "392435a4", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "turn", + "ts": "2026-09-27T11:12:37.674-04:00" + }, + { + "id": "fa024514", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "router", + "ts": "2026-09-27T11:12:37.676-04:00" + }, + { + "id": "e62b4afd", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "router", + "ts": "2026-09-27T11:12:37.721-04:00" + }, + { + "id": "79221053", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "title", + "ts": "2026-09-27T11:12:37.831-04:00" + }, + { + "id": "fa024514", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "router", + "ts": "2026-09-27T11:12:37.920-04:00" + }, + { + "id": "01be6ac9", + "model": "deepseek/deepseek-v4.1-flash", + "phase": "start", + "tag": "reflex", + "ts": "2026-09-27T11:12:37.926-04:00" + }, + { + "id": "01be6ac9", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "reflex", + "ts": "2026-09-27T11:12:38.254-04:00" + } +] \ No newline at end of file diff --git a/docs/design/chat-cleanup/evidence/notification-sequence.cast b/docs/design/chat-cleanup/evidence/notification-sequence.cast new file mode 100644 index 0000000000..d3c3b89eda --- /dev/null +++ b/docs/design/chat-cleanup/evidence/notification-sequence.cast @@ -0,0 +1,5 @@ +{"height": 42, "title": "Task notification, dismissed, restored \u2014 screenshot sequence", "version": 2, "width": 140} +[0, "o", "\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m>\u001b[38;5;179m\u25cf\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m \u00b7 \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m \u25d0 bash output and terminal check conversation \u00d7 \u001b[0m\u001b[38;5;243m + \u25a6\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m\u203a \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 worked 4.2s \u00b7 thought 0.2s \u00b7 1 tool call \u00b7 ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m\u2713\u001b[39m \u001b[38;5;243m\u25c6\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m \u00b7 done \u00b7 6s \u00b7 1 file \u00b7 branch kept \u00b7 task/write-a-file-called-hello-txt-co-d2ae66 \u00b7 ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 \u001b[38;5;103mWorking\u001b[38;5;243m thinking \u00b7 together \u00b7 ctrl+e\u001b[39m \u001b[38;5;235m\u2191\u001b[38;5;243m 15.1k\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m\u276e\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m\u2500 \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto \u00b7 \u001b[38;5;173m\u25c7 YOLO\u001b[38;5;243m \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u001b[39m \u001b[38;5;252m$0.0070\u001b[38;5;243m \u00b7 \u001b[38;5;252m\u27f2 saved $0.0029 \u00b7 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M \u00b7 1%\u001b[39m \u001b[38;5;146m\u2827\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m \u2500\r\n\u001b[39m \u001b[38;5;243m\u203a \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[2, "o", "\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m>\u001b[38;5;179m\u25cf\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m \u00b7 \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m \u25d0 bash output and terminal check conversation \u00d7 \u001b[0m\u001b[38;5;243m + \u25a6\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m\u203a \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 worked 4.2s \u00b7 thought 0.2s \u00b7 1 tool call \u00b7 ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m\u25b8 \u001b[38;5;103mWorking\u001b[38;5;243m thinking \u00b7 together \u00b7 ctrl+e\u001b[39m \u001b[38;5;235m\u2191\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m\u2193\u001b[38;5;252m 449\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m\u276e\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m\u2500 \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto \u00b7 \u001b[38;5;173m\u25c7 YOLO\u001b[38;5;243m \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m \u00b7 \u001b[38;5;252m\u27f2 saved $0.0029 \u00b7 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M \u00b7 1%\u001b[39m \u001b[38;5;146m\u280b\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m \u2500\r\n\u001b[39m \u001b[38;5;243m\u203a \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[4, "o", "\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m>\u001b[38;5;179m\u25cf\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m \u00b7 \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m \u25d0 bash output and terminal check conversation \u00d7 \u001b[0m\u001b[38;5;243m + \u25a6\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m\u203a \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 worked 4.2s \u00b7 thought 0.2s \u00b7 1 tool call \u00b7 ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m\u2713\u001b[39m \u001b[38;5;243m\u25c6\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m \u00b7 done \u00b7 6s \u00b7 1 file \u00b7 branch kept \u00b7 task/write-a-file-called-hello-txt-co-d2ae66 \u00b7 ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 \u001b[38;5;103mWorking\u001b[38;5;243m thinking \u00b7 together \u00b7 ctrl+e\u001b[39m \u001b[38;5;235m\u2191\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m\u2193\u001b[38;5;252m 568\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m\u276e\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m\u2500 \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto \u00b7 \u001b[38;5;173m\u25c7 YOLO\u001b[38;5;243m \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m \u00b7 \u001b[38;5;252m\u27f2 saved $0.0029 \u00b7 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M \u00b7 1%\u001b[39m \u001b[38;5;146m\u2839\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m \u2500\r\n\u001b[39m \u001b[38;5;243m\u203a \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[6, "o", ""] diff --git a/docs/design/chat-cleanup/evidence/notification-sequence.gif b/docs/design/chat-cleanup/evidence/notification-sequence.gif new file mode 100644 index 0000000000000000000000000000000000000000..253e03339ae545f59434747106beb79002ddcace GIT binary patch literal 74011 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�(i+q;My|MsOO!|agML0) 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 Date: Sun, 27 Sep 2026 11:38:21 -0400 Subject: [PATCH 09/23] Preserve user-directed notices and close transcript transition gaps --- docs/design/chat-cleanup/evidence/run.log | 29 +++++++ internal/session/prompts/system.md | 12 +-- internal/tui3/app.go | 27 +++---- .../tui3/async_command_visibility_test.go | 22 ++++++ internal/tui3/bundle_test.go | 4 +- internal/tui3/captionspan_test.go | 1 + internal/tui3/chat_async_receipt_test.go | 2 +- internal/tui3/compact_live_acceptance_test.go | 10 ++- internal/tui3/crew.go | 6 +- internal/tui3/failurerow_test.go | 11 ++- internal/tui3/feed.go | 47 ++++++++++-- internal/tui3/feed_update_test.go | 57 ++++++++++++++ internal/tui3/harness.go | 2 +- internal/tui3/harness_test.go | 6 ++ internal/tui3/hierarchy_test.go | 4 +- internal/tui3/homeslash.go | 2 +- internal/tui3/inputsmooth_test.go | 4 +- internal/tui3/lifecycle_test.go | 25 ++++--- internal/tui3/livesteps.go | 17 +++++ internal/tui3/livesteps_test.go | 75 +++++++++++++++++++ internal/tui3/nested_landing_accept_test.go | 3 + internal/tui3/pathlink_test.go | 3 +- internal/tui3/personsword_test.go | 3 +- internal/tui3/phasehierarchy_test.go | 23 +++--- internal/tui3/picturefold_test.go | 4 + internal/tui3/planroom_test.go | 2 + internal/tui3/provisional_test.go | 22 +++--- internal/tui3/render.go | 35 +++++++-- internal/tui3/replay_test.go | 1 + internal/tui3/room.go | 2 +- internal/tui3/roomcompact_test.go | 23 ++++-- internal/tui3/roomfold_test.go | 5 +- internal/tui3/roomlive_test.go | 2 +- internal/tui3/roomorch.go | 2 +- internal/tui3/roomreading.go | 3 + internal/tui3/roomreading_fold_test.go | 31 +++----- internal/tui3/roomwork_test.go | 16 ++-- internal/tui3/runlane_test.go | 4 + internal/tui3/senior_dev_landing_fold_test.go | 19 +++-- internal/tui3/task.go | 3 + internal/tui3/taskdismiss_test.go | 25 +++++++ internal/tui3/taskdone.go | 4 + internal/tui3/taskstrip_test.go | 2 + internal/tui3/teamjump.go | 26 +++++++ internal/tui3/teamthreadcard_test.go | 3 + internal/tui3/teamtraffic.go | 2 +- internal/tui3/tokencol_test.go | 14 +--- internal/tui3/toolclamp_test.go | 3 +- internal/tui3/toolcompact_test.go | 6 +- internal/tui3/toolview_test.go | 39 +++++----- internal/tui3/workfold.go | 2 +- 51 files changed, 519 insertions(+), 176 deletions(-) create mode 100644 docs/design/chat-cleanup/evidence/run.log diff --git a/docs/design/chat-cleanup/evidence/run.log b/docs/design/chat-cleanup/evidence/run.log new file mode 100644 index 0000000000..f2af03bdf9 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/run.log @@ -0,0 +1,29 @@ +=== RUN TestCleanChat + chatclean_e2e_test.go:41: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/00-active.cast + chatclean_e2e_test.go:50: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/01-chat.cast + chatclean_e2e_test.go:67: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/01-expanded.cast + chatclean_e2e_test.go:69: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/01-closed.cast + chatclean_e2e_test.go:86: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/02-notification.cast + chatclean_e2e_test.go:96: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/03-dismissed.cast + chatclean_e2e_test.go:100: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/04-restored.cast + chatclean_e2e_test.go:102: chat: 13 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash +--- PASS: TestCleanChat (25.88s) +=== RUN TestCleanManagerReplay + chatclean_e2e_test.go:176: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/05-manager-replay.cast + chatclean_e2e_test.go:180: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/06-manager-live-followup.cast + chatclean_e2e_test.go:182: manager: 5 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash +--- PASS: TestCleanManagerReplay (13.91s) +=== RUN TestCleanChatFailureRecovery + chatclean_e2e_test.go:206: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/07-failure-recovery-active.cast + chatclean_e2e_test.go:218: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/08-recovery-finished.cast + chatclean_e2e_test.go:239: recovery: 7 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash +--- PASS: TestCleanChatFailureRecovery (18.57s) +=== RUN TestCleanChatSteering + chatclean_e2e_test.go:323: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/09-user-steering.cast + chatclean_e2e_test.go:328: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/09-assistant-update.cast + chatclean_e2e_test.go:363: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/10-steering-finished.cast + chatclean_e2e_test.go:377: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/11-steering-resumed.cast + chatclean_e2e_test.go:379: steering: 9 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash +--- PASS: TestCleanChatSteering (38.08s) +PASS +ok github.com/Agent-Field/codeaf/internal/e2e 96.531s diff --git a/internal/session/prompts/system.md b/internal/session/prompts/system.md index 1897a4deec..61fbf0dd15 100644 --- a/internal/session/prompts/system.md +++ b/internal/session/prompts/system.md @@ -9,15 +9,9 @@ your tools to ground your answers. Keep continuity while delegated work runs. - Unexpected repo changes are the user's work; adapt. # The answer -User-facing replies stay visible; routine narration, tools and team coordination -fold into a closed "worked" line. -- To keep an important interim result, blocker, decision, or requested update - visible while also calling tools, start your assistant text with `[update]` - followed by the message. The interface removes this exact leading marker. - Use it only for something the person needs to hear, never routine tool - narration, private reasoning, or team coordination. Final answers need no marker. -- The last message carries the whole deliverable, so never write "as above" or - "see my previous message". +Keep interim results, blockers and decisions visible between tools by starting +with `[update]` (hidden by UI). Never mark narration or team traffic. Final +answers need no marker and must stand alone. - Line one answers the question or states the outcome. Then the thing asked for, in the form asked. Then, if needed, a few lines of why. Evidence and blocking details stay complete. diff --git a/internal/tui3/app.go b/internal/tui3/app.go index 5b8de9308e..80669c4c4a 100644 --- a/internal/tui3/app.go +++ b/internal/tui3/app.go @@ -5151,7 +5151,7 @@ func (a *app) route(msg tea.Msg) (tea.Model, tea.Cmd) { // while the mode word and `started` stay in the note's own dim. started := msg.kind + " task " + msg.id + " started · " + msg.title if !a.crewAfterStarted(msg.id, started, []string{msg.id, msg.title}) { - a.noteFacts(started, msg.id, msg.title) + a.feed.noteWritten(started, false, []string{msg.id, msg.title}) } // AND WHERE THE WORK STANDS, when the engine had something to say // about it: the ground ladder's redirect, said when the work goes @@ -5159,7 +5159,7 @@ func (a *app) route(msg tea.Msg) (tea.Model, tea.Cmd) { // under the started one, in the same slot [app.noteFacts] already // carries facts in; empty is every ordinary start and says nothing. if msg.note != "" { - a.note(msg.note) + a.feed.note(msg.note) } a.noticeEvent(eventTaskStarted) } @@ -6530,10 +6530,8 @@ func (a *app) take(u session.Usage) { } } -// note is the conversation's own [feed.note] WITH ONE MORE PLACE TO SAY IT, and -// it shadows the embedded method deliberately: `a.note(…)` is what four hundred -// call sites already spell, and a second verb for "say this where the person is -// standing" would be four hundred chances to pick the wrong one. +// note answers a UI action or reports something requiring the person's attention. +// Engine bookkeeping uses feed.note so its audience is explicit at the producer. func (a *app) note(text string) { a.noteWritten(text, false, nil) } // noteWritten is the one body behind all three of the app's note doors, and the @@ -6559,6 +6557,10 @@ func (a *app) note(text string) { a.noteWritten(text, false, nil) } // for. The flag is raised around the ONE dispatch home makes on its own behalf. func (a *app) noteWritten(text string, block bool, facts []string) { a.feed.noteWritten(text, block, facts) + if n := len(a.entries); n > 0 && a.entries[n-1].kind == entryNote { + a.entries[n-1].told = true + a.entries[n-1].stale = true + } if a.echoHome && a.at(pageHome) { a.home.say(firstLine(text), "") } @@ -7370,17 +7372,6 @@ func selectedCaption(sel int) (int, bool) { // that is typed in full and entered arrives here too, so an alias typed out and // an alias chosen from the list run the same road. func (a *app) slash(line string) tea.Cmd { - // A command's direct response is addressed to the person who asked for it. - // Mark that origin here so compact work never hides /help or /cost output. - before := len(a.entries) - defer func() { - for i := before; i < len(a.entries); i++ { - if a.entries[i].kind == entryNote { - a.entries[i].told = true - a.entries[i].stale = true - } - } - }() name, rest, _ := strings.Cut(strings.TrimPrefix(line, "/"), " ") rest = strings.TrimSpace(rest) // The unknown-command hint below says back what was typed and not what it @@ -9378,7 +9369,7 @@ func (a *app) cacheNote(u session.Usage) { line += " · saved " + savedWord(saved) } } - a.note(line) + a.feed.note(line) } // repriceCache is what the session's cache reads have been worth, worked out diff --git a/internal/tui3/async_command_visibility_test.go b/internal/tui3/async_command_visibility_test.go index 757ff6b3d5..7d8a0c0c8f 100644 --- a/internal/tui3/async_command_visibility_test.go +++ b/internal/tui3/async_command_visibility_test.go @@ -47,3 +47,25 @@ func TestAsyncUserCommandResponsesStayVisibleInCleanConversation(t *testing.T) { }) } } + +func TestNoteAudienceComesFromProducerAcrossConversationStates(t *testing.T) { + for _, working := range []bool{false, true} { + a := newTestApp(&fakeAgent{model: "m"}) + a.workMode = config.WorkFold + a.turn = 1 + if working { + a.state = stateWorking + } + a.feed.note("internal housekeeping") + a.note("the requested action was refused") + got := strings.Join(plainRows(a), "\n") + if !strings.Contains(got, "the requested action was refused") || strings.Contains(got, "internal housekeeping") { + t.Fatalf("working=%v: audience lost: %s", working, got) + } + a.setWorkOpen(a.conversation(), 1, true) + a.touch() + if got := strings.Join(plainRows(a), "\n"); !strings.Contains(got, "internal housekeeping") { + t.Fatalf("working=%v: operational record lost on disclosure: %s", working, got) + } + } +} diff --git a/internal/tui3/bundle_test.go b/internal/tui3/bundle_test.go index 94bd2a1e29..72d9c1bab7 100644 --- a/internal/tui3/bundle_test.go +++ b/internal/tui3/bundle_test.go @@ -402,7 +402,7 @@ func copyApp(t *testing.T) *app { t.Helper() a := newTestApp(&fakeAgent{model: "m"}) for _, line := range []string{"alpha", "bravo", "charlie", "delta", "echo"} { - a.entries = append(a.entries, entry{kind: entryNote, text: line}) + a.entries = append(a.entries, entry{kind: entryNote, text: line, told: true}) } a.touch() drive(t, a, ctrlKey('b')) @@ -1535,6 +1535,8 @@ func TestACompactedEventWithNothingRunningIsBornSettled(t *testing.T) { }}} a := newTestApp(agent) runTurn(t, a, agent, "carry on") + a.setWorkOpen(a.conversation(), a.turn, true) + a.touch() row := findRow(t, a, "compacted from ~84k tokens") if !strings.Contains(row, "⚭") || !strings.Contains(row, "──") { diff --git a/internal/tui3/captionspan_test.go b/internal/tui3/captionspan_test.go index 003f0c5734..85c22c0bcb 100644 --- a/internal/tui3/captionspan_test.go +++ b/internal/tui3/captionspan_test.go @@ -40,6 +40,7 @@ func TestAShortenedCaptionKeepsItsRemainingNarrationOnThePage(t *testing.T) { {kind: entryTool, tool: "edit", text: "edit internal/config/load.go", status: status, turn: 1}, } a.room.capOpen = map[int]bool{1: true} + a.room.workOpen = map[int]bool{1: true} drawn, _ := a.deckRows(a.room.deck(), 90) var page []string captions := 0 diff --git a/internal/tui3/chat_async_receipt_test.go b/internal/tui3/chat_async_receipt_test.go index 4a07eddf39..7faf322aab 100644 --- a/internal/tui3/chat_async_receipt_test.go +++ b/internal/tui3/chat_async_receipt_test.go @@ -16,7 +16,7 @@ func TestCleanChatAsyncTaskReceiptDoesNotUnfoldEarlierCacheNote(t *testing.T) { a.entries[5].confirmed = &responseConfirmation{done: true} a.turn = 1 a.workMode = config.WorkFold - a.note("PRIVATE CACHE RECEIPT") + a.feed.note("PRIVATE CACHE RECEIPT") a.toggleLatestWorkfold() a.setCapOpen(a.conversation(), 2, true) a.toggleLatestWorkfold() diff --git a/internal/tui3/compact_live_acceptance_test.go b/internal/tui3/compact_live_acceptance_test.go index 323b3ab51c..7512a2a5d0 100644 --- a/internal/tui3/compact_live_acceptance_test.go +++ b/internal/tui3/compact_live_acceptance_test.go @@ -58,13 +58,17 @@ func TestCompactLiveKeepsAnEarlierFailureAndThePersonsCorrection(t *testing.T) { a.setCapOpen(a.conversation(), 1, true) a.touch() page := strings.Join(plainRows(a), "\n") - for _, want := range []string{"build failed: missing target", "Keep the existing configuration", "Running the final check"} { + for _, want := range []string{"Keep the existing configuration", "Running the final check"} { if !strings.Contains(page, want) { t.Fatalf("compact work hid %q:\n%s", want, page) } } - if strings.Contains(page, "hidden-successful-call") { - t.Fatalf("compact work exposed ordinary call details:\n%s", page) + if strings.Contains(page, "hidden-successful-call") || strings.Contains(page, "build failed: missing target") { + t.Fatalf("compact work exposed call details:\n%s", page) + } + showLiveWork(t, a) + if page = livePage(a); !strings.Contains(page, "build failed: missing target") { + t.Fatalf("explicit disclosure lost the earlier failure:\n%s", page) } } diff --git a/internal/tui3/crew.go b/internal/tui3/crew.go index c620d2cca6..9500959587 100644 --- a/internal/tui3/crew.go +++ b/internal/tui3/crew.go @@ -332,7 +332,7 @@ func (a *app) sayTaskCrew(notice session.TaskNotice) { } switch { case said.text == "": - a.noteFacts(text, facts...) + a.feed.noteWritten(text, false, facts) case said.landed: // THE LANDING IS SAID WHERE THE TASK LANDS. A task runs for minutes // while the conversation goes on, and its start line is far up the @@ -340,7 +340,7 @@ func (a *app) sayTaskCrew(notice session.TaskNotice) { // were drawn where nobody was looking. The one line moves to the end. a.feed.moveNote(said.text, text, facts) case !a.feed.renote(said.text, text, facts): - a.noteFacts(text, facts...) + a.feed.noteWritten(text, false, facts) } said.text, said.facts = text, facts a.crewSaid[notice.ID] = said @@ -361,7 +361,7 @@ func (a *app) crewAfterStarted(id string, started string, startedFacts []string) if !ok || said.text == "" || !a.feed.renote(said.text, started, startedFacts) { return false } - a.noteFacts(said.text, said.facts...) + a.feed.noteWritten(said.text, false, said.facts) return true } diff --git a/internal/tui3/failurerow_test.go b/internal/tui3/failurerow_test.go index c9ccc37fbc..750ee0371d 100644 --- a/internal/tui3/failurerow_test.go +++ b/internal/tui3/failurerow_test.go @@ -128,7 +128,16 @@ func TestARetriedTurnThatGivesUpSaysBothInTheConversation(t *testing.T) { a.touch() page := plain(strings.Join(plainRows(a), "\n")) - // The reason the requests were being asked again, where the person is reading. + if strings.Contains(page, "the request failed — asking again") { + t.Fatalf("retry bookkeeping escaped its disclosure: %s", page) + } + if !strings.Contains(page, "gave up after 4 tries · API error (429) rate limited") { + t.Fatalf("terminal failure was hidden: %s", page) + } + a.setWorkOpen(a.conversation(), a.turn, true) + a.touch() + page = plain(strings.Join(plainRows(a), "\n")) + // Retry history remains available after an explicit disclosure. if !strings.Contains(page, "the request failed — asking again") { t.Fatalf("three retries left no row in the conversation:\n%s", page) } diff --git a/internal/tui3/feed.go b/internal/tui3/feed.go index 37dedce66d..c6d62a8f69 100644 --- a/internal/tui3/feed.go +++ b/internal/tui3/feed.go @@ -314,13 +314,13 @@ func (f *feed) ingestStream(ev session.Event, lump bool) { f.retry(ev) case session.EventToolForming: - f.confirmUserUpdate() + // The provider may still discard this attempt. Explicit updates stay + // addressed while streaming, but are confirmed only with a durable call. // THE CALL IS ARRIVING. Nothing has been asked for yet — this is the // model writing the instruction, drawn while it writes it. f.formTool(ev) case session.EventToolAnnounced: - f.confirmUserUpdate() f.announceTool(ev) case session.EventToolBegin: @@ -1261,7 +1261,7 @@ func (f *feed) reserveResponseContinuation() { } for i := f.think - 1; i >= 0; i-- { e := &f.entries[i] - if e.turn != f.turn || groupBreaks(e) || e.kind == entryTool || e.kind == entryCompact { + if e.turn != f.turn || groupBreaks(e) || (e.kind == entryTool && !(f.updateDelivery.marked && (e.status == toolForming || e.status == toolQueued))) || e.kind == entryCompact { return } if e.kind != entryAssistant { @@ -1401,9 +1401,23 @@ func (f *feed) retry(ev session.Event) { if e := blockAt(f.entries, f.live); e != nil && e.kind == entryAssistant && e.provisional { end, owner = f.live, e.confirmed } + // Forming/announced calls may have closed an explicitly addressed + // assembler before a queued human line. It is still this retry's attempt. + if owner == nil { + for i := end; i >= 0 && f.entries[i].turn == f.turn; i-- { + e := &f.entries[i] + if e.kind == entryTool && e.status != toolForming && e.status != toolQueued { + break + } + if e.kind == entryAssistant && e.addressed && e.provisional { + end, owner = i, e.confirmed + break + } + } + } for i := end; i >= 0 && f.entries[i].turn == f.turn; i-- { e := &f.entries[i] - if (e.kind == entryTool && e.status != toolForming) || groupBreaks(e) || e.kind == entryCompact { + if (e.kind == entryTool && e.status != toolForming && e.status != toolQueued) || groupBreaks(e) || e.kind == entryCompact { break } if e.kind == entryAssistant { @@ -1546,7 +1560,8 @@ func (f *feed) dropLive() { } // dropRetryingFormingTools removes calls that were still being spelled when a -// provider request was cut. The session discards those partial calls rather +// provider request was cut, including calls announced before execution. +// The session discards those partial calls rather // than recording them, so settling their rows as cancelled would leave a call // on screen that never existed in the transcript. // @@ -1558,7 +1573,7 @@ func (f *feed) dropRetryingFormingTools() { if e.turn != f.turn { break } - if e.kind != entryTool || e.status != toolForming { + if e.kind != entryTool || (e.status != toolForming && e.status != toolQueued) { continue } if i == len(f.entries)-1 { @@ -1586,10 +1601,28 @@ func (f *feed) confirmResponse() { confirmation = e.confirmed } } + // A streamed call closes the assembler before it becomes durable. Restore + // the explicit update's response anchor so a queued human line cannot hide + // its confirmation at ToolBegin. + if !anchored && f.updateDelivery.marked { + for i := end; i >= 0 && f.entries[i].turn == f.turn; i-- { + e := &f.entries[i] + if e.kind == entryTool && e.status != toolForming && e.status != toolQueued { + break + } + if e.kind == entryAssistant && e.addressed && e.provisional { + end, anchored = i, true + if e.confirmed != nil && !e.confirmed.done { + confirmation = e.confirmed + } + break + } + } + } var fragments []int for i := end; i >= 0; i-- { e := &f.entries[i] - if e.turn != f.turn || groupBreaks(e) || e.kind == entryTool || e.kind == entryCompact { + if e.turn != f.turn || groupBreaks(e) || (e.kind == entryTool && !(f.updateDelivery.marked && (e.status == toolForming || e.status == toolQueued))) || e.kind == entryCompact { break } if e.kind != entryAssistant { diff --git a/internal/tui3/feed_update_test.go b/internal/tui3/feed_update_test.go index d64ef0a2e9..9885c97e78 100644 --- a/internal/tui3/feed_update_test.go +++ b/internal/tui3/feed_update_test.go @@ -190,3 +190,60 @@ func TestUpdateProbeDoesNotCrossIntoTextlessNewTurn(t *testing.T) { } } } + +func TestExplicitUpdateBeforeFormingToolIsDiscardedOnRetry(t *testing.T) { + testUndurableUpdateRetry(t, false) +} + +func TestExplicitUpdateBeforeAnnouncedToolIsDiscardedOnRetry(t *testing.T) { + testUndurableUpdateRetry(t, true) +} + +func testUndurableUpdateRetry(t *testing.T, announced bool) { + t.Helper() + a := newTestApp(&fakeAgent{model: "m"}) + a.turn = 1 + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] Temporary finding"}) + a.said(entry{kind: entryUser, text: "Also check callers", turn: 1}) + a.ingest(session.Event{Kind: session.EventToolForming, CallID: "attempt", Tool: "read", ArgsText: "partial"}) + if announced { + a.ingest(session.Event{Kind: session.EventToolAnnounced, CallID: "attempt", Tool: "read"}) + } + for _, e := range a.entries { + if e.kind == entryAssistant && e.text == "Temporary finding" { + if !e.addressed || confirmedAnswer(&e) { + t.Fatal("forming call confirmed an undurable update or removed its audience") + } + } + } + a.ingest(session.Event{Kind: session.EventRetrying, Hint: "retrying"}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "Replacement answer"}) + a.ingest(session.Event{Kind: session.EventAssistantDone}) + for _, e := range a.entries { + if strings.Contains(e.text, "Temporary finding") || strings.Contains(e.text, "[update]") { + t.Fatalf("discarded attempt survived retry: %#v", e) + } + } + if text := strings.Join(plainRows(a), "\n"); !strings.Contains(text, "Replacement answer") { + t.Fatalf("retry lost valid replacement: %s", text) + } +} + +func TestExplicitUpdateConfirmedWhenAnnouncedCallBegins(t *testing.T) { + f := newFeed(feedHooks{}) + f.turn = 1 + f.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] Durable finding"}) + f.said(entry{kind: entryUser, text: "Also check the caller", turn: 1}) + f.ingest(session.Event{Kind: session.EventToolForming, CallID: "call", Tool: "read"}) + f.ingest(session.Event{Kind: session.EventToolAnnounced, CallID: "call", Tool: "read"}) + f.ingest(session.Event{Kind: session.EventToolBegin, CallID: "call", Tool: "read"}) + found := false + for _, e := range f.entries { + if e.kind == entryAssistant && e.text == "Durable finding" { + found = confirmedAnswer(&e) + } + } + if !found { + t.Fatal("durable tool response lost confirmed user update") + } +} diff --git a/internal/tui3/harness.go b/internal/tui3/harness.go index 43cc05b0a0..53a07fd493 100644 --- a/internal/tui3/harness.go +++ b/internal/tui3/harness.go @@ -143,7 +143,7 @@ func (a *app) noteHarness(name string) { a.harnessStep = "" // WHICH HARNESS is the only thing this line says that the person does not // already have, so it is the one that steps up (payload.go). - a.noteFacts("harness · "+name, name) + a.feed.noteWritten("harness · "+name, false, []string{name}) } // stepHarness draws one session.EventHarnessStep: the step the run just diff --git a/internal/tui3/harness_test.go b/internal/tui3/harness_test.go index e94429e5b5..f3df86c5db 100644 --- a/internal/tui3/harness_test.go +++ b/internal/tui3/harness_test.go @@ -219,6 +219,12 @@ func TestTheHarnessRunIsANote(t *testing.T) { typeLine(t, a, "research the pricing tiers") got := plain(frame(a)) + if strings.Contains(got, "harness · research") || !strings.Contains(got, "the report") { + t.Fatalf("harness bookkeeping should fold while the report stays: %s", got) + } + a.setWorkOpen(a.conversation(), a.turn, true) + a.touch() + got = plain(frame(a)) if !strings.Contains(got, "harness · research") { t.Fatalf("the run was never drawn:\n%s", got) } diff --git a/internal/tui3/hierarchy_test.go b/internal/tui3/hierarchy_test.go index 05395b4bf7..8b64a7e90b 100644 --- a/internal/tui3/hierarchy_test.go +++ b/internal/tui3/hierarchy_test.go @@ -283,8 +283,8 @@ func TestATurnEndingOnAToolCallPromotesNothing(t *testing.T) { if r := rowWithText(t, a, "Reading the parser"); !strings.HasPrefix(plain(r.text), " ") { t.Fatalf("a turn with no answer promoted its narration: %q", plain(r.text)) } - if len(deriveWorkfolds(a.entries, 0)) != 0 { - t.Fatal("a turn with no answer derived a chip to hide its work behind") + if len(deriveWorkfolds(a.entries, 0)) != 1 { + t.Fatal("settled tool-only work must retain a disclosure without inventing an answer") } } diff --git a/internal/tui3/homeslash.go b/internal/tui3/homeslash.go index 3da5b926bd..597678a93e 100644 --- a/internal/tui3/homeslash.go +++ b/internal/tui3/homeslash.go @@ -205,7 +205,7 @@ func homeFate(word, rest string) string { return fateQuit case "new": return fateFresh - case "land", "workspace": + case "land", "workspace", "dismiss": return fateBehind case "files", "permissions", "connect", "harness", "subharness", "skill", "autonomy", "copy", "select", "rewind", "compact", "export", "drafts", "manual", "folder": diff --git a/internal/tui3/inputsmooth_test.go b/internal/tui3/inputsmooth_test.go index 7ee4e3606f..2810987ef0 100644 --- a/internal/tui3/inputsmooth_test.go +++ b/internal/tui3/inputsmooth_test.go @@ -33,9 +33,11 @@ import ( // pointer can answer to and two entries it can dirty. func hoverApp(t *testing.T) *app { t.Helper() - return toolApp(t, tokens.ANSI256, + a := toolApp(t, tokens.ANSI256, call("read", `{"path":"a.go"}`, "one\ntwo"), call("edit", `{"path":"b.go"}`, "three\nfour")) + revealTestWork(a) + return a } // settle drops every mark the surface is carrying, so what a test does NEXT is diff --git a/internal/tui3/lifecycle_test.go b/internal/tui3/lifecycle_test.go index 8918acda0c..107137a04f 100644 --- a/internal/tui3/lifecycle_test.go +++ b/internal/tui3/lifecycle_test.go @@ -44,6 +44,7 @@ func firstTool(t *testing.T, a *app) int { // toolRowText is the first tool row, painted. func toolRowText(t *testing.T, a *app) string { t.Helper() + revealTestWork(a) for _, r := range rows(a) { if r.hit == hitTool { return r.text @@ -164,24 +165,24 @@ func TestAnnouncementsPairWithTheirOwnBeginsByPayload(t *testing.T) { } } -// A FAILURE OPENS ITSELF. Every other expansion waits to be asked for; the one -// row whose detail is the reason the person is looking at the screen does not. -func TestAFailedToolAutoExpandsItsDetail(t *testing.T) { +// A failure stays compact until the reader asks; the complete diagnostic is +// retained behind the same disclosure as every other tool call. +func TestAFailedToolKeepsItsDetailBehindDisclosure(t *testing.T) { a := toolApp(t, tokens.ANSI256, failedCall("bash", `{"command":"go build ./..."}`, "undefined: railMid", "undefined: railMid\n\nCommand exited with code 1")) - - at := firstTool(t, a) - if !a.entries[at].open { - t.Fatal("a failed call did not open itself") - } body := strings.Join(plainRows(a), "\n") + if strings.Contains(body, "undefined: railMid") { + t.Fatalf("the failure detail opened without being requested:\n%s", body) + } + if !strings.Contains(body, "failed") { + t.Fatalf("the compact summary hid the failure status:\n%s", body) + } + body = strings.Join(openFirst(t, a), "\n") if !strings.Contains(body, "│ undefined: railMid") { - t.Fatalf("the failure's detail is not on screen without a click:\n%s", body) + t.Fatalf("the requested failure detail is missing:\n%s", body) } - - // A SUCCESS does not, and that asymmetry is the point. ok := toolApp(t, tokens.ANSI256, call("bash", `{"command":"go build ./..."}`, "ok")) if ok.entries[firstTool(t, ok)].open { t.Fatal("a successful call opened itself") @@ -709,6 +710,8 @@ func TestHoverRepaintsOnlyWhenTheAnswerChanges(t *testing.T) { a := toolApp(t, tokens.ANSI256, failedCall("bash", `{"command":"go build"}`, "first line", "first line\nsecond line\nthird line\n\nCommand exited with code 1")) + openFirst(t, a) // The reader asks to inspect the failed call. + var ys []int body, _ := a.window(a.width, a.viewHeight()) for i, r := range body { diff --git a/internal/tui3/livesteps.go b/internal/tui3/livesteps.go index 6c21e8f6b4..27462e0ebf 100644 --- a/internal/tui3/livesteps.go +++ b/internal/tui3/livesteps.go @@ -211,6 +211,23 @@ func liveWorkRuns(d deck) map[int]liveWork { if frontier >= 0 { w := out[frontier] w.last = true + // Kept conversation does not end the running turn. Keep the waiting + // indicator in this window across replies and steering, until another + // step arrives. An outstanding decision instead suspends that indicator. + w.pending = true + for _, e := range es[w.end:] { + if e.turn != d.runningTurn || e.kind == entryAssistant && !confirmedAnswer(&e) && !e.addressed || e.kind == entryTool && (e.status == toolConsent || e.decision != "") || + e.kind == entryDone && e.done != nil && e.done.status.Tier == session.TaskTierYourCall { + w.pending = false + break + } + } + for _, c := range w.steps { + if c.ended.IsZero() { + w.pending = false + break + } + } out[frontier] = w } return out diff --git a/internal/tui3/livesteps_test.go b/internal/tui3/livesteps_test.go index 23c71391aa..90f38f1451 100644 --- a/internal/tui3/livesteps_test.go +++ b/internal/tui3/livesteps_test.go @@ -713,3 +713,78 @@ func TestRoomLiveActivityDoesNotBorrowTheParentPhase(t *testing.T) { } } } + +// Count the entire transcript, not just hitWorkFold rows: fallback animation +// and subharness status used to add a fourth line outside the compact window. +func TestCleanChatInterimReplyKeepsOneActivityWindowWhileWaiting(t *testing.T) { + for _, addressed := range []bool{false, true} { + for _, harness := range []string{"", "gathering subharness results"} { + a := liveStepsApp(t) + a.width = 140 + a.entries[9].status = toolOK + a.entries[9].ended = liveStepsBase.Add(8 * time.Second) + reply := entry{kind: entryAssistant, turn: 1, text: "The first result is ready.", settled: true, confirmed: &responseConfirmation{done: true}} + if addressed { + reply.settled, reply.provisional, reply.addressed = false, true, true + reply.confirmed = nil + } + a.entries = append(a.entries, reply) + a.live = -1 + a.harnessStep = harness + a.touch() + rendered := rows(a) + activity, nonblank := 0, 0 + for _, r := range rendered { + if strings.TrimSpace(plain(r.text)) != "" { + nonblank++ + } + if r.activity { + activity++ + } + } + page := livePage(a) + // One user line, one delivered reply, and the existing three work lines. + if nonblank != 5 || activity != 1 || !strings.Contains(page, reply.text) { + t.Fatalf("addressed=%t harness=%q: %d nonblank rows, %d animated rows:\n%s", addressed, harness, nonblank, activity, page) + } + } + } +} + +func TestCleanChatSubharnessFallbackRemainsWithoutCompactWork(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.state, a.turn = stateWorking, 1 + a.harnessStep = "gathering subharness results" + a.entries = []entry{{kind: entryUser, text: "Check the result.", turn: 1}} + a.touch() + if !strings.Contains(livePage(a), a.harnessStep) { + t.Fatal("lost the standalone subharness activity") + } +} + +func TestCleanChatKeptBoundaryDoesNotAddFourthActivityRow(t *testing.T) { + for _, boundary := range []entry{ + {kind: entrySteer, turn: 1, steer: &steerElbow{id: 1, words: "Use the second option", consumed: true}}, + {kind: entryTool, turn: 1, tool: "bash", status: toolConsent}, + } { + a := liveStepsApp(t) + a.width = 140 + a.entries[9].status, a.entries[9].ended = toolOK, liveStepsBase.Add(8*time.Second) + a.entries = append(a.entries, boundary) + a.live = -1 + a.harnessStep = "waiting for subharness" + a.touch() + activity := 0 + for _, r := range rows(a) { + if r.hit == hitWorkFold { + activity++ + } + if r.entry == -1 && r.hit != hitWorkFold && strings.TrimSpace(plain(r.text)) != "" { + t.Fatalf("boundary %v added a standalone activity row: %q\n%s", boundary.kind, plain(r.text), livePage(a)) + } + } + if activity > liveStepRows { + t.Fatalf("boundary %v: %d activity lines", boundary.kind, activity) + } + } +} diff --git a/internal/tui3/nested_landing_accept_test.go b/internal/tui3/nested_landing_accept_test.go index 3826a88e73..345c7bb865 100644 --- a/internal/tui3/nested_landing_accept_test.go +++ b/internal/tui3/nested_landing_accept_test.go @@ -56,6 +56,9 @@ func TestANestedLandingAcceptWritesTheTookLine(t *testing.T) { Parent: 1, Elapsed: 42 * time.Second, Merge: mergeWordMerged, Report: took + "\nfinished, but needs your look — nobody could check it in 5m0s", })}) + // Open the compact batch to inspect its retained acceptance receipt. + a.toggleDoneAt(a.doneEntryFor(1)) + a.toggleDoneAt(a.doneEntryFor(2)) if text := taskText(a); !strings.Contains(text, took) { t.Fatalf("the conversation does not say the part was decided:\n%s", text) } diff --git a/internal/tui3/pathlink_test.go b/internal/tui3/pathlink_test.go index 84e316f280..4c19502194 100644 --- a/internal/tui3/pathlink_test.go +++ b/internal/tui3/pathlink_test.go @@ -338,10 +338,11 @@ func TestTheFrameLinksProseNotesAndToolTargets(t *testing.T) { a.entries = []entry{ {kind: entryAssistant, text: "I put the guard in `internal/tui3/pathlink.go`.", settled: true}, - {kind: entryNote, text: "exported · " + target}, + {kind: entryNote, text: "exported · " + target, told: true}, {kind: entryTool, tool: "read", text: "internal/tui3/pathlink.go", detail: toolDetail{Args: `{"path":"internal/tui3/pathlink.go"}`}}, } + revealTestWork(a) a.touch() body := frame(a) if got := strings.Count(body, "\x1b]8;;"+fileURI(target)); got < 3 { diff --git a/internal/tui3/personsword_test.go b/internal/tui3/personsword_test.go index ba0dae319d..6970a1df3a 100644 --- a/internal/tui3/personsword_test.go +++ b/internal/tui3/personsword_test.go @@ -85,7 +85,8 @@ func TestThePersonsWordTakesTheDeadAttemptOffThePage(t *testing.T) { }}, ) before := strings.Join(plainRows(a), "\n") - if !strings.Contains(before, "thought for") || !strings.Contains(before, "bash") { + // Reasoning is folded by default; the active call is the visible attempt. + if !strings.Contains(before, "bash") { t.Fatalf("the fixture never drew the rows it is about:\n%s", before) } drive(t, a, streamEventMsg{gen: a.gen, ev: personCut()}) diff --git a/internal/tui3/phasehierarchy_test.go b/internal/tui3/phasehierarchy_test.go index 011f887ddd..a44e2490f1 100644 --- a/internal/tui3/phasehierarchy_test.go +++ b/internal/tui3/phasehierarchy_test.go @@ -156,8 +156,8 @@ func TestASettledRoomPhaseKeepsItsNarrationReachableThroughItsCaption(t *testing entry{kind: entryAssistant, text: "The parser API is preserved.", settled: true, turn: 1}, ) folds := a.deckFolds(a.room.deck()) - f, ok := folds[2] - if !ok || f.answer != 4 || f.key != 2 { + f, ok := folds[1] + if !ok || f.answer != 4 || f.key != 1 { t.Fatalf("the second phase did not settle: %#v", folds) } closed, _ := a.deckRows(a.room.deck(), 90) @@ -230,23 +230,18 @@ func TestReasoningBetweenPhasesCannotStealTheirNarrationOrKeys(t *testing.T) { {kind: entryAssistant, text: "The parser API is preserved.", settled: true, turn: 1}, } folds := a.deckFolds(a.room.deck()) - if len(folds) != 3 { - t.Fatalf("a reasoning phase was overwritten: %#v", folds) + if len(folds) != 1 || folds[0].answer != 5 { + t.Fatalf("settled work must share one complete disclosure: %#v", folds) } - for key, span := range [][2]int{{0, 1}, {1, 3}, {3, 5}} { - if f, ok := folds[span[0]]; !ok || f.answer != span[1] || f.key != key+1 { - t.Fatalf("phase %d overlaps or changed its key: %#v", key+1, folds) - } - } - a.openWorkfold(3) + a.openWorkfold(folds[0].key) drawn, _ := a.deckRows(a.room.deck(), 90) caption := phaseHierarchyRow(t, drawn, "Running compatibility checks") if caption.hit != hitCaption { t.Fatalf("the tool phase did not keep its own narration: %#v", caption) } - for _, r := range drawn { - if strings.Contains(plain(r.text), "Comparing parser contracts") { - t.Fatal("a tool phase borrowed the prior reasoning phase's narration") - } + // Both steps remain independently captioned inside the shared disclosure. + prior := phaseHierarchyRow(t, drawn, "Comparing parser contracts") + if prior.turn == caption.turn { + t.Fatal("the tool and reasoning phases share a caption control") } } diff --git a/internal/tui3/picturefold_test.go b/internal/tui3/picturefold_test.go index 05696c3a33..6e0acf7fb4 100644 --- a/internal/tui3/picturefold_test.go +++ b/internal/tui3/picturefold_test.go @@ -82,6 +82,9 @@ func TestMediaOriginalClickMatchesItsPaintedAction(t *testing.T) { e = entry{kind: entryTool, tool: "view_image", status: toolOK, detail: toolDetail{Args: `{"path":` + strconvQuote(path) + `}`, Output: "looked at it"}} } a.entries = []entry{e} + if tool { + revealTestWork(a) + } opened := watchOpener(t) found := false for y := a.bodyTop(); y < a.bodyTop()+a.viewHeight(); y++ { @@ -183,6 +186,7 @@ func TestClickingPreviewPixelsOpensFullQuality(t *testing.T) { a.entries = []entry{{kind: entryUser, text: "look", pictures: []string{path}, picturesHere: true, pictureExpanded: 1}} if tool { a.entries = []entry{{kind: entryTool, tool: "view_image", status: toolOK, detail: toolDetail{Args: `{"path":` + strconvQuote(path) + `}`, Output: "seen"}}} + revealTestWork(a) a.openTool(0) } // THE FIXTURE PUTS AN ALREADY-EXPANDED PICTURE ON SCREEN, which in the diff --git a/internal/tui3/planroom_test.go b/internal/tui3/planroom_test.go index 200d453277..6d60b674fe 100644 --- a/internal/tui3/planroom_test.go +++ b/internal/tui3/planroom_test.go @@ -103,6 +103,8 @@ func TestTheRunsTaskRoomDrawsARefusedActionAsOneLineAndACorrectionAsNone(t *test }} a, _ := planAppWith(t, []session.PlanTaskRow{row}, map[string]session.PlanTaskPage{row.ID: page}) openPlanRoomNow(t, a, row.ID) + // Inspect retained internal activity under its work disclosure. + drive(t, a, key("ctrl+e")) text := planRoomText(t, a) if !strings.Contains(text, taskPlanRefusedWord+railSep+"rm -rf /") { t.Fatalf("the refused action is not one line:\n%s", text) diff --git a/internal/tui3/provisional_test.go b/internal/tui3/provisional_test.go index 5d1811fa4e..4ca580a5ed 100644 --- a/internal/tui3/provisional_test.go +++ b/internal/tui3/provisional_test.go @@ -103,8 +103,8 @@ func TestResponseConfirmationSurvivesTrailingReasoning(t *testing.T) { } } a.event(session.Event{Kind: session.EventToolBegin, Tool: "read", CallID: "later", Args: `{"path":"later.md"}`}) - if page := livePage(a); strings.Contains(page, "Recent growth") { - t.Fatalf("new work failed to compact the earlier reply:\n%s", page) + if page := livePage(a); !strings.Contains(page, "Recent growth") { + t.Fatalf("new work hid the delivered earlier reply:\n%s", page) } } @@ -128,8 +128,8 @@ func TestConfirmationPromotesEveryInterleavedAnswerFragment(t *testing.T) { } a.event(session.Event{Kind: session.EventTextDelta, Text: "A later response is still unclassified. It must not keep the previous answer promoted."}) a.touch() - if page = livePage(a); strings.Contains(page, "Its complete details") { - t.Fatalf("later response failed to demote prior answer:\n%s", page) + if page = livePage(a); !strings.Contains(page, "Its complete details") { + t.Fatalf("later response hid the delivered prior answer:\n%s", page) } } @@ -212,7 +212,7 @@ func TestConfirmedReplyKeepsSurfaceNoticeBelowTheWholeAnswer(t *testing.T) { a := newTestApp(&fakeAgent{model: "m"}) a.state, a.turn, a.linear = stateWorking, 1, true a.event(session.Event{Kind: session.EventTextDelta, Text: "The complete first section. "}) - a.event(session.Event{Kind: session.EventNotice, Text: "Connection settings updated"}) + a.note("Connection settings updated") a.event(session.Event{Kind: session.EventTextDelta, Text: "The complete second section."}) a.event(session.Event{Kind: session.EventAssistantDone}) page := livePage(a) @@ -272,8 +272,8 @@ func TestConfirmedAnswerBeforeQueuedMessageDuringReasoning(t *testing.T) { return plain(frame(a)) } page := read() - if !room && !strings.Contains(page, "cached") { - t.Fatalf("completion lost cache receipt:\n%s", page) + if !room && strings.Contains(page, "cached") { + t.Fatalf("completion exposed cache receipt:\n%s", page) } answerAt, userAt := strings.Index(page, "Second answer section"), strings.Index(page, "Queued next question") if !strings.Contains(page, "First answer section") || answerAt < 0 || userAt <= answerAt || strings.Contains(page, "PRIVATE TRAILING") || strings.Contains(page, "thought for") { @@ -289,7 +289,7 @@ func TestConfirmedAnswerBeforeQueuedMessageDuringReasoning(t *testing.T) { } } -func TestReasoningOnlyFoldRequiresAConfirmedOwner(t *testing.T) { +func TestSettledReasoningFoldsWithoutInventingAnAnswer(t *testing.T) { for _, state := range []string{"confirmed", "unconfirmed", "new response", "live", "cut", "failed tool"} { t.Run(state, func(t *testing.T) { owner := &responseConfirmation{done: state != "unconfirmed"} @@ -304,7 +304,7 @@ func TestReasoningOnlyFoldRequiresAConfirmedOwner(t *testing.T) { for _, fold := range deriveWorkfolds(es, 0) { got = got || !fold.stopped } - if got != (state == "confirmed") { + if got != (state != "live" && state != "cut") { t.Fatalf("state %s folded=%v", state, got) } }) @@ -343,14 +343,14 @@ func TestQueuedContinuationCannotSurviveRetryOrToolBoundary(t *testing.T) { func TestConfirmedReasoningAfterNoticeHasItsOwnClosedDisclosure(t *testing.T) { a, _ := streaming(t, "The first section. ") a.linear = true - a.event(session.Event{Kind: session.EventNotice, Text: "Connection settings updated"}) + a.note("Connection settings updated") a.event(session.Event{Kind: session.EventReasoning, Text: "PRIVATE AFTER NOTICE"}) a.event(session.Event{Kind: session.EventTextDelta, Text: "The second section."}) a.event(session.Event{Kind: session.EventAssistantDone}) a.event(session.Event{Kind: session.EventTurnDone, Usage: session.Usage{Input: 12000, CacheRead: 9000}}) page := livePage(a) answerAt, noteAt := strings.Index(page, "second section"), strings.Index(page, "Connection settings updated") - if answerAt < 0 || noteAt <= answerAt || !strings.Contains(page, "cached") || strings.Contains(page, "PRIVATE AFTER") || strings.Contains(page, "thought for") { + if answerAt < 0 || noteAt <= answerAt || strings.Contains(page, "cached") || strings.Contains(page, "PRIVATE AFTER") || strings.Contains(page, "thought for") { t.Fatalf("notice or receipt displaced the answer or exposed private work:\n%s", page) } drive(t, a, key("ctrl+e")) diff --git a/internal/tui3/render.go b/internal/tui3/render.go index 5305372180..9e9640e1dc 100644 --- a/internal/tui3/render.go +++ b/internal/tui3/render.go @@ -292,11 +292,16 @@ func (a *app) layout(width int) []row { out = append(out, forming...) closed = true } - line, ok := a.harnessStepRow(inner) - if !ok && !hasCompactActivity(out) { - line, ok = a.ellipsis() - if ok && !a.workFoldOpen(a.conversation(), a.turn) && !a.unfolded[a.turn] { - line = a.activityLine(" " + a.shimmer("Working")) + var line string + var ok bool + compactWindow := !a.workFoldOpen(a.conversation(), a.turn) && !a.unfolded[a.turn] && hasCompactWindow(out, liveWorkKey(a.conversation())) + if !hasCompactActivity(out) && !compactWindow { + line, ok = a.harnessStepRow(inner) + if !ok { + line, ok = a.ellipsis() + if ok && !a.workFoldOpen(a.conversation(), a.turn) && !a.unfolded[a.turn] { + line = a.activityLine(" " + a.shimmer("Working")) + } } } if ok { @@ -897,6 +902,10 @@ func (a *app) captionSpanBody(d deck, c caption, width int) []row { // surrounding work is opened, including landed-card doors and assistant links. func (a *app) disclosedEntryRows(d deck, at, width int) []row { e := &d.entries[at] + // The caption owns its lifted narration, including the disclosed remainder. + if e.kind == entryAssistant && e.capHead { + return nil + } if e.kind == entryDone { return a.doneCluster(d, nil, at, at+1, width) } @@ -1797,9 +1806,19 @@ func (a *app) pulseHoldsThePhase(news PhaseNews) bool { return a.ellipsisShowing() && phaseWords(news, a.now()) != "" } -// hasCompactActivity asks the rows that actually drew, rather than re-deriving -// their visibility from engine state. Expanding a block returns its activity -// budget to the ordinary tool rows and footer on the very same frame. +// A paused compact window still owns the activity budget. A consent boundary +// must not acquire an extra fallback status line merely because it is not moving. +func hasCompactWindow(rows []row, key int) bool { + for _, r := range rows { + if r.hit == hitWorkFold && r.turn == key { + return true + } + } + return false +} + +// hasCompactActivity asks the rows that actually drew. Expanding a block returns +// its activity budget to the ordinary tool rows and footer on the same frame. func hasCompactActivity(rows []row) bool { for _, r := range rows { if r.activity { diff --git a/internal/tui3/replay_test.go b/internal/tui3/replay_test.go index 4c12ea864b..be14d1ecfd 100644 --- a/internal/tui3/replay_test.go +++ b/internal/tui3/replay_test.go @@ -329,6 +329,7 @@ func TestAReplayedCallSaysWhatItTook(t *testing.T) { Took: 7 * time.Second, }, ) + revealTestWork(a) got := map[string]time.Duration{} for _, e := range a.entries { if e.kind != entryTool { diff --git a/internal/tui3/room.go b/internal/tui3/room.go index 60c8534d85..b8c7a41cf5 100644 --- a/internal/tui3/room.go +++ b/internal/tui3/room.go @@ -1489,7 +1489,7 @@ func (a *app) roomNote(text string) { a.touch() return } - a.room.note(text) + a.room.toldNote(text) } } diff --git a/internal/tui3/roomcompact_test.go b/internal/tui3/roomcompact_test.go index 94d799fc76..1777b522fb 100644 --- a/internal/tui3/roomcompact_test.go +++ b/internal/tui3/roomcompact_test.go @@ -142,8 +142,8 @@ func TestRoomCompactCtrlOUsesRealTurnAndCtrlEResetsOverride(t *testing.T) { func TestRoomCompactScrollOpensPastThenLiveWithoutTogglingPast(t *testing.T) { a := roomCompactApp(t) a.roomScroll(-1) - if !a.room.workOpen[1] || a.room.workOpen[0] { - t.Fatalf("first upward scroll missed oldest phase: %v", a.room.workOpen) + if a.room.workOpen[1] || !a.room.workOpen[0] { + t.Fatalf("first upward scroll missed unified live work: %v", a.room.workOpen) } // Once the reader reaches a frontier with no older fold above it, the // same actual upward-scroll gesture must open the live disclosure. @@ -178,11 +178,11 @@ func TestRoomCompactCaptionMovesFromFrontierToSettledPhaseOnce(t *testing.T) { drive(t, a, roomEventMsg{gen: a.room.gen, ev: session.Event{Kind: session.EventTextDelta, Text: "Cancellation now resolves every waiting request."}}) drive(t, a, roomEventMsg{gen: a.room.gen, ev: session.Event{Kind: session.EventToolBegin, CallID: "race", Tool: "bash", Hint: "bash go test -race", Args: `{"command":"go test -race ./internal/queue"}`}}) page := roomText(a) - if strings.Contains(page, "Repairing cancellation") { - t.Fatalf("settled phase's caption remained in frontier:\n%s", page) + if strings.Count(page, "Repairing cancellation") > 1 { + t.Fatalf("finished caption duplicated in frontier:\n%s", page) } roomCompactWantOnce(t, page, "Cancellation now resolves every waiting request") - a.room.workOpen[2] = true + a.room.workOpen[0] = true a.room.dirty = true page = roomText(a) roomCompactWantOnce(t, page, "Repairing cancellation") @@ -202,9 +202,18 @@ func TestRoomCompactProtectsFailureCorrectionAndFinalAnswer(t *testing.T) { a := roomCompactApp(t) drive(t, a, roomEventMsg{gen: a.room.gen, ev: session.Event{Kind: session.EventToolFailed, CallID: "verify", Tool: "bash", Hint: "cancellation test failed", Err: errors.New("pending request was stranded")}}) page := roomText(a) - if !strings.Contains(page, "cancellation test failed") && !strings.Contains(page, "pending request was stranded") { - t.Fatalf("compact work hid real tool failure:\n%s", page) + if strings.Contains(page, "pending request was stranded") { + t.Fatalf("compact work exposed raw failure output:\n%s", page) + } + openRoomCompactWork(t, a) + a.room.unfolded[1] = true + a.room.dirty = true + if page = roomText(a); !strings.Contains(page, "cancellation test failed") { + t.Fatalf("explicit disclosure lost failure details:\n%s", page) } + a.room.unfolded[1] = false + a.room.workOpen[0] = false + a.room.entries = append(a.room.entries, entry{kind: entryUser, turn: 1, text: "Keep the public API unchanged.", settled: true}, entry{kind: entryAssistant, turn: 1, text: "Which cancellation guarantee should callers receive?", settled: true}, diff --git a/internal/tui3/roomfold_test.go b/internal/tui3/roomfold_test.go index 5ef6308c2d..c64a3077d8 100644 --- a/internal/tui3/roomfold_test.go +++ b/internal/tui3/roomfold_test.go @@ -410,9 +410,8 @@ func TestSettlingTheFoldsLeavesAnAlreadyLandedReadersChipsAlone(t *testing.T) { // And a room that has not landed is not re-cut either: nothing changed, so // nothing may be dropped. b := openRoomOn(t, landedJournal(t)) - live := readingDeck(b) - for _, f := range b.deckFolds(live) { - b.setWorkOpen(live, f.key, true) + if !b.toggleLatestWorkfold() || !b.room.workOpen[0] { + t.Fatal("running room has no open live work for this assertion") } b.room.setDone(false) open = false diff --git a/internal/tui3/roomlive_test.go b/internal/tui3/roomlive_test.go index 2da6c8f826..854f613329 100644 --- a/internal/tui3/roomlive_test.go +++ b/internal/tui3/roomlive_test.go @@ -268,7 +268,7 @@ func TestARoomOpensAtTheLiveEdgeAndNotAtTheTop(t *testing.T) { a.touch() // This assertion is about the reader who requests the retained history. // The compact default deliberately does not fill the screen with it. - openRoomCompactWork(t, a) + revealTestWork(a) rows := a.roomRows(a.bodyWidth()) height := a.viewHeight() diff --git a/internal/tui3/roomorch.go b/internal/tui3/roomorch.go index a33f91ec74..77609d8673 100644 --- a/internal/tui3/roomorch.go +++ b/internal/tui3/roomorch.go @@ -658,7 +658,7 @@ func (a *app) orchNoteEvent(ev session.Event) { a.roomTouched() return } - a.note(orchNotePrefix + note) + a.feed.note(orchNotePrefix + note) } // orchNotePrefix names the lane a dim line in the transcript came off, the way diff --git a/internal/tui3/roomreading.go b/internal/tui3/roomreading.go index fa387f8b80..78bc7e39d2 100644 --- a/internal/tui3/roomreading.go +++ b/internal/tui3/roomreading.go @@ -85,6 +85,9 @@ func readingWorkAnchor(es []entry, start, end int) int { func readingWorkAnchors(d deck) (map[int]liveWork, map[int]caption) { lives := make(map[int]liveWork) for _, live := range liveWorkRuns(d) { + if !live.last { + continue + } lives[readingWorkAnchor(d.entries, live.start, live.end)] = live } caps := make(map[int]caption, len(d.captions)) diff --git a/internal/tui3/roomreading_fold_test.go b/internal/tui3/roomreading_fold_test.go index dd37b8d708..8ee43645ac 100644 --- a/internal/tui3/roomreading_fold_test.go +++ b/internal/tui3/roomreading_fold_test.go @@ -58,26 +58,15 @@ func TestTaskReadingRestoresLiveFoldByStartFingerprint(t *testing.T) { fake.journal = readingFoldJournal(t, false, false) a.openRoom(7, "Fix worker cancellation") _ = roomText(a) - chosen := readingFoldForCall(t, a, "change-call") - if chosen.key == chosen.start { - t.Fatal("fixture must separate a phase key from its entry index") + if !a.toggleLatestWorkfold() || !a.room.workOpen[0] { + t.Fatal("live work did not open") } - a.toggleWorkfold(chosen.key) a.closeRoom() fake.journal = readingFoldJournal(t, true, false) a.openRoom(7, "Fix worker cancellation") _ = roomText(a) - restored := readingFoldForCall(t, a, "change-call") - if restored.key == chosen.key || restored.start == chosen.start { - t.Fatal("fixture did not move both fold coordinates") - } - if !a.room.workOpen[restored.key] { - t.Fatal("returning lost the expanded live phase") - } - for _, fold := range a.deckFolds(a.room.deck()) { - if fold.key != restored.key && a.room.workOpen[fold.key] { - t.Fatalf("returning expanded unrelated phase %d", fold.key) - } + if !a.room.workOpen[0] { + t.Fatal("returning lost the expanded live frontier after earlier entries shifted") } } @@ -124,17 +113,15 @@ func TestTaskReadingDoesNotApplyLivePhaseExpansionToCompletedTurn(t *testing.T) fake.journal = readingFoldJournal(t, false, false) a.openRoom(7, "Fix worker cancellation") _ = roomText(a) - phase := readingFoldForCall(t, a, "inspect-call") - a.toggleWorkfold(phase.key) + if !a.toggleLatestWorkfold() || !a.room.workOpen[0] { + t.Fatal("live work did not open") + } a.closeRoom() a.openRoom(7, "Fix worker cancellation") - a.room.done = true + a.room.setDone(true) _ = roomText(a) whole := readingFoldForCall(t, a, "inspect-call") - if a.room.deck().lens.foldPast != foldTurns || whole.start != phase.start { - t.Fatal("fixture did not reuse a start block across fold styles") - } if a.room.workOpen[whole.key] { - t.Fatal("live-phase bookmark opened the completed turn") + t.Fatal("live bookmark opened the completed turn") } } diff --git a/internal/tui3/roomwork_test.go b/internal/tui3/roomwork_test.go index 20734035d1..930f429554 100644 --- a/internal/tui3/roomwork_test.go +++ b/internal/tui3/roomwork_test.go @@ -164,7 +164,7 @@ func TestARunningRoomFoldsThePastAndOffersCompactFrontier(t *testing.T) { // THE BRIEF, A FAILED CALL AND A CORRECTION ARE NEVER FOLDED. Each is one of the // five acts and each has its own reason, so each is asked separately. -func TestTheBriefAFailureAndAnElbowNeverFold(t *testing.T) { +func TestTheBriefAndElbowStayOutsideCompactFailures(t *testing.T) { base := time.Unix(100, 0) work := func(extra ...entry) []entry { out := []entry{ @@ -180,9 +180,9 @@ func TestTheBriefAFailureAndAnElbowNeverFold(t *testing.T) { folds int }{ {"plain work folds", work(), 1}, - {"a failed call does not", work(entry{kind: entryTool, tool: "bash", turn: 1, status: toolFailed}), 0}, - {"an ask does not", work(entry{kind: entryTask, text: "may I?", turn: 1}), 0}, - {"a call still in flight does not", work(entry{kind: entryTool, tool: "bash", turn: 1, status: toolRunning}), 0}, + {"a failed call folds", work(entry{kind: entryTool, tool: "bash", turn: 1, status: toolFailed}), 1}, + {"work before an ask folds", work(entry{kind: entryTask, text: "may I?", turn: 1}), 1}, + {"work before a live call folds", work(entry{kind: entryTool, tool: "bash", turn: 1, status: toolRunning}), 1}, } for _, c := range cases { t.Run(c.name, func(t *testing.T) { @@ -205,8 +205,8 @@ func TestTheBriefAFailureAndAnElbowNeverFold(t *testing.T) { {kind: entrySteer, text: "portrait, not landscape", turn: 1, steer: &steerElbow{}}, {kind: entryAssistant, text: "Both rendered.", turn: 1, settled: true}, } - if folds := derivePhaseFolds(steered); len(folds) != 0 { - t.Fatalf("a chip covered a correction: %v", folds) + if folds := derivePhaseFolds(steered); len(folds) != 1 || folds[1].answer != 2 { + t.Fatalf("work must fold only up to the correction: %v", folds) } } @@ -286,8 +286,8 @@ func TestACorrectionTypedIntoARunningTaskBreaksThePhaseFold(t *testing.T) { if !strings.Contains(page, "Redrawn in portrait.") { t.Fatalf("the paragraph the correction bought is not standing:\n%s", page) } - if strings.Contains(page, "generate_image") { - t.Fatalf("the work after the correction did not fold into its chip:\n%s", page) + if !strings.Contains(page, "generate_image") { + t.Fatalf("the work after the correction lost its compact activity:\n%s", page) } } diff --git a/internal/tui3/runlane_test.go b/internal/tui3/runlane_test.go index 6648419e33..e4f225fcb5 100644 --- a/internal/tui3/runlane_test.go +++ b/internal/tui3/runlane_test.go @@ -63,6 +63,8 @@ func TestARunNoteOffTheStandingLaneLandsInTheConversation(t *testing.T) { if a.orchLive != "7" { t.Fatalf("the surface knows about run %q, want 7", a.orchLive) } + a.setWorkOpen(a.conversation(), a.turn, true) + a.touch() body := plain(frame(a)) if !strings.Contains(body, "audit the pricing code") { t.Fatalf("the note never reached the transcript:\n%s", body) @@ -102,6 +104,8 @@ func TestTheRunLaneRearmsItself(t *testing.T) { agent.lane <- session.Event{Kind: session.EventOrchestrateNote, ID: 7, Text: "the second thing it said"} drive(t, a, runCmd(a.watchRuns())...) + a.setWorkOpen(a.conversation(), a.turn, true) + a.touch() body := plain(frame(a)) for _, said := range []string{"one node to start", "the second thing it said"} { if !strings.Contains(body, said) { diff --git a/internal/tui3/senior_dev_landing_fold_test.go b/internal/tui3/senior_dev_landing_fold_test.go index 9c6a229ae4..d9c19da82f 100644 --- a/internal/tui3/senior_dev_landing_fold_test.go +++ b/internal/tui3/senior_dev_landing_fold_test.go @@ -30,8 +30,15 @@ func TestSeniorDevEngineLandingStandsOutsideWakeFold(t *testing.T) { if roomOpen { a.closeRoom() } + // The compact receipt identifies the task; its explanation remains inspectable. + cardInfo := a.doneCardFor(7) + cardInfo.open = true + if detail := strings.Join(a.doneRows(cardInfo, a.width, false), "\n"); !strings.Contains(detail, "senior-dev's ending went to the chat") { + t.Fatalf("program landing lost its retained explanation: %s", detail) + } + cardInfo.open = false first := taskText(a) - if !strings.Contains(first, "senior-dev's ending went to the chat") { + if !strings.Contains(first, "Repair the parser") { t.Fatalf("room open %t: the first conversation frame hid the landing:\n%s", roomOpen, first) } a.entries = append(a.entries, @@ -39,7 +46,7 @@ func TestSeniorDevEngineLandingStandsOutsideWakeFold(t *testing.T) { entry{kind: entryAssistant, text: "The change is on its branch.", turn: 2, settled: true}) a.touch() settled := taskText(a) - card := strings.Index(settled, "senior-dev's ending went to the chat") + card := strings.Index(settled, "Repair the parser") fold := strings.LastIndex(settled, "worked") answer := strings.Index(settled, "The change is on its branch.") if card < 0 || fold < 0 || answer < 0 || !(card < fold && fold < answer) { @@ -54,7 +61,7 @@ func TestSeniorDevEngineLandingStandsOutsideWakeFold(t *testing.T) { reopened.entries = append([]entry(nil), a.entries...) reopened.touch() again := taskText(reopened) - if card, fold, answer := strings.Index(again, "senior-dev's ending went to the chat"), + if card, fold, answer := strings.Index(again, "Repair the parser"), strings.LastIndex(again, "worked"), strings.Index(again, "The change is on its branch."); card < 0 || fold < 0 || answer < 0 || !(card < fold && fold < answer) { t.Fatalf("room open %t: reopened conversation changed the landing order:\n%s", roomOpen, again) } @@ -80,7 +87,7 @@ func TestSeniorDevNoHostLandingStandsOutsideWakeFold(t *testing.T) { entry{kind: entryAssistant, text: "The change is on its branch.", turn: 2, settled: true}) a.touch() text := taskText(a) - if card, fold, answer := strings.Index(text, "senior-dev's ending went to the chat"), + if card, fold, answer := strings.Index(text, "Repair the parser"), strings.LastIndex(text, "worked"), strings.Index(text, "The change is on its branch."); card < 0 || fold < 0 || answer < 0 || !(card < fold && fold < answer) { t.Fatalf("direct session lane hid the landing or wake fold:\n%s", text) } @@ -103,7 +110,7 @@ func TestSeniorDevLandingAfterWakeReplyStaysVisible(t *testing.T) { session.TaskNotice{Program: "senior-dev"})}) a.Update(taskEventMsg{gen: a.taskGen, ev: update(7, "Repair the parser", session.TaskDone, session.TaskNotice{Program: "senior-dev", Report: "submitted a change"})}) - if got := taskText(a); !strings.Contains(got, "senior-dev's ending went to the chat") { + if got := taskText(a); !strings.Contains(got, "Repair the parser") { t.Fatalf("landing behind the settled wake disappeared:\n%s", got) } reopened := newTestApp(&fakeAgent{model: "m"}) @@ -111,7 +118,7 @@ func TestSeniorDevLandingAfterWakeReplyStaysVisible(t *testing.T) { reopened.workMode = config.WorkFold reopened.entries = append([]entry(nil), a.entries...) reopened.touch() - if got := taskText(reopened); !strings.Contains(got, "senior-dev's ending went to the chat") { + if got := taskText(reopened); !strings.Contains(got, "Repair the parser") { t.Fatalf("reopening hid a landing delivered after the wake:\n%s", got) } } diff --git a/internal/tui3/task.go b/internal/tui3/task.go index 545962926a..d3e52124e7 100644 --- a/internal/tui3/task.go +++ b/internal/tui3/task.go @@ -5672,6 +5672,9 @@ func taskReasks(notice *session.TaskNotice, node *taskNode) bool { if notice == nil || node == nil { return false } + if notice.ResultHeld && !node.producedHeld { + return true + } if notice.Merge != "" && notice.Merge != node.merge { return true } diff --git a/internal/tui3/taskdismiss_test.go b/internal/tui3/taskdismiss_test.go index 92674a7854..a1f16bb486 100644 --- a/internal/tui3/taskdismiss_test.go +++ b/internal/tui3/taskdismiss_test.go @@ -150,3 +150,28 @@ func TestDismissedNotificationsLeaveNoBlankRowsOrEmptyWorkfold(t *testing.T) { t.Fatalf("dismissal left clutter:\nwant %q\ngot %q", want, got) } } + +func TestDismissedFailureReappearsWhenSameStateRequiresDecision(t *testing.T) { + a, _, _ := taskApp(t) + drive(t, a, streamEventMsg{gen: a.gen, ev: update(1, "Check parser", session.TaskFailed, session.TaskNotice{Report: "check failed"})}) + at := a.doneEntryFor(1) + if !a.dismissDone(at) { + t.Fatal("failed receipt could not be dismissed") + } + drive(t, a, streamEventMsg{gen: a.gen, ev: update(1, "Check parser", session.TaskFailed, session.TaskNotice{ + Report: "check failed", Result: "parser implementation", ResultHeld: true, + })}) + card := a.doneCardAt(at) + if card.dismissed || card.status.Tier != session.TaskTierYourCall { + t.Fatalf("same-state pending decision stayed dismissed: %+v", card) + } + if a.doneEntryFor(1) != at { + t.Fatal("same-state decision added a duplicate receipt") + } + if got := taskText(a); !strings.Contains(got, "Check parser") || !strings.Contains(got, card.status.Ask.Reason) { + t.Fatalf("pending decision not visible: %s", got) + } + if a.dismissDone(at) { + t.Fatal("pending decision became dismissible") + } +} diff --git a/internal/tui3/taskdone.go b/internal/tui3/taskdone.go index 0b04192154..be91d3df31 100644 --- a/internal/tui3/taskdone.go +++ b/internal/tui3/taskdone.go @@ -319,6 +319,10 @@ func (a *app) handedBackCard(fresh *taskDone) bool { return false } card.status = fresh.status + // A fresh decision must be visible even when its task state did not move. + if card.status.Tier == session.TaskTierYourCall { + card.dismissed = false + } a.settleTouched(card) return true } diff --git a/internal/tui3/taskstrip_test.go b/internal/tui3/taskstrip_test.go index 3f80ee9838..6162347fa6 100644 --- a/internal/tui3/taskstrip_test.go +++ b/internal/tui3/taskstrip_test.go @@ -431,6 +431,8 @@ func TestAPartThatAskedHereLandsItsAnswerHereToo(t *testing.T) { if card == nil || card.status.State != session.TaskDone { t.Fatalf("the decided part left its latest card at %+v, want done", card) } + card.open = true + a.touch() if text := taskText(a); !strings.Contains(text, took) { t.Fatalf("the conversation does not say the part was decided:\n%s", text) } diff --git a/internal/tui3/teamjump.go b/internal/tui3/teamjump.go index 21a0ec658d..b78839f6c1 100644 --- a/internal/tui3/teamjump.go +++ b/internal/tui3/teamjump.go @@ -96,6 +96,7 @@ func (a *app) trafficLand() tea.Cmd { land.older = true land.until = a.now().Add(3 * trafficLandFor) } else { + a.revealTrafficEntry(at) a.revealMiddle(at) } a.traffic.landing = land @@ -104,6 +105,31 @@ func (a *app) trafficLand() tea.Cmd { return tea.Tick(wait, func(time.Time) tea.Msg { return trafficLandedMsg{} }) } +// A deliberate message jump opens its enclosing disclosures before scrolling. +// Hidden history remains compact everywhere else in the conversation. +func (a *app) revealTrafficEntry(at int) { + d := a.conversation() + folds := a.deckFolds(d) + if a.workOpen == nil { + a.workOpen = make(map[int]bool) + } + for _, f := range folds { + if at >= f.start && at < f.answer { + a.workOpen[f.key] = true + } + } + stampHierarchy(d.entries, folds) + if a.capOpen == nil { + a.capOpen = make(map[int]bool) + } + for _, c := range deriveCaptions(d.entries, d.runningTurn) { + if at >= c.start && at < c.end { + a.capOpen[c.start] = true + } + } + a.touch() +} + // teamEntryAt is the newest entry of the conversation that carries Traffic // entry id, -1 for none. func (a *app) teamEntryAt(id string) int { diff --git a/internal/tui3/teamthreadcard_test.go b/internal/tui3/teamthreadcard_test.go index 674c51b554..ed64e6c312 100644 --- a/internal/tui3/teamthreadcard_test.go +++ b/internal/tui3/teamthreadcard_test.go @@ -87,6 +87,8 @@ func TestThreadCardAnswerExpandsOnPress(t *testing.T) { trafficAppend(t, a, harbor, teamstore.Entry{Kind: teamstore.KindNote, From: price, To: teamstore.ToManager, Text: long, Answers: q}) trafficReadNow(t, a) sendRow(a, `{"to":"`+price+`","text":"status?","kind":"directive"}`, "Sent a directive to @"+price+" ("+teamstore.ThreadNumber(q)+").") + drive(t, a, key("ctrl+e")) + openFirstCaption(t, a) if strings.Contains(bodyText(a), "END") { t.Fatal("the answer is drawn whole before a press") } @@ -171,6 +173,7 @@ func TestThreadCardMemberMirror(t *testing.T) { note := "Team traffic in \"harbor\" for you (@" + price + "). These are the team's messages, not the person's words:\n◆ directive from manager " + teamstore.ThreadNumber(q) + ": status please\n(rule)" a.entries = append(a.entries, entry{kind: entryTeam, text: note, settled: true, team: []session.TeamLine{{Team: "harbor", From: teamstore.FromManager, Kind: teamstore.KindDirective, Text: "status please", Thread: q}}}) + drive(t, a, key("ctrl+e")) text := bodyText(a) card := strings.Index(text, "│ status please") mine := strings.Index(text, "└ @"+price+" prices are cached") diff --git a/internal/tui3/teamtraffic.go b/internal/tui3/teamtraffic.go index 6054c49ef2..180c71481e 100644 --- a/internal/tui3/teamtraffic.go +++ b/internal/tui3/teamtraffic.go @@ -513,7 +513,7 @@ func (a *app) trafficStarted(id, handle string, conv Conversation, err error) te } } if t.Manager != "" && t.Manager == a.frontTabKey() { - a.note(a.teamManagerMark() + " started @" + handle + " · its tab is on the strip") + a.feed.note(a.teamManagerMark() + " started @" + handle + " · its tab is on the strip") } a.touch() return cmd diff --git a/internal/tui3/tokencol_test.go b/internal/tui3/tokencol_test.go index 06a3704d87..5c7945b951 100644 --- a/internal/tui3/tokencol_test.go +++ b/internal/tui3/tokencol_test.go @@ -804,8 +804,8 @@ func TestASplitTurnDrawsNoSecondWorkDoorAboveTheKeptStep(t *testing.T) { d := a.conversation() stampHierarchy(d.entries, a.deckFolds(d)) d.captions = deriveCaptions(d.entries, d.runningTurn) - if runs := liveWorkRuns(d); len(runs) < 2 { - t.Fatalf("the fixture did not split into two runs: %d", len(runs)) + if runs := liveWorkRuns(d); len(runs) != 1 { + t.Fatalf("a failed call split the unified activity window: %d", len(runs)) } doors := func(page []string) (thought, work int) { @@ -833,16 +833,10 @@ func TestASplitTurnDrawsNoSecondWorkDoorAboveTheKeptStep(t *testing.T) { t.Fatalf("the shut page drew %d work doors, want none — the compact block IS the shut state:\n%s", work, strings.Join(page, "\n")) } - if thought != 1 { - t.Fatalf("the reasoning above the kept step is not behind exactly one thought row (%d):\n%s", + if thought != 0 { + t.Fatalf("closed work exposed a standalone thought row (%d):\n%s", thought, strings.Join(page, "\n")) } - // The step the failure kept still stands between the two, whole and above - // the working block, exactly where it happened. - if !strings.Contains(strings.Join(page, "\n"), "Reading the loader first") { - t.Fatalf("the kept step is not on the page:\n%s", strings.Join(page, "\n")) - } - // And the work is still one window with one way in and out of it: opening it // draws exactly one `working · ctrl+e`, and the thought row is still its own. showLiveWork(t, a) diff --git a/internal/tui3/toolclamp_test.go b/internal/tui3/toolclamp_test.go index 2974e54753..fed7590649 100644 --- a/internal/tui3/toolclamp_test.go +++ b/internal/tui3/toolclamp_test.go @@ -146,7 +146,8 @@ func TestNoToolRowCarriesSomebodyElsesControlBytes(t *testing.T) { } // THE GESTURE THAT OPENS ONE CALL IS THE GESTURE THAT CLOSES IT, and it is -// reachable with no pointer at all: ↑ picks a call out of the transcript and +// reachable with no pointer once its containing work is disclosed: ↑ picks a +// call out of the transcript and // enter over an empty box opens what ↑ picked (input.go). What comes back is the // command WHOLE — that is the one thing the line clipped — and pressing enter // again returns the call to its single row. diff --git a/internal/tui3/toolcompact_test.go b/internal/tui3/toolcompact_test.go index 0a1ed256e4..938bb7ce35 100644 --- a/internal/tui3/toolcompact_test.go +++ b/internal/tui3/toolcompact_test.go @@ -22,8 +22,9 @@ import ( // the tier was drawn for — is [phoneWidth], declared once for the package in // palettephone_test.go. -// toolAppAt is [toolApp] on a frame of a stated width. The width is set BEFORE -// the turn runs so every row is built at it, the way a real session's is. +// toolAppAt is a tool-inspection fixture on a frame of a stated width. +// The width is set before the turn; its containing work and step disclosures +// are opened so these tests can inspect the individual tool rows. func toolAppAt(t *testing.T, width int, batches ...[]session.Event) *app { t.Helper() var events []session.Event @@ -36,6 +37,7 @@ func toolAppAt(t *testing.T, width int, batches ...[]session.Event) *app { a.width = width a.pal = newPalette(tokens.ANSI256, false) runTurn(t, a, agent, "go on then") + revealTestWork(a) return a } diff --git a/internal/tui3/toolview_test.go b/internal/tui3/toolview_test.go index 12bf6eb1ce..3042e8e0b0 100644 --- a/internal/tui3/toolview_test.go +++ b/internal/tui3/toolview_test.go @@ -49,9 +49,25 @@ func toolApp(t *testing.T, profile tokens.Profile, batches ...[]session.Event) * return a } -// toolLineOf is the first tool row on screen, plain. +// revealTestWork opens the containing work disclosure before a fixture inspects +// individual tool rows, including their step captions. Each call's own +// disclosure remains unchanged. +func revealTestWork(a *app) { + d := a.bodyDeck() + folds := a.deckFolds(d) + for _, fold := range folds { + a.setWorkOpen(d, fold.key, true) + } + stampHierarchy(d.entries, folds) + for _, caption := range deriveCaptions(d.entries, d.runningTurn) { + a.setCapOpen(d, caption.start, true) + } +} + +// toolLineOf is the first tool row inside disclosed work, plain. func toolLineOf(t *testing.T, a *app) string { t.Helper() + revealTestWork(a) for _, r := range plainRows(a) { r = strings.TrimLeft(r, " ") if strings.HasPrefix(r, railMid) || strings.HasPrefix(r, railLast) || @@ -63,24 +79,11 @@ func toolLineOf(t *testing.T, a *app) string { return "" } -// openFirst makes sure the first tool call is expanded and returns the -// surface's rows. A FAILED call opens itself (app.go), so this asks for the -// state rather than toggling it — a toggle would close the one row this helper -// exists to read. -// -// AND IT OPENS THE WORK THE CALL IS INSIDE, because on a running turn that is -// now part of what "show me this call" means: the conversation stands a running -// turn's machinery behind three compact lines until somebody asks for it -// (livesteps.go), so a call expanded inside a shut container would be a row this -// helper opened and nobody could see. It is a no-op on every finished turn, -// which is most of this suite. +// openFirst opens the parent work disclosure and the first individual call. +// Completed and failed calls both start collapsed until the reader asks. func openFirst(t *testing.T, a *app) []string { t.Helper() - if d := a.bodyDeck(); a.state == stateWorking { - if key, ok := a.liveWorkOf(d); ok { - a.setWorkOpen(d, key, true) - } - } + revealTestWork(a) for i := range a.entries { if a.entries[i].kind == entryTool { if !a.entries[i].open { @@ -580,7 +583,7 @@ func TestTheRailTeesThenClosesAndTheExpansionContinuesIt(t *testing.T) { call("read", `{"path":"c.go"}`, "three"), ) overlapToolClocks(a) - openFirstCaption(t, a) + revealTestWork(a) list := plainRows(a) var marked []string for _, r := range list { diff --git a/internal/tui3/workfold.go b/internal/tui3/workfold.go index 856f79b9cd..4008658e8a 100644 --- a/internal/tui3/workfold.go +++ b/internal/tui3/workfold.go @@ -539,7 +539,7 @@ func workIndent(width int) string { // A tool-free response boundary is an explicit message to the person, even // when the session continues working afterwards. No prose keywords are guessed. func confirmedAnswer(e *entry) bool { - return e.kind == entryAssistant && e.confirmed != nil && e.confirmed.done && !e.cut + return e.kind == entryAssistant && strings.TrimSpace(e.text) != "" && e.confirmed != nil && e.confirmed.done && !e.cut } // workIndentCols is what the indent law costs, in columns. It is asked at From 6eb3e2beac145ed85156fdd0b0226192840e2b66 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 11:42:18 -0400 Subject: [PATCH 10/23] Recognize terminal rail gutter in live answer assertions --- internal/e2e/chatclean_e2e_test.go | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/internal/e2e/chatclean_e2e_test.go b/internal/e2e/chatclean_e2e_test.go index 1e6a3c38a9..89626c1aab 100644 --- a/internal/e2e/chatclean_e2e_test.go +++ b/internal/e2e/chatclean_e2e_test.go @@ -381,6 +381,14 @@ func TestCleanChatSteering(t *testing.T) { func cleanChatHasAnswer(screen, want string) bool { for _, line := range strings.Split(screen, "\n") { + // The closed task rail paints its handle in the rightmost gutter. A + // coincident answer row still contains only the answer in the chat column. + if strings.HasSuffix(line, "❮") { + before := strings.TrimSuffix(line, "❮") + if strings.HasSuffix(before, " ") { + line = before + } + } line = strings.Trim(strings.ReplaceAll(strings.TrimSpace(line), " / ", " "), ". ") if line == want { return true @@ -388,3 +396,21 @@ func cleanChatHasAnswer(screen, want string) bool { } return false } + +func TestCleanChatAnswerIgnoresOnlyTheRailGutter(t *testing.T) { + for _, tc := range []struct { + line string + want bool + }{ + {" Still ready for review", true}, + {" Still ready for review. ❮", true}, + {" Still ready for review❮", false}, + {" Still ready for review but not yet", false}, + {" › Still ready for review", false}, + {" › Answer with only the words Still / ready / for / review.", false}, + } { + if got := cleanChatHasAnswer(tc.line, "Still ready for review"); got != tc.want { + t.Errorf("answer match for %q = %v, want %v", tc.line, got, tc.want) + } + } +} From 0b970f4bcb933c5948abb31f1d72d7d0ae99e78e Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 11:53:02 -0400 Subject: [PATCH 11/23] Keep harness progress and interrupted work inside shared disclosures --- internal/e2e/chatclean_e2e_test.go | 38 +++++++++++++++++++++++----- internal/tui3/app.go | 1 + internal/tui3/bundle_test.go | 3 +++ internal/tui3/detach.go | 1 + internal/tui3/harness.go | 2 ++ internal/tui3/lifecycle_test.go | 2 ++ internal/tui3/livesteps.go | 18 ++++++++++++- internal/tui3/livesteps_test.go | 3 +++ internal/tui3/nochange_test.go | 6 ++--- internal/tui3/phasehierarchy_test.go | 2 +- internal/tui3/planbeat_host_test.go | 1 + internal/tui3/retrying_test.go | 6 +++++ internal/tui3/roomcompact_test.go | 18 ++++++------- internal/tui3/settleboundary_test.go | 4 +-- internal/tui3/skillnotice_test.go | 29 ++++++++------------- internal/tui3/taskending_test.go | 12 +++++++-- internal/tui3/teamcoherence_test.go | 1 + internal/tui3/teamthreadcard_test.go | 13 ++++++++++ internal/tui3/tokencol_test.go | 2 +- internal/tui3/toolcompact_test.go | 1 + internal/tui3/toolview_test.go | 6 +++++ internal/tui3/workfold.go | 8 +++++- internal/tui3/workfold_test.go | 8 +++--- internal/tui3/worktab_test.go | 4 +++ 24 files changed, 139 insertions(+), 50 deletions(-) diff --git a/internal/e2e/chatclean_e2e_test.go b/internal/e2e/chatclean_e2e_test.go index 89626c1aab..759470f3f1 100644 --- a/internal/e2e/chatclean_e2e_test.go +++ b/internal/e2e/chatclean_e2e_test.go @@ -206,12 +206,15 @@ func TestCleanChatFailureRecovery(t *testing.T) { cleanChatCapture(t, r, "07-failure-recovery-active") captured = true } - if strings.Contains(screen, keyedWord("2", "tool calls")) && strings.Contains(screen, "idle") { + if cleanChatHasAnswer(screen, "Recovery check passed") && strings.Contains(screen, "idle") { break } time.Sleep(pollEvery) } - screen := r.waitFor(2*time.Second, keyedWord("2", "tool calls"), "idle") + screen := r.capture() + if !cleanChatHasAnswer(screen, "Recovery check passed") || !strings.Contains(screen, "idle") { + t.Fatalf("recovery did not finish with a visible answer:\n%s", screen) + } if strings.Contains(screen, "CLEAN_FAILURE_TRACE_7319") { t.Fatalf("failed-call detail leaked after recovery:\n%s", screen) } @@ -222,18 +225,39 @@ func TestCleanChatFailureRecovery(t *testing.T) { if err != nil { t.Fatal(err) } - failed := false + failed, recovered := false, false + failedID, recoveryID := "", "" for _, p := range journals { raw, err := os.ReadFile(p) if err != nil { t.Fatal(err) } - if strings.Contains(string(raw), "CLEAN_FAILURE_TRACE_7319") { - failed = true + for _, line := range strings.Split(string(raw), "\n") { + if strings.TrimSpace(line) == "" { + continue + } + var row struct { + Type string `json:"type"` + Role string `json:"role"` + Content string `json:"content"` + ToolCallID string `json:"toolCallId"` + } + if err := json.Unmarshal([]byte(line), &row); err != nil { + t.Fatal(err) + } + if row.Type != "message" || row.Role != "tool" { + continue + } + if strings.Contains(row.Content, "CLEAN_FAILURE_TRACE_7319") && strings.Contains(row.Content, "Command exited with code 7") { + failed, failedID = true, row.ToolCallID + } + if strings.TrimSpace(row.Content) == "recovered" { + recovered, recoveryID = true, row.ToolCallID + } } } - if !failed { - t.Fatal("live model never produced the required failed-call output") + if !failed || !recovered || failedID == "" || recoveryID == "" || failedID == recoveryID { + t.Fatalf("expected distinct failed and recovered tool results: failed=%v recovered=%v distinct=%v", failed, recovered, failedID != recoveryID) } r.quit() cleanChatAuditModels(t, home, model, "recovery") diff --git a/internal/tui3/app.go b/internal/tui3/app.go index 80669c4c4a..8717adb6c8 100644 --- a/internal/tui3/app.go +++ b/internal/tui3/app.go @@ -1803,6 +1803,7 @@ type app struct { // is replaced in place: the run's report carries the whole trail, and a step // left in the transcript would be that trail written twice. harnessStep string + harnessName string // designLane is the standing subscription to what the harness DESIGNER is // doing (harness.go's design lane) and designGen the generation it belongs // to. It is a lane of its own rather than the turn's stream because a design diff --git a/internal/tui3/bundle_test.go b/internal/tui3/bundle_test.go index 72d9c1bab7..44117584cd 100644 --- a/internal/tui3/bundle_test.go +++ b/internal/tui3/bundle_test.go @@ -1478,6 +1478,8 @@ func TestTheCompactionRowRunsAndThenSettlesInPlace(t *testing.T) { base := time.Now() a.clock = func() time.Time { return base } typeLine(t, a, "keep going") + a.setWorkOpen(a.conversation(), a.turn, true) + a.touch() // THE ROW IS ALIVE: the hint, the braille spinner, and — six seconds in — the // clock, which climbs on the frame the spinner already turns on. @@ -4467,6 +4469,7 @@ func TestTheRoomsLiveLaneAppendsAndCoalesces(t *testing.T) { lane <- session.Event{Kind: session.EventToolEnd, Tool: "read", Args: `{"path":"etc/load.go"}`} clickRail(t, a, 0) + revealTestWork(a) page := roomText(a) if !strings.Contains(page, "Looking at the loader") { t.Fatalf("the deltas did not coalesce into one block:\n%s", page) diff --git a/internal/tui3/detach.go b/internal/tui3/detach.go index 30d69b0797..6cb7e28ab2 100644 --- a/internal/tui3/detach.go +++ b/internal/tui3/detach.go @@ -379,6 +379,7 @@ func (a *app) clearConversation() { a.harnPanel = harnessPanel{} a.crewUI = crewPanel{} a.harnessStep = "" + a.harnessName = "" // And the picked harness with them: a chip is a choice about the NEXT // message of this conversation (harnesspick.go). a.harnPick, a.harnChip = harnessPick{}, "" diff --git a/internal/tui3/harness.go b/internal/tui3/harness.go index 53a07fd493..5010af9194 100644 --- a/internal/tui3/harness.go +++ b/internal/tui3/harness.go @@ -141,6 +141,7 @@ func (a *app) noteHarness(name string) { return } a.harnessStep = "" + a.harnessName = name // WHICH HARNESS is the only thing this line says that the person does not // already have, so it is the one that steps up (payload.go). a.feed.noteWritten("harness · "+name, false, []string{name}) @@ -174,6 +175,7 @@ func (a *app) stepHarness(ev session.Event) { // dropHarnessStep clears that row. A run that is over is a run with no step in // flight, and the report is on screen by then saying what every step did. func (a *app) dropHarnessStep() { + a.harnessName = "" if a.harnessStep == "" { return } diff --git a/internal/tui3/lifecycle_test.go b/internal/tui3/lifecycle_test.go index 107137a04f..35acc87690 100644 --- a/internal/tui3/lifecycle_test.go +++ b/internal/tui3/lifecycle_test.go @@ -562,6 +562,8 @@ func screenRowOf(t *testing.T, a *app, want func(row) bool) int { // because a click on it does not. func TestHoverAnswersOnInteractiveRowsAndNowhereElse(t *testing.T) { a := toolApp(t, tokens.ANSI256, call("read", `{"path":"a.go"}`, "one\ntwo")) + revealTestWork(a) + background := "\x1b[48;5;" + itoa(int(hueCursor.idx)) + "m" toolY := screenRowOf(t, a, func(r row) bool { return r.hit == hitTool }) diff --git a/internal/tui3/livesteps.go b/internal/tui3/livesteps.go index 27462e0ebf..da0b6e36ee 100644 --- a/internal/tui3/livesteps.go +++ b/internal/tui3/livesteps.go @@ -371,6 +371,18 @@ func (a *app) liveStepBlock(w liveWork, width int, d deck) []row { if room < 1 { room = 1 } + // Subharness progress is the newest step of this same activity window. + // Keep its name and result visible without spending a fourth footer row. + harnessAt := -1 + if w.last && d.lens.clock && a.state == stateWorking && a.harnessStep != "" { + text := a.harnessStep + if a.harnessName != "" { + text = "harness · " + a.harnessName + " · " + text + } + harnessAt = len(w.steps) + w.steps = append(append([]caption(nil), w.steps...), caption{text: text}) + w.pending = false + } // Hidden reasoning needs a visible door even before the first caption. // It uses the same width budget, including on the smallest terminal. if len(w.steps) == 0 { @@ -418,7 +430,11 @@ func (a *app) liveStepBlock(w liveWork, width int, d deck) []row { used := 0 for at := len(w.steps) - 1; at >= 0; at-- { - lines := wrap(captionText(w.steps[at]), room) + text := captionText(w.steps[at]) + if at == harnessAt { + text = w.steps[at].text + } + lines := wrap(text, room) if len(lines) == 0 { continue } diff --git a/internal/tui3/livesteps_test.go b/internal/tui3/livesteps_test.go index 90f38f1451..2de7620203 100644 --- a/internal/tui3/livesteps_test.go +++ b/internal/tui3/livesteps_test.go @@ -743,6 +743,9 @@ func TestCleanChatInterimReplyKeepsOneActivityWindowWhileWaiting(t *testing.T) { } } page := livePage(a) + if harness != "" && !strings.Contains(page, harness) { + t.Fatalf("compact work lost named harness progress:\n%s", page) + } // One user line, one delivered reply, and the existing three work lines. if nonblank != 5 || activity != 1 || !strings.Contains(page, reply.text) { t.Fatalf("addressed=%t harness=%q: %d nonblank rows, %d animated rows:\n%s", addressed, harness, nonblank, activity, page) diff --git a/internal/tui3/nochange_test.go b/internal/tui3/nochange_test.go index 07816eb98e..418ca8695f 100644 --- a/internal/tui3/nochange_test.go +++ b/internal/tui3/nochange_test.go @@ -41,11 +41,11 @@ func TestANoChangeReplyLeavesThePriorAnswerAsTheFoldsAnswer(t *testing.T) { t.Fatalf("the last words left standing are not the table: %+v", f.entries) } folds := deriveWorkfolds(f.entries, 0) - if len(folds) != 1 { - t.Fatalf("the carried-on turn derived %d folds, want 1", len(folds)) + if len(folds) != 2 { + t.Fatalf("want work and housekeeping spans, got %d", len(folds)) } for _, fold := range folds { - if fold.answer != answer { + if !housekeepingFold(f.entries, fold) && fold.answer != answer { t.Fatalf("the fold answers with block %d, want the table at %d", fold.answer, answer) } } diff --git a/internal/tui3/phasehierarchy_test.go b/internal/tui3/phasehierarchy_test.go index a44e2490f1..1eda8472d1 100644 --- a/internal/tui3/phasehierarchy_test.go +++ b/internal/tui3/phasehierarchy_test.go @@ -190,7 +190,7 @@ func TestPhaseNarrationOwnershipDoesNotInventWorkOrCrossProtectedRows(t *testing for _, protected := range []entry{ {kind: entryUser, text: "A correction", turn: 1}, {kind: entrySteer, turn: 1, steer: &steerElbow{words: "A correction", consumed: true}}, - {kind: entryTool, tool: "bash", status: toolFailed, turn: 1}, + {kind: entryTool, tool: "bash", status: toolConsent, turn: 1}, {kind: entryTask, turn: 1}, } { es := append([]entry(nil), prose...) diff --git a/internal/tui3/planbeat_host_test.go b/internal/tui3/planbeat_host_test.go index 232042331a..d53109b92c 100644 --- a/internal/tui3/planbeat_host_test.go +++ b/internal/tui3/planbeat_host_test.go @@ -433,6 +433,7 @@ func TestHostedTaskPageDrawsARefusedActionAsOneLineAndACorrectionAsNone(t *testi t.Fatal(err) } openHostedPage(t, a) + drive(t, a, key("ctrl+e")) page := roomCallText(t, a) refused := taskPlanRefusedWord + railSep + "touch /outside/the-ground" var drawn []string diff --git a/internal/tui3/retrying_test.go b/internal/tui3/retrying_test.go index cdc5d56c5b..6fa74fc528 100644 --- a/internal/tui3/retrying_test.go +++ b/internal/tui3/retrying_test.go @@ -121,6 +121,12 @@ func TestAHedgeReplacementLeavesOnlyTheRescuedAnswerOnThePage(t *testing.T) { if strings.Contains(page, "PARTIALTEXT") { t.Fatalf("the dead lane's answer stayed on the page:\n%s", page) } + if strings.Contains(page, "that provider went quiet") { + t.Fatalf("retry bookkeeping escaped the compact window: %s", page) + } + a.setWorkOpen(a.conversation(), a.turn, true) + a.touch() + page = livePage(a) if got := strings.Count(page, "that provider went quiet"); got != 1 { t.Fatalf("the replacement line appears %d times, want once:\n%s", got, page) } diff --git a/internal/tui3/roomcompact_test.go b/internal/tui3/roomcompact_test.go index 1777b522fb..c8b193311d 100644 --- a/internal/tui3/roomcompact_test.go +++ b/internal/tui3/roomcompact_test.go @@ -100,22 +100,22 @@ func TestRoomCompactLiveKeyDoesNotOpenPhaseWithSameTurn(t *testing.T) { page = roomText(a) roomCompactWantOnce(t, page, "Repairing cancellation") roomCompactWantOnce(t, page, "Close pending receivers") - if !strings.Contains(page, "go test ./internal/queue") || strings.Contains(page, "pending.go") { - t.Fatalf("live opening lost its call or opened historical call:\n%s", page) + if !strings.Contains(page, "go test ./internal/queue") || strings.Contains(page, "pending.go") || !strings.Contains(page, "Inspecting the queue") { + t.Fatalf("live opening lost the current call or older caption disclosure:\n%s", page) + } + a.setCapOpen(a.room.deck(), 1, true) + if !strings.Contains(roomText(a), "pending.go") { + t.Fatal("opening the retained historical caption lost its call") } drive(t, a, key("ctrl+e")) if a.room.workOpen[0] || a.room.workOpen[1] { t.Fatalf("Ctrl+E did not close only live work: %v", a.room.workOpen) } - roomCompactClick(t, a, hitWorkFold, 1) - if !a.room.workOpen[1] || a.room.workOpen[0] { - t.Fatalf("phase click changed live work: %v", a.room.workOpen) + roomCompactClick(t, a, hitWorkFold, 0) + if !a.room.workOpen[0] || a.room.workOpen[1] { + t.Fatalf("reopening the shared work changed unrelated keys: %v", a.room.workOpen) } roomCompactWantOnce(t, roomText(a), "Inspecting the queue") - drive(t, a, key("ctrl+e")) - if !a.room.workOpen[0] || !a.room.workOpen[1] { - t.Fatalf("Ctrl+E did not prefer live frontier: %v", a.room.workOpen) - } if !reflect.DeepEqual(a.workOpen, map[int]bool{9: true}) || !reflect.DeepEqual(a.unfolded, map[int]bool{9: true}) { t.Fatal("room disclosure changed the parent conversation") } diff --git a/internal/tui3/settleboundary_test.go b/internal/tui3/settleboundary_test.go index 9ec1ebd4e5..2c8728004f 100644 --- a/internal/tui3/settleboundary_test.go +++ b/internal/tui3/settleboundary_test.go @@ -188,8 +188,8 @@ func TestATurnThatDerivesAFoldWasNeverAtRisk(t *testing.T) { {kind: entryNote, text: "⟲ 13.3k cached · saved $0.0009", turn: 1}, } folds := deriveWorkfolds(es, 0) - if len(folds) != 1 { - t.Fatalf("an ordinary turn derived %d folds, want 1", len(folds)) + if len(folds) != 2 { + t.Fatalf("want work and cache receipt spans, got %d", len(folds)) } if workEntry(es, folds, 2) { t.Fatal("the fold did not protect the answer it names") diff --git a/internal/tui3/skillnotice_test.go b/internal/tui3/skillnotice_test.go index ffea6b25f2..2f14b86c1b 100644 --- a/internal/tui3/skillnotice_test.go +++ b/internal/tui3/skillnotice_test.go @@ -10,13 +10,9 @@ import ( "github.com/Agent-Field/codeaf/internal/session" ) -// THE LINE NAMING WHAT A TURN CARRIED OUTLIVES THE TURN. It sits under the -// question it belongs to and the work chip starts below it; before, the chip -// swallowed it the moment the answer landed, and an opened chip lists calls, -// not notes, so the one screen record that a skill reached the turn was gone -// for good. It still does not hold the turn open the way a sentence addressed -// to the person does: the calls fold as they always did. -func TestTheCarriedSkillsLineStaysAboveTheWorkChip(t *testing.T) { +// Skills are operational context inside the same work disclosure. Opening it +// must recover the full carried record, without a permanent extra chat line. +func TestTheCarriedSkillsLineRemainsInsideWorkDisclosure(t *testing.T) { f := &feed{live: -1, think: -1} f.ingest(session.Event{Kind: session.EventNotice, Text: "skills carried: tide-almanac", Skills: []string{"tide-almanac"}}) if len(f.entries) != 1 || !f.entries[0].carried { @@ -40,26 +36,21 @@ func TestTheCarriedSkillsLineStaysAboveTheWorkChip(t *testing.T) { t.Fatalf("the carried line stopped the chip forming: %#v", folds) } for start := range folds { - if start != 2 { - t.Fatalf("the chip starts at entry %d, want 2, below the carried line", start) + if start != 1 { + t.Fatalf("the chip starts at entry %d, want 1, including the carried line", start) } } a := newTestApp(&fakeAgent{model: "m"}) a.entries, a.workMode = entries, config.WorkFold a.touch() - if got := strings.Join(plainRows(a), "\n"); !strings.Contains(got, "skills · tide-almanac") || !strings.Contains(got, "worked") { - t.Fatalf("want the carried line above a folded chip:\n%s", got) + if got := strings.Join(plainRows(a), "\n"); strings.Contains(got, "skills · tide-almanac") || !strings.Contains(got, "worked") { + t.Fatalf("want the carried line inside a folded chip:\n%s", got) } - // AND THE SAME NOTE WITHOUT THE MARK IS STILL SWALLOWED, so the test fails - // on a build that lost the mark rather than passing on one that stopped - // folding. - plain := append([]entry(nil), entries...) - plain[1].carried = false - a.entries = plain + a.setWorkOpen(a.conversation(), 1, true) a.touch() - if got := strings.Join(plainRows(a), "\n"); strings.Contains(got, "skills · tide-almanac") { - t.Fatalf("an unmarked note was not folded, so the control proves nothing:\n%s", got) + if got := strings.Join(plainRows(a), "\n"); !strings.Contains(got, "skills · tide-almanac") { + t.Fatalf("disclosure lost the carried skills record:\n%s", got) } } diff --git a/internal/tui3/taskending_test.go b/internal/tui3/taskending_test.go index 8db1315a33..1cd7b43219 100644 --- a/internal/tui3/taskending_test.go +++ b/internal/tui3/taskending_test.go @@ -53,10 +53,14 @@ func TestAHaltedNodeSaysWhyAndIsNotCalledStopped(t *testing.T) { // reason and a source-control fact in one phrase; the head carries the word // and the branch and the row under it carries why // (docs/design/task-states/DESIGN.md). + if compact := taskText(a); !strings.Contains(compact, " · "+taskBranchKept+" · task/parser") { + t.Fatalf("compact receipt lost its kept branch: %s", compact) + } + a.toggleDoneAt(a.doneEntryFor(7)) text := taskText(a) for _, want := range []string{ " · " + taskIncompleteState + " · ", - " · " + taskBranchKept + " · task/parser", + "branch · task/parser", tc.word, } { if !strings.Contains(text, want) { @@ -188,9 +192,13 @@ func TestAWorkerThatWouldNotWriteItsNotesSaysSoOnTheRailAndInTheRoom(t *testing. // THE CARD SAYS THE SAME THING ON TWO ROWS, which is its own law: the word and // the branch on the head, the reason under it, and nothing fused // (docs/design/task-states/DESIGN.md). + if compact := taskText(a); !strings.Contains(compact, taskBranchKept) { + t.Fatalf("compact receipt lost its kept branch: %s", compact) + } + a.toggleDoneAt(a.doneEntryFor(7)) card := taskText(a) for _, want := range []string{ - " · " + taskIncompleteState + " · ", "would not write its notes down", taskBranchKept, + " · " + taskIncompleteState + " · ", "would not write its notes down", "branch · task/parser", } { if !strings.Contains(card, want) { t.Fatalf("the card is missing %q:\n%s", want, card) diff --git a/internal/tui3/teamcoherence_test.go b/internal/tui3/teamcoherence_test.go index 499215e48d..d2118c5d93 100644 --- a/internal/tui3/teamcoherence_test.go +++ b/internal/tui3/teamcoherence_test.go @@ -228,6 +228,7 @@ func TestTeamToolRowsAndCardsLinkTheirHandles(t *testing.T) { entry{kind: entryTool, tool: "team_send", text: "team_send @gravity: send the numbers", settled: true}, entry{kind: entryTeam, text: "Team traffic in \"harbor\" for you (@gravity).\n◆ from manager to @gravity: send the numbers\n(rule)", settled: true}, ) + showTeamDetails(a) a.touch() rows := a.visible(a.bodyWidth()) found := map[entryKind]bool{} diff --git a/internal/tui3/teamthreadcard_test.go b/internal/tui3/teamthreadcard_test.go index ed64e6c312..fda0d837c8 100644 --- a/internal/tui3/teamthreadcard_test.go +++ b/internal/tui3/teamthreadcard_test.go @@ -35,6 +35,16 @@ func sendRow(a *app, args, output string) { a.touch() } +// showTeamDetails explicitly opens retained work for thread-content assertions. +// sendRow itself preserves the compact default used by the jump tests. +func showTeamDetails(a *app) { + for i := range a.entries { + if a.entries[i].kind == entryTool || a.entries[i].kind == entryTeam { + a.revealTrafficEntry(i) + } + } +} + // THE MANAGER'S QUESTION IS A THREAD CARD THAT GROWS. The team_send row says // who it went to and that it was a directive, quotes the words under it, and // each member's answer is attached under it, muted, as it is read; the @@ -49,6 +59,7 @@ func TestThreadCardGrowsAsRepliesLand(t *testing.T) { To: teamstore.ToSeveral, Handles: []string{price, rail}, Text: "status please"}) trafficReadNow(t, a) sendRow(a, `{"to":"@`+price+` @`+rail+`","text":"status please","kind":"directive"}`, "Sent a directive to @"+price+", @"+rail+" ("+teamstore.ThreadNumber(q)+").") + showTeamDetails(a) text := bodyText(a) if !strings.Contains(text, teamManagerGlyph+" to @"+price+" @"+rail+" · do") || !strings.Contains(text, "│ status please") { t.Fatalf("the call is not a thread card:\n%s", text) @@ -141,12 +152,14 @@ func TestThreadCardFoldsTheDeliveredAnswers(t *testing.T) { note := "Your team's replies started this turn; the person did not speak.\n\nTeam traffic in \"harbor\", which you manage. These are your members' messages, not the person's words:\nfrom @" + price + ": prices are cached\n(rule)" a.entries = append(a.entries, entry{kind: entryTeam, text: note, settled: true, team: []session.TeamLine{{Team: "harbor", From: price, Kind: teamstore.KindNote, Text: "prices are cached"}}}) + showTeamDetails(a) text := bodyText(a) if strings.Count(text, "prices are cached") != 1 || !strings.Contains(text, "@"+price+" answered · in the thread above") { t.Fatalf("the delivered answer is drawn twice, or its line is missing:\n%s", text) } a.entries = append(a.entries, entry{kind: entryTeam, text: note, settled: true, team: []session.TeamLine{{Team: "harbor", From: price, Kind: teamstore.KindNote, Text: "an aside nobody asked for"}}}) + showTeamDetails(a) if text := bodyText(a); !strings.Contains(text, "an aside nobody asked for") { t.Fatalf("a line that answers nothing was folded:\n%s", text) } diff --git a/internal/tui3/tokencol_test.go b/internal/tui3/tokencol_test.go index 5c7945b951..f2a91b49b3 100644 --- a/internal/tui3/tokencol_test.go +++ b/internal/tui3/tokencol_test.go @@ -753,7 +753,7 @@ func TestTheLinearTierDrawsNoReceipt(t *testing.T) { // showed. func TestASplitTurnCarriesTheColumnOnItsFrontierAlone(t *testing.T) { a := tokenColApp(t) - a.entries[3].status = toolFailed + a.entries = append(a.entries[:4:4], append([]entry{{kind: entrySteer, turn: 1, steer: &steerElbow{words: "Check the caller first", consumed: true}}}, a.entries[4:]...)...) a.touch() d := a.conversation() stampHierarchy(d.entries, a.deckFolds(d)) diff --git a/internal/tui3/toolcompact_test.go b/internal/tui3/toolcompact_test.go index 938bb7ce35..80552fd6e8 100644 --- a/internal/tui3/toolcompact_test.go +++ b/internal/tui3/toolcompact_test.go @@ -44,6 +44,7 @@ func toolAppAt(t *testing.T, width int, batches ...[]session.Event) *app { // toolRowAt is the first tool row on a frame, plain. func toolRowAt(t *testing.T, a *app) string { t.Helper() + revealTestWork(a) for _, r := range plainRows(a) { r = strings.TrimLeft(r, " ") if strings.HasPrefix(r, railMid) || strings.HasPrefix(r, railLast) || diff --git a/internal/tui3/toolview_test.go b/internal/tui3/toolview_test.go index 3042e8e0b0..a591d680f8 100644 --- a/internal/tui3/toolview_test.go +++ b/internal/tui3/toolview_test.go @@ -54,6 +54,9 @@ func toolApp(t *testing.T, profile tokens.Profile, batches ...[]session.Event) * // disclosure remains unchanged. func revealTestWork(a *app) { d := a.bodyDeck() + if key, ok := a.liveWorkOf(d); ok { + a.setWorkOpen(d, key, true) + } folds := a.deckFolds(d) for _, fold := range folds { a.setWorkOpen(d, fold.key, true) @@ -277,6 +280,7 @@ func TestTheDiffExpansionIsCappedAndTheCapLifts(t *testing.T) { call = i } } + revealTestWork(a) a.openTool(call) body := strings.Join(plainRows(a), "\n") @@ -535,6 +539,8 @@ func TestARunningCallSpinsAndSaysNothingElse(t *testing.T) { func TestTheTargetIsInkAndTheNameIsMuted(t *testing.T) { a := toolApp(t, tokens.TrueColor, call("read", `{"path":"internal/session/loop.go"}`, "one\ntwo")) + revealTestWork(a) + var line string for _, r := range rows(a) { if r.hit == hitTool { diff --git a/internal/tui3/workfold.go b/internal/tui3/workfold.go index 4008658e8a..4ae7f46696 100644 --- a/internal/tui3/workfold.go +++ b/internal/tui3/workfold.go @@ -119,6 +119,12 @@ func housekeepingFold(es []entry, f workfold) bool { if e.told { return false } + case entryAssistant: + // Response assembly and no-change delivery can leave an empty + // placeholder. It must not mint a second visible work chip. + if strings.TrimSpace(e.text) != "" { + return false + } case entryCompact, entryTeam, entryDivider: case entryDone: if e.done == nil || !e.done.dismissed { @@ -321,7 +327,7 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { from := lo for _, at := range asks { end := at - if answer >= from && answer < at { + if !stopped && answer >= from && answer < at { end = answer } if stopped || askSegmentSettled(es, from, end) { diff --git a/internal/tui3/workfold_test.go b/internal/tui3/workfold_test.go index fdafb1aca4..34f534fd39 100644 --- a/internal/tui3/workfold_test.go +++ b/internal/tui3/workfold_test.go @@ -152,14 +152,14 @@ func TestOneTurnCountsItsToolCallsInOneWord(t *testing.T) { a.timestamps = timestampsFooters a.touch() - // The frame carries both readings of the same number: the fold chip over the - // turn, and the receipt under it. + // The compact frame carries the count once; the expanded receipt uses the + // same wording without duplicating telemetry in the closed view. frame := strings.Join(plainRows(a), "\n") if strings.Contains(frame, "2 tools") { t.Fatalf("the turn still counts its calls two ways:\n%s", frame) } - if want, got := "2 tool calls", strings.Count(frame, "2 tool calls"); got != 2 { - t.Fatalf("the chip and the receipt say %q %d times, want twice — one word for one number:\n%s", + if want, got := "2 tool calls", strings.Count(frame, "2 tool calls"); got != 1 { + t.Fatalf("the compact view says %q %d times, want once:\n%s", want, got, frame) } if receipt := plain(a.stampRow(1, 80)); !strings.Contains(receipt, "2 tool calls") { diff --git a/internal/tui3/worktab_test.go b/internal/tui3/worktab_test.go index 5a2a5a44bd..8cd78d5367 100644 --- a/internal/tui3/worktab_test.go +++ b/internal/tui3/worktab_test.go @@ -109,6 +109,10 @@ func TestWorkTabEscReturnsToConversationAndLandingCardRemains(t *testing.T) { fake.plan[0].Status, fake.plan[1].Status = "done", "done" a.workTabStable() a.workTabStable() + if got := taskText(a); !strings.Contains(got, "Root") { + t.Fatalf("self-closing work tab hid the compact landing: %s", got) + } + a.toggleDoneAt(a.doneEntryFor(7)) if got := plain(func() string { s, _, _ := a.frame(); return s }()); !strings.Contains(got, "Root") || !strings.Contains(got, "the importer landed") { t.Fatalf("self-closing work tab removed the landing card:\n%s", got) } From c74a37b067c3b8c4ed80c832809a8f5e8e5b1a9a Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 11:58:18 -0400 Subject: [PATCH 12/23] Publish verified final chat cleanup terminal captures --- docs/design/chat-cleanup/README.md | 4 +- .../chat-cleanup/evidence/00-active.cast | 2 +- .../chat-cleanup/evidence/00-active.gif | Bin 30018 -> 32295 bytes .../chat-cleanup/evidence/00-active.txt | 12 +- .../design/chat-cleanup/evidence/01-chat.cast | 2 +- docs/design/chat-cleanup/evidence/01-chat.gif | Bin 33600 -> 36647 bytes docs/design/chat-cleanup/evidence/01-chat.txt | 14 +-- .../chat-cleanup/evidence/01-closed.cast | 2 +- .../chat-cleanup/evidence/01-closed.gif | Bin 33600 -> 36647 bytes .../chat-cleanup/evidence/01-closed.txt | 14 +-- .../chat-cleanup/evidence/01-expanded.cast | 2 +- .../chat-cleanup/evidence/01-expanded.gif | Bin 48400 -> 47476 bytes .../chat-cleanup/evidence/01-expanded.txt | 22 ++-- .../evidence/02-notification.cast | 2 +- .../chat-cleanup/evidence/02-notification.gif | Bin 39349 -> 41564 bytes .../chat-cleanup/evidence/02-notification.txt | 18 +-- .../chat-cleanup/evidence/03-dismissed.cast | 2 +- .../chat-cleanup/evidence/03-dismissed.gif | Bin 34846 -> 36714 bytes .../chat-cleanup/evidence/03-dismissed.txt | 16 +-- .../chat-cleanup/evidence/04-restored.cast | 2 +- .../chat-cleanup/evidence/04-restored.gif | Bin 39653 -> 41615 bytes .../chat-cleanup/evidence/04-restored.txt | 18 +-- .../evidence/05-manager-replay.cast | 2 +- .../evidence/05-manager-replay.gif | Bin 26231 -> 30479 bytes .../evidence/05-manager-replay.txt | 10 +- .../evidence/06-manager-live-followup.cast | 2 +- .../evidence/06-manager-live-followup.gif | Bin 36271 -> 36955 bytes .../evidence/06-manager-live-followup.txt | 18 +-- .../evidence/07-failure-recovery-active.cast | 2 +- .../evidence/07-failure-recovery-active.gif | Bin 38464 -> 41504 bytes .../evidence/07-failure-recovery-active.txt | 12 +- .../evidence/08-recovery-finished.cast | 2 +- .../evidence/08-recovery-finished.gif | Bin 39671 -> 41111 bytes .../evidence/08-recovery-finished.txt | 16 +-- .../evidence/09-assistant-update.cast | 2 +- .../evidence/09-assistant-update.gif | Bin 38214 -> 38000 bytes .../evidence/09-assistant-update.txt | 14 +-- .../evidence/09-user-steering.cast | 2 +- .../evidence/09-user-steering.gif | Bin 35093 -> 36947 bytes .../evidence/09-user-steering.txt | 12 +- .../evidence/10-steering-finished.cast | 2 +- .../evidence/10-steering-finished.gif | Bin 45943 -> 49850 bytes .../evidence/10-steering-finished.txt | 20 +-- .../evidence/11-steering-resumed.cast | 2 +- .../evidence/11-steering-resumed.gif | Bin 43503 -> 49042 bytes .../evidence/11-steering-resumed.txt | 18 +-- .../chat-cleanup/evidence/chat-models.json | 114 +++++++++--------- .../chat-cleanup/evidence/manager-models.json | 50 ++++---- .../evidence/notification-sequence.cast | 6 +- .../evidence/notification-sequence.gif | Bin 74011 -> 76952 bytes .../evidence/recovery-models.json | 62 +++++----- .../chat-cleanup/evidence/run-summary.json | 4 +- docs/design/chat-cleanup/evidence/run.log | 44 +++---- .../evidence/steering-models.json | 84 ++++++------- 54 files changed, 316 insertions(+), 316 deletions(-) diff --git a/docs/design/chat-cleanup/README.md b/docs/design/chat-cleanup/README.md index 999eaf132e..16146deb0f 100644 --- a/docs/design/chat-cleanup/README.md +++ b/docs/design/chat-cleanup/README.md @@ -22,8 +22,8 @@ updates and Markdown rendering. ## Verified run -On 2026-09-27, `make build` from source `d19673f85` passed, followed by all four -real-tmux scenarios in **96.531 seconds**. The final run recorded **34 completed +On 2026-09-27, `make build` from source `0b970f4bc` passed, followed by all four +real-tmux scenarios in **95.919 seconds**. The final run recorded **34 completed request records**, all on `deepseek/deepseek-v4.1-flash`: chat/task 13, manager 5, recovery 7, steering/resume 9. The audit also checks every start record. diff --git a/docs/design/chat-cleanup/evidence/00-active.cast b/docs/design/chat-cleanup/evidence/00-active.cast index bdb45d74fa..34b9bc925b 100644 --- a/docs/design/chat-cleanup/evidence/00-active.cast +++ b/docs/design/chat-cleanup/evidence/00-active.cast @@ -1,3 +1,3 @@ {"height":42,"title":"00-active","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;179m•\u001b[39m \u001b[38;5;252m\u003e\u001b[39m \u001b[38;5;243mOptimizing a hunch\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.7k/1M · 1%\u001b[39m \u001b[38;5;146m⠙\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;252m|\u001b[38;5;179m●\u001b[39m \u001b[38;5;243mCaching curiosity\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.6k/1M · 1%\u001b[39m \u001b[38;5;146m⠙\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/00-active.gif b/docs/design/chat-cleanup/evidence/00-active.gif index bad94fc7074616dc2de2237da59f74c7433d8fff..371c4a31b45d22c349fb369577295569222979dc 100644 GIT binary patch delta 31488 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 O<`P%!GLA$5%KrxxqLtJD delta 29193 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 diff --git a/docs/design/chat-cleanup/evidence/00-active.txt b/docs/design/chat-cleanup/evidence/00-active.txt index e58f4d92d0..5a2037da3d 100644 --- a/docs/design/chat-cleanup/evidence/00-active.txt +++ b/docs/design/chat-cleanup/evidence/00-active.txt @@ -1,14 +1,14 @@ - >● codeaf home teams chats sessions spend settings sun 11:12am + >● codeaf home teams chats sessions spend settings sun 11:54am ◐ Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by... × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - • > Optimizing a hunch - - + |● Caching curiosity @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.7k/1M · 1% ⠙ working ─ +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.6k/1M · 1% ⠙ working ─ › - esc interrupt project: /tmp/TestCleanChat2460052115/002/clean-chat + esc interrupt project: /tmp/TestCleanChat412404832/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/01-chat.cast b/docs/design/chat-cleanup/evidence/01-chat.cast index 77de538cdf..f3ba7bc44a 100644 --- a/docs/design/chat-cleanup/evidence/01-chat.cast +++ b/docs/design/chat-cleanup/evidence/01-chat.cast @@ -1,3 +1,3 @@ {"height":42,"title":"01-chat","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0047\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0058\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0005 · 49% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0032\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────── \u001b[39m \u001b[38;5;252m$0.0042\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0007 · 67% cached\u001b[38;5;243m \u001b[38;5;252m15k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/01-chat.gif b/docs/design/chat-cleanup/evidence/01-chat.gif index a0e8360f5c324ec24ac41577af5b8d29b99f5e85..495e07cc9909e00d297f2abe8953b571c551c711 100644 GIT binary patch delta 36167 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 delta 33096 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● codeaf home teams chats sessions spend settings 1 moving · $0.0047 · sun 11:12am - bash output and terminal check conversation × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0032 · sun 11:54am + terminal check passed after clean output × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e The terminal check passed. @@ -16,8 +18,6 @@ - - ❮ @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0058 · ⟲ saved $0.0005 · 49% cached 15.1k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───────────────────── $0.0042 · ⟲ saved $0.0007 · 67% cached 15k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat2460052115/002/clean-chat + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat412404832/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/01-closed.cast b/docs/design/chat-cleanup/evidence/01-closed.cast index 11153d492c..6bd836dcda 100644 --- a/docs/design/chat-cleanup/evidence/01-closed.cast +++ b/docs/design/chat-cleanup/evidence/01-closed.cast @@ -1,3 +1,3 @@ {"height":42,"title":"01-closed","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0047\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0058\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0005 · 49% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0032\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────── \u001b[39m \u001b[38;5;252m$0.0042\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0007 · 67% cached\u001b[38;5;243m \u001b[38;5;252m15k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/01-closed.gif b/docs/design/chat-cleanup/evidence/01-closed.gif index a0e8360f5c324ec24ac41577af5b8d29b99f5e85..495e07cc9909e00d297f2abe8953b571c551c711 100644 GIT binary patch delta 36167 zcmWKWhdKvY7WNbyL9zAR1VCE8mC21J> zU%MMgZ&py&4G0L*(KU;SO_Y{ZH#{Gpg+G7sVu-n=-GvJm^~^mQ8fJpiYyA8IQ)(xC zeEgk4Q;qE}((0y6Os$nw^*my4#NU2xZR3#oc)Gj0CxCL_A(-m!?)~6Fg@K`EUtd3& zLQ_&VunoB8?Ba3G*iqNk)zHY?(~IP5W^NUo*XrWtJvut7qDP31j&XN)KdWPWBd?&j zxy8ZJ?aJLwcaK1V+4-257%OXgulR!7x9`Ojzcli?P*eNR#nrQdY zj$lo686F;f`n2srO4;DxU|3kVp}Uv0*X5)K{r&+FZqYf`*4D16Sr=)Qv9YnF$j41} zb@i8Dz3%Mnlsj`y*VKhdP0PxnJ39M1T%$TTIOv$TkOqfvcyljrKXpw5>Z5lzZx#hz zj2s&qBLoEd_y*53cqLv#L8axHnOWhF z9;==;H^7@;D;o&UsxK_M<5zgwgOr^|86DL+YnV3EkopCQj$%~6=S=g2qMYk&6^HW zGk4qgYfgr^{%dX_p)oUQUew7)uV25esTqrZeec$-cI(K?6%|7y7xOG1OTsywi255D znGY>PW9<{KrBKUtjGco+Xg1M7!NI}T1}p38rhF2MN`udjCA;6h-&0oBU!7@JRW)*O z@Gbdm%}}Kqk_mv2B80}$&J<+64P=58SZLO^_et1DTK}#4Ppg&DRwZHF%1VYh2F{LK z*#n^W&Ui{PD?j_)>51PfJb?ps^*C`r&^7EN`oGTa-^#z*ynJw*^AumBKTdC5#NeIM zSL!Dl880+-c$a{Vl? zKMv_C(h55J`_I9c-XdMi;}U;87C^>~+`wP{_<0Hk`E*lY0?t%Svu6n_T`F8WDeCDuZ1f#>yLX=Uh~9Wo$e_VS!ACWSxJ4I1&ElE%EWY zar*CK8xGCEUEavf4i0NfK7~ooW4{E6>M%xQdODhL zXVTG~aw!BN9SLz}&%3Nu%+<;1%36`mu2|X#&j9SP9cabX8vxSXJ)u`b5l8M};rm{? z$e549j=wu^L()aFh(njthQLDEEt8gBw~~d7TgJ&F{9%T}TI-DxqqtS|uD4n(TTE5} z8}s$R8U_Bl_i>r&U>B$SYpVO%N1pn{9}CbZMRf+mY+K_!5M=!vw|fzRH_%7u9^$mV zj;I=x#E5Dy+$rZU0GqWfsse?HDBPEGAOGRGx!Ctf_^bS_uhplD*!T19 zqaxQh3$dG0PWcm^A=^#UqD!$)zlO${>Um2F$gU z2a&%Mpco;G7GYlkM1q9m?FY@BUIT>yRtghY3g(g&3;(`rpgpuqf?Pv$0IP$h+K0<2 zF>SS^3oC(oV5rvqF`0iCnu^QZdmH?!T=e^Kl~IKm(<+3+sJK)zP#J+84fa&M4UwtQ zhv8{ZNesMPqEhy}HgYOSrJ!7-2G4nx>)MH_GJT@KsXrYw3NTgJ_I}aWcuvNN`vI$( zAI3=M#dtoeeG%!^;b$cu@;lFe(E+HWAR_}-^TH3cNU{3lldVQ}IjK9fXJt4zbsrU3Lf`IusWkpeRT= zi?GH&_o15h*qq1b^g z!yISyBzKQ7`*;yor#HZGJrDd6A)JJkl3AGU=aImMuYfZS>DlNFGACxhV{e!U-z5X# z{fQh+n!pY(1p_qz+6g^ynFjy}SetXC z_nWKSj*c{t`ydOZ@!hUgpjs$Uikkjwzz$%cXzy*cUZw~wnm;)T+$YL``ugwcj=byIqS0uF!*`tvx zRSI;>xne(us)nTD_uzBd515HOoBKDG0|Eg|e8880JOh3mw6xvWP)HmeiaiQc984G{ zTE$vbyg(n;wu$Wfn<_)Ob7N*RTnYdj)BSE;6PR8P-m|F!d26xu`iYQ=ucvWt2h(K; z6cpzmRM+2tBjIXWqx~*I665O;tBENhqrwFR@iFKvAlRu9CF zKqLSho1^z&E9u`1={Fl>bsfCIVBW|$G6QQ|$-o|euDgnxofieFbtGtLA9nnVNk zOeiQ1MGe$o{!W)hl$mA~*<+Lh$>NzBfCzwtGPtmSF9yQm)X}c`Y#=#dJEjzZ;TlGQ zr&s;d?tBsf&T6imu#cogn^JX@9^+7sRgbua58$M18Th$b1M7shvraIUDDBL>v_R)Y zG27}F!5KS_c=GxBRSV)9J{f4Rtr*Cj*2iQH>hFT_-F8s))too7TI z%(BQDFpu7x3Dr+H^#{VGugmUBzBK-+>0QIW?|do?Dn^~4H(eS)OS=o)zcBT-N_bT( z`hRSI4}cSK5I+Yv+j!W%1{&@SySOV39tV*;>=6JC@(&&<{{W;xMwZh-p|O#708fJI69=!UC-pl5Ww>w^bl#r@fSMjEg}g#p4jAW5U%JR)AaV=CHh@8&f&v?9 z=y%9#GX!Vo1Y2|DIbk&GzeZ=&jjZ7fbPx{0h5@|E@S;nGb5$-thaq!D9IO>S=12k1 zU`KDzpCH)5(=!*nq3{|wUpz&qjRH#JHpRJ@N3!fTgVc2x>Y*mU zSAFB$h3M=4`1MJ!aVgRdmZG(hF6We9fQ*MI#~Y^8h??HY7_eP@zBp5x%kVzmW#zB*%r+o=F9g&bvM9u}QqwTHKpbKbhqr$3B9Dh`S znXIQyM*c`Dsla@Y803O3+sMOSxKa_64iPK7XvP(*ok^EQ=Uq@$pUc-XORs;HP=o}U z(zq_q73s?6)f{Dn{`4nnXQ(^@C$IqTCG0NGWfni@Zb(Nr5!hbNB)$>28pzP+p)0^| zTrGtIRW4b2yH;r~^hzx?~LKG!bgBBq}`)mnzC5 z$)-tC2EBi&13qyyo9Y-tG8p0m)+KB6?Lo54yhY^DqUP#hblaB_1x8x=)Spq{WzQ8A zF0m?y!wQGk$(PhWQl`^V*YEUe|qI|m2!nN|&ts3d3TL|XFt@~yd3#HH_%_>JcoS!4F4kNO< z25#@+SSE3z{RFN7DaBij_>)FT^Wr(cF6?Uud%ufx?{nuGS4Ghl4#+acGO6@TKboWc z2Nw?x3tqlgo(iYZvB5ax@cDbc5xJn^dq3jCVS7+DELs5r7_S1p^m^Y?7_$cAfkjLC zQZ^FkUo*JxF3}ND657oYy3OclBh$DkFdPavcALu0!pUktatkYXD8&LpkPCv_mwS{! z!GBpFv~=Y~+L?lph1$27EbsketEDU8z4`FT9Z+T zrBX}H0->|syc$pz95iO!o3{xy$851$RBO;aaq+Ve+d7>yNDGZ!(<{;TZ6TsU0vx&b znw8HzDTXu)ycDsNe}d9zwYHGq;DabG5ubE5ihpm+LXvLzK80c}S}`ZM94(%Fm}ry? zu;n5)o&Q>`y8*VqBF|Jd^WAuA4`~(uEib&#BvM*H`r73Do9K22Fq^Fcb9q3PK=`uL zS02^m33F@H9sf-rN0)r>-bysKxDL=+Jz(tK#t~!HEtm5gdpkHU28ceYy;!e}KD4*~ z$Mujq3PO5`=7?Rn_SIWD2haJ`9KF3HhQ2JF;4AaS;uU4(CAc$tWSnigG^DT4IU`Tz zu#3wChcu^y@&G9NuFnay>qBNEgpCMax&k_AyT^kCNnn8USWxbF(B{k6-`GeEH(jC1 zZjKn1Qkollk9>#L&Ql8LM3!u3&{dj1!sD(a%w>pB2%0NJMIT!}(F5bcYRG?5#;8IG zyQQ;{Dv!_*S1=@H9Q>%Xlk-Z9oa_T%;qn+X2%j${c$@Z((e=#eCA%^tr8IWQxKiys z)HNDRXk=9!hju?{=04}G+4#U14N^hJ@`-82`f0}dIl7p!>~wJcLUaBD72bcT$t3L| z0_;#fm$Zy6xXiM^7VmqYAQs*Csu%9|865RlZuNZX)j2)Xr}PTGR^EoG?ul{dimvM` z-#}>loeO#2S6&EC$6tj%=FadfCB# zh~wzTnG)tk_761p7 z2uniQ&|rzkkf9+GYt!o$p~yo^$`%V?b!Y_Rf;qP!0?^@*Vk&0t}swVmO<$ngBj z@IE>1t2^!QF&&sR9dvIxxP3ZwaXS3(bmYmIXx*9EMTS$-OnlghOYJjP7iX^hogtr` zP1c>Iddvpin@PVnd(US!YjHN`?=1b~T%PV+bp32$(p-VT-0k+cyNh!rf9Fa^8O6Hu z743qF-(c4pk)FGxnJYNtS#P$mdNwF_0g6UMoPR{_fErw+;Y<-)4^=)C|FQZfUeW)%B8cAZ?8AZB!e1JxNpndzW>#^|j zBmfOx3SV5B`O8~klmTEs9Ifn&x@i6qKv3y}=)YxNgAZ%%OCT&K>-O|v`$D_biU$hb zrTY+0wphM`sY1SSlmg z1WHjP*CbXb7WN{N&8>7k0tZZ^k=-~r1&#ElGaRiK-ZV1WP_S1-)^6g*&|PFD9j1e2 zbr1U#_!sVjUB?mET(TEJ$JZhrGi*dZ+r4I7VZL3zcI{)JHQH;vo~YI*Ijklq4YJ^ z`c(_P1*@Ddsjt5{=6rU2``-87hRgW+3b!}fu_WbCh$X-(VnZ5A~ zi2U`15&*@*Uw!!cMszdZbJOM9Hy6~l9~$`dcGXXj{R*8Cf#LAY<`O`=pW*^1k|IF@ zjRlb(AO@?j&Rx@gyPP&NQU8!n{v!E5Zg*i9y3t4|8hIcJIEo_O zaC^{kR*%=P61_Dj4&rih<5eWv^T%r^nM`C!3CtD^L}3?7I`-Tm4_vd?{lkz?>H!fF z+tZu{3hn^veE_2GK^yl@l9+pV8^DP9G4Ab#ZRGpue+)vy;WIK)tKmRr=V0j{@&%T& zlE@n8`QyUNwDd(3*a|;R&OHW= ze=qs>eNptF=F~PVVlRz}{C4ddw1e#m4poUpa%?k>AMc1ZAxy9=0i{qKH0+=evib z(){tK)nkOn4rw9E8})(%s_gj_Fu+&?$uQIjb^~uN0}v}qsu=b(xdaC-g`)8t=uS51 zEZVXSi|eN8D8QYK$o&R|oD%RhNRtCuYx)`&6i+_UX$m#r;*DdqA(!YwpeHlWOPJG|_#z#i?~;|{ylGv^Sh;UxC)y-%{>+(YQDv9~89Sxo4xf|gC` zT;;_(p1rm2DvdIwH{qoQ-t3k(scBpt^O4Gy%?L5`|M_d}(?DjgqnM!y59k;#MPC}gW{1dZG-4Lv;rS zr+`)mCoh`1qsxWLR!6s&@@h`WNX4M*4KKJe6hn|N{CLB_1wkEPPPGA}qVYThvh1~1 zI;MRjbjMon!S|6FFXPFlnEY41rNs2{UorDuwau`J$M0E77aNvP9SaRcd8%aC!+P_@ zhAQ?$jAvqHoS09Bx<*SRC+WoxOk%t1fLFu(mi&D8)mB>R#ZJ`h3g!O2CnmUa!n|rn zHOkp!vk$f{FJMrz_8OPuNeWzX32Bg_JG5l4!IN3zn}W(aj%~FwYgfNmSrqul7@`;p)IZ?tM2t4)ZMAPdPgU8w`B(I+&T6`Cm*QiTzN76 z@{>l*H*x(l1N&WyI!@!``+rpdo|6?{J^=tT=0|W?^)UKfA6bU|jZ3o=iE_O3 zKuF^)#eum6dB@N?Tb(IG8xB(>7+Xe+V*x6*1zwC1p}C89 zG)B`pSoo=A_|`JSblE_-IfoSa(A<|l|JL>6UK5%D+wWtl5Qpn|xugj(Q2eZ@kq$W3 z2hHNq47s!GPKLS4q;SV$DG8+yuGAag*`gc!j^`OI#Jha1);2Jb(|>t zr&C~=Qt@X4#j+kwW?=U`;MSq7Q>Yo>Zo4ZUk3|Wo91oiwf8lqv_$=op1i)LE#sbtJ zu9SyA(?bGzWD0vEhx@$EAbXEaPxuG4M%NS&tV#QK+W)uNG-nxCjwi*igaBFJpVnSr zo_p{7OM5r)*_VHsgZ7tMK|0IwHt`QI^nz8>9|Gxt+;$->9yR!rzlgpjExJx8JT0aL zg?AOaIoZ4c$Rs*hZ7WM7Oy)#QCOw&P=nYsCaA4jCC+@7+S7$+kiL|r!W&Dhq&oLE= zq)-sGKunpVau5tzt-6m9t;ipi<7y38)*K5;K|CAi5|8zwoHvu+49ZPj?qmkk80w4(0VqjSw+sALv;u{_S?#2_6L> z`-jVTOFIcxeQz7+Be8~r+!vldp3b!I&?2thgLwR!o_T%L8*$C03-|ZO%o`>wl1%zK z>;?Mz#ZjUWpUii6Nnv27lQT7vdRk}sJO6B#KwslEmb*S2muI_0KkTM);(fS_W_zSf zqB74b`0_u~>K2QO$_mi=^su9?SFSHA=h7=b(Ie+zHFz|grsFRzFgGCagBg`~^Oe7p z=G@>r?dXC^od7wfxgqhS=)%@l0ZNx$g}R*JF~z+)fhxaehA)`J+-AI5+r2qA8j%`v zcW@-|?9ANT%Y88=-(OwOJDM9K!DCBdx`SCQ9*fPHMAQR2`iQLrKiqpCm&7I~a zi~3@#)Y~swU!H%L|LT+y^l5{iM*j9GZMJ6%i#w^8UwyXv=AEyCIR`m~NO%&7L4Zir zho~UMYr93HkHSb0L;<*`pce1=t%2|4#_nA|-j07yYWRLJ#!ehp%W=cVw2QN}jafh| zUI;`?*&&kI(m7!1w_w;eNRfxAaS9p>Y;*wZr8n8@_=o^)eE_7l1aa!ncYT0k^G9)5 z-gI9|v6P{@41hLpDQeyn_5pyjwwD9T%HeD@kSF6rmGcPSY0`Qu>D^c1HWGNUck1_O5nXo8m69>u9lLORs;7`$Fg zF7_caoIB1UDX{Tm4gyLU`;>+7zg5p>6QpnxQ3y2PfKJ}r>n7>z^cYQ1j0^CL0RVJN zo^tMBPZwn$H`G&jY77O`kRZG>*{sHBmuRRF+dVY^`|W4^J0?XES(^|b6R}I$(k~b#6{AfTot7odX$2QBb_*S>>mLUT$J}=q3Uz~a|C`Z_vSJs~w zlFkdH!!RUgGFm2u&ELq#zGtnb``k!31L%RFjqvu_@}b!lBSyMYU5W2=&J@Fl1JsZp zL&j1H7)|A`qZtyi&yZ>O0q9vRs-YHTZ5$A$rUbSaG2!FMGC0Tr0mW8KW?7*#J^(tX062QlU z&1OL-WcqI3#rs$EOr;O77ZVuAgSlIT2L%@8M&^|wxx!jdyPzBn>{F-?35@Lk@?Qa- z1hZSQW+Hb{utq}G)W8&G&sqM<0(Ghs;@dIQ zK!q`m!J2Kj@N_s20p%}4b|-T%hbj#5f7@j$(2+H0Pb==vs%>A{6*=XvNUNdny1i1eBl* zIj+t4bSSFHKKsY}(GQ_Ht6L`O@fLS_%+6K}e44^dV{ArrY}Scm8(Nez@igbq9F$gx zg|;Z`xFOgodneX8a0LW)+1*=(bGDBB?8-`8z`w$uw`8aO>Qgn$ab*?u7~ zz7;q)=)PlYB>VC}l)_L>9w;coTA5VIxDbF+E2R{HAZqa(?tEa6n<)Rv>~jv;I*ae7 zfni25%~KJOF>=~$1e;i)O#j+mxHrWcIv)Pl5rmwH8f91|rOrYfrZ*TqT~i>(@?T!BniP-8U;bek9dih9^=I~?SXNySmZbwqtAwh#80`{hN09j&`O2S->krFjA>d3Zs5@Hj$1Qdt6=PK%sP`ki9`@M`EBAR|f{REwNy&k%iu@PnUK|lU-|QLRt$%7`f*z zH0u>vy5s%Fs~>Dvz07t$5G0nRc3g$1%XG-^uhg~1Rn2QT-p~}EtHYa;{)W~lZ7B^xfWNLa zionqeD_-3tQwVg3AYmmKW@`C-0;tM98yHaV1+0IKp-UD@bpVVU{jr5>$D}KPr!DLP z-aZK~Sqm#Xqx?-d>9cCY+FF$7nWzuSksnlJq}DG5uE)i#Urt?*FI-QkTEFsiJ+W{7 z>hyZj+WNI0>m>LFnSX;KwUMl`kz%qzb=;r@ZluO-q@`{!(+f8;sx~s8Zd~u%$eP~B zUfam|v5^bkr1NjyklM`C*vu!HY!*0f-VEFkX7_Et44pGDwhvflCIVLx6ZdAIwp|7Tn;N%?E%Om}C%+kw9Bf$vZ(`n_q`jiEZyhhIPTot5Qw1kH1W7Z8LVaHw1U4WFqzl!?$Ju z)m?H!IL9u3_?Gj|9AW4CeE61FSQR|iAPA!52I3s36(E51alSik5nl{aN2xFRTm1F{08*&<`LCwKOKhk_i5l>a9#Nc>-r_9bkhhp&BI_l}k@jXrIY z{q|p|K6oFB-iPk)LD0KUBFM1@%2ex#p4P}w+=)Jg;9&CaLDPZLMF5vH#XMb>Cx}cE zFHTwfw{=>ODscqiBKPmr?66#pJY0*gzjXk0PF?fN<*k8o57gQp=NQ|N&k8hD${v0r z#)uy6Z(GN*%7c*iBUnwhiD?{mPT4TTeXE8Xja>*gBIkVW?snvNyR-)DQ_+rZIOKp6 zfK4omAizxw?s&`Lc^~BvaUuZ0!A){bZmqi0PBaQnhOa&V95yPATDI`W2s-f*c9;~3Y_qz=KimT2#!1W zttZwfV>+ncGX=7qfE*zGYBqHi5F{&eCQEjtPRVd=4TkKe0<|B1O?m(BjQc(3O!;P( z%|oQjh8|Bf#?2K|#N$CiLExu_6gUpt<{3W|bd^E=GplnMAY5j&{TccAhf*E49uzN0 z0GH&2%vJxbD7ng7z{&j7n6_Osca#1TDu%_?zHWo;y2EZKt)AL>zj8F5|x z?oDN{H{|~-RxfUxCg+No7V^#>UYx3ZSpN`)hQv@)pJss5b)GN3p9HL5{`kiG(7qM% zN3i0h0M(0fS_hB|FFFoPK^8S%Vk>&UR-#vAD=okKhe6X4Pj7U-y6or?wRSRuHh1JD zOiKCl43mO7dyJtvgY3pM*d7C&czbpt4M!+#B!VF$u>exPhMtU2;eB>5BkA}-8BU8m z5 z_L6iQd%-0>$xJMNf`6WgN(P^SA_*2`dkRvFo1mzO1IW~qnYiRr!aA6;xP;p+U?eZB z=+nJq@PI=~gi=diF4(0o1xHs>tHtH~yHHyJA+nOwFyJA2RTyimA-8hu@dKRL8iHKK zew&!V!wypEIB{RYs0-jzpyGMhZV`>@g9i!a*;*V%Yjp5uVh_g1UW|l~bH0~Rk!P6~ z>q!&ob!_SO8V`~(CgRSYx%(s%p4!(FPmpn z7K%r?ysv-$uSh9ZPszTaZB=|cnf(l%Zp7UJ6Zu?l%*yiV$%M6=V)s{*St7G`qzei3 z9EJbh>r$PL_j``*ukj;w>;Is;bD(R|4J#D$?<@c=;kOuXfx|xsxt__gRk)d|=l-LM zfu}D$6?H?A$F(1R#m+3vpNq9HJA?Wk)xz#}b%2xnTRP1RS+NhmB@=xi$3Hjh!Jv3+_(Vi>I-gFVDCos5YyS5-pl~1=*&*k9s|k zM>o(khJqODdH+80K@Q_ozO^n~OEm1g8`J12Uk5%fmtqgLuc-%L>EO0>6swN2AX0t- zmL=X`0DYs;NF1y^(bX;DOntRKA~1u4NNIz>Vdv}TxcA2z_}UjBhhlUl3xwW*elULe z%=rG)86&+E%K%cIGmE5kv5OD@ET^qyv9g5K;LulgtDWu{kx?#`H-%+5xGkL=oWWNO zkYxdCBvrJ>oJF@)?))YCCCEesGd7d>`V^ z;*BP?3#dJSY1VWVtPGe-B~j_ABbiD*9Txxp;7CNj0sfaOLrkM5>8(&Qws%0%R=nfJ zoQR)A-t!SJYZm$)$*Mma7xY6txqvb#tESb@Q_2gTaAU^xL=FJ)vhiO==feUJ`1H%hz z&plDfVj+lQ%lvVwl=Zs`tJryK5S^XIN=3T#n5$C?-U$wn#p!}L`+Qax*4suVAy_%v zgQU*#R`wg0_}R%vQ|_l{O$A^(N_@k|TX4gG zkE*wNo;TY9B!CyD@`l2@T}dsCxZAt-DZVQ5;E|Y13x7tM1>ySrb?2t*n0E86?O@lGg%FW1 zu8K`;D`xH?{bF%y2tz>}_+JWD_elHPCDEI@&chu{a!JqROoUR;$grhFl; zl6%VOW74g7!}l|aw>0jbT3UbSsH0EbeuiuNUq=4#0%&>nvi)1!zN$)CmDJQ8x;GbQ zBz(8~lcCyk5GHC+?Zg>&($Uddwj92qqCcy$Ge6sfPj04S+%c?P1N~#)c3`y&AD}xw zAKKk}SE~79bD>JU;NC)-cn2Bj&$O8m_KcD6do_;}+QGMRe82y3d%5;zVw62OMD3t` z2mP>5J9zg#8w(Vz7=IcgYO$WfBLpOvbgI1nJ+A~}mT^xFC!}7?A^Fv4h)zNx_e!O* z69DHIqc(;6Y~+d5`>=ft<)yiR>T^{JM2JSh0n$_uWsq*6zwfRbg7JFDYMe>c5P zu2^DyTKajn7#Ht`EIW0WB*eaU-wccS{s$A@0!4jbW}qHB=M0jT@WmfjS;SK87lGzk z$BdF+x=RRFDo^yCeDxXpNJr^s&}i>{xQf#(r~}FB(%Nwkvf{jW#BtDBLF*b&^ZW1-d^y2jr3UA^q=0)6J0f2&UeMlNF=Pt1UhS%l)C~IICpXUi3)2=+tYmR(&2f(>34Ki zZqglAjJG}H25@)ltvUPr@L#C<8q{+`wEq)DV=!Ri*vT2m$+Ak(^nGVx;_tX2Y4fYX zY#9TPX8kObe05jck^GW>Mf}a+l9jjsF|*T-=+CZ#pAD1!jdJ{3-%Fa{?Q*A5()<)Wzdn!kCs)*ny`+Ox8S32>1*f!-P%pAjy;$NzjhP!MXZ$Hk^0f)lnM z{?2XyMt6$fxG%;TL+Ruj$GQ0}NNCTAJ2>2HG-gA4xTpumc6G4r+Y;`5U^q7mGLq6; zOhJa?s#Ym^k+||+7LF||aGQ;A&wL~LwxSe{YpLu=_d=|-^qIURiR26Z*FO0wk)Z5G zfc)(Bhsd6*)75S7rR$ul^Sl?$R;!bSF0gG}VB4*(W4N30ZDfeZ4Dkv(?q+^&n^qzE zqU$Itf-Kx*C_<|UV^Tt^kqVji4}RXkoo*S@RT;J-g*fJXo@6142Duf3F3FW8sPu&N zt%ZuF2WWK`8S!Ne)gZ?=mV20_jVxPf1E_S0mVZ7J6w!AZ^bbLEl}UYQoHMj02iv?6 zjoNUxwXfBv z0Y+rsKv?x-+dS~s*L6UN<8Y6CR?!!u$4|f9j{AbIux{e-7ny(G5=fI#!vv&0Y6Guy z+v7c7bch%MtN>nr{^BoE6q77e*N?voaM$74)H)vk9jH}5E+aB~P0`De9(H#8#pi;O z6<WW^qEf4CI6kc2(o*6pV{`L7k8;af7D)x);9`$fU@v(UnkRcl$B^N8%Na zPGQqVbNCDu!k}v3g!?ilM8Dx{sAjVSba5vuhLM^IC(Rq8Yk~~NAGNQ@XIOjLX~{Me z*W-wF{?1NsPliIXhHa;+UhhA8lPLtWl=?3{SX@ywWZ$+KfOYqU;1z0t70Is0ouar4ztr5>g#)+oojq+!QtU%9l){i-{Zh_(Z0xsu)PyIK-P&KUz7Gh#fM)W zyApRCd_4D`hOhmoKV22F9cX;;ly6@zeAO|+utw?YHYx1r^>(uJdBfSTF7bjlgivI7 z!=<*c1{JASXX^}&faLuLUvJOGsco%*ft_EEP05cp_BsB+8;(?<94$D~lv1S$|Gz+5 zO}0GZawCF--3~<{bFqf@^vCwR_U=us4P*6{vpljx4J(4!Nln93ML zGv>F)NzP`mQ!3)pDm8cAghld%gmG*lxKr{fq|;8#r@d69E;LI;s7POKmL{plq&3Ur zs>l{K%idR!t8SKSP?3MuEdNGDp}$#SOhs{~S@ENa(t5Mfj>?&%<}*wcEaC~4Q&m~u ziSj8`73n7`XH-=+pQ!4qs+m4fvr$!ddZNx5lO5OiwP{5t;y~T+Kr=1I!vBd@(GzWn zeKu0Z-Yp@3mCOYG>Jltb9g)fdm>^;9-+L*}65pnt@aTI`N5%nOicmUOd&lSOxjlnV z)_6af{{0dB8RWT_F{+Rj98XJ|UQ3GFp;^y?&LduvcW+H+qKw`gh>{Mq@2ja7d79tE z36}z9nn>XTD^mdkU;K%0yv->aG1RHUJkrlblXC;0cpP}CgB9ATWm{#w6KShIU`smr zO|8|evBkosg~-!-{<^%q>fyhCy+w!F9|OK8Z!8tJ9$G9YJD01uN*uW4Hu9>ZtIu;0 zKgC!JbPm3{q#vO^>tlCXCRFsXI`a4T2erL6s^0|*p8%*%&op^&X%Wwc2`2#!YC7qX z)R{O}Cyg^HOp~DTsn`~{%Z7>XVJeH;c~QxZ7~9+!b~0a{iEB&0Tb+%Yont?*>D9xY zR2pRq8g_1Dz|oPi3_%;^`rV9P4(mdz~ef;MflD}zgoUm z8#fi$6P7;C5)x+-uMx4N5nO?YdPhQB__PuA1`$Y7m{-=k{QG*K;pNwk&+f{Kmew5w z#2=a6{h?}%cz*(jSLliF5lTA6UrK)F`v(ycQb&?L^5{tQ8!@3|X-;gJB!5)B6!Prd zKdCqbE%h?=+I5qtfy=F0mvu*XK^tb*oU@C%wbi((l7Y4vOl|NVC4SGpF`d`$i1ww zQmgTfpW|D5oWWzs=fy z4LhUiEU>kom?%e?-<|ZFj6RvNCs(Sab4u@6iV3kiHF}+k`Lw>|!oUk&*Do z7$-(1_fnpa820->p6~0psJhPYe@*}YMVL%*^Zm><@wnQT$n7Cf{;`bMtC{eK+oeSGlx092Ez0(@?c^WKKqx!2H_#b9H z`6obE&n+|Fs%G3s;nO)fQmdsIh`HedY%yl-Nn_NpQ}4F*{ur4}FjU*MzH@8qP6|KB zSFYzty*yNHl=L=2XXZW+Lv>&zm-p$J9>Q}r7y9ai9q(q8_(Y1Gcg&4NCz8*L_E$Pd z&)hQFN1l;MbY{g3X8Wf*yaB(@tq(U>{<&!o=N*M13=}mAhJ8JzZedXG{2xsPk~A z^8e%ieWtS=jy(?|WgRPu>Y!vhR!Pc1eUj`g<32_ln^KW=XxfyOd93V=D54yzVT7ho ze!jo!cU`}K;C)}$ecku_ec#XVc!i%$7mi7Od&hI~TvQ|+({(2*9Pv;eYx@Ocx7z=m zZ7%ZY6GhI3$Y=BV<-2Ad+IG3;5CW#XPu^64CmP$w-w~n$0LO(5ivrHt z9c@T=Hi+UPi><1Xjxjt|p3rbSLsxiJ;MI93T*PQLYx1|3RcRZT!g->_SO>JbEm2Wq7 zA{oIgS7YzL{PM2h6(}`Yf5oU+uNVp_-1X=z{SU$=pqu66+!@bv@N9FIuWQf$^ithy zHBK8>j)vzuSF%GKKavBGqu~rm)rK3#QPmaH1A5!KA>{r;Adr94jwWU{E_FRh>I}5E zEEKrK0?>2X$(P~c%=QLKhk9~P6N`tFSvRT_@@QUr9Uwx(CL<@P4fj4-8sx1`jMuBe$m`RJZvxlxysUI;2FnA(n>7WNz;JtLK3J7&y1t%l^e zJP;7~3hs!~7&TJI*T$G=RBHk>dt^o44e7FdW5M9HEuT_{#%r!4cLEC!Cx!s=$_f;Cm+djZ$Eb%#UwiS(qRgr*>D5?qzt?7taqI0}QM2Kj z%3urs+xTRD)Krl7dpqzn2Y9-_^g3BIcjxV(*;9de)3tl=`3bj=BCIVZyys8r4CUhYquG^@0-L zb@O*vjq6^Hte%|(I~E_(h+NersI|h7eM)4;Lg+*zpN<7-{mdAjlHS0{2bqp!uz$&` zP;q+F^fZzRkMX)`a+v6bA_jqb&Wy3On0FzI2{Tg}#t=<`c|6gDn3g^tbVw7G~p4j5Sm0GUod zKG(M`mtRJ$FXWj$t3MtkLRxx?A zGOnK)QZE(4iqR^Y{riopwNJ@6dd1c0r{U)#niUx-o&gJ@bM{%VQw+Em$YIwIiBY=5 zD7ZAG6R97PZnz;NGE#?(pQO{#21WqS zMm*r!@PMIHYsXRgM&^d+c*fN$8M= z#8O^!@)IhZW6W;6+O7#>|VzNTq?>aZH*@6;iKAwSDT ziQ4;NWl)}lTcDM&N6mxNh^Hs^w#{Ptf09j87Otq~oFDSK`#d4LoqX5txY3{#lJV8q(hu+aU}k0rC93eOKjl`OlQ#!}PcZ7H}%50uufseha15Psj` z>U(gewBtgD7@J$0Vt^H?%AI^wS7-5}eI}6z5&pc`BoCt2Lj+wMUn_q?7*juesY7rR ztLBlz&L%vA9C*ZDNm`A(Jq%N7qVUg<-3B1pR}FG(!!D&sEua2sP!jfjwIj7=<#=z< zwd>O{=0 zcHmUcd-d&dV)pAT2}B_vwrox?rmpjtvO2xh%yqZst~Oas?FMXst|)o0M@E(f8t)y|Xeb5kXE?tis>DGA>M%iMYX`mJu&eBTuB+y(L9 zTRnObei>=Gi?UjO`mFN(?o{S3DFy!-aF+1T9?t!!S^sCqH{U;RJ@?b`-+zXqBmxS# z^FE)}+8)iw4|t@K_r*MT`*op2V6kQ1vK?5zJyD$>Sni#-a`E@}+jfbd>a@JoD_T2K zqxnI#m3eEPd%-)?a}vQXhV#A#*6+OE%nxo^&s&f9y)z4u3~A@i-?*u@JI7NH(yfxe znG(FaASD^vXPN))PW|qZYC-6bcmDUh-@BjmByWtS<^Oo3_4kWa!HtQ^{Ga8)e^;C( z!LX^}{9m>85$}SisBSYVAWj+BZ`tf};;9s27DPyyj=&ln#-67$p~`Ie&y^4V#1;ZX z0b;b;XKo4xb>g?=QUrw2c6h=mc?(g+=w~_o#X7f54bDc))$jfKS%1>SuWjc;&Js*` z<0N*BgNDk$P*H+K0R9()i;-eQ0RdRP%C^9jZS5im*8*&eiXx;#a}sBWvk${7C+$RN(8OF5<^WR~C%8RYsp(w9Q{rlJ}${2SW2pKw7n_9`*} z6k&cpB#HQM1oEC6%6}Rv9*u;!!u6>IA?vWmKHTzbl*xvbAr<=qOy51Lj}bJ$U-nTO zOqUr;x9%lU-cY#aXx{{?4v#Rn06Gj+hyyqY> z5yv@XF)B)c12v?hp3@}+7=rfnJ-`*lU~qMfNC{EV0`pKlDtUwqM>#{}AXr%gT&#)! ziD!G648jHWMLZh$A7!V`lKgaotVRVKdG;^B#ipVfXfSxRfG3aO9t03@Ro&vPK3u~P zB;LL9VT1|kH& z{Q?M?JQBk+^1QFw$7+cPqWBda09g$ZxqU^rrODj$P@@bfX&7P z{VP8QO|Bw*)FY>3KflAJ z)>asQ*>8RdP1eGu-wxRL$wJ6#!?)BR-z1OfAB-Yn?dcK$K>9Kj;G;t~tWZK7QtIkf z+OO61Na-T}Dqzbk*^9h#SH>idLZyZE4<3v<81YRy>iO4xDu9|p-x^b_vVuKhVFftI zAjY9P49Jgbq&vRE6xJaG=NN>}HOe5m%#n+pC++8mGp*19)PixA{Fe>%M=89m6orpL z45Gs1^-yp&1Rx*dE`rI?38M2T1|5!x!7V(O3%8aI(?jwm{J)DHMyYXWnH zmwh8I4*+Fk{GN-dV1liBk}bZi(mqY|u0S+Shu>l;z);x5(tPvGPh(3^<3eqX2t6gS6j&u;{$YR8%fE&`7rtwgLh&9R=s9H;2zRkwrH7figO13$r_3Z)FIHIdO+9 z$_>T4(IIdEH$tU|F(9$@F|#V;d!y(nYx43>vb+>slF#;{m94RzVPTakLf`H|`XLC% zPA}71T);*4u8Wd@E5hJh56$(<#3h3u+|s%4&p^F zDn}^ELD0~%PN0nqQtF6^dD8Tz*O!71AF7AE$GtlI+ia)2R-!IK(2b z0n0t`4%giy-UIWNmUSMY(wI0+p{v#u92F+64@*CycQA%}^oY&-AYz;UWkj&BWv!T1 zov+QEtHl{=)zt)-vp60tJYTR{z#Dhrd0zxaM{~j$w7X~jq{@L?8eYaBAJ98qaMw_@ z(?0m8`^`XEsG7jtyO1*aH7-HI#u4vBz`5?A&}lEO8tUIdW@ssY0uHB6a2+*Z``TY zA%V8|?Q|;y6|KRBgmCuB$h`4L*#`mQMNy>zdZp(K_jUxG z>(%i{8RHncGl3i}2zw`Y!tiLvO@+?b^SmAqMoh%do5mp~GT*{FgTu3b$A79IeB}jP zq9CX`wRSo$VFQ}Q8+P3qrB4qI_=Y|JLL?`~AQ+lFY0_Ib`ga+Xcbw&A4;!Ng zad)8d)nEr8C?PsZ)&L^FKs@vNV|~QN)H=cD)*(%fvYj*6*8nMoB_PD!`N-?ft)KcO z1ZwzJN|A;Nv5tV;N=D4Xp7CxK?QcCcDR&qt?}bt&J8vBXZfgpk_|%Y^VGpKdZ;`)+ zBwRd8rdQuqX9a5cLymn{|5O+=Z-bVjLh3@KT&DKij%HmwujW9yH)o%*XC)lw{DN`w z1z)iCK|w}hxe&8l_-iT^_%Q;&Id{Z?onLggPk{YzyD$j#;98J$n3|vp53YuReUT;g zj4WwDg)q$Beb1810Nge&2zXJ^wxf5iomay#1li=RcRy0&H**BZxj(N;8?dAW=NWib z5O-)4qKL)a7(6t;EkF$s6)r#s)35$6fQg`x+p5T;0;7|P8X|>9`E$ENrG(xUdIoYw z4_`XxLN1{Dn9||O^!w%Y9&e94u^~M{P@hP~JmLCHzSJ0;ElgI(a43FomiO(S`_;!v z&y?%voiA)HyR->!t{R3XBu&`nkNohlxk zYW}cl;ihWwooXqaXR=|>4mCYf+W8;cK{M?6(Wd9ecb@C%)SM2hF>b0c->I?EskIBM zJ>OJ&ai`W6Kvn5p<{?rYX3Og zLfwEz6#B?B%41g3PnK%ej;aS6E5C+=vcsP1v`xH%iWIgzV)Jf?xh#mPv4G~z6r6{1 z3)&UB9ftdmql#=+{n*sHexXe%d@YNP5s>Z>f56^TPa;W#t7?a<$~8Y<6>U=ib-M?Y zJGI1k8tHrw$po4h5FI7*5a0=KFBk0)Zfy2~A@$6e!$+xSkVHd96bOcuc70BP&i8MqQI6)o1Y^K5Wf zcZj>FtNtxEpk1-6iD!cfVp#Nnrrm)~F@R0yYi1A2I!j^xjuetdqh?;t?UFSh+&>uj zf2zEn0%0t^m=)gGp zhj{NgJ1o1IU%4HtcoCyLcW`H#cdw%P^~vMoXa15K$-rX{h-+{Z5^x#hGQd6L;5FuW zHvsOhFJE8J8%IRH$^QGM`r`D9_tS`uSNJGg=G)f`R8p&+D6V~~@Zvi#>fIMjK%fw- zF(0R78W^U*)n4_ik$~w9vnf+#n)1;E7}*yj{#E03=+!b&(qc0W6#4nJB3{q z5Jd}{{#+oGBO0j&C_DGTI6Zy9QXw5D)bUztW&r{$T(p8!(O?>^g`Kf?h)(1Wx=)N0 zkSo>fDe(!RzX)M0dPjan6n#$n_wkD;AOw(B0m|Wj+A7Bf10(ywBuJT~eWrhLLGi0S z?^o~TqqRRQ9M!|T`Zu>H6Zy5;Yra!w3c}(6q3qEfHZkN9Eb+t&1hyzxw7z#@!&lrK z0`Pb+mLk3ho;^WObpE*c?<=?dy7)!dOAet~v^(kq#iEddD1t91eMCUNBRV!hB{mH} zDI@TG3l-*0#Ry4Jq-O|Fy34)r?>gYDupTM8y*vN!@0hlYzmY#-bp&$>4cemvLV(sw^1N8p*6=%v*FaJ2LD$IAeI zl*Hf+pwC5fI))qU}8X)woT>9CN; z6(HBJJm|l<|HSH0rB1`j_muUULVkYxxuWUQ(GFk)54`T@6z%UJ+OMviRASKOA<03O zd4UM4=!+3I_CEJGnfwg3N(b?fOy}2pSsaKyL5I4c%61}>+IUp~}lvexO@W8iD^ImE%Miu%ZiS0J2?&UT-)jp6fl z^FvF7Tz>K~!&rH0@pkCfsZRxXH53~^K3Sw^j?pXZ(|RX#i43HgFY^Y4AUiDt+iL|;w9l&bPc+*lt9o{ikYhj5~~EkfqvBvV7?6IEV?EToy#S$ z@xJ$~&`*We zzR|&L8NT^aGA;aDzshj<_g5#mBYuooT1NbQz(&-#P1IvcjVT5nq}mlj|FLw z+sl>1kvm`8xWV0T!sJ;XGI{NmM(^ z#3!1sjD=8Pw&UD=V#HQiTqjW-#6+Li1B!)cOJ)aOiO)?%k3y^ys#B=nCr+cR5bw?G z6kGO**Ig~-22ovPj4$()Vi8Xov+KZN-vl#{B2odWTi(Ps(YCCJzmnOl=LV2pL=Vz2{#jj$k5$tW1}`7>&mQ!6 ztX_Z~ax?M2KVJ4&voc}G!`(k;X7#aF8~T+`qJQq9;*+Dp39kZ5{PR{lp6JY?heP`P z^M8~*Ili7S9KP&du)F%?oa5 zO?KY{10IO2Jw0<0GnSqh@bG|Av9V?1SY}DUBSp_*Qzy*ptp0$<8s)|2-ifbsmjj;Y zt`%E?m~j>+@aZX~605Yt@rQ>4i_JVsYziD!MQ}awZS!(qW%ydDljl6n!Y5iEytASL zr6*nryLu`?V@a6^|;g>PEY%;MqT7lWP^{sq|gpG|_n z#=Y_KionXG_p9!~O*3m1!EM+N8;QZqi%OND!$}{0lmxe|dRB(bVrRGdgIj-;S4ONS z&F(G-x9zS~f_qpFfDK{8m8+t-lR0pOkanC`)qY`l4rLnB!B}ys0 zN!&a!DWvOwa&>}b@;qN@NVlR_brR@=TM!xud8tuRo#LImAhr_Hqx-cw4a6;yv7x=E zl%Hj!B`+RO2<G+HYI&>`rC!lH&Ey0mrY;?zQ1QQj$UkFDpOK9!~zK zQMxaLdp*yY#eLEq2z?b$@jP!m`IGKS=y3Sg=LLJX&s6M)fw3Pfp^OX-PN6A1c=tTc#}Amfn~s^QtX%!mrp5 z+;~${QCsevvf{XM<8AZT+DZ_=O2>vxb}83Yr=_f3RtTFK^s0MafM0Vn4SP3UQCC}; zvgUC;Ycyk83_CEqoTfLJ!L(7C2V&0 zYkk`ueuIGx=fG7O+PPCVVim&YaNZ4_l7vmBY4|)}Wka`0>Sprw@CC8;hMtpzZ|OX&ck1`tmGDox>o0~u!VeZU0{nbRrEzpG zE%nDkg@`X^-i`k^Xloj=Y+KnlQJMO)?0UqC<9g%UHo~u}q=?naDosGk87nd+vJkC-5Zq_DE9XkB2HPUo6wM$4euBmU*|VIC1Yx4n+Q{scc#E zPTQGTiTvHX-m(sI?{cupDW`L-i&Y6bIPrd2ecG}W5g8!6m^>c zgfI#}ohk5seJ-A-wK6bAdag-V_EPiU*h?6ghgQ#r4SIL^AUi3vRI_)XjE?@ zfir^V^5q_(6PJCsw>bDOj3|JE|4b%Pc6h)v>e?lAU}UeJj?;EzZoI=&_*$A>+&n zv6tvV06T8>TO5gwxqpNvN80f+60XBgbSNAOb|{BJr@ONjIp1*Uy7N^6WcP!1rT zP?48MqyZu#n0g4uhR^7c5TWVl^F&-R8daSBt&mIDhp6bo<;y}JVZ&`E`P^98To(FC zuV{=m>F-t=WJ;QNC_}6L7Qr|jDV#wOzK!n__t;-kU(T8#VXU`LKNdnp-99#j(nSO1 z8%U6fRDT8mSuiO|x@tzE_y$Bc9kL(SJYJO4*`A~kg+ZjFU)Td{ z2a~qX@nzG1g7p1+82Nf5vWrRL$-+`LBZpCZ;Ak(&ftaeQmulvFAGsN2B!z_1GfXq? z+h*WL0Q@I6(tCC)kWNsxCr&ZAg|hG*O8PGpsTG~uQLOXJ85ns> zoqCn7T&r_I9ZK!#D`0EvM^|)FjI)Y+*hLnKdBI0ZjS!{(s@br#N#imRfb>>Y@f zjStN+fQ!f@gm2c&K4pVJbfV%iDCv5~9-e-eWpV$ZtNRn0$zvObN9Wv$4*icVVIKcy z^7zV)Cs*%3zV1MJK?7>(#N=%>LJ#3b1LzKqkYBQUn$CXFH`q42* zX?sM*yGKrkA0;MWMn}+NZX_H9iW2N56Ng%_q zJ`fp7e*OK@MhBv#J(pA!;J~iXKpv|qU*XsZ_^uYvXu85E1!(|kf;jvQZOF?SV>m#;qYD6Jv zY&f$@1<6xma3MNkr#?zS86|`8rK$COt6^%_8oShfJjy4uA);WC|68g6JdlXIv?0Z% zhm<%^yn8`P69a^>(MOFB)sY{Z)@#ff5Dd<#XI9mp&PXf|Nf6fN#eY1sg$c|@UQeE&v;plazj1c0Rg0B#apNyjuW zuut7vhDBRmU&ww7PPe|p0?pbmw0tSTIk}%s?8(_{9=PyiC8^~rcAsX~GPBacQD|Mb z04#;Ie$io1U1-_Bwtp`Le=0<2RzuKR2!s?0v5^GOA}Z2J=8eT#bI?8%7BPbE3&A6K zO1MU`2%u%~I!>L%#wE8di$)dDu$dxgIXX#{mVyGEA^W6IT{g^67n0!zr!ycW45T0% zTdIe0AR=^FuwDnEcolFP=-w9#PltCIdvrZ40&w(hH#RWC1vsvDyC*-J#lYQ&2>o>A zwl7hajzIaA;fQ5{WB@~fY#fFooGZ6VD)*ruMrB> z_#{U#E|h~QBbd3Xzy=TLA`wU$LEPWKW>^vXbrG@O;@(RW5;YIbM;*WyO93MN1< zKK7Ym#7E)%#f}5ONPi^`94ONr_|p8UWcAgm?%fYB_&iu#pgc*EKD@@GWJbgVT_d@$ z4u;PkJV+dRa(W1%H^THAd3h^cJ^Oq~#}Hz3XioQ)8Kmh#F~q7#9_fsNh7x!6hPfb3 zPjnDA6r{Be+-#)r45TS#V;J%`)2I-_Ky$s&A;+?@x2j+o8%-c$?g3@)rBm{=u8b^% zHf(G<^0iMpxoj^BF*iPDACZIxctUUh4azea+3~d1i$hQ*Pgq`@04Ng(t2caNU@8rG z%phu!TYBk4^$KTkBPh7=MoK2Z<7@9!LO*o6Z`Oo}~mHA{yOICC58!t~1G$aCG zH~S57^%x;QV53DeoFwZ(>K$R^{lzFd0<81IY%Uld>j)ofk>Y?$ZoDN zBJIc849TSGVmOZD&}w@4ghR7Cs~f1A?jC@~GMLrq{bcV9q8bKG7w^7E>@hz)n>d{q zK26bsh3QH_FF*x+U`RU9^IkgMk@zPut{>b7Y961_^o3JtrAJhA+TE+_j7jQ7)s207 zIa-{)KWkMx$NL)|pv{Ot$OgXKbiiW+LKPm?sP4y}KyL2t%Z>w*4Akd#)JQT>l7)Z2 z`e7r2BuPa+prh+X4wN{bFx7uTzN`eal?SN zRL~`YXisV38eK+gE~jR%4&<-BXl=RE-~Q(6+H29(&P%J$D!|nl0x*4P<@x8;E?^C@ ziRsHqrXQQ~ScW3#IDih!u4LUyA>H>RZYrEV6shB>a;gSNF z3&cq03Vx~;E<17ma#s1}YWeGm_phsIzphpOx<35NiJMPkgL!FWs9F~yNnTRb`yI6R zs=@9z{uRoa7%5C3A*uLz&VWY74^wWEv@-EQl_)60K=+9O$t-j`Wz+oxGT4U~?p*U! zmSAQo5H~U^!j_!(6)pB9`B)4JjD+bDim~f;}*tpbQB>hiL+Gml9iA03ZSVn;>d0YJAHsG^8J@rWs zgftO+1n!XuZ7loTLI|w$hp7T7<%EpuM!)sOnA+&x&N1IH?iag5ZG1}HL;!wwPKwBe zL&R|<=jkJ4F%jf}V?=8E-06MDl-DA2bm2@o`6Pd@)QBDA7?8|QpBl?x-%&c>3a32< z1frrb4X}+zw+9{6>HWFIx7;B2AA^@0J3?+fY0r>_*&lY(Mi4^1C_E3V@jzybhp zh-wEyTkiBUwEo@M>i)U@X?AvRKU~7+LxpO(E~c46X$EBZNqHrP`ak!LcGSTdf_{{T za11Y@hrLjQpG=3Q{H<94E!wzyg&xHvJr-J$q2My4f#X7yUcuw7)t!WkP&yA_dIBd0 z=-}LCfdjV#3|XqZl+QTHpE{Iwgwp;*51eekMhB+8Snw=HH>VAbsNW}bOn5kFndQe4Q$N+83ww+bT-Ft51Zhv*@p3DG;?w+A1_lX z`NjgO$sq~BA>M*ZBV++XwRV}S$DbX#my6-NB*UxRp4^41U9V$YRY?r0hPwaxLWGHx z&;?wGKB)7>;N5a}$N0}zN&)wlXKxBU>eqfv`*b7jIr?L%=T4R=4y?$xC1O3Q{_@Jy ztHyXS5Q2)04=@)zU;KQd22ftFBJ~A+xHZO?z!*jL@Wu(U44lnJkjQ*~^!=26Q}2<_ zK@X<>Tk=7Ett1-CE5j9Vw;sOW$tTIz%RGENCB?+KfK&EBE7n_gJ2A)d_%C>eWow1_ zGfR)Hs65(C_`b_G0DPY7mTNv$ih8wn=}!?FqaQyVtMjb&d-y}tzjE? zV81Vb>ug^YG4Bs}K_-u!&)J-W0sPoY+m}ggMuPIV2G_)sKjdW|+6c7u`j0?*KhRDg ztTU|u3(JU}rx(`qJSuj!L*?js!Sr`rtZ|!1CZ7Lbz>kM#j<1xj zT_H&Iy5Ij^8t1rpm8vc=^DhR|4$$`2VcYVK4#f zDc>o3*C*C&+}SvD-hlk!k#@K|@&j30gs6N66`ly=LS z0w$>T`-j~To9h+$3_{2?{w_UUBX>k;%iJf?G=u&eyV%8j z@3PxXJpsK#Fe5#|%NsWhv^S+!v|Y0RPAs3#OSDPU!`x512FD=jmSL?RDgRqD$_&DJ zb??ph$2)_?C$8MrJQR@WInIh3qxhm@+{jM_GvLzhRa#sC0|%lK@IR^=rId_I`1yNJ zpTBHZhNPCpn~WF1zm1MDGat$wziz@M#OSMz0-=8lfM|oZKM2kZXcVd96yluq5D9qd zB1ymV(e|myof7v8EIlx@3UF2HIR{MYiBO=XQMqb&7G~0pVyMX$y-_jyAv9HL(=E#b z`s7E)J@+8iVI2nJF0vV@MdM?em@B8CPNkZj2Wh1aZ?@mmmMj%=`!leP@`hxg%Y_EI zSclQWsts+jp5Dc!y_2twq}v=~d-^v`e<9qfFOOIgg!s%X3V@&Bf(mSf6Jvt$iq|ua z7N1rMxSs5grGGLsfGLV0rs%VZn5M~H>e8wX)AMKR|3I^QH6FxjlzCmn(%a#3ltCGW zGp`l36G6U~&f^vfY3s7(+8UBlgd2VM;?o1Mj6_nqe zMXJ>3lV+nM{TC#OAcV=D|okFSs@rcP?tys>@13^BQW0-}vk9Z3MZu@c8 zfj=su+HqpizRBn0NAY>gI59`a8Ndu|Sw5%5G@oH4x&;&|sE6EC{b!%l>Gpov$5!Vp z!sQY${)lvM7ph9vbKKO}Pm+SB(^D2dYlB4Hsqynfc0gy0vV-&GD~ zs~B>cLhN-HZUX5lv|szbt(O)>RHJTEiFAy8FJyV}*zVNq7{~BmHz3G?q=5(*;1WYm zrrmcxV_Fr@v-<5e(*E6|7&#U}VPS8-H~SjA{_HH2tQB`6^4mRcO^3+61DIIKyVJ{6 zfP|5RvP=UzLH$eVvS9h^`ryc4=RSsUPS)6e+e0@MkC9im680x#?e`2i*yT}F)=p<>`iaLr)dgA*I`3vWeiWfk%zRI*q`5_vo=#I<>*u(Yt>nD@ux~ ze5n1GDpNs#Y9^*v6GeHbpvG6?QVrebmk10*hXODqrtn9bnBya;JH;oKTu&fuMbm{3 zp4kUp`sADklTTmFR5zJ~A(?tm^y8ml>evw|#OVG-Gs7#6hW~lI{Hsm8nr!$g+VEPL z;q?G@9TX$F(a>wv5a{dn(Z5?k7xnpJ=)cGfqd_m@(g{^Z1twvaZ#|dEian-%Can2P zc-I;C!84JWx4M_lFmOh4JY1V3qZr$leuF)+x<+y1Ah!mw`e0Q{T&_`KnNd=+QSzWs z%8XI!s!`gmQ98~zL(KS=qVa8A<4iN-JC4S8J&f;#8)xk$8)xSl-!C)HX*SLsG|rnb z&R;by*fnP1ObW$JiWE&A=$bqJ%3 zSkSdtG_zQ8wD{;@@hRNmbF#&kT#My0izyOsc+1`(%0m1wZzG`Kkp zL|mjHJ!xDKG*k)=okzoz)37Zx+z<`_o<>-sasQ%cJAW49_NLbATu|US`J@y7sOOR? z4B|+1-YD~85iqN8|Kj{PFc3sVUHl)9I9_ei9tNe*0R^E$3k*xN@vYrjbXZbB9mHH=^aRWBx+r*elFle^rR zkc0Pbp3e?M-N*NFR~=QLPWeVd92*3}GS8OUP9a(#5|c2GwKSFzNWAb4QmlHnf}hD- z^#W%PXji?kL!_720!UVrA|;ymH1**SUvwDLeE4*)|y2c*bwGLeDV zW@wB+z_I&1Ar?m{^(t-vqwzx;XQ)g*lE-cu{@JjN>RxO_aKbyT5|a8O|k;#Hfk*P9CZYj2=wE?!cB9*S5F@vd>U0J{@672 zviW03BL8KLxYqwm=!Slj=|*r6lHhlK4eiBKmlhpf#93D9(9$t_>97;paC-nz*5slZ z#N0=G|Bvv^kP)eK7JGwpsJl|Ufw}ncijzPQCFmxf#7CDCAB8KNk2W|DRi#*;STa64 zKeW$U`Ea>ZuT}i(;6kkHKF)Qu)KxwRWkNVln?YqxI7?VuHM)EGklb4xB*<9Dw*BKo z#pJn6GUqK`T@FA3!FOGgDQ;;fr}&XiKf|t^I=cuyc8UL0%FB$lz3h+_gtE#P^Eqkuc+%J{Wmopvw|3Xx557c?N52~qfiNUvHmvKlS4J+y>efi0K# zt?2W>O|u51>l+*?Cw9p0!~>bP2;sLhjci;eW2j}{<3W+BG4jM{5OrG*yRbh&v;l$lUFNZh}Tms0wP=T!Y`;XNq#5KZo z$5)@B0-U3ufIT29fA!xlZ(#NSgtAY`__FlTaevN9{`aFIZiMfK-ajvis`0{4^u{`9 z$L2EOeMh*Ch9EgekM<+X|Bpj|D${${qhAg&v~PgS`os|7+{199pl=jwjdvZ*cg|O! z@Imtd{NqjFt&lB10$WXVMk}K?CqCxCF}m9uGr}BPOHaw2F1JAJ!Ir7zk(w zoj(_pO#hh}6r^V9zb(*atl~d(#0M_ujd1!lPxb#(@$2O8AkUs3R$#!?*&Gb&p>P)D z7&&eT#+VWKaKD>5E5LMR!sl;*!7p1Ck&|Wr-Z1dA)PoI9OEhNG6Gn8suv75?*KgHt zSWH^>Pg-C0zkL+@#zLEYFy1dXq-Tx8&-_>$EG&RZ_5K~47M!*x55bb>|5*r1T@SQM z{3Ah9u4Acl9$DgoNz zt(M`pkMGn7GD}X*0Bcef17*!&Vc;o>67&D_#4k8 zZ`|A5b#A=$=FE=sd?ZXhYqnHJuM~DtBu{+AvmU zObE`QGP2^`1!%S%tS&u)SPd~n=ealt>;(SsR;W)rfJK?|DQ$0D8O+wa4MniW4*`Xz zQg{;&@pkq-1OFQ?iqP)lulPR!J`BP00&WX@dFW_XSx}%(&d4k0Sl$x{T|LV?16ctq zY2na_I+Fsz5h2VvK8YCNVwnOMAH1+5BiXbR)eIDic5U0YaS_h{t$UZE;Jtkhl70&} ztpO`(1`g~1K*0rs6a+Xp$lEvYgOxLHo^1T`!3_%(9NaVFVC~y~xOF4Ed9sdxGEp3~ z^b7#B0MWD~y%G;##5{^O4l1`y!GM4|0B9Hipv4LR`u6eb$6tT8;U<7?3NV0B1_FF= zP#HWRG=YHtaOWL(>K#O$d1kp$fHIjN>g2p4OYH5O^HtFegcT!Zw0$G)z z14TxZSJnnV>;dbm4$69vMgV+Zz(*kg;3}-WQm_CV8L%)95N2snC_=a9N|By?QaVwv z!-}M>uqHi3ZB~e4TTy!t6?ssmjm}9OfvbiJz^DiTQD7F0or}}-e7X=PfQ$>%J6&XccJb4f$G^J@)rCB<_ zfDq}TRq(+HFMLpH4zKo5#1d01Gr|g=cGd`K7(oFApdBdx?U}+Ueduuyk&MvE9s^*7 ztj7&q^wAT(Sr!^JEFb_FXsFln%NSHMR^2NA z5@Ppt*kfa8Hq2;U^9(EnM03rEB_4EQiU9ab^J&Vwc#_2uXPj2zi#LuCkCCfgInV%L zZr0|qb$-^R{kjdn)N~KJF~?L7oV)J3^WMAfUS7I%$|IL7JIXe}d64Y|*2MN%D~lP0 z0F<161U+^2Or&cjrH^4@nlyJ;*&z<+ z*FWq1jv~fz1wwjJGXUI-A`hbo!mtntS0L;(uINM+5oUtJ@W6*g6N|`BQpQF>DHg-4 z-v4s9#3nv5iVvCML#lYiEFR>I2XSK1%o0F^d@yOmK~wOYh9ylEZzgIy2zNffnV#zdMa(6Hg1TLrm zfYAX!a(QIp9v3#GlWehzSoorPW?9R}^=NW>1OOlZDVI55a!Wg2IZgCi(%3}YaK z3b{x`T9goiB3VETJoy-8K=u%wv?L24Tq8xakpIEnjkTZlZk-own7Et}w9#(q7*$#jBBmoue zT_?O()*PJo9+c&=Lh;xhyC)oL%YRlT_F$Q_=BXd7Rh1CRqW*?P^*Ajj~iGddW>Dr*s|R20_%~iMc3% zBly4v8{KjibZ~FhwuuP>WAYsw^E?z!N0F0v`B(70-P=$q~RXi722! zBFhQt5EsCL2}~fCVyg6|Gu_8ccly(!6E&$#jSy7th!~c}^kh$x6eUbR0X!hC7NTH; z3lxtxJ4~dXo|2o(xJct#>?WS*sd;i=F6@vhjkbw*=vc~?F1Q2$zJ9ivYJ+lTv z7MeAWy}}#V!v5`lhzEslaW9&q#vueRB(Vd1SD6q4FZf<_*A8MFgActZL?kM3OF4id z6XuY^GeoEDW-sguuqZ?(=x~Tb&{fr}b~UWia`Kd~yycIJ`OIrRqMLI&E;{GA&w+jr zp||?gvG#Ux0T6L{_ow0lnsu#jo$CXmJ?&~Iu)58S?lzTw;SHb1 z!;5|FWItrH4A^k{U|ALg7#rD60dCvbogKp~icxu|_1*m{@C*>#;Ok2~;4Q!a8f3u; zA^0c1{S9yc*xl^w6M4QX+EvekUi9hzF7CxazWKi^JBYpd0J29QfGA7=O|-JYzyHlp zUTH85LQn;N8W_OlR`p6kPcU}~<`EMKSwRwN07Dr{Dgfdazkh0g{6jvVeC9hJ&F61E zn}=Wg3}9#c%GSHXOAdh2|67fz$GdP?k8we2Tw2f{-|<8$)!vdJ9`21(BD{hezyc|x zO&zaFhCbD)ETYB*%=2AEP!-W zg}YIN0q_DC3_HvO!vbJH z|0qBdPGJ?o-AOnA49XxyaK{Ct%l{HK;S)UJXY9d1l*|p-6(KAD5G<1J9D*rmi3u_Q z13ZC$Pf>;!j(|Z>oIYs}89HIc$%{4h);xfL7SM`ruwe+eAsq6~4ZIaG%t9g9h#(k) z8+-yRfI`q5p$`VlE=&U~M1m;<%?F0y2zrJj8UrO-qUdDeCUzo1d}0y;fGCopDLw=$ ziXaJc9izzvANrx#QN{_T;PI_pGAiRT;>i_%N+A{Y&w{;R4EEtk=!BLTqY4(|9p+&T z-e3+sL>(*u4{V)T%)`7rgbm^#b1)tjLL)+)BU-GOab#ovG~y%1A$5EsmQcbZFu(=C zK?tc!8VW$km>>#jV^A>RAPO1(qxIuI1|Y(%Z9>)lX6_8JgA)jx5 zz#s#7gjvkc1kgYlkYosD0S|yd2q-{HcqGSsSUi>m1&m}#nn_Lq(M%Rd`q(5F3IR9j zp-m8^LDu6_EM!FjU?K7lTG$~T>R~ETt{8(xz5UX5iZ0W^L-`ZYE=9a*6My0S|oUY5FE_8s~8$XL2fk=W;S< zb2{g9LT7YJ=X6qMbz0|jVrO=0=XP>ucY5b{f@gS&=XjE5d79^WqGx)l=X$bdd%EX) z!e@NS=X}ygbO0Xpj2nj{<3s3h9s%X^|S~ks@i5T4q2106TXBzeWH6 delta 33096 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● codeaf home teams chats sessions spend settings 1 moving · $0.0047 · sun 11:12am - bash output and terminal check conversation × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0032 · sun 11:54am + terminal check passed after clean output × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e The terminal check passed. @@ -16,8 +18,6 @@ - - ❮ @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0058 · ⟲ saved $0.0005 · 49% cached 15.1k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───────────────────── $0.0042 · ⟲ saved $0.0007 · 67% cached 15k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat2460052115/002/clean-chat + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat412404832/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/01-expanded.cast b/docs/design/chat-cleanup/evidence/01-expanded.cast index 314c1001d9..dbd4142ae7 100644 --- a/docs/design/chat-cleanup/evidence/01-expanded.cast +++ b/docs/design/chat-cleanup/evidence/01-expanded.cast @@ -1,3 +1,3 @@ {"height":42,"title":"01-expanded","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0047\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m▾ worked · ctrl+e\u001b[39m\r\n \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▾ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n \u001b[38;5;243m⠿ thought for 0s · 46 tok · ctrl+e\u001b[39m\r\n \u001b[38;5;243m▾ \u001b[38;5;103mprinting the tool output then sleeping three seconds\u001b[39m \u001b[38;5;243m1 call\u001b[39m\r\n \u001b[38;5;243m╰─▶ \u001b[38;5;110mbash\u001b[39m \u001b[38;5;243mecho CLEAN_CHAT_TOOL_OUTPUT_7319 \u0026\u0026 \u001b[38;5;252msleep\u001b[39m \u001b[38;5;243m3\u001b[39m \u001b[38;5;243m3.0s\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▾ worked 4.2s · ctrl+e\u001b[39m\r\n \u001b[38;5;243m· ⟲ 15k cached · saved $0.0005\u001b[39m\r\n \u001b[38;5;110m· 11:12 · 4.2s · 1 tool call · $0.0058 ·\u001b[39m\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0058\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0005 · 49% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0032\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▾ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n \u001b[38;5;243m⠿ thought for 0s · 32 tok · ctrl+e\u001b[39m\r\n \u001b[38;5;243m▾ \u001b[38;5;103mprinting the marker and sleeping three seconds\u001b[39m \u001b[38;5;243m1 call\u001b[39m\r\n \u001b[38;5;243m╰─▶ \u001b[38;5;110mbash\u001b[39m \u001b[38;5;243mecho CLEAN_CHAT_TOOL_OUTPUT_7319 \u0026\u0026 \u001b[38;5;252msleep\u001b[39m \u001b[38;5;243m3\u001b[39m \u001b[38;5;243m3.0s\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▾ worked 3.9s · ctrl+e\u001b[39m\r\n \u001b[38;5;243m· ⟲ 20.2k cached · saved $0.0007\u001b[39m\r\n \u001b[38;5;110m· 11:54 · 3.9s · 1 tool call · $0.0042 ·\u001b[39m\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────── \u001b[39m \u001b[38;5;252m$0.0042\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0007 · 67% cached\u001b[38;5;243m \u001b[38;5;252m15k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/01-expanded.gif b/docs/design/chat-cleanup/evidence/01-expanded.gif index 701ddb9ae8c941cf519e9979748fd19342c28b4a..867c840da48d216e6dbc2789c65477c04e96266f 100644 GIT binary patch delta 46865 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 M2h;&dXu$6O0Z#4GCIA2c delta 47796 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 G=KlfjeizRG diff --git a/docs/design/chat-cleanup/evidence/01-expanded.txt b/docs/design/chat-cleanup/evidence/01-expanded.txt index e229778f97..b457cbcfb8 100644 --- a/docs/design/chat-cleanup/evidence/01-expanded.txt +++ b/docs/design/chat-cleanup/evidence/01-expanded.txt @@ -1,23 +1,23 @@ - >● codeaf home teams chats sessions spend settings 1 moving · $0.0047 · sun 11:12am - bash output and terminal check conversation × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0032 · sun 11:54am + terminal check passed after clean output × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── - ▾ worked · ctrl+e · esc interrupts · ctrl+c quits · ? for help › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▾ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e - ⠿ thought for 0s · 46 tok · ctrl+e - ▾ printing the tool output then sleeping three seconds 1 call + ▾ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e + ⠿ thought for 0s · 32 tok · ctrl+e + ▾ printing the marker and sleeping three seconds 1 call ╰─▶ bash echo CLEAN_CHAT_TOOL_OUTPUT_7319 && sleep 3 3.0s The terminal check passed. - ▾ worked 4.2s · ctrl+e - · ⟲ 15k cached · saved $0.0005 - · 11:12 · 4.2s · 1 tool call · $0.0058 · + ▾ worked 3.9s · ctrl+e + · ⟲ 20.2k cached · saved $0.0007 + · 11:54 · 3.9s · 1 tool call · $0.0042 · + ❮ @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0058 · ⟲ saved $0.0005 · 49% cached 15.1k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───────────────────── $0.0042 · ⟲ saved $0.0007 · 67% cached 15k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat2460052115/002/clean-chat + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat412404832/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/02-notification.cast b/docs/design/chat-cleanup/evidence/02-notification.cast index 37d29e9ddd..7f63120a7d 100644 --- a/docs/design/chat-cleanup/evidence/02-notification.cast +++ b/docs/design/chat-cleanup/evidence/02-notification.cast @@ -1,3 +1,3 @@ {"height":42,"title":"02-notification","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-d2ae66 · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15.1k\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────── \u001b[39m \u001b[38;5;252m$0.0070\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M · 1%\u001b[39m \u001b[38;5;146m⠧\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m · done · 8s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-b2ad8a · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;235m↓\u001b[38;5;243m 507\u001b[39m\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 72% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;146m⠹\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/02-notification.gif b/docs/design/chat-cleanup/evidence/02-notification.gif index 1c7ede5be98f49ff7c77dea835c85bcd856d1a98..c8dbe1bbdc9d949ed6e171d0a10f0106f28f2f67 100644 GIT binary patch delta 41063 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

6^o%dJHWS%cp)G(zo)lu}@S^qb2{7(*V9rR8 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

Dv0C+jo?Kzj@ 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 H1Oxy(qVqN3 diff --git a/docs/design/chat-cleanup/evidence/03-dismissed.txt b/docs/design/chat-cleanup/evidence/03-dismissed.txt index eceaba829c..d4746167c4 100644 --- a/docs/design/chat-cleanup/evidence/03-dismissed.txt +++ b/docs/design/chat-cleanup/evidence/03-dismissed.txt @@ -1,17 +1,17 @@ - >● codeaf home teams chats sessions spend settings $0.01 · sun 11:12am - ◐ bash output and terminal check conversation × + ▦ All + >● codeaf home teams chats sessions spend settings $0.01 · sun 11:54am + ◐ terminal check passed after clean output × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e The terminal check passed. - ▸ Working thinking · together · ctrl+e ↑ 15.1k ↓ 449 - - + ▸ Working thinking · together · ctrl+e ↑ 15k ↓ 544 @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────── $0.01 · ⟲ saved $0.0029 · 74% cached 15.1k/1M · 1% ⠋ working ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────────── $0.01 · ⟲ saved $0.0029 · 72% cached 15k/1M · 1% ⠸ working ─ › - esc interrupt project: /tmp/TestCleanChat2460052115/002/clean-chat + esc interrupt project: /tmp/TestCleanChat412404832/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/04-restored.cast b/docs/design/chat-cleanup/evidence/04-restored.cast index 540552e18e..b95118bd5d 100644 --- a/docs/design/chat-cleanup/evidence/04-restored.cast +++ b/docs/design/chat-cleanup/evidence/04-restored.cast @@ -1,3 +1,3 @@ {"height":42,"title":"04-restored","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-d2ae66 · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 568\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M · 1%\u001b[39m \u001b[38;5;146m⠹\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m · done · 8s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-b2ad8a · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 651\u001b[39m\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 72% cached\u001b[38;5;243m 15k/1M · 1%\u001b[39m \u001b[38;5;146m⠴\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/04-restored.gif b/docs/design/chat-cleanup/evidence/04-restored.gif index ce5747fecd050881d8cc83197f3dd8b1a24edb0f..98ba46f8d371aa3c22bfe945869c97f85b45e769 100644 GIT binary patch delta 41041 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%0ANuzvLf$8u>!t2P^T?^ z){4oVb5%**kmdY)hXCZdzNea16ReLCZB+2ffj^9p+W?8o*RQ0gOmZ@;k>INl450Hy z2#0yurISC(LJdqwyYkz}{Q5+4*=6#{3gJM$F1$rQeb3=d0{zVuC-$TK>zD`mmv!K$ zHJ2>xe?3pK1cW%k!($)S%--6&oW~bdh=10267y`w>3oiwd6LI(h2(u1`i*%xakKxj zl?5QRVF6oW;D1|R_EVt#$u)3LC)!>NCJQg}2|IE3WE23ggdp0prf`p}dBG=dTvkR} z%ZqbB1tiECr(4bn#;Og|!V0c_gx4sAH8PCjfNM%4N`RkTft(x({J{A6?-hZM8v$C4D|FRTqIKD+p`G$RMD^?m;1 znO5~xS9X3qZb((Y)Y#2WqTc(}x5Mr4Ub(vMNaP#KTqh5FNiX5J!0kPE+k|L3&q`0Z zE>+w8w=uE*;y*)>kFDx6jw7|)Z4OH@AY+f78OO+~ASk8*Qln`eH+Be<|Zfy+t++MMO0eV(yp#jVN@8GlKE*z5&Spzc-1%OWm?MI%{vFO_?U z#=N`v?Xub(0dDwyL)V!N$(FhO4N?M=_+Xj;V;cKndIgEYyG|?G8nE~imB0b5&Jr>R6Ij1ib$UiFVn-?!`sx{yRr&SL1y~yc| z$kjV-rd?=jP-|iJ`G@2cpP=Z2dU#hP-D@PAfTX7SEP+TNz+XGQ-O+C&=GxlU=RA(W z0HlvA?dPf{n7m+rvg^;MPnaVx9n&4S5GFU3;0#(vI|KJG9Sb;3CrnODZnp6b6h?$2 zxPlN-4YZ9y>6Xab0X0aIvOsNsNaq`jhBmNW1(nq6?fLr{*ScQLIrjQhaX;Onl?=T* z`?%{1@XT+6EE~r{&Q%EPZfngz4%cIdA^QkKo_#~$FJ#G{k7Bzru#r=MtuOPY&wpFj zDd)crHco!lKfd%}RVS(#3W#ONFo5bQ;O8Dqk%f!gK>Cj!V!EKwnL`yX=gL@%5mPWo zeyr@u2unSSOSC)k2Sqra&u45uvJtSd8299a-mf~Sc|v{s`nRTE`F{mI)03A&-Mp9ApxR+oL6rT0}9_ra6P3bQaEEb;1*Q81)RbC+kNjj0@fS7CaQ$%(mbYG!S0eU!AW<#_T9;@#s?jEk7*>-p~4N z-raQgR;SwFVgx^Qc15aQ4L-n41 zo)&)akIP%7^B1Pno6Md6&X2(~jP)V%adkaKL@nF9YBN9CLjG_yJ|lqJU3WX57P|B2 z=T3xf9+nD`Y3KyN?G$=WyA!aMJ-;f85_oN!DL$oUJXQX%@`4-(!6d<$Or>@= z-%xr~p^IueemPrZ-CK{T=%=~p!4b5*Ci=3nV9}yaQRq-QU0KAXOXS6}@Rt#@rCiKv zRBf%j=-(019V`|$n!6Qc%AWwq`7e}kd|&#bvTc}W>Tv?DlhQbI4OhJ0uVQ^yvAubG zcoLsl7 z+|xX{!BM#vIQcOM+7hXx(O-VgpN$aIju>qV202coT^)GXd delta 39063 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

{2JgwbVp>+S(Q@ACD{v{34FAm zba%9kVvqoR3XbkYoaWkr&>-|iq0Wf#DpiQbN9qz#o3ttP6dLu3w|gxW$r0$~AwO|Y zy;JCd3G^-jau=H2%MqA3SSbn;yvY;Z2Z6;%`Gby@{Cca=-R1?A<-K=cLs9N6|#{Pm|&u@e{!fOx7}b*5hkghrt4;97(- z{Sv@bP>{nx2?BzXWWp!j?g6uMp^J7T1&wOxx%i0;LE@?bG-|U&I*2FyfQWoQf#&gq z76_;YdYLGxdV$`s*;1x64Vw1`tIz{6Xb1bCU{eCcMgKU#?UFv>TE+E{;I|M`i!?g= z+WC9e4rIdI$UDJFXStfU8!^1b;tP8jYXUTuR|PwsVxb)d~8=4wB!u_!OF85;H@c6;9@MyHHeca6 za$Zs$PclJB-AU7lsjo4)so7Vrx(P#bxMh48!Vu=e5fURHuDT(_jiF#5U`9`TaUMR3 z7Fpm4^N2{~NOk`K6fGrMV(6q$>{)>o>{auF#Y+gxf4zOvy>KtOm8Pkpev9;+mjxVXAL_U7 zp9O1g?`R!zY$M1ksseYkhs9EroWNXfeGJS>6CV)j?C9l43-}HSOe5)^@^y7|@i4s= zlg82jaAv6`nA%%tdq|!DW>E+*ZfaB4Yu1S=^$3QwyScK^KsFhXPZX{qYo5lc*!Oh8 zja#6?ke>_aPiT=PK$J%oS|C>gM5N&adPugo@jLovbSpq8mL)?z0Z3`kZKOMJ$FVYn z17y%NF1|hA7@=D}6lCVF(dG>bGWjCCDDGB*>;BKe#M(ey1i$~^X9KgP?#=1F&Jx`d zt8i4|G-u7>tzsE1Z(J6rj?%WXdu#!IOkQzh}Uw+`viicRC|- zy8~*wRXqT7-Gu=ujF_8oCl=lY;L^}Q0Szs1gCHDCm!k4vB|Sn{$OtC6N5~ke$Gw6t zMKNXJ$K_CRj`tewH(V1gmewtvI4|&77SkmRbltDIFAVT__W^pf#BL&Cy7f;UGv#p?8FS%dEMAf)9(^8EO2mIe1FeF9Gf~*cUEm21UC2Z9VE~(D zx;XlYXszf&L13lj>H{A7%6IhjrhC6fS|4EVw+~-Mk{{m_ZcWdtiH_MBcxx%SbKd#q zV>1w||4Deah0udw{r%qM3Zf)h?O_RGm}x)h#xTk&gL2ubJ0e_$WZ|Z4Efj71sGD@^ z$1~l*|7vIcQ{*RWVY(D!>fgN{QWt~V!3rXYrD!+dw;~wNsWYehjZSlfP&jx25B>8G zdcldwbGr%cc>zwlBt<}tFhisJ@a|M8fn2=W<^?>3c} zeQ_sfmtiinIz&oG%K;!Uu9C$to^0Ty@9iZ&IkHz#QGCqvTlq+R{i}fhLrU5R66ACA zkPl_7L+9@^)91{QXHp~wNX6B5x@w2?bf?s@NEPsl(y8ZnTCT|G?g;*a1No!k%;-Vb zETWr-9s?>*N&=k(CM{pK#^}62zr_9Q3k_G__g(l=roltrj8=-^Tpi^jQ{;+k3mzZ5 zSpA7}J8O+11hzQZK^e9fF?|!XH;i!3WE>^cKWcGFgfKinp~8B@&woKLr~s{(of>S! z%bt(_*EexgUdPyG+3j5hdKV`&0P4mut<7aI8`d!vu` zZgB3z2$&d;sIfl%@5>37uL+S~lZw8k-1?gK;%mmQuQbtlhW0$mWj-r%KBs6t_tt#= zi}}J|^TndyO0>U~xqPdL{C2MB+xc7Hs$P7n{`KvW=t8ab!ey78g)5N@SBn;|-CAgR zvG6~Rg6Q{F?Xsic1vJzWMrTRfbxAU6NxFDRws}eZ<&xs!(q7auPG?!kby+29d0+9e zdh@d8%jNxx%Q~nPU7Zzu*A;`P6{F&ngUu_ZFIUVKR}Q0ANjj^RuB+BjtG30f_RXt~ zFISxxcUE0dzuk3yd%FJij{5Ce{QF4rZ~vFSk1hT_j#>-SSqq`Lu7yUeohV*A*}NA1 za_#iuS`=zMMrS?Fbv+?!J*jv-rFlK=<$A{AIt{hK(Ai+QZe&Gm

k@{(suPaB-s; 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

&Tw~8S-g<~#XukK6z0mSt8!PIqQu8SP*7n>● codeaf home teams chats sessions spend settings $0.01 · sun 11:12am - ◐ bash output and terminal check conversation × + ▦ All + >● codeaf home teams chats sessions spend settings $0.01 · sun 11:54am + ◐ terminal check passed after clean output × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e The terminal check passed. - ✓ ◆ write hello file · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-d2ae66 · ctrl+o - - ▸ Working thinking · together · ctrl+e ↑ 15.1k ↓ 568 - + ✓ ◆ write hello file · done · 8s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-b2ad8a · ctrl+o + ▸ Working thinking · together · ctrl+e ↑ 15k ↓ 651 @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────── $0.01 · ⟲ saved $0.0029 · 74% cached 15.1k/1M · 1% ⠹ working ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────────── $0.01 · ⟲ saved $0.0029 · 72% cached 15k/1M · 1% ⠴ working ─ › - esc interrupt project: /tmp/TestCleanChat2460052115/002/clean-chat + esc interrupt project: /tmp/TestCleanChat412404832/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/05-manager-replay.cast b/docs/design/chat-cleanup/evidence/05-manager-replay.cast index eaf643d64f..ba2748f87b 100644 --- a/docs/design/chat-cleanup/evidence/05-manager-replay.cast +++ b/docs/design/chat-cleanup/evidence/05-manager-replay.cast @@ -1,3 +1,3 @@ {"height":42,"title":"05-manager-replay","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m Check the review status with the team. × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.8k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay3112663442/002/manager-replay\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m Check the review status with the team. × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n \u001b[38;5;243m· resumed · Check the review status with the team\u001b[39m\r\n \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.7k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay454034178/002/manager-replay\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/05-manager-replay.gif b/docs/design/chat-cleanup/evidence/05-manager-replay.gif index 9310e5c1730aa050d923d223137d5122f11f1a96..0e632b599ba25d81f0e300f5220ba01c685553c9 100644 GIT binary patch delta 28850 zcmX7vi8qw*`^WERHe+TmmJnh{_K-bW4@TJyQL>IDWXY1sR`ZNqmJ}5sqsT7%GM2`^ zR7|L}OOljQskHiizUTJ`+~+>$KG(Uf_xp9d?;m%e^B9-!K?l#zK zM5Q?$);BQM)H0#d1CAe$Fxht?Dk?fACdPtl2bT#_8heb~j(9~xM5?IiD=O_W8cP zeos%&i}_dB>|RY>>h$z<%FK+btLusU_LH6628I?1*M{8O+!z&;X=&%YbMyVL6kFT6 z>@|0(tgH^nsA5?91Q!=yJ6_k=c&o`ZG3m~oJCAPpT)$r7=;&x-Vsd6|JR+wt?)Ct} zOi!(!V@ym2mXse02}^tUFsL^1D8Wn|_=<+Yq; zq?+1zm6es-dBr5x+_$u(CJYW4+PT`=+B!zX9%7`r9nVZ=BqtxcUg@5i<(Zl5<9jSP zMMzJu?f>fPJps35iLuac7*5o^?8XHsENul?^Q-^0f0oH{XInV@J0m z9{#PZ?I&UqEPan%x_rgl+}!Kr1zY<=XGTVK&F!sioIIj)!@^_Cj`*@qA9ix~96Rgr zDBb6Pf9U!1%|5Y=O9x%NE?w$!31+$_WmwsGMmgJ0DGGCr_x-#(_B zjpbhBy1E(XgGX|G><=G_sEcs1qzBV|n zR_gC}x)S7g=4=Yh$vx)eg}XOBi;HiUmycdgcZv_TYQJ4q!^pSCHCeD5)#G}J{t3WZL1~QHxPULf1NSXY|^Ge3JtiSv3@2m+t zna*OJ{m1Xs^b%1K3E=R_N$E28ZLQpJ+*g^m;Ta>^;EYJ;=(OxV_4JL4Iq%C78v>jNxEyBf9ve`^?iUvVsM6qST_Z|s#kA`e(8Ahc_pKKDh z+}SdYkVxB7{hqfyOx5JJ+%q*ID>~=N4b=d=ZGH22OV_A)9*dS#CmMe6p3x_+@Cdw6 ze$amJd>$_Y7|!<&37AmuZ4Q~3D{j(2sA*_g^pnetPt>8VBH;cu-#FO zobWK*ncLX+&yd{Ev1mgZleEZg996snQX6(H5#W(0DCA3n-VNVSwcxfO!8?z%LYv_k zXOHk18xJBF$7a}Zr&Ndqqv90>n&-GELB6+-81$;)Y@&cc6O2RuTo{D;@Q5D3Yc?ej zMKf5yVy6{=OVMw(`Z}+n8t7(xiXYctbA@VJ7i>mnp#=6^t;JrW; zN|9J)nr14jo;SCIoe>d#5el(~CPK>;(W-v|0S^o3bW+1X1KVBfPE%alF@^|iv!mfP zq$algIt|{j{rJ2f@xt}yG_^94h{MBU^#dVI*x*54dH9YW7ARIf?UTOhBEKImYbA^Q zBO7q8|5s?!RurU`f~1M$fU?c;blg{nE{Y8vRh!|kPhIjS&d>7

SaR16q=pF!sE$ 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 delta 24569 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 diff --git a/docs/design/chat-cleanup/evidence/05-manager-replay.txt b/docs/design/chat-cleanup/evidence/05-manager-replay.txt index 9691589a03..76eb406fa5 100644 --- a/docs/design/chat-cleanup/evidence/05-manager-replay.txt +++ b/docs/design/chat-cleanup/evidence/05-manager-replay.txt @@ -1,4 +1,4 @@ - >● codeaf home teams chats sessions spend settings sun 11:12am + >● codeaf home teams chats sessions spend settings sun 11:54am Check the review status with the team. × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -11,8 +11,8 @@ All checks passed. The change is ready for your review. - - + · resumed · Check the review status with the team + · esc interrupts · ctrl+c quits · ? for help @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ────────────────────────────────────────────────────────────── $0.00 5.8k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ────────────────────────────────────────────────────────────── $0.00 5.7k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanManagerReplay3112663442/002/manager-replay + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanManagerReplay454034178/002/manager-replay diff --git a/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast b/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast index 9f9f426386..ba6ffb81cb 100644 --- a/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast +++ b/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast @@ -1,3 +1,3 @@ {"height":42,"title":"06-manager-live-followup","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m checking review status with team reviewers × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mAnswer with only the words Still / ready / for / review. joined by spaces. No tools or delegation.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 0.7s · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mStill ready for review\u001b[39m\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0032\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0002 · 41% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay3112663442/002/manager-replay\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Check the review status with the team. × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n \u001b[38;5;243m· resumed · Check the review status with the team\u001b[39m\r\n \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mAnswer with only the words Still / ready / for / review. joined by spaces. No tools or delegation.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m checking · ctrl+e\u001b[39m \u001b[38;5;238m+25\u001b[39m \u001b[38;5;238m↑\u001b[38;5;252m 5,757\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 37\u001b[39m\r\n\r\n \u001b[38;5;252mStill ready for review\u001b[39m \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 \u001b[38;5;252m5.8k/1M · 1%\u001b[39m \u001b[38;5;146m⠼\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay454034178/002/manager-replay\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/06-manager-live-followup.gif b/docs/design/chat-cleanup/evidence/06-manager-live-followup.gif index 823f1496fd0b170636e05e1f76b47a2d44ce7106..9c24e5274ea4703b89c8cc1557646c1a2d38cf0f 100644 GIT binary patch delta 36316 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● codeaf home teams chats sessions spend settings sun 11:12am - checking review status with team reviewers × + ▦ All + >● codeaf home teams chats sessions spend settings sun 11:54am + ◐ Check the review status with the team. × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -11,14 +11,14 @@ All checks passed. The change is ready for your review. - › Answer with only the words Still / ready / for / review. joined by spaces. No tools or delegation. - - ▸ worked 0.7s · ctrl+e + · resumed · Check the review status with the team + · esc interrupts · ctrl+c quits · ? for help - Still ready for review + › Answer with only the words Still / ready / for / review. joined by spaces. No tools or delegation. + ▸ Working checking · ctrl+e +25 ↑ 5,757 ↓ 37 - ❮ + Still ready for review ❮ @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0032 · ⟲ saved $0.0002 · 41% cached 15.1k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────────────────────────────────────── $0.00 5.8k/1M · 1% ⠼ working ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanManagerReplay3112663442/002/manager-replay + esc interrupt project: /tmp/TestCleanManagerReplay454034178/002/manager-replay diff --git a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast index 1e11d9379f..3051d72ec3 100644 --- a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast +++ b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast @@ -1,3 +1,3 @@ {"height":42,"title":"07-failure-recovery-active","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;103m✕ printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit\u001b[39m \u001b[38;5;238m+9.4k\u001b[39m \u001b[38;5;238m↑\u001b[38;5;252m 14.8k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 111\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───── \u001b[39m \u001b[38;5;252m$0.0029\u001b[38;5;243m · ⟲ 40% cached \u001b[38;5;252m14.8k/1M · 1%\u001b[39m \u001b[38;5;252mconnecting · 0.2s\u001b[38;5;243m · \u001b[38;5;146m⠏\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m · \u001b[38;5;146m1s\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery1487267512/002/failure-recovery\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;103m✕ printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit\u001b[39m \u001b[38;5;238m+81\u001b[39m \u001b[38;5;238m↑\u001b[38;5;252m 5,667\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 56\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────── \u001b[39m \u001b[38;5;243m$0.00 · ⟲ 95% cached \u001b[38;5;252m5.7k/1M · 1%\u001b[39m \u001b[38;5;252mconnecting\u001b[38;5;243m · \u001b[38;5;146m⠴\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery699826278/002/failure-recovery\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.gif b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.gif index f6faee8682365f6fd85c0302ad16fb08d20b1a11..3be80809f19216a652dd1d0a5ea941922207c4d7 100644 GIT binary patch delta 40859 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 delta 37795 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 K13a7t1OPkmu1ygD diff --git a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.txt b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.txt index f840c09db4..7211f54259 100644 --- a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.txt +++ b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.txt @@ -1,15 +1,15 @@ - >● codeaf home teams chats sessions spend settings sun 11:12am + >● codeaf home teams chats sessions spend settings sun 11:54am ◐ Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit 7. This... × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit 7. This failure is intentional. Then recover with a second bash call: sleep 3; printf 'recovered\n'. Finally answer only with Recovery / check / passed. joined by spaces. Do not echo stdout, delegate, or write files. - ✕ printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit +9.4k ↑ 14.8k ↓ 111 - - + ✕ printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit +81 ↑ 5,667 ↓ 56 @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───── $0.0029 · ⟲ 40% cached 14.8k/1M · 1% connecting · 0.2s · ⠏ working · 1s ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────────── $0.00 · ⟲ 95% cached 5.7k/1M · 1% connecting · ⠴ working ─ › - esc interrupt project: /tmp/TestCleanChatFailureRecovery1487267512/002/failure-recovery + esc interrupt project: /tmp/TestCleanChatFailureRecovery699826278/002/failure-recovery diff --git a/docs/design/chat-cleanup/evidence/08-recovery-finished.cast b/docs/design/chat-cleanup/evidence/08-recovery-finished.cast index 41f526c898..a5e40fc019 100644 --- a/docs/design/chat-cleanup/evidence/08-recovery-finished.cast +++ b/docs/design/chat-cleanup/evidence/08-recovery-finished.cast @@ -1,3 +1,3 @@ {"height":42,"title":"08-recovery-finished","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0032\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m intentional bash failure recovery test × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.8s · thought 0.1s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mRecovery / check / passed\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0043\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0012 · 78% cached\u001b[38;5;243m \u001b[38;5;252m15.2k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery1487267512/002/failure-recovery\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0035\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash error recovery test sequence × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.1s · thought 0.1s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mRecovery check passed\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0042\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0012 · 77% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery699826278/002/failure-recovery\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/08-recovery-finished.gif b/docs/design/chat-cleanup/evidence/08-recovery-finished.gif index 2c90ee11198073f7e9f2c7a929ca1b0ed7ba6710..615b192cd23c1c16486020dbd455f18dcd263f2f 100644 GIT binary patch delta 40389 zcmWifdpy(s7so%l+H9C>Dwnz6nM-mvGxsp}yO#ScmvRr=*qCdRYbB{9Nh~Q!Y3`Dw za_yqIl_W_LeU)Fof8T$e_c@Qp^E_V9^XneCst3$+rl@HcVq8W|ZS zBqYSeCz#s#=@{C@JgYv{>R(e+8Md|M+i=S0pUhg9`;cQp<%I}(Tv8% zrj$qBM#ntjTkfz*%bJ^SmzP&LkyHEn2Lb}4QZGI!EMi@(xt!GTz{S21cHvRx9)Z`d-!QZCioMm6k&$8L z7Lk7D{F#jGv#hp9kGh=`lDuen)LMGn?S(+}wtk8%@X0 zQZiy1iYqH0oJg;l$_=!!^N+Zk7oSkn+Iq*^5`XMuT)c}l`9zu@vpC_--L&pYX2vEI zAA9Pv(V`Q_64+%?|F6f3?6JnIr`PojY=VMd6lTU3osOQwYz-K#SD!AXp-si->HGv`8OHR+!j-&_XpylztgL7O0LGBU^Hq!} z6VL*js|yBX6p=6iUD^2Y!hCO!@G5cAhu90Kb3iuy?=!2)ApAvMfkffG4hdH*T`>Dh zV2{#q`(siQ%N8Di4?a|f*ts~GF2Op55VLD{dybt{XFfmjrTUsI@OwPRQTN%S96rmm z_1RCC!LX4Vml>*8m2q2%a#xKDRDJU)F5-=)L!uhI?w_xp*O{P$57IBtps+h_Fotmw z6;!=fx3GF^p=ckvWJN(^?QQ2iZ!Nnlo#$~WcRqIWLZ#|gd)A#0#lp&?f8zU))F4N8 zkuenW3#L^DjxW9hR_QG?L!CTxqk|juOaoXFg7z7GA#ErFYRyy;HPd&S3zsOscy!zi zROSU1lAOqOQ@p>yR<&4t)Pz$-s>_c^!`V0}4|Es90Lid~a`3_|Dg)LfLU@lq;C+G$ zQ;Jb1p%lca2q{q!_g+9GXX%naf;g_f68vCe2raV)%E1ewfqwo-W^cBr9byY1p^GQe zyF@Imyq|m%fE$19;!H8c@M;8?>b$g;yRG*cyo|BI=o(<|TD_BhJ*GE_*2Sdl3|}g4 z1-ScVj>fz0mO1#vz3?5%947Oa`Oo$;^atUa&+os5CTJX)jBI_s{T8t8Hhk*kM`FFe zqfE!28-6>+`c&@KZ}e$Sa@_8%355J$8mMbI{Z%6|2$0g~52w8R;%Axp0Ph)mDQR;g znh(f$lkdb@Z$gz5MBx$(13(6v_^6Hhi~eHpMbk|Z)R}GBq4!$;bvr(xDq|tB=n0z9erf$Ilc}fL*5mcVkI({P(Rcx*uqnH5zzYZ}4_G!af zvCvj$i{a5~K32_(4V9WVYyD@QGH}Jc2le z4x(QXhE(^wC29kQ%K=m@6a?HqKo`PZ<)z3$IG`9DT#a*wcl}f^z>6HhKpVl<7kU7D zvb=l}6eQ$e!Jmv_(Byjo{_&+}!`l!MC@9sK1qBWP_Ks~_9#O#_m?kM(Xmk^-8XT&8 zdc&T!Lk19?z%zaed$+5u6;H}@1YAkks+`+W&JnML-)I{EtZ?bsl_BAV?-a!h6OiM7 zsl8_4rH+_ArNb){dH51R$GDoCQj_JjI#siyw3SyC?5$;>{OSI&a4@;{kA$rde>_## z)){;G-Lf()`>9OCxiSbS!c;}ph4OI>%>NTC)=Ylkxv6uRFEc_3wvgv$bOoV%D}bn~ z$~u$fj%};It`UAPr+R9$lA?Mz!a`tV{8;R%dWED2L16YVWxcFcjPJ7RX&u_8HZ*gH zOEhhwosF#L0Xnc)vq8bmq;1PUfIC%>15X(+XF1S>NPnr#A z#DkCl8MYXdj&F9k1%Tolz;xh&N!}$GnE466ily@GN7SJWND!c3Whij3j9M?9G zS5YaCh%IpF_<#Uoj|?2a3`-R$vSiR4R9A5?(4NdJwZih#5;?$cEK3-Tg#orS2`L%O zcPRj%Xp(A^J5SpkZfr(CIOpWO<8N?JHb)EscyT=tRi*|2@N8hxm;9j+i|XMG^vO}- z)*^@iOdo-v!j6$45WJ8v`x9)-wlu0f?vm2|kNHTlQ{>k3!^se8e!!@BdK&UQ|8qvwt=S4&-=D%_$yS>Vf#2vKUcksX*%B@VYk_3Y$XJ zg41p?@7v9fR$;at7#v=09@K_j?KVz39lTeleV5ZT)y~^*uBs-%n0d+HbY~GsN%R;- zJ>1C8(_55$gtIZQUF(UJ?~$BVj)9*njt-dqJ@w$P8qoWa@AUY!gR;NJvky(MJUSlA z_(%-H_1HBB2IF(VX@Ec$0+2^=3;(Ff3I?dL1Uk2^lwGOlR9iscm<9GIs}zr?(nQ;* zI&O|3oh*&~1jw)_b2mY3`_%^p41=v1%M58ZC7eR+s zTCgxBoDdYO!a6^>CRe>LF${ul+!u~_$4ZE60R)-pNa$tDmLvG6bj!YoQO9PD2W|@sQ zKQgZB8ii=tR-%Z9Plz*RJ$Ordf0%BXR_)?9io$7Ye-hP650+6UT&%<{BI@UbI z*g&v{gR8cT%Csr06DCiycHZ**g|}tj`}^Yc-mQaQq2qZ(DNMoq#@= z|Ha%|+1Ts%Fw$5M+#7C6g>0UJ@N!Om*T+D~a55kVW`ihR?mPe$@)sVj_8nxxfj6;0 zVf6T@a*SdMMurn+DHL#k2e=CcR2ofQ9+4jrmRIYe^3 z7z9yllJ%`I8)T>4GQJ`)LBnwdWP<_uPWQS?zZ9I8I?M<}d8SM;_>qlkFy&qbz&*qI5m^fd06omp4yREi%-)X-L;~b5 z2fi_c=?9@7ZNR`5-o3e)H!~LRBQVc7D7GzTemDjNDt@(svBg4pv49^IUiFhQ`w_G` zgMlbxeyw2qNi?7i5=I39k?>78a1?+$lBq-z?Lal{uz0+(3~cZ^@69@jjW7%MEQz1D zCte#4$zm&L*d~bG$p0uRAHU@dz5~|9Kr^vgTB$ioRq{>Kr_97pYvSluGl{@{JXnFm zFo`@TESPBgvG3C0^%6C%&m=M_K`(wWRE`Hd=|4*9OED#EU?_JL4)idkps znTMTc9v}7GTjUuH!VGv74GkALlN?)-0BQpBeG@ZJwdl71D337wv%_8z?a_zjv-Pn8Z)z}tN-C%t_YI5rzk`|qI8PsMH4M-p%ILeF1=+^#GBJu&Rk?jE;4^+!L>Yj5 zK1--)fvL1ZJ8}GxLO0n+A-m|VNmZ1v+Sn1GsXZTp34kRB008*SK!BVjh$||;unYxX zL7pOkC|C>>&Xp3uz~#eF8!%5b@8}~xhB)Sw8z7-FIE*X+tF{!h#GaS6zpAK8-Yqw_ zInS_5BRi22OmzVh&mfgSC$G>7XBi=!4M<)PzSPMR!!;5DTurlaN!!Mpuuf~q|Xf{=aS{3uCKc` z6fnt=iWo0%LH{=m9=w1;`c;*5Oilr&JhD3Mw*wvn(cH)BT20;v{C)mhy3m!`h->+0 zbnX{cC}OJgdG?7qn+vlxOu)uMhhm#qo}Iwed_Q2P&Z>hZWE(Q8fDJqT>qra>9&)G6SY1$CdwRh=?>jd8N(1uN?FtHu~b1d5^{^9Im69L2~y6?ZkEVFNo|^? zURBClcr^MY3oKYNJ&x|AMnmQ`-tWgN(_aa8{{+gCU?_ahKZ^3=KyB-QSR7`y;L_eN ztwVL7qgcSd4kQNvit$f&yPo`UXlcCe+a3yE?*b?fLoou?C)373hcLYEoZ9tSmX0<^ zc-(hm0V5!+ZCTf_AEFam-ar;KLY3s6`{KU>A8E?cjbf{_Nve!n7NnWcgv$u zl+|miP=QInV2vwn%?kt-)tlSv&9McF%lNz<1id7{K92^>CHhTthmtbRdB*_0qbZw5 zZkXk0pCOyo{HLG3Hk7(6C*)d5Bv-gf;b7w%yk;%mW}_}z@!??}L=oCxcIxlTZi0+d+DOAaI* zB2@?21AgCqd$tOmkxpDjop?#10p8>Th8QT(;U(5lY>^}&T`bsf&_b`YP3G~dT$hHp zmjILj_Qsx9-w$~04H5_&K>opZ$tIi4VtLns9S5c2po65xA@Iq<~#D0H_cz)JbV6jtavts1t8;jQYGKN{_}2zPqex| zA0UCC`&PVtrkJ@*fLr|TW9FRKm3QpS>DJ=+>!!0)j_*?>KYV-smUII41_z(Y})5>PBzP#s$ca)gJG{=ES5feT8t3u;iVRDQ>aK}{IW|eaE(1xi+vxV z`97MuY{fq>-9!EXlAX-?!c?=NC0zT|xr@$K-~(G4Q;7|e2V99 z!T`521)kIbJ!78-verV@KP#H?K8}aHazq&MuP@XBOPc6cnP0D9KYWl{U+kXxmbJbl z1%$A_4x91TmLNajmWKmTucd(1xi#Urbx=Ho=Lrh{9Y-Tc=TXU)k`#yF9 zH5|B-SG%I{Vnvt#`w{1_Az5E%$G-h_ng^Nxkb5%qOA``~Mc>2mZc46-YOl(?goFYV zRO|-e&Vl9Pp-0)6ClkP_x}19@U!W(xbj@wYUKSpC{4s?!586NuaDRBQfL`p>!e8!o z30$E2O>`D~*a;pZDe(L&2)TjOG+VA6LmGT8f)_hREa2e&kK1Q=Da9?jHCj_?ET9%UHC(%LLu=~hx83@(6rP<|YWc&E z25x=$Ev_}S@M0$_6Mjo_VYYSZ0PQEXr`r?{GpOTyHQDBs;Q?qc4g*9H1td(o`v5{N z??E%VxXS{uKvW~JzuINdx#}{NMnE_HpxejM3Q){k|9Q7h zP8aQkjbD-GO*QsMbBUob4>vkQ{W20-B}41AslqPuqwGsD z{ojuqtO{BjqR8k@Xw$^Q*97yRK`!fEZ=?L4Hz;ZE75AadO*HOl#tFZ+#5_4Bs5>vB z++rm3B-rgK^5n=X1G%IoH{%xiO@$-g_;=6bVEa(K-b;n?U@L@1!}vT+DwY)|E10bu zl#MjH*?NVs^WTJpi;coPcQ-Kuh5B=7MWFyvZPbhk&Fyb_XR^>`c`QXRK`2$#is5RIli5MRKZKtX9#zM44a3fdH#`Wt7?*X#6Orj_ zX?@wu;&$c07{aPANThN595h|Cv;Xme9aik(zNX3`f5cFQtCCDXSD(_&*4&DBK;7R9 zQMWGtF6L3_h;91P7$++SQXTtjHGSs;KPN^!<>56-6`nzzoPwse=dazo#n1csX4QSW z_}(~UqsT$N7l*$CWR>-zGX-)bjk=Exm7aQRDWUD$e$w^7qc1f+6%>;$7+E6CQ+S`| z@Oy67p*3Px03JTHV9pY=sJcgBu~3BMlLsUe}JeUzdc#YrCzt?ri zUSu2sQzwJS;~;TGt5RIzh?&K(0HF>C*hz4KOpM&Y=S=IhdoPRQ=)n@p1~x{n#4{b= zkq6sJg@=oV#S9t;w5GVce3yDem6`@nc6mxSzAA{tB9_4E^e4@q>1fs(g9q`;ympWB zt+Z7BoqPz!Rz@AHRMl*yD1EeMqNvfIwa1W;+ccM&$|ecA4vK;+0Ov$!E^B`-hEnGJ&1ch_wB{QY?sAmsAbMZKNP>+%~!UI9J!e2R+*wM zl4F9WAFV!tbdSj9H^M&3V{+huWF|%QQ7S8dJRhP!wl&}PvB?&jsN=DUAc(38C+bgJ z5nx0R6^vebr^$kN>msa={JtF+IdM%eYMk#K&h=c$77S$-Y47pSwetSN_1XU-j)fYz zT^QVgBQe&FN$H0Jzq;Shf<=)SM($U|CL0fbk94hgIB~(V;ecRplhc_)9%rQ}lTBU& zQJ(i6POi92-Z~D8_8u^rYC1L99BviuJNa;mr*!gm93$F)dDZRy)MQJ_Ky=`9Bd_l5 z$yN$1#%asQyH{+AomU)87VYvL)K9*#&t$}eC>Z;Ucuuud4a9^U>GBy%p1OM(b~3`s z*!NZCRQnC9lTjXBzEk(7?zJ*bQer}l{oYJX-R~GU8JpDQH@7|2@dOqd&oK615S#8C zvWh)b(dGY9fBL}-Mr`7B4(z;vB~$|z9lA2cYT1xr4ASeZdOh|`eYTCKG_wx zeSiA#H%45>vhnfXQ`6nQ2I8`Qb{+q_J^f@K7EgtlkiiFLI6T(z*`klg@GewJmq2bj zUBTo8uUFY$sc5K4m`+vMNofm+*PB;mcckf*ra+5RKQiO8!c)LT-T-`GXEVD@k;z4Y z;W%7x5m?V(0QEbCBYkRPfBY(t&bC(2)1j$I*aI$lPa!6Cr9ATXpg-1zKNayXNeos_ zl|;)Xch~uhg5`=yblJr3@vz&EmIco5QnIfg$le5j;$fyZhm?yB!3HY{KCnJU8Bf%$ zF?FVRZ!SddKi~#~Y4)Ae6 zAI|p(093viQ^j}-g%uM}Cs>;cJ_6+2`0)rU(JKq3euGdq+$_Xmzyef@gY_1NCjf~U z0*K5&lfe==3cY-VBY^G^gi_@ZbUX{@W6-yc=R%h5(nCqzZk=WT)hwT7mW!~&h*$_U zGX=SzgIo)Vm2L%h&Uv8~Ac9ZI!9| z^?iwWral5%)yHtdfR<3XMYaP2iy(C(7=$sPi+AyR17i@XPPO%`=xlKjst#b2AaA3X zNB~l)aZq5rj{t}p1LK396VxAUMBvsyq4!`IlxnX`4JRU6uXTgHb90z93K)_131!Ue zw4~42gtsG3wh!@(6ZaEM`Ue~=Vu~K*RS)INP}3hFGA0nb5s>4yW`)&2flIbjoj8(d zl5fJ)!2s%8kK&;KT70O$+a{`gFlXF4c55)D-YT-6kTNjL_ffr|< zY0N? z<`AWbX%xcz+B|j_GG4qhnuBm8xIZowad=I)nFwM2H~QkwBj(?7rve<~6n5}U210?_ zlVbn|kzTwP0k)wIo5yUnwpv6gh8ByQ>DA63W5y&Z5CJTP)`pApvP~`*a>{@q4^W?@ zUlcuhmT2-kuNo{7VOQ|d{8x-Ki2O2#OkuqAe|)3s*>dv><__Qqf;O(ru21Kz=lhou3J$A2}m7RFCKSuw_q}DauKh!J&^va(PDD%TXh%F=h;8y4G%mX zRw{NydXHQoI?*>=CGSn-k>N&oraS^}7L)rq`ZajGGjDB(Lbp~3ooIss8YBv&WP+C2 zM>XVHtBT^)7zpj*oM`!M6ZX(06U6xp8&3v;4-2LbgFy!1a;yjCkrPl2`*qm%2!k0~ zWJWS&h8~$LpxUKL5d9}T0yP|&n5jIhXRy^2M8!SLA2_3DFZ$T^(lL+A8I$7W9&{`i zhsP&FryQ2O_$MH45paqv05f6_#VZ40BzhPd>dWck5$Q8+XUZ8^?873Ae)_v2J#1jg zIR`}yB%%EWIJB4blkezE0dJ}r*8&y~S$Z^J`Fy5$k{Z1=$iwYbo3SpB_coQcqz}VP zsdQbvSFROPdE)=@=D`&hHFs+|@4ZjKh9#Z|wkR?wv+|+HlYHnbZ>#zlH0veLxOd4P z52-pIMYd0@NxnP)BT+$wdyc>g(VLr1lCZL345mJ}fbGn%LYYs$P#a!5mPXHJiN1UA z8uG=GDLU-leHR*e+sv)nvH+L!&9$r0!voBsY2ZcPOVExs$|`u{Q;M0T_a6Nh47*!V zZbZW8QrP~Z_dEb^8vn2iZed>{&^qSslZI3A)cf{CDx{p4{xi;_s{0IeuoxHW$%Tb+ z;mKT{TrQ%Li)`TX-shqQx#%e_-$yS0Hdg>Xj}e;}RGb&mpBJ{C7xA1I4VxEBocxiXZ->Q;g~wKg(J`T}`pXHiVW(>mCJ`Sk4VV;P&&8A0OeCIK)?*w| z0*2tBCs`rY>?QhGNCD@Q=hUbD68tC6utj_&lOdIF6}tpV4JqWT{QwFn`hM~kCN5If{&R(X$O|)ITnVFTt>GeATfq9p|4L1deYQ)zH2gbgyW1vzrEg>Y}H z>sIOAs|6b;xnk=jwkOLyKSRi$FXuAXr1G1?Rtxdp=Eb5)2iI?`YqX2yf7RFckD?z} z#QyeqHm(FuP5BsEy>hl90r@;O|8Gg{U;X%E9PlIzp~a@Ti7`OpaQDGA9%<_IsM1OC zobcK&LI|+l!{~yY90>rh<3NBJh75j9o4Q&M5#RsM7GQ(hKu{{;cS9&8Ydv=T zGjDuY`qV}tH$e!oDPzMt^o_E?b9N)AdV@E7S@ub|0iKC856h*}gm!Y8%OUD35YOaw z^Bu@O9kY4#U$mQtFkzokJ{nfa{k|8N4?B<#>d=gB%uC=Rq|BK%)SQDty>N@hyy!02N4vSsrc7pHxeD5AY4Br z(j&I;FYEy>z%v6P?$8F!5Y9YFF6IbKHO+J<9JRA*wtw1lDA7(U$w>)7k-`9gCK(@} zKMbPEQnBN3pplA=H;nq%|2%+|)~AkKK$;1Gh=YAEBVxT4y|R)4=5}Oja@F0RBbd8{T4{iUodA5;_njQz=<_iIaNn-*zsigibTk z&fnPm(!i9UAcRQgbLyxfbxCGQr}C*ZYy?et2jp7<=Gj>lyv&p_pustilZcNPt6jp2 z)LbSFi%S^#yIrr8A~F3vbZ|G%_P={^|K)A`&cpq8mFHA0j@oy5v&3Mt7ET?pVGdBj z&*TDU=;HqkcJCG8r06>!X>$a4Cr5~x0>p#mL{CdRiANahMe0-caq&C(5vg?B90$d( zN2`A8`6d<^{K>KXQ_B3&^KB>6`h5R~GwDNLnBKJJ%W2i021{*rXsKCcS|Lvle7fTG zlRWgRKs>AV)0v8I%?XV>u`>v>H~>P4r-}@N#3C}J#R0<&nusz@)c_#~Fi{8W%Q2}k za4Mbm062oou_%yG&r)8(anCl0NlS@W)Q%-f&yV0x6C6;WtXt~r=+l>il6 zN$&|#knw~b@GUoR7mOOc1<^abjmEb6bsvi)Xx3mrVk6%D1&Z%yH-P?vgHLMxs_sYE z7^VGge!RQgdnm9&HJp-a@I5G38Sc&G{{Bc^d&4uKd`AB(p;}%0Q|_4f&$*mw(`>0Y zd3rAdqPo>^v2Q);X`7Zg%y3TKH%ddkDl_@YFHg(2k<;(f0Wt_`iNMEK!Q^9>2LM?j zTLy+YF-esWRtzB`mC4#5$d3ofR1jp1n=PuG>OB{WHY5=!^zQdOH3R{D1fCBZ`||`- z^DC9=Ao_4CFhdoL&t?Mh+IT_aiAI?`^M6_GK7pjF7h17I6A$$dQB7RV6-;crjtI8x zWl2Cpu2wjR`&N+<`j^D|FNQxvSmu-%dWfOwYdjlMKns(e>G4Nq!Y=!|Mw|#ST2NX} zA)LG6mq_VRsSZdvFByKQq2S@fJHjzVdFjlxU8Qq%w*z>vshtTU7waFaK2&Rc{QLKp zq@iPwv-SR}P&zF7J{dwdw>CZl!>TV)A-=M=)bBc{xl92%zU{Zm-z&-^QJ(j30O7+a zwZ){>T(!k}NDY*iU@*YT`4=vNfd?P2UL1!(Iw`oTF315C=g}I?SfMKm%_0z#=m`Pn zmHQig{Awb!R|NTp3z&PFGAs?iDrAPdKaBE_=o>f~HyZa~^Y51ncgO8foF3#*sHG6n zF%JWi1=upY`tLq#_5o1SM5xsVkd~YHq}q?{oL>Ej(bOLM@tsgy%k?D7*>g)1Q<9} zK5D#Q`~0b6D(9gL|LMj)NwHku>G0r%LwaUF4VE|ZRL?)V?gF8nE9iNC>f4lCzntQC z6$d+nY*R?78W>xMGz3v*uJvoE_7{G2wLf@EZ-7t6B_Ei9v;a8THR^ZWSZEJgSrjaX z8DPdV%O1QVt_YNq5dfA7f>V5|CAUBzD})7v*TVF<6(+GF%5~j8_$eLts+3hOFW46$ zcvK9ob}Vs$FeOgY?}iKV?tktB4C?e;i%u9fph6DZB7%J12o-3$D5$A?8liJsE4!Mn zCm#zRQ8d%mROc)uaXVRtV?yU=Z(^IcA0-U6f8>^&M)J+}S?OvDQ!2VAgft&_5|p08 zF7#%Es^6|26#h7T>2hJv&sgTe+i1azj%SB23AtwL)r0{T#9#Kms^fciq!G;Ac?*p{ zJrbq}g&K1g6 zThmzC?ejeFmD|PLwWfW8PrL4}V>ILO;b1d6Aw{k^&%Dq!B-RjoAfA{w7aAEM9FMubT{-9fKu+IuI z`Al#+bVBSL6^33ZkPyqhf_j#C&dRI}bna25WOOy9&)7qZeW;zQ$dXYuNQ@hxaO3!sPpGTq$=to$^F8;5ddlPDndT*# z@lKsBZ8tEy?VQ9vP|mrIAT*5cbaI{^r~2Yop${}NT0VjX+P;U$(+X)H?A+{*K6aeZ zoMHUoqx?DLwR8DhuN?qZANpL?setG1M3Qsh%X>dgmMYPgC>PUP+65OG_0)3j*%g=X zlr{)6=lA=xGgyTEMxM6vxpRKByV3pY7N}RV3x}Vi+&?ToMd9(E4|9|r@Vgh)5$@}d zGMCsbt+D&mZ9hw9r;+FAsUt)z(HlxyVF@Q+!N?CLB4SdIpQbm{{%U5Z4R3nAaFtA0 z)s+8<{JwW#tdiCK7_)ulVvlAo)g>n>i}JIL=Nc%gt2O{V@1tyMiP_Eyf4z90!?$2B zlrbH8Ipet^)xClO){grRAAefZ6EK0Y+>r)=x)Eq8*J>s^6W&*Gapljy5E=MG@euo3 z;e{!Gt_h`i;NJcTaGZ*$nFj?7EsyckPPV3kp31{Omn3GckDzxz0vFJko&L(j)eZ*k zkmga))V>(ho=c#EhLopK+anwmy5JgFpydEdg=oG^eJoEDBwqf=v_%(z=v3#*2iB7c zMDdb&chVKrW{1z#@>u11!C+^O;+S5Ima z(JefZZ>|vJd!=p9?`&QA`M^ggxh|S13cmm0vS}?ulgM90CY0BCcza?OY8N9%6#kxA zzIRn^bsX2;XFv*I7!nT|fOyOC5=8fxKo7{E=by<0lcj>{sCWrVjl+zr=4ucz(*I^D zG#~;DO{`vf&j?is)?8n39OcAs5%ciDytdcQX1XBhSbZHilkg-|0HS^UV@Y`&?>|zJvD5>OuG5d2J+%v4A~37v zYhZr!^-e*>d^-#FuG~cSQms#2{PSSbwmN&okPwk;=Cv;HK@R_(1+NGV6p@4C#l{-S zf5{YcmEr__4fZ!su(7}5vS}~mO%+`uN|fVueesk-;{7mnvD_VwPtCw2op$!~j0I>O z1f@A>5=CMhp36`Vh*OViD7a`65A-s;dEW=DESF1)P{la{64WsTsQ<|R_2UB^v;-lb z246*dDz(PBG_f2Y1?&V29aJPn&gF;91!9WaeOnZG+e3+0J_fXeoj5k+oOV#ffOblx zmlBTbmogcJg-8H&nFj}vXQ6qZRC%LxB8DjiqJvHj%lVGWdGjNDWEVYm6i;(px?`^5dPPs6uuM9=-~m$)Prya+VLRGZjP6bjxNd zuBdI7p*S?qG5Y6b;1i4nB7*!t0Gh(JD0E-))N2IcmEqmcyuTl$#qo%>o|i?9O~s9Q z*%4L}z5Hzap>`s)awY$bBWJ_C@Gs|q=pe5+H9~&^Acs2b?$01I?CGH^xq&Z(#d6Pu z4T*YiSYqX8A5e?0uB6*WAV`f2&Hj>C0x>&yrBN!Rnjf|Xk{#s;)Hs}_==7g&_Si{_=B7tfm1=)YSRM0%Dvv<~V%P%17ey!2s#hbKI`kW{c|Vz< zH%GXwJ2c1|0Ii{3^QKU<@v6DXwhsAJKB@!38}#q@p=@dy&iMirFUTs$pP0Yw)ObDC z3ccp-F!Js!aXwQ13jz1#cT8Rb;!85Vsp1eICbHiPF$}OQ>Vb=WNp3H1j~$-7_wiAI zRGX?AP<<=@=W1&&<8hRYgLZK{{|jlns%3mGs2_whDHY71*#EO@^~E{AI*9|e3+WRo z0QKL5Ebn_L3CgInMk<%<+xE>3;Ji69?3uIvtPhh-$=+uh10zl_J+2Pk{5%trEPlP7 zAE<9=%5Ph3)`1QO@{IEX8B5LC*0(2|G$uW7PsqB2`QDx?7`=V+_H>rUjJ;G0{p5@_ z=LVWH@Rye&bqqcGs$$l+IlKFIcKz*ZPxFM^HRe9vo?F-WuzmYO_DPw;2q7G-#DR4P(zs3K2(Y0eOpRzPpa$8nPTKEMyqUYBA zRWw&yG{3xw{L-ztHn{Ft!|@qu`8ub${;_3!UGv*^3+3Bi%?)_#2EW#KvDWWWTAPZk zo0?kx{D>cBT3gnwTTWU(JzIYUYHf$LZpUiKUHTiLo>tM$8~^>>Tb zfA?Ge>(<&EY~35v`ZLw~XHM&HwuY_e*S{aNuKjG?hi`ZS>|arR`577@RD7#E`$tR7 zz1`aoH8z2Q!6VrCv{);Y@&~@qjQ|oGHYDoEC&t#}%z75Cnzi!C$?*svoJ(UldpHnSb5)b#9q`E?K(oLv zd;aK>WOTrWr*?qj9RhF%_16~hf`f@zpKm$YN*QIhBwlH)PMA~tzFrW6@Mk-4FST$E zN<2$wb?5l7z+#_xVegjF{|YxObV&D`Z9_qUXH>R@o{l5mA<966ErNz9tR-vYymT#rBE=0$h2{JCOx&*4UupB537m<{66F1zxJ zN#I4x+X>@(Vl!LEXO9Gan;^ID^YCmX!7T2FC=m^V?+A!f8wLeJjq!^4w*q-wqP|Ul ziXzYdMS%308$kb<0A#%ANr`^e+EfW7-p zw|)f=C562BY4-X6$eSvhx5l5k77%~`8mB$D!#lF0z+2kY2g32$r>9cx+MGU$aNxO5 ze%2Ab*pZbt#=mpaQo_LJ;yq;TE#He^Fi#CobYXalO&jxfrr-wn%p4~ zndEx1jNe^e2r%98ig49H%n8nJP8W1?O+s zTsmG5&9skf9y&dNxNtZ3$|vYmKPyr-bSTj%e#ZjCr3s5z7s!0&5=IH$utqr>#s@~HlTFgzaAV5IohKnzS_gyKA3~PW#RF_=M(r-`+2yR{-J=ZN zN~BkRLa^hE2&|18xZ(7jeI}QF=BD$R;JV-JXNI?QjS3Y8L@gfPvVGVtFyht!yLtNe zMZ>k$ySoJTnKPd#KRORQy7XbU@tvNSjf@AzSdsr}gh@uGc*fly*4H8MhA;nh=jBE> zr}JZSbwOPmzW4oQJZh@Mq2or)8heqQyXU)pqpgtDTW6vXXPg^Ftcp2LnWl$P_8QqM_2qqer{g0#b z{-^qX|M=@n=a|P#MCaHmn{3C-c7!67l@ZzV-8jR+k<7@}F)Aw~JK-2*l~E}YNz2|l zoUhOKFL?g&dflGmab5TOHKg%EcYEd4S$J^KUuS#piUnNT*^O-5+5gZZB6&15^&{$A zz5v@)*88cR+|lBuHeO=+QI>r z$lv4oK{yE6a#p$nqBU z$rMh-wb*hnf#ppvXCToY1|${c%1A@rO296S*kLACXBM#X$jt{H91 zvllAdMKs+-qW`=R@^D3+Q^j(173xmn;jkb#0u#x&w#s#Z;}0%Z6*T*)HO#du#_h?f z8#{+$cXKf4-HR!1;fXH4DR;7Tmh2cB8alD=q+aAXSOv1P&_@~J;!bnlhN-mKzSMKt zBn$KG6&zY~{WI?<5E1%!r07!MeR~X;2f@Z%M!+o%bJ_?R2PsgkmzSXRf%v~2Dl*|@ z@hWtw0k=fI%GCn>lpNL2QY>YBoMFTc|?3t zq&RZ1wWPVc1T6rYO~eBF@^kG>Z}=6uk7|AxCrhRq&Oz4rlk*kU+u zuBA7jXJp+79k+|ku-#IQjjCGvsFC=KZA6RVrs@>gj28@mnJINIm6J*lCK!4cXVF=| z*9wF_zCZ2Kng`5ZK3IocVx|%~U zw2L_2%H*bN+qsCzk~FK_*+r3p$J7|)p`PUlmGWZ2lf`ST+y_qyFRyqJ_mQHY>_!0n zuKvxr0AhN5&8_@7oFCM@#o~9BJbQ(6S>JiO+>hLW4|vdXsThi0JE`bsQ{0u(i0vxe$c>(jFeSx$7?&*$ts7`Jje{Avo5 z%hvl$Sr1Oj`v$Imn+cbF2xC6A4*W_@{b#>|zjuF&?*z(l%HeubBrFij3KQBBrLMsJ zAS-s{e1jMmNPOJ-F|^Fb={vWbzW+)r+kFVcw44 zZ075*BS0NcUq#q?vv%s@xI|jg&fOxw6l5<*|JNYm$I;q9X)lHh;WaQ&G&LoKZ9d{& z8WP~%)h&rFznrC?CWL%xLEhfX`qd-sNjb=HHm(ol$fttJeYwsQUVape^pcXyR9cA@ zg)v%uSf|D)8UF~#Y#@6cKo7Dm3$WlHm2Ll&*FNCFeK5@UDk-WS+d3F}@)2*ug#Pg` z?Tw$*`@ERfzg0o#_rb=2;_|!(tRJX-wXR_~&H2ydl0FPxef!}7({w4Po6@LjL#|9!;PFfHV}bY2={?}4=e{A?L^T(_EdT%dvMWJoNz2y0knRlhMHb00{5c%y zuZ(>$qq!9J$)+NFp9Xx5vbyqf(xMVGgS?|nio&>lpV^`D}M&(Y*wECIRm1MR{Q1wh zJTVFY2qQWibW1%y>+Od{e50^!i1rWLn}2)J2!HbX9P`j=rW)8tc=Xv@s_*zTrp~G| zzYW3Nzbk_I89Daba;VTU-$l!jr#`AN?8#9O0g~?u&wV__>fr%!InRQPeF>lsvrw)K zG%IJ2Ot+!strE}w=pPGou;UzV1WYNG6J-*U6>CUBn{@Lc5C#Cg=(OkA=Nd73E=4V` zWb*10jq%C=l?=J^&H|j%cvXZ7z$YIg(Ez~g%et?Hv@cz!A8Lz^HeJF^ulRjYmC>2d zU;A{ zRM{ngAaZHSlQp^(qPK`OAo$C-xzif?E9-@b=U4d`E6M*F@#?F=sm(h#r#06K3#aoR zY)*Z)ZxbDMy#Jz9I%pHg9y>p;xte&4z?(Pg+R8+i5O>$&;Q;cq9W1Dff_Q#*I>ElbC^`qanm zt3KKN2)c1Ek$x5rND~YYg!9L@X5KA{F|-9D1*5-CV1F3n6aJ2 z|IMd`{Zp1?UZ(;39(ZSfm6-s$KWlK12Vf^OK;MpxeNRp~rQBS$`Ph8+^5>0NCU~#20V4+%p|ecu-9&gw>6~0nNgJ!HA@SFUVu| z=Wab70(?^|97@1&T9u(IFtGv}CwKD(0WelY#UO|#u8qqbb|i&hMl*8xz+G@U0rCuy zL9Jr7VB$#WH7aM=3su%+qAZ%#iw0URWmF%9v;{J?;fN7yc5iVEXY?U!@&qgn%3X}Y zGq^(UdBM%FU1$R)0|HY!4ui5`??PG2vb)vN7&P2izsqB;QK8IeRueSN&>fJn{H0pQ zxgfv%x`aL~%ea%g^4JKTAkXYQ$2PRyF}%*eE`*2_;>?nfA+w831R=hmq)1rjLwO9{ zY#qv7la>qS2^?UpS%(HRIHT$_dhyci3;5j>(U7ttk>DhZrxAIA~m7=GAb2x$y#AGn_s3l^0y zrjMxmqZmLovkz>paC}gnwOo>l5jx|~t<7!;-QYtOpWBlc-3j9OQiov2yR%Hyh8D8J zcGkp#6~)6t#G_w|-`f-?DoVtLh_j3VT^~LSk;r)|`2@`Ns#h{PMC+Nk)YEjS z7mCtPA<_jU7OYt5Cq2@aIAjK1%Dmr{8B@G49&%waUEELHS5f~#w;^KcrEFHL-043c z`@0PF__Ewqirg`W3}{Qe0S{v8crVMeCEq41f3{vhU`qj`q$tWM^PR)jiqLJCEGr(W zr2bJI;mUxbDrNprGO$&SPFJ?%^p#RlajaKy*-~*+QoR|f>RYdRdrLJ~>0)^3#pwEr z_qHw)mDFNG)e`E}lD5>+l+-gr)pP3A3%1mYlr)}(YLwS&yx7vHQ^IRDhHAFfYqoD` zb}4DS3Dp{?*LuIDHKwFJ9;!WAuRXn`{Xy2*`ScPZE~m7 z93sN-7Jw<=K4aQzk_5J3!&>0Ctu~ac`)o~ppUd5@k07`*&x6-m)t`*aRwE?U5uv1`tUUX|lG}nbEMy1u+7%cj zsT$Tf%5}SrL)|bDj!+&YA0ZfP7f^vNb`WN0z&`*;v??hy0^#auzUzsv(`AhF_}Am% zvg6|D0TXm*qpe{iN=`){Wv>@J*!6ETXWHg8`4;Sc@Ofd?Ec(SvmH|~Hl}=c;%7jH+ zU}za$sNeyC#1YVuX&nXC+S#S`6*;SS-sf0MabpaZsnA0>h%Pg`q%UHMng#1`ptSIF zGxMwBRu}w*nYQO50&Fj7+!CLxqTI5j-MT7c(Xt!d`8gQV++gwoYDV}Zi#`2Yg3e#{ zzXJ)9UKOt@@$3A&%1pgg!=svR$olJXfWjVFIV)7Io2`HM=eymxD|^9C7b8#1ObpSX z7qdQTeNhi;_CJP%g<`|ls?xHrh6P9BzdWEa%6tymYYGG$O$t5>qC3s~5qUuU1m*XMI5>d*^{z?%O68}Zfy1{Yx zgyZ$AZmUZq$dP!QB+8P-VhWPfKh2Q@n%+@_l~dg>Wc+jw6pjrSPKj_&bcwoLs)k1y zC_s}$EWo06-ARE$;!QG^k@`t^1BfD)=Kld;Lit48_bVY~C*ID!=sv;D-;yS9kap4R zSuRWW`c2KaKS}3q#f+QX(RzEsLD&c7^(gY$HQH&><5&80lcj}CuKlh&!$fw6!1ITwnHQ=Bd3}W z$xWYfY4K>PN!;bnkss!hX?+iqOB2ohl0PBHVmE^YZWnfW$^Pgqdef@d)K9%(Sxk>k z+E&A?ADD=|%FcvQ97{^3@QC17`_$<&%Kn@?GB@{tp$KAFJZ*#Vp^(MmXBZt*n4NOGE^D4x1qFL(pE5+f-=b{oXr*9oS(5P3rgB^c6@JXgd#&n=I zJH}sy#%lRs?x8_tH9CIzwmR?F{+GAOoU$YVrJsq^=JG{vKokY^BM_D z*#^uXC?tyQ(kmG%{*^;d6KC;|1NcFgXN$Km1BoUP0rD!DYRP-}s*$(V$Rh=F!IXf8 zJJY6RRmUFWz1Cjp1oys*XV<8f8Pe~rYpts3b$WT{+FOFzpx{dT7w{`N+2)J?Xzcmg z_t@;N9Zowz6S&EA9u{i3CeZgxz;MGc%VS|Ehj(5D{$NSX6Cu0qRykf zo^$I_*ChL^H}DnClLXme^ZeuMtMjWVZ#lI_VFj8g5W6!k(XJcgs+Yym(z^eOv6{c+ z?;KON`ye{@m{Zv0oaSGlfpyW~x)0He^d&A zIUch+rDq+F@p`{>wsFy6mWTdA?}psNkbvCWm@)dJ;C{SdI!FB&N7k{J8Uak56nRm5 zCEjIn(gq_zop@5hFgA*ihMdnzo#v7n1I>QDnBI9K?L51?V4Z;2mORJRbg1R17{l?* z#<9i*&@-7XZTVDUYns3+EM3QcnBg@G`G2&(p2I?phJa%mCqv}3ew&>woS%u1;KzQ% z0Zgy)cP`)h*(7)W*D2J$!8q54W)9Prv)S^InfcYD&nj;(9!k&+k&jO^{^NH4Z*<4s zdnbR1I`gsj=My^SlTPN-bQUu2FXVJA6r3y+=`23IzgXU}_~K--PG_m{{!(klQv1nL zm(KDj%0JMt{Ql&BME&?FHQ%u^eX{aHXO;f@v@Lm|V|C?Zbwg)u=lyL#@f&A5Hw5S#7~M@#{HA2*<^}qug6@_IeoMV`OPju>r@L*0-!|>s zwxn;{=$;;`JC2<@F7zEY-QAn`UEj{#+w|RF-Mw)9UUcW)J^CI|cR%{mOl;@AEhiqi zNwZVN0;)8na4Zv5mmdvaT3tMOeuK_QqJ#7aU;xU*r$v!3>W*bT8^?hrU=3n8 zpGgoV+=K{74IWpCeV`bdgv8TT5EEF%r*F^5nZ%LRa8KXmDEobVouKr5xIpX9;So}~ zY_!NQkx%=9vagv)bU?0QdD=LSq=-V?rrn}>585oQ3IjEF| z7{uqb!|#tTi2S7c4>cMW$E%#$?z3n%El)O_Q4Ig@^3TbKB91#P<07)YHSj(jmBQMv z9#IW3l(MgTao}us+RUhpyxOPSK|e@Kq4r+ys;VX#e(Sp1VY@VIQ=po5%in}|(bZ4X zuSrJ7?X~}-v$+z$tR}8_BAgEX?QG^gTWceD@$Op#lB07Gf%T$=DhaSCtAla#afR{g zUHYYGs3(k@@8UpnZIdvJ{kXU&78gAu5}(2b2-rMJCbLFM0On!3?=hFt&XerpSs8um z1OUz}Q5d})_6#DR52iu6oyypqlL2(O$f;h?QN-}PVkzu8{?vhmg>(KW^9a{I;q}Db z46;dug1;$_rddHT^ zBt9k?YHx(xY^@QSZIt8a^B0AC^O-u+>$ACPo@1zdP1Oc42l{k)1BSxHfLDvvLji5D8P~Wf z<}vwEc0mLPD-eegdBYs$sh_QF)74U?d^fzlghl>Qjz@E_=(`f>;? z#Ig;H6O}$IPweT?b)ypDYO|>?;p#fI1Rm#!SiD^430S5!W5UK)^o^phUMz6E`)CWi zUtFa)Bw1gP${5ucPXuOEw}bnIv;4U@wB!p?$3@l>w+AoWK`O{_#BeE{vHUhv-+#lq zUB$pndPNa9KH;y;jrg9wr#CAFtwYIWxKVn-5$go_%~@*P_rL7hLO_*xTnoY}br9t|Cjw}N5SpIN^ zyBmIJNP9!wxjIz5Y(9e7SFwjr)lhww^U3JUU&Cj|7ceG3kLOF80zd%pkai)$(Vwkm zx;2YJyqqD`hc?>z{%LP0V-5i-LM02nwgKZN-OqG7$FDLd8Ev^NiYV6myguhVZ2P|%dJjy@y;FVr%mkg4{Ft)sbP^d91-)2G3 z9R2qQQ2g6D^RM6zeupNzNSVWM6xBNl|jchjbj~Ck4zrr z@*R}jVg69SJa##~iCIve^qa`AKd7!P3S81o7_Yh&Ug;eEg=G^ZmyRf6zSa-OEK=hh z16X8@774)r0n8nRei7AFC>;6>SE(HJ7!5THT;3HPe5*Iq1l4WSgodYkx`A#*u^Dw< z#xXM{ynqEuJ9p;j-4yimNrQ>&8B$QsxqAylFja0ag2Nld&vhbcL~zyB{*TX8(-5tG zIkSgP`xhmPSTkN}gRkRh_9zR#fU;w&{3z;YKJ#He@J2yJm! z=;On1&yFf;bI-fNc(MDBU=gY@Jj1AJhdL!@uV?MSbN+f-iNhJCkGH9G^o zDY_;SnpX*lHuoFJ`O|{-6En#Rt>{bUBjX2!9@9L{oNwgwX3B6U(JTKOR_cRg|46dK zG-Pr=T(I!_?_>UFBzuE=s$xHyZ6^;6kml!GRo@UPM~_)&VuD?nhMhLHc`QRp%-A?apC!dvM3 z-#8DQ=;i_H?rZ|`EeRrB9gVF_-M2g25AVLTvV%xZ1X#55ODtS(PEBDk^3t^-A@#%c zC;de7m5}P`^b$>M`(_!#Ls&RQU*Oi9gtv;P>Nr?*}vM9_C4t4;FP1Bf$>z@aLDpASMKu4`EOk#smYP zXyCt}B3vIJ1?g_+m$!iV$k$tNMy%8`cZ3raHdf4WBVMxdCdwS8aSDVd#?v6TVp zJ}9*bN%b!fR2P~>??PnSS#;3 zGZmedM5zrxdp)toVIO_n9S6NaPo zr2cs(eQZhkX_EZgC;2ZWd7&(MsXuvTK6wq1g5Qux*)mDl@k!aEq#Tr`{OeCSo=>48 zQbCfb5YtqcZz@AVDzZG4X&{wlA(ai8#x9x0X`06En|3B4?QD4(|3I3+LfUy`Iz}>G z*fd?#H(fj-U9vn~dLaG6Lb@FCk%HtSCDTVLzK<>@JW?-zbm|k;UU;O7%+NcPewt<& z;e9hMC1jYEXP6IUST1B(BQtFzGi^=jnfAV!R}(TF%QKw@GF=ujZy+DLNj~;4eSFjR zv3J5_-}1+P1CMVnJPt%=1xsdynr4OjW<@4sMVDvY8OXY~kcCHP6D6}_OtWKsv*Q!8 z6Uws_2eOkEvQv;bX_7gQkU4%RAZrpfX{L8tFo z#ETYWA?$W!gjSWcxYg9{e^ z^epmw5WFcBc?}LYQ5hq#MHa3oLB?WFbn${C)j}8=5d?pNLcYz(SCA^%mdL+^0<=y| zv_WvsbvRRMLE9JDqto@PeHpm0qMBbz{MV7tH00pA;3(>}2@|C;SfXQw7&!|(ss+}f z8Ih_9y3gRZN2UiR{({^Rb z9yJ5i!jprFx^XC56!1_U7P!t55mc7&sw|1|x&2`Y^H)av6DnA1okd=wq+qdpaU$pZ zI!GDC6iE~Bucaf|xsWerb+m%uIb(&RSX3F`Gr3$`iLbejE7KaWqGGTD7%l9caPBlk zSR|bkikg49Nsps*K()v%B#=Wu79WCEkkvl3 zWxo#up-w1w)KjJj*f0_pBosoNYKtG#()fTXLzF+E1iHae2LN27Fw78&(GP`Q7wm3j z1fh$eezp8efYeYe6qH-?6}GF+-i<_n@TsxqgOHKyHS!P23fJL=sAt3n4Q5U##mYK% zCOS}(wl&Ra_c%J3jZkt~JM_?3_@gcV4Y5bwDTb9E0Hf@|6`h$5E8t(5n~qujt4|KA={# zu(}p;M!IHKT4;Z$ZZ;PMy#r69vL6oB4OhH|-R(T6e8K*(zOfYss%6xcuKvOYAR7@^ zE1tgg_N}v2%>9xVx;Xj7whARZ3d_M-Kl(N>Qb8Y(OBAOK4z!p; zORK1jIVGA*MT7D%&TB<~W8nUyFftk{{|el{UgRy0{JA;QrS*=Xc@X|1*BixDj_pZg zen0judF8+jp5FH1;rq#>v_fjz!pr=x%)>v# zbD{xr;>mN8)pOFra~D?U-oFX4)R6;=6v%@_mCiT zNBr=7(&~H)>q46B!XvAN%z%Zg%zj>JQn~pH{2C16KbguP#)tE)B1)tgf!H zu5HM!ZCS1D1gz~PuN_pc{Tp68UR|TJu7l*(A=c}sTi+>YkE~f|8d+yqTW4e2V3*tA zwBFzj+&Gi6akgfIe+0iFu(olYZ4)E6DQvwd8n`K*vME`!DLt}zVQo{6ZA(FJOUZgm zC2;Fv%9eV~mgdNo_S%*%+qRzEwt@AwQQ-Eal>aB|N4723=-bw8J2rAVw$?lLfjd`I zb{uPVoJMwB)^={N?YhbBdRXt?4BYijImO|3{YG|guk8l1;rD{&_Cl@q!UOjrQ}&{3 z_U?@A-CNtkv+Wb*_G7H~V*~f&Q}z>T_7g|;lh*cA*bdU<4jx$_WCk8&r5xnc9OR80 z6s#RQVLL36J1nt2d>VN8Jms*w=CE?)@Wt9;4cosuxqtQ6|HILnQ~tHq{A(Ne*S_|z zlkKQW?x@H52>&MVs4wMcpyp_3*Mjj<1Z=4lQqXvBgfNg$KTmb ze#o8tv_APAc=9*pWTEC{Y2;*O?PQIOz9C27vZn6@()Uv6^n)7uzY+TJ8lBFD0-&rS z4x_VrWF)t&=fvm_0}8vSRjI?+oYBLxDgnPH#(rK(#bb<;MI1l;GR=^*ulAh$@Y_6F z;pT9u!$_VGMlGXPp^$H+E+O?2K@dy zzI3(L?Mm%z0wntv7*N z&g*v>}55wuplZ}CYXQux}uK#$G zB7S4$D0+KgyvFX5|uYiL>}3Nn2P0vZJJ7yWQ3SWRW@vz$<%)eF_&%I-ZYo* z;R>}-98%uGTPT0D3$;|83fr<&`+CDb!l$-}aU@7Q!8d(`QoI#u;+j zhuIkOhi}`M2xo>}Hj{4LzHFg19%gH$xwCDHGvE%lyKJtqV@J2MwGX$y;uOAP@8FRc ze&w294%j&N{KRM~a#d}JTti1*41-*xmU$&9#mtFm$Tnt%Ox zgi}D<&aP8X4|k+<$dJmObJ$1wNSBDI@I9BPpP7-@|66L@yMA|TJo3i;0O2oRnq zR}z!zzAO1OdUT89kJxvk2tST;e<0no@BUEfbCgH2=I*{nssT^5XS%uSfoF#8mFSy~ zogxl?w;}K?FsW0snVW^RkmH5FY2lKQ6E>xIjc@N=X;(ReTPoj(a;eBt0T5`1B(!P8`|=Co~8 z=@r`3iwNYDGTqct=)!z)%eqJX>hYwV%9fE3OZ_%BL6a`?^_k!PbhYm|e42moc=z}1 z?=Dp2X9SwSM)1BKm8#Qv@(&<`Xm{3o7_bnFVbmW4anRL(^ysr|Pw|{?#mV6^!(!19 z-iYtj`8%ZbSytu)Lppr3^9b3?8tFj5@&q#oPK^8qa3Kyq_2~dDZ1)9o2&_D_tua1W zfIo_G8WaQ1DVE}nQ@Q$R8-n9G!&r4Uw@WV{C&o4C(Rm_5rwp=ffNQ82-WG>A)bF_F z#QCH^_97yX8ie95BZ$~&InSwq!FUXgcne+RZhi%w3@v>h0#Wb#1r>_*c?UT+XYvz^ zjYKI|q$O?Dva$?g5sFkd_Cz!QTn}PUeC-DEM;jQN@b>HRd`Ka1iC|c|DN3HM=$kDD zGBdOo%e%!Q?m;lc8K67+Qy?ayw?y!u#l%n}1QYLHDr7S`NX#ZMM`q)pFeQfpbFY_o z5*>`>u8zf8JWR>zfQkW%3JE4MBz7Ph5DVk!Jg_&+IF}}R;Wm;WnBSFE2|x`h9EYG_ zEP+WK4E0bq58~)${l4!4f3=>3i1?M)ME{@jaPpmZNGhYoys*Au3y9Mb4e`Rd*?LhP z@kx<+VOV!P*8d*i$+yUSFe(Jbm#z}+`68Zm%t@X(y)o{JVFJe(iKj^7OEjzwjqDPSWbbC8gLrV<;3V~C~Km_)| zdGSx#wAAt|D!|qE71$~>l$lTrx)29LK+_)pymBJv*YSpcs$2XOiIP0U954Os#ZM+! z`&%wB+EwoEtDWG8O0XOG0zmu>O&_lUu$9*|H<24iPi~OIn|&cB!oZaX4i>{WF_#U^ zjQ*7SzB?vvYtU7^++8F}V`OB+y0TcaT8^D~alm%vTNjLA`w|O4dSDPyVcfT*W5D8ab{}Skr{&?zq z7F6qiK9d8M6TinoO8_b_C2j$oD#Bb0thnI&rJ*1~wWPSCT?FiwWR4GS(uCdmLS2oa`J!y{_|)$Y`E!03cC;Dn~q*ySf7=JI}N zDGxn~=<5F;brnY!PnD5&9ZH1J5KtOa#h=J%D%;PtpjbI0so+z=r&nJQ6#MF5u~ZUMWmtQDXt> zMn!TV^02tt|IorwI~7jTf3C54azqe9L}pUI0ki5Nb*_*q5Sr)^_M?Jfk|eb{3R9GE zLZ|J&J?o!_e9BH`^5MlJ5UO3biTTw`{;r1LSl4)^yFwhLE{F>I3w~GmH8JaN8|xM< z{X8lO_Zne@8sdfJv=>Bf^h`>gOuGY7;!aeY^3;I68>)G4+QSW;Mb_$y1C(m^@$68 z$4AiwSXAc`C-|^l_vmA%BPT)nbUp|UBA*J5p@NkpC{<2?L?r|i1+Yj!&fy?LbOTYX zVRAutowM^uvUAJ4b7u=-D&1)2M6ouA_rXbBh7j_mFHnmtwIin+26<(?%5x?YS$bYny);&doM!cIR{t=EtX zVVt2)s#Pbobjvd%Ia?rgQWU)TyIy-WNV5>w!X!2>J4QB}e31gxtcA4P=}|k1>lZSz zH8is4LLAhU!Y0V3D2kSUsp7j2|7#DJvXXB#L32#b^gN-bskS4qkZ@R0G;n&6k zAw-Aq-|2l#`F80wav*`rgrsaj#G33~Gogf;-1i^A(|`5xy)=2~NokbSsW-@LC^@x5 z0_=W}_<8L({64r%((FcAP1ZTYEp$9jUMv^~1#qT|?xujeDWiNF&t(J{MG(Uxa=-*u z2ZGKJ^#EcHbEsmK7^-!yQk*4156yrmpqUFHf+Elyhjw#@RDYTgX#hw95%y^lX;& zo(NeMykx~pkb&A5K?fOOWuj~g+1QyfS@qudo#hnSkkd8B6%1JW7+5yMUiYL7y?Ylc zPc*{8G>+i*K{A543o+O@OI`$D5cxj+kT9w6*2E|F2a&HF1Sr?SD(b984u)k6@o}>A z;+`nOSfBS_9$H=!fqq@KG_pXhRblGVpxJ; zS8p{drDB1ow^FCp)!tFI{ox;OQjCqbYyPmlA4K5PFO#n-!-d!lv)=z^{OPbzb|30y zLGir%LOQ>acv^Xsct>Y`?z;@&v0#Gbs4*FhgWN;p`HeCp;ZjjF60W+=Vn|8JJcc&J z{9!14|D~`KqF(s*RkgOJdMM^r8z+PyFYpm8@iCc$@)eRR_Y~?)i*+SvD!q|Y)~-_$ zg)6G)yf6jVxS5d9W@c!LES;MoS5U1r{n60Uc0syERmJXA;zxCE3f}0#N3*9Ux))$r z0c{LN@vd3h(SOhf96fiqC{LKp{u4pmn74CB*Okc-k_-n=v2AW@+*Onidt2_sOgjx1 zTP|tBO;^f`<-tc%6iIokGADuM6-bH~!9MuJ!_opARL=s|$hamMa`&B&rNu4FD+ybK z4G~0_1-}vyBg|j;77r!#okO%}eTG$CiA94s=f+5Ag7<_nDVuO-{M~H|9JkpuuKYd* za1by=T+ntPTROzLIK+n*7Rlk31jGBRU6hsJ5wPkK6YXawgjy0*E5I2E~ z9^FunBZBv`n6*5$ea9d%6&(!5#h58$+N=QvvK_- zJPZfvH=?jjTwTnG|Mcnv6)q(`}+3Rm?%T>e0LK&*pwDY zxCPo?K(L-CtqlDTSp7kEwaOEvsEj(1CcqZ+BtQ)k()&Wt!TF`V^i0JlK(o=8cmkAl zn-jkF(CsPWtOSWB_iw%K)%Kq6wTnBuf-r={m*xsFBq2i{$gn&g6w=3)xJN zlA(>zX!7{LcQa<*=^Y~=dn$&OeZs`z*^~J-Nn)B91-Yg}@$7XX(Qdk{Abj6_8__N_ zWxYvGHMH9G#06Xq;X-_FpOw7XM?(A%o^s8XumjXSX|(Ia_-F>mB5vHXBjRUc6L-YperN3-N`tZx(6!S>DbCs8#f# zzX9>w_kBt-fBfLbWDYnBf8Q55FV10%5cfj}@V=AysBwkh7S0VYa#JFbTrXDkChh;Q z%mXm@5u$Jh9Os11mgKo_aTSHhg1GK{3;~!2IpsAv+fwdSHrA`E+Dn{o-yti}#!{&S zw(QHgizEvRim)qLlZL(^h_G_KSQbrGsfCgH$$<{ey^m?#JEyI9Vw7s0VH3cw&T1)^ zx?GpsY%Ggtj$2AyKc#1FMr18c^~a|Ns)mck4tFEZ}_g;5q zbXhJdut};_mnBGQ|MBN*7XyLGl4_74mEJ(!fb-m5qbs)oft3$BE1ymfne>Q1pS7QS z$@C)C`sNSgeWOeJQhNKqK5(J~JOusvu5uuN4eVALApN=&G8+4nrH$xsx*HLAq_ejD z=i>`WhACmnnFkoseE)wk!9PN^^%R)@c=7F+m`5ZaN8)LmoLofS;rje@ zcPS|fO2Cb3DD*={FeEKrb0Te1oO?(_ZYY^XxRZ3NT+kiht$0E=tH5a@u=G&9=d5`B z*~a{6V+T$dTJJFU0^(AZRE7KUC2_D%f0)lcwACd>v#cte259a>ebC^mxby#oLkpRj z0j!!LvwFlw)vFHBQUO_eS6v@OKDYhYTQN1G6sYm@uowS@xjft^W{0^oZ@*)0wU$d@ zn`n}ck07~%RjHtBwz)=V{g`#!6@2ID)#pYZ<|4E^Mkl>)I`xH*Oz!+x+)1oG9k;&f z%LJ4uU3L*${qhw&$VYMViS@c30Sj48tyRC(ybI7GZhxmNsSZipa}fe!q<)8-Y=sn* zX}y#lZ{Tlhs+1tML^<|Hjg)APn#UJz=X8d~h4I!UooP#^KbJ_Hi%QuG1n{Hrwi2;P z`IkLL;Ler)WN0JAk}xYvPPfxU2K%Qgq>$s3$j~lWH)hdd@g1AxwUwM2li8 zK#?221oXpj0IanLf-5tP%l085ppBd#bMyPcBp9wq*r)HsmdMGaz&B%~2na0-1CF4$ z-a(Vpb(jV7h*0>mUvUiLpB!rTouPq>lg-=z{*$jSE-ozS@h0_(FBa(JYpK0uBEMwV z=Vw8{4)_cIr=Ozq%rl6rGJC&o5W32s2Go{V&q8n6#_Ig+Irt0O^`@LAv6gE03BdXsYtBWc z2@5b4S5ygrEM(3(th?&Ra4VYs1oKL(>f*W}(V@q(H;ft4&rZ`$ zY4IHZJ3E|@)a0LsI6=eQQ~ zDv*qC8W@L!D+Z|n(*eu-3Z>nWAjROX-Nw8_acn9f+lb2|fM6t7HR_o^q(>9w_?Fw^ z3_-wHx@|qGa`NV{R&wy-uLaKeKOcZ(PkO(+k=`O+o$=CoY8MpA4SL8u%sz@~gvRo7 z_1`BN#4pUfRk3zerSK@-fT1OsMV3CHU2b17dmeDF=qZ@^YawmN2*Z3M%xnP!yXUsM z_@%@;vU4;eGM2>HuQ>ILAjl~5NbbwG(B(JH0(ZZ*GhidX$6geS{!{c^kce=h8a zk&MdTBYTt;^*-ltqEJcp9+AC6<}s3x(4cJDD+v|qe9!0mH#~38U#`dfy6$v{633|t zr%o_Q!>JVDYS&RLm=zhEjW;*7DZz6_)R{rS=g&lEdR3f@&Q=b7N@GGR5y;-guJQ3Fc&4OR5d^~(TYu@sD8s{4i7N(B~Re+4*uEQZ`^M%KdAIx@YDpOa2A*DfZU(mN~QMQ zURK-?daHd*_yAmY-AZ+Sc;A=~Dyr3RU$w8t2j0C+izTY&8KN6|S-Enn$72=MQ{-V^ zbRQ7R-F!nl(me(gCwT?rRJ&#KN2-OcH7EkX{6Y=)`8}{cew^2q>XLGAmX_Dgw}uHU z%?He`jV!Rs}1+y-roXU3ho1*_H(b+@?*r?){E0ujbxq|=N(s< zR?f9;)e`&u`2m&vj_o@w(gE)4DeD&^mRcDkv_N7(N?XwK)bSYMY686k*P|!VdGH~8 zRO@h3EkNgJ`Zni@Y%~08=kIS!huVLXGKpQs2?@HgS?)Cw-KRf4ICcO1^)0{q-^tJU zZW@gNO9G1`K&)O=1}S=EWRGAFS*J4LvC-T)L>ht-?bXBTij5JTK`?2r_i#pIDN>@6 zECjD!o+9jhl)WUY-FmM;FE&;+N0Qywt50MJ8>clR$r-iYCjnM@fEShGO7QBJmQs0W zY%j%=z1}a6SBbaCk>acLdX08fNwA%f5@=t4y)=g4Jo86NXxM8&tw`lj1Gkj4Eb)n{2VGV*Ph-O4ewRU+s~2L+46oLwWOARJR^VcWaB*%tX=>XL+Y~n zjKxT)7s4EndLo-+ad`D2?p&k++Gjk$RlQhv7I|5FbNorP`g18U1tWsb1o2ssdI`!w zfnc{ek>0Cbs+y~C#n+gHMern4qHBx z?MoW9k+W#0lg-I)@R_=3F(Sr=)t5HaCv~P?ldV5dy{&G_8wW^R+q=vA_Pyb6Xh=!L zRAX5UJev$Tl|WGJB~9`tGZqKdbJbuA?Mi_TAf(`Ll9wIc7IJ~)4>QbFaMte{Tr!Uf ziY(yZ2QFIo+;CGZ027jjt5?9z4E}D}Fh`N;G*Mkv)^)N_UWy$NwR0nw-qj7C=Y8?* zY`CmgMh%cvm&w9wr4Tr=v)F|O7`+O;r|6>XtTd3MUk^h-k}~j5WC2u5fdY;|G@lgc za&WoqssGm)zJeHL1{`$TAJH{h^YihFG>PFKElJ{PE~^N3xjo7^GZ9FXHl>IE#g) zyVS$QAdyxu>R_QY%UHGLLK4$;6lJ7Uwb2lll*NX0hLzW2l2bdl*)TX}Wn>J;zT66% znN4uSXSMvFP?D0!<#(GN@3Ph4GwCKInAXC_d+TM)+ebsIT%Vd@HT)j%3pf zhH?Rb)q|(~%X=tL?eFhrFMTqCmb{fj;Mp*GA31d0u?UgV0Y@eTumt)(Yzr*$8cUs) zT{k5fF!D3_f#OhV=dJs7t{~AO5&eL=UAa9vdcs-r zP9XaBz~BP=bsiklS?Tuuu@1*Or2MvXykCfK)Ey+RPX2j!y9OSk{Cu|gI07ySiWlF& z&!Zpy!bdL_@q2j5#=!LnDBVQyKT_aqA>Fj|bri#D5&)@tHOJzd*75z`M5H`#8Ya<2 zM@5(2t{@s3)aM9NcXV@PYM&CohuzQkyM1V`J#C}(5?c^>qHNa5wjL((P1@;COe0sM=Q#8I zWmkASo$dBCFM1z0YkVzQ<2i$32N56LDmL>r*K^E?HY@ROLxT2a-WYIRVRr`66|P;g zi2htp>f1jh5{J6h=@Cv$?(;`1Ao6%Fcxo1*@p!9x&L5Gtq>{%xH;1oczqfH^c6Qbn zHxD*(3aGQ%0pSYjvb@d6{1^({G##33!KxcWe;xRHuC%C{Od1 zWtXosJP8meWBIXzU_B}@NX*~M6kztz-3qlY%#a-DDLj6;_>3eut)IsNeZBrP|6~0- z(FTaHk66X{Ti-!(cJ4y{n!;{>-Cm7&VU7t-(|PTmhn?)UUxmi`BALX`rZs#pl`celtp(>ZhGFL4?6n z$x#;l5yZ|P1ZUd2d*D!ncbD4T5dZ!sPnvjRNoq)1p^dCiw8L>4B2#ij?_=`Fv zrO@sG&jLwO)Ku1Q&h8XiC&OJ?J_Ra7ao0 z{Sv&WuHOih13Q$nF6(q$GLOWAl47LjDjuX6_}_T60%aMI!VqP+LNk|>1)6lVtm)Dm zx)DB_cy}2?SvKr4@Tu|i?UM5wT2&n@^*5EZK=lV4tp-BZLZY7=c11J!$O#0k;t`&9 zN}g^*RJV#7MtRTI5?8FkO0O(EH-*_mph|CcWtJFN?U%d=L;^0to>%|5n;jFEgU8>2 zLu}2~jduRXo55C?4CU@*t!0PEM|nyvI~2+&K_Z1kj8|72k4o?|ND@cM9Y#iNS7g>q z5nwOt8SfGP--`#${npK8YNcfk|E))(C=zY`9$!l|N(Xr1OGWh*Z8_IU7OG9}i~q9R zW82C!V1P?XSuDqD9^a}_+8* z4i9^ujf$)?DdF<;=#7Vuy}#+>xB-BT3dr!1;;r*uDfD+dG+a}JsEtJv0iZr$Sxbqu zqQ1&xLV_5QxDQCp#(AGRs^v}d6wR4_`mpV^%i zdW12YBv$PuuMltCZ-_z1=$7Yiup%!qKU%lcoeVS?yaofaSmb>Ra+Eh{EyC&BECyKi zE99-36Z7j!X5nTg-TfpIS0&&^*@hQDWjFfmuQ%05e)2&Wnv{Ftq zGZNwqWdP2in*tOU&8h=z75{lu-I;DP=;hxTpIaY)x1F(# z0S>m`gGns5mAzdBeMP?gk;r!F?kjHDNd=_|1q^pn)y3XzJbdO%%{F0%w9vL?%uC!| zTUu@?cKjh zAU6N3#Tu5Q+_|SNW2nHrnlggmQd?)SlyTLvT)<1$n(#ZMIU_PZ36#0F`w~oAZSz|T zQ(npQ8gSkCgTgG=__m9af$c;gEHV8ij3gxZfVf5-a2`u&-7Op<)hPNbOQKjVSHu|y5hz%If^Lc2@|XF( zf8)DDgUFGb)L+x8?f;a8E(C7-2eyZO-!A>W>d103gn8Fhi}$K(7*r5X3UIc`~9E}U#ax`K^?esp|zivS$BTJs6^B?sb(5q7rcEK zn|Hc|F&^C!X5un4T33Sb`vxZjsWgB|4asqJk5$-km59I}c5spqNp~6xEt&=2t8+boVXH@V-PK)a@LD#x-yg823-H zUqJmvo#zi}29h%7W+5^`C@xsI`~I2Rjhe)t2+Gg1+NzSo{M%X#05gV7yEyoJN53G7 zqIR+`!lVYUHPYVmbBeV8$m?((@K=4hsscn%#RZ!52==KeO>>ig(lxSfw-OWqBMJL$F!d4-?y{vCCS85^IGeqZViK;7QdUzNew(zaPJte}{cb|V zHAP;r5+`E%%`I8PS(;35ig8S`oV92&Xi>S`{_q|P75q{BYWqW_Mt$Y*Rpl1z9F)Go zq`{5%2YDe4;%G?WY96YZ9i51SE|8c8Cm~1>=Zw|UW@{%}=un|`jt7pegK}w^;-d(0 zz(@|?UOLj4+<0X9{Cr%7gbq zYJj&|MZz*aM)#9nvWe$vkArN3`z;DbZsq?cm(8Vb+Ut?gI>C(q!~i}q2Em2-Mk z@Ae4HT$bGOC9IQI|3u^K2EU|M+aW?Ye64TD0pV_qoqG?sjC`|` z2niu*hCVawYKBNL;KK4}!}4#3Tn!KHHh8N+Zaxl{y_o}XRxMIFEAQ5XfBp+!rOBZ> zX(w_vdQDWjv=-jw{s$hlhIi3y`RpWc)jOD&iKV{bgeo7v=uZ;nZ*4Hd8El5(F%|v^1HnTs-+z-L{7I}BF0Wf z%p$VXI5i$~mcN)k`?Ka7e?(<-v(h8qv)7_FUknAC$2AcAw5D63rAG8)JGEm@D>Xzb zU)n8q{uN*MVeRyt>K2H|J%9%rz&TZ}!LesN;vK*@dq$l6Qn{axId{lmvQ~jqpm%b{ z^u%}&*LoGH3MV-+%AvRk^{kdf<)VICJzj&-pUUxrJ9as=9*fJ80$+#5MLV5S*_xqZA zKm0oJA@|BS%OA7429Z0b&>Rv;eF^~jtnZ(*0y=U)vIBRc&Q)~Lr>MWfZ|;^B{JqkiUHIw( ztx%#dQSV++C9vInU`p(2(VCcjqSIrb0qUR%EtPD>TmU+BfDoPXi;?w z*t!dzA_^YklI6@%?nrLHFoO{C;G@d`f(ImmxnPZGhyg#X@_~&Ya4-@V7-gFit%v_u z265K1|N3!}XjyIvn!#QRjfck&8U?GQsr?L`Xo%0O@pT2u3-j2W5=&v?-E%Va`!>Pry~B2yEayb ztkzhUJ}EA==ghBKDmCWN!rT@6(G=i}$bg!aHW6`415ZV|Vb|1wi2;y_8ICf<9@9l; z)ii`88nWxNd2$6k4~-<>HC7~Wir3r`2J88zIA-ApqE{|0jpX0z{s&nyEm(-K7%nI_ zDYyzc(Siqb?2lS1cX|deEF^$YAVfO&H=LQ9lQHs2%M^e#fsj!O2thzJ#-yPWqmCr@ zv7h7RBEc_0NcupS_Ky@^kafL*fCLY+;q3u_4B50!FJsdH8nYQ|4p6q;Fmk3ii4d2@ zQ}*hEb46g&GL9$y!Z2jQ0`VJ?{2uXX{}@pEd|^R1v0_=>&=^&Hx_?#;)T(wha^UIe@bmMOgxYEQsX?yV~DprlX(iTJ*dHinQMYbKaG)$FFCY#CPr?VtGK{? z69h!tmS8a^3*?J&_(hOT!srz%gk&$@AOtjI#*xUT54N(u#U5GUn1LgjIkP0p@L4&M znfV^dov25syO8-!)19IWv;-H6L>p4&m2Zc7SvlULG2SS4(R>{?+@XId<;%OA`)MO5 zWyNROZ7liMm#Zl2&BHnDLnXYrU`Zxk9!6Lxpv!B%oRE7+l1aiP*LkTVd>!jc@kD^` zbDZpd#esw}B0x+Dpx?wQ*Qd{?!2C-6dj&H7E|EC0s`}W1Rc__dmzxFmp(L;3r#G^^ zUlewkAv%a0SuGvnbfA?TUx+{ZvT31+g|nYKlwJrApDt+p;MndTGeXrR*&TVz1P`k5 zdvSoY1`#pwLko*!wv1L+a`FzpQIcg|z$0HtM`Rydulc~l zZE4N1kIgjU&uDtrA>Zh|y=M}C_hZij3s;G!mJ_t9SdHrI9@ne!;_G=#1?wynUq^=Q zsew1bZ_P(KpY7?Xru0hkvjdp(mD*lQzXW3p$~SK-T;0@Ena)mi<9zE>`! zJ7D3*OseUNz_DpWE4NB|@yY+$V?gaQ)J@eV>$*OF-CsR8l1P1f(&Too80PoZCnb2!+z^xbXV z($|^>d)=|aw%`I5a1g_`b9%k?Q3Fd8g@BDS8u|1z)`5cuP)+?JhsAL@I-4=@^e-3& zdq2ybBSK2C4>QT1*n{O{L`@NDX9n4L_mkX1W~JCy4GoPg?w2jP^Zn@^x>~{gs8D?l zX*Z~AnLHYD(l4_nx-^7HOVZ%odyP2QgE?=r1JQ!|AQ*x*<^h%W#e&zwZwnUJbuxdg zVUFXaJt!lcZmSf@)?&n;iF03s!Pa}&7nZIP$#5Lh4vv$RgaHpNJ{AdnLSEKE!IR>f z0GUt2=IF@r)Z;CvxEYDt@OFXtM_La(GwKoV7XDmsVUhoSXv0(@GVP@x1Y$GmW2K0v zh_i(zqRULgahadFEqZx*g~`JFb%2me$$8%uZ>ARqJu+IHK=3D&RprggF&$L69dQhN zE279sZ0|bre`516QA?PPb@cOBg8GQ{f;bzQ#}!6b>}9K-a@c0LHp^exxbA|t)ym+1 zscq-)>*Sj>WqTdb^inZE%+(^LB1KtaB+6YPv}10f2B>{?YrhcIsHtjjQgum?~o#&eTdP>y?W13Uv5 z=yW%|2YcU6oM!{hr@xbuFGT}Toon@L35KNfnpKDACvX{w!g{QN}X8nm>5U zBX(rN_*dA_%=Ne5MWhXA^%xTvnp5R z!Eueq+#Qyq)-|#35yesAa)TsjfEm`eo%|X8x&;po2#k>sUECzT(&aSF-J1n(?r*G1&+raI))TWh;0~I9ZzJ=g}k^ZwrQSz{IT3Iw9-jz%VzTU^Q*bg zTB6vti@?d$TgNbBW4_pqx7EqlFLPln-D11J=_miAWZUP(zTcTVnfo&r-c1wRBMY1^ z{BI{zLj1==tJ5Vjq4|h67sdCVrk^e=INcd`691VwdAfRT{?2=%_(7q--*qFW$PfAA xhvim(H*Mx4C%eUu>eK&jdpku<&x`+hHTie<&V1B7P5gHcv%tT-6>&JA{eNMZYsLTo delta 38937 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

Q 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 diff --git a/docs/design/chat-cleanup/evidence/08-recovery-finished.txt b/docs/design/chat-cleanup/evidence/08-recovery-finished.txt index a1e69ea996..ae7de99846 100644 --- a/docs/design/chat-cleanup/evidence/08-recovery-finished.txt +++ b/docs/design/chat-cleanup/evidence/08-recovery-finished.txt @@ -1,17 +1,17 @@ - >● codeaf home teams chats sessions spend settings 1 moving · $0.0032 · sun 11:12am - intentional bash failure recovery test × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0035 · sun 11:54am + bash error recovery test sequence × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit 7. This failure is intentional. Then recover with a second bash call: sleep 3; printf 'recovered\n'. Finally answer only with Recovery / check / passed. joined by spaces. Do not echo stdout, delegate, or write files. - ▸ worked 4.8s · thought 0.1s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e - - Recovery / check / passed - + ▸ worked 4.1s · thought 0.1s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e + Recovery check passed @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0043 · ⟲ saved $0.0012 · 78% cached 15.2k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0042 · ⟲ saved $0.0012 · 77% cached 15.1k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatFailureRecovery1487267512/002/failure-recovery + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatFailureRecovery699826278/002/failure-recovery diff --git a/docs/design/chat-cleanup/evidence/09-assistant-update.cast b/docs/design/chat-cleanup/evidence/09-assistant-update.cast index fdfcffeb63..8ee8a6e5ac 100644 --- a/docs/design/chat-cleanup/evidence/09-assistant-update.cast +++ b/docs/design/chat-cleanup/evidence/09-assistant-update.cast @@ -1,3 +1,3 @@ {"height":42,"title":"09-assistant-update","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0005\u001b[39m · \u001b[38;5;243msun 11:13am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ sequential bash sleep checks with interim update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;110mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;103m$ sleep 3; printf 'second\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 968\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────── \u001b[39m \u001b[38;5;110m$0.0015\u001b[38;5;243m · \u001b[38;5;252m⟲ 96% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M · 1%\u001b[39m \u001b[38;5;243mrunning bash · \u001b[38;5;146m⠇\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m · \u001b[38;5;146m9s\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mctrl+g\u001b[38;5;243m backgrounds · \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering3496973854/002/steering\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0006\u001b[39m · \u001b[38;5;243msun 11:55am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ sequential bash sleep checks with update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;110mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;103m$ ran 1 command\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 515\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────── \u001b[39m \u001b[38;5;110m$0.0007\u001b[38;5;243m · \u001b[38;5;110m⟲ saved $0.0005 · 96% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;146m⠸\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m · \u001b[38;5;146m9s\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering2234450562/002/steering\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/09-assistant-update.gif b/docs/design/chat-cleanup/evidence/09-assistant-update.gif index a9ff76dea7bba0ec2c04fe18183372299e04b95b..f5656fef78b0b9a429ec16bdff4c9fcb75775d36 100644 GIT binary patch delta 37214 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%0DhaA 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● codeaf home teams chats sessions spend settings 1 moving · $0.0005 · sun 11:13am - ◐ sequential bash sleep checks with interim update × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0006 · sun 11:55am + ◐ sequential bash sleep checks with update × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between the two calls emit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do not delegate or write files. @@ -10,9 +12,7 @@ └ Also mention that no files were changed in your final answer. First check is complete. - $ sleep 3; printf 'second +70 ↑ 15.2k ↓ 998 - - + $ ran 1 command ↑ 15k ↓ 515 @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────── $0.0017 · ⟲ 96% cached 15.2k/1M · 1% running bash · ⠇ working · 9s ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────── $0.0007 · ⟲ saved $0.0005 · 96% cached 15k/1M · 1% ⠸ working · 9s ─ › - ctrl+g backgrounds · esc interrupt project: /tmp/TestCleanChatSteering3496973854/002/steering + esc interrupt project: /tmp/TestCleanChatSteering2234450562/002/steering diff --git a/docs/design/chat-cleanup/evidence/09-user-steering.cast b/docs/design/chat-cleanup/evidence/09-user-steering.cast index 12748afa31..82cb9b5867 100644 --- a/docs/design/chat-cleanup/evidence/09-user-steering.cast +++ b/docs/design/chat-cleanup/evidence/09-user-steering.cast @@ -1,3 +1,3 @@ {"height":42,"title":"09-user-steering","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:13am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;252mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252m\u003e\u001b[39m \u001b[38;5;179m•\u001b[39m \u001b[38;5;243mLinting common sense\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[39m \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.7k/1M · 1%\u001b[39m \u001b[38;5;146m⠸\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering3496973854/002/steering\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:55am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;252mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252m\u003e\u001b[39m \u001b[38;5;179m•\u001b[39m \u001b[38;5;252m\u003c\u001b[39m \u001b[38;5;243mRefactoring expectations\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.6k/1M · 1%\u001b[39m \u001b[38;5;146m⠹\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering2234450562/002/steering\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/09-user-steering.gif b/docs/design/chat-cleanup/evidence/09-user-steering.gif index ec520e0a392d3075be57a96656a42bd79323af22..a4d1a4da82dc039f34c39710a2b6987d05d2b527 100644 GIT binary patch delta 36057 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 diff --git a/docs/design/chat-cleanup/evidence/09-user-steering.txt b/docs/design/chat-cleanup/evidence/09-user-steering.txt index 9fc76efe32..6ca0048278 100644 --- a/docs/design/chat-cleanup/evidence/09-user-steering.txt +++ b/docs/design/chat-cleanup/evidence/09-user-steering.txt @@ -1,17 +1,17 @@ - >● codeaf home teams chats sessions spend settings sun 11:13am + >● codeaf home teams chats sessions spend settings sun 11:55am ◐ Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between... × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between the two calls emit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do not delegate or write files. └ Also mention that no files were changed in your final answer. - > • Linting common sense - - + > • < Refactoring expectations @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.7k/1M · 1% ⠸ working ─ +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.6k/1M · 1% ⠹ working ─ › - esc interrupt project: /tmp/TestCleanChatSteering3496973854/002/steering + esc interrupt project: /tmp/TestCleanChatSteering2234450562/002/steering diff --git a/docs/design/chat-cleanup/evidence/10-steering-finished.cast b/docs/design/chat-cleanup/evidence/10-steering-finished.cast index a0bd5a1dde..c678bf0a71 100644 --- a/docs/design/chat-cleanup/evidence/10-steering-finished.cast +++ b/docs/design/chat-cleanup/evidence/10-steering-finished.cast @@ -1,3 +1,3 @@ {"height":42,"title":"10-steering-finished","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0017\u001b[39m · \u001b[38;5;243msun 11:13am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m sequential bash sleep checks with interim update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;103mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 13s · thought 0.4s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;243m▸ worked 13s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mBoth commands ran: \u001b[48;5;234mfirst check finished\u001b[49m, then \u001b[48;5;234msecond check finished\u001b[49m. Checks finished.\u001b[39m\r\n\r\n \u001b[38;5;252mNo files were changed.\u001b[39m\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0019\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0016 · 97% cached\u001b[38;5;243m \u001b[38;5;252m15.3k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering3496973854/002/steering\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0012\u001b[39m · \u001b[38;5;243msun 11:55am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m sequential bash sleep checks with update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;103mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 13s · thought 0.8s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;243m▸ worked 13s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mchecks finished\u001b[39m\r\n\r\n \u001b[38;5;252mBoth commands ran: the first printed \u001b[48;5;234mfirst check finished\u001b[49m after ~8s, the second printed\u001b[39m \u001b[38;5;252m❮\r\n\u001b[39m \u001b[38;5;252m\u001b[48;5;234msecond check finished\u001b[49m after ~3s. No files were changed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0014\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0016 · 97% cached\u001b[38;5;243m \u001b[38;5;252m15.2k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering2234450562/002/steering\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/10-steering-finished.gif b/docs/design/chat-cleanup/evidence/10-steering-finished.gif index 236c5805eeaaad728daa60c34fd5a2fe33a7b4da..edcfbb35bf86221432a23e6c43a4c3943d47a85b 100644 GIT binary patch delta 49439 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�^81hR8BdjDn$JIK_IT7~rC;VP(;EA^+2-_< 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 =iQ~EX$GrMxt$lai%~gw6b{`(l@LH@{HQXL7 k($2S7w{GV0n*JEaYq??D7PLOooo~5m|1mO-77nQWKWJZ6_W%F@ delta 45709 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 diff --git a/docs/design/chat-cleanup/evidence/10-steering-finished.txt b/docs/design/chat-cleanup/evidence/10-steering-finished.txt index 196be5d2e4..c5eff1b2a8 100644 --- a/docs/design/chat-cleanup/evidence/10-steering-finished.txt +++ b/docs/design/chat-cleanup/evidence/10-steering-finished.txt @@ -1,25 +1,25 @@ - >● codeaf home teams chats sessions spend settings 1 moving · $0.0017 · sun 11:13am - sequential bash sleep checks with interim update × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0012 · sun 11:55am + sequential bash sleep checks with update × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between the two calls emit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do not delegate or write files. └ Also mention that no files were changed in your final answer. - ▸ worked 13s · thought 0.4s · 1 tool call · ctrl+e + ▸ worked 13s · thought 0.8s · 1 tool call · ctrl+e First check is complete. ▸ worked 13s · 1 tool call · ctrl+e - Both commands ran: first check finished, then second check finished. Checks finished. - - No files were changed. - - ❮ + checks finished + Both commands ran: the first printed first check finished after ~8s, the second printed ❮ + second check finished after ~3s. No files were changed. @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0019 · ⟲ saved $0.0016 · 97% cached 15.3k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0014 · ⟲ saved $0.0016 · 97% cached 15.2k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatSteering3496973854/002/steering + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatSteering2234450562/002/steering diff --git a/docs/design/chat-cleanup/evidence/11-steering-resumed.cast b/docs/design/chat-cleanup/evidence/11-steering-resumed.cast index 65d8b4c6e2..ca66543860 100644 --- a/docs/design/chat-cleanup/evidence/11-steering-resumed.cast +++ b/docs/design/chat-cleanup/evidence/11-steering-resumed.cast @@ -1,3 +1,3 @@ {"height":42,"title":"11-steering-resumed","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.0020\u001b[39m · \u001b[38;5;243msun 11:13am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m sequential bash sleep checks with interim update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;103mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mBoth commands ran: \u001b[48;5;234mfirst check finished\u001b[49m, then \u001b[48;5;234msecond check finished\u001b[49m. Checks finished.\u001b[39m\r\n\r\n \u001b[38;5;252mNo files were changed.\u001b[39m\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────────────────── \u001b[39m \u001b[38;5;243m$0.0020 · ⟲ saved $0.0016 · 97% cached 5.9k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering3496973854/002/steering\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.0016\u001b[39m · \u001b[38;5;243msun 11:55am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m sequential bash sleep checks with update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;103mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mchecks finished\u001b[39m\r\n\r\n \u001b[38;5;252mBoth commands ran: the first printed \u001b[48;5;234mfirst check finished\u001b[49m after ~8s, the second printed\u001b[39m\r\n \u001b[38;5;252m\u001b[48;5;234msecond check finished\u001b[49m after ~3s. No files were changed.\u001b[39m\r\n \u001b[38;5;252m❮\r\n\u001b[39m \u001b[38;5;243m· resumed · sequential bash sleep checks with update\u001b[39m\r\n \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────────────────── \u001b[39m \u001b[38;5;243m$0.0016 · ⟲ saved $0.0016 · 97% cached 5.8k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering2234450562/002/steering\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/11-steering-resumed.gif b/docs/design/chat-cleanup/evidence/11-steering-resumed.gif index 2cc2cce7c417b5c5fe31c494adda86d126821d70..b9081754167c411ba4c5695819b5fecd758d8423 100644 GIT binary patch delta 48321 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 ~68AC7W8@5%aSB-ItCg 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 delta 42739 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 b● codeaf home teams chats sessions spend settings $0.0020 · sun 11:13am - sequential bash sleep checks with interim update × + ▦ All + >● codeaf home teams chats sessions spend settings $0.0016 · sun 11:55am + sequential bash sleep checks with update × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -14,11 +14,13 @@ First check is complete. ▸ worked · 1 tool call · ctrl+e - Both commands ran: first check finished, then second check finished. Checks finished. - - No files were changed. + checks finished + Both commands ran: the first printed first check finished after ~8s, the second printed + second check finished after ~3s. No files were changed. ❮ + · resumed · sequential bash sleep checks with update + · esc interrupts · ctrl+c quits · ? for help @@ -33,10 +35,8 @@ - - -─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ─────────────────────────────── $0.0020 · ⟲ saved $0.0016 · 97% cached 5.9k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ─────────────────────────────── $0.0016 · ⟲ saved $0.0016 · 97% cached 5.8k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatSteering3496973854/002/steering + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatSteering2234450562/002/steering diff --git a/docs/design/chat-cleanup/evidence/chat-models.json b/docs/design/chat-cleanup/evidence/chat-models.json index 62e7554c85..6dfba5ead5 100644 --- a/docs/design/chat-cleanup/evidence/chat-models.json +++ b/docs/design/chat-cleanup/evidence/chat-models.json @@ -1,184 +1,184 @@ [ { - "id": "5e857b56", + "id": "70a47060", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "title", - "ts": "2026-09-27T11:12:11.765-04:00" + "ts": "2026-09-27T11:54:04.664-04:00" }, { - "id": "19eda597", + "id": "f5587b8e", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "router", - "ts": "2026-09-27T11:12:11.766-04:00" + "ts": "2026-09-27T11:54:04.665-04:00" }, { - "id": "0c4da361", + "id": "15ef8404", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:12:11.766-04:00" + "ts": "2026-09-27T11:54:04.666-04:00" }, { - "id": "19eda597", + "id": "f5587b8e", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "router", - "ts": "2026-09-27T11:12:12.453-04:00" + "ts": "2026-09-27T11:54:05.116-04:00" }, { - "id": "0c4da361", + "id": "15ef8404", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:12:12.654-04:00" + "ts": "2026-09-27T11:54:05.174-04:00" }, { - "id": "ad13a298", + "id": "8033c1d5", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "caption", - "ts": "2026-09-27T11:12:13.162-04:00" + "ts": "2026-09-27T11:54:05.679-04:00" }, { - "id": "ad13a298", + "id": "8033c1d5", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "caption", - "ts": "2026-09-27T11:12:13.597-04:00" + "ts": "2026-09-27T11:54:05.891-04:00" }, { - "id": "5e857b56", + "id": "70a47060", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "title", - "ts": "2026-09-27T11:12:14.453-04:00" + "ts": "2026-09-27T11:54:07.508-04:00" }, { - "id": "92d56a62", + "id": "5f0ea046", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:12:15.715-04:00" + "ts": "2026-09-27T11:54:08.205-04:00" }, { - "id": "92d56a62", + "id": "5f0ea046", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:12:15.933-04:00" + "ts": "2026-09-27T11:54:08.553-04:00" }, { - "id": "3e2d1b7d", + "id": "f0b46978", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "reflex", - "ts": "2026-09-27T11:12:15.936-04:00" + "ts": "2026-09-27T11:54:08.555-04:00" }, { - "id": "3e2d1b7d", + "id": "f0b46978", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "reflex", - "ts": "2026-09-27T11:12:16.481-04:00" + "ts": "2026-09-27T11:54:09.349-04:00" }, { - "id": "686f4756", + "id": "b1a9620e", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "taskname", - "ts": "2026-09-27T11:12:17.425-04:00" + "ts": "2026-09-27T11:54:09.969-04:00" }, { - "id": "686f4756", + "id": "b1a9620e", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "taskname", - "ts": "2026-09-27T11:12:18.682-04:00" + "ts": "2026-09-27T11:54:11.044-04:00" }, { - "id": "a75af0c3", + "id": "87ff4e3d", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "shaper", - "ts": "2026-09-27T11:12:21.006-04:00" + "ts": "2026-09-27T11:54:13.044-04:00" }, { - "id": "d0b002f5", + "id": "99fea3e4", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "task", - "ts": "2026-09-27T11:12:21.008-04:00" + "ts": "2026-09-27T11:54:13.046-04:00" }, { - "id": "d0b002f5", + "id": "87ff4e3d", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "shaper", + "ts": "2026-09-27T11:54:14.601-04:00" + }, + { + "id": "99fea3e4", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "task", - "ts": "2026-09-27T11:12:21.462-04:00" + "ts": "2026-09-27T11:54:15.512-04:00" }, { - "id": "8cab93a4", + "id": "a2e412b1", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "task", - "ts": "2026-09-27T11:12:21.482-04:00" + "ts": "2026-09-27T11:54:15.522-04:00" }, { - "id": "8cab93a4", + "id": "a2e412b1", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "task", - "ts": "2026-09-27T11:12:22.204-04:00" + "ts": "2026-09-27T11:54:15.995-04:00" }, { - "id": "732485dc", + "id": "a53f760c", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "task", - "ts": "2026-09-27T11:12:22.212-04:00" + "ts": "2026-09-27T11:54:15.998-04:00" }, { - "id": "732485dc", + "id": "a53f760c", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "task", - "ts": "2026-09-27T11:12:22.476-04:00" + "ts": "2026-09-27T11:54:16.359-04:00" }, { - "id": "33dca5ec", + "id": "b83f99ea", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "task", - "ts": "2026-09-27T11:12:22.499-04:00" - }, - { - "id": "a75af0c3", - "model": "deepseek/deepseek-v4.1-flash", - "status": 200, - "tag": "shaper", - "ts": "2026-09-27T11:12:22.700-04:00" + "ts": "2026-09-27T11:54:16.385-04:00" }, { - "id": "33dca5ec", + "id": "b83f99ea", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "task", - "ts": "2026-09-27T11:12:22.962-04:00" + "ts": "2026-09-27T11:54:17.347-04:00" }, { - "id": "e379da3c", + "id": "fcb4905b", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:12:23.570-04:00" + "ts": "2026-09-27T11:54:17.939-04:00" }, { - "id": "e379da3c", + "id": "fcb4905b", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:12:24.612-04:00" + "ts": "2026-09-27T11:54:18.911-04:00" } ] \ No newline at end of file diff --git a/docs/design/chat-cleanup/evidence/manager-models.json b/docs/design/chat-cleanup/evidence/manager-models.json index 8b1fbe41af..9bb6d92609 100644 --- a/docs/design/chat-cleanup/evidence/manager-models.json +++ b/docs/design/chat-cleanup/evidence/manager-models.json @@ -1,72 +1,72 @@ [ { - "id": "79221053", + "id": "e8a88b68", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "title", - "ts": "2026-09-27T11:12:37.277-04:00" + "ts": "2026-09-27T11:54:31.420-04:00" }, { - "id": "e62b4afd", + "id": "cd742126", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "router", - "ts": "2026-09-27T11:12:37.278-04:00" + "ts": "2026-09-27T11:54:31.424-04:00" }, { - "id": "392435a4", + "id": "bad25b82", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:12:37.278-04:00" + "ts": "2026-09-27T11:54:31.426-04:00" }, { - "id": "392435a4", + "id": "bad25b82", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:12:37.674-04:00" + "ts": "2026-09-27T11:54:31.881-04:00" }, { - "id": "fa024514", + "id": "c96e5dce", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "router", - "ts": "2026-09-27T11:12:37.676-04:00" + "ts": "2026-09-27T11:54:31.882-04:00" }, { - "id": "e62b4afd", + "id": "cd742126", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "router", - "ts": "2026-09-27T11:12:37.721-04:00" + "ts": "2026-09-27T11:54:32.045-04:00" }, { - "id": "79221053", - "model": "deepseek/deepseek-v4.1-flash", - "status": 200, - "tag": "title", - "ts": "2026-09-27T11:12:37.831-04:00" - }, - { - "id": "fa024514", + "id": "c96e5dce", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "router", - "ts": "2026-09-27T11:12:37.920-04:00" + "ts": "2026-09-27T11:54:32.177-04:00" }, { - "id": "01be6ac9", + "id": "1465d6f8", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "reflex", - "ts": "2026-09-27T11:12:37.926-04:00" + "ts": "2026-09-27T11:54:32.179-04:00" + }, + { + "id": "e8a88b68", + "model": "deepseek/deepseek-v4.1-flash", + "status": 200, + "tag": "title", + "ts": "2026-09-27T11:54:32.253-04:00" }, { - "id": "01be6ac9", + "id": "1465d6f8", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "reflex", - "ts": "2026-09-27T11:12:38.254-04:00" + "ts": "2026-09-27T11:54:33.852-04:00" } ] \ No newline at end of file diff --git a/docs/design/chat-cleanup/evidence/notification-sequence.cast b/docs/design/chat-cleanup/evidence/notification-sequence.cast index d3c3b89eda..09326ec116 100644 --- a/docs/design/chat-cleanup/evidence/notification-sequence.cast +++ b/docs/design/chat-cleanup/evidence/notification-sequence.cast @@ -1,5 +1,5 @@ {"height": 42, "title": "Task notification, dismissed, restored \u2014 screenshot sequence", "version": 2, "width": 140} -[0, "o", "\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m>\u001b[38;5;179m\u25cf\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m \u00b7 \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m \u25d0 bash output and terminal check conversation \u00d7 \u001b[0m\u001b[38;5;243m + \u25a6\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m\u203a \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 worked 4.2s \u00b7 thought 0.2s \u00b7 1 tool call \u00b7 ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m\u2713\u001b[39m \u001b[38;5;243m\u25c6\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m \u00b7 done \u00b7 6s \u00b7 1 file \u00b7 branch kept \u00b7 task/write-a-file-called-hello-txt-co-d2ae66 \u00b7 ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 \u001b[38;5;103mWorking\u001b[38;5;243m thinking \u00b7 together \u00b7 ctrl+e\u001b[39m \u001b[38;5;235m\u2191\u001b[38;5;243m 15.1k\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m\u276e\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m\u2500 \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto \u00b7 \u001b[38;5;173m\u25c7 YOLO\u001b[38;5;243m \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u001b[39m \u001b[38;5;252m$0.0070\u001b[38;5;243m \u00b7 \u001b[38;5;252m\u27f2 saved $0.0029 \u00b7 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M \u00b7 1%\u001b[39m \u001b[38;5;146m\u2827\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m \u2500\r\n\u001b[39m \u001b[38;5;243m\u203a \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] -[2, "o", "\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m>\u001b[38;5;179m\u25cf\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m \u00b7 \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m \u25d0 bash output and terminal check conversation \u00d7 \u001b[0m\u001b[38;5;243m + \u25a6\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m\u203a \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 worked 4.2s \u00b7 thought 0.2s \u00b7 1 tool call \u00b7 ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m\u25b8 \u001b[38;5;103mWorking\u001b[38;5;243m thinking \u00b7 together \u00b7 ctrl+e\u001b[39m \u001b[38;5;235m\u2191\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m\u2193\u001b[38;5;252m 449\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m\u276e\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m\u2500 \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto \u00b7 \u001b[38;5;173m\u25c7 YOLO\u001b[38;5;243m \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m \u00b7 \u001b[38;5;252m\u27f2 saved $0.0029 \u00b7 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M \u00b7 1%\u001b[39m \u001b[38;5;146m\u280b\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m \u2500\r\n\u001b[39m \u001b[38;5;243m\u203a \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] -[4, "o", "\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m>\u001b[38;5;179m\u25cf\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m \u00b7 \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m \u25d0 bash output and terminal check conversation \u00d7 \u001b[0m\u001b[38;5;243m + \u25a6\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m\u203a \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 worked 4.2s \u00b7 thought 0.2s \u00b7 1 tool call \u00b7 ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m\u2713\u001b[39m \u001b[38;5;243m\u25c6\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m \u00b7 done \u00b7 6s \u00b7 1 file \u00b7 branch kept \u00b7 task/write-a-file-called-hello-txt-co-d2ae66 \u00b7 ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 \u001b[38;5;103mWorking\u001b[38;5;243m thinking \u00b7 together \u00b7 ctrl+e\u001b[39m \u001b[38;5;235m\u2191\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m\u2193\u001b[38;5;252m 568\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m\u276e\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m\u2500 \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto \u00b7 \u001b[38;5;173m\u25c7 YOLO\u001b[38;5;243m \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m \u00b7 \u001b[38;5;252m\u27f2 saved $0.0029 \u00b7 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M \u00b7 1%\u001b[39m \u001b[38;5;146m\u2839\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m \u2500\r\n\u001b[39m \u001b[38;5;243m\u203a \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[0, "o", "\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m>\u001b[38;5;179m\u25cf\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m \u00b7 \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m \u25d0 terminal check passed after clean output \u00d7 \u001b[0m\u001b[38;5;243m + \u25a6\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m\u00b7 \u001b[38;5;116mesc\u001b[38;5;243m interrupts \u00b7 \u001b[38;5;116mctrl+c\u001b[38;5;243m quits \u00b7 \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m\u203a \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 worked 3.9s \u00b7 thought 0.1s \u00b7 1 tool call \u00b7 ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m\u2713\u001b[39m \u001b[38;5;243m\u25c6\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m \u00b7 done \u00b7 8s \u00b7 1 file \u00b7 branch kept \u00b7 task/write-a-file-called-hello-txt-co-b2ad8a \u00b7 ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 \u001b[38;5;103mWorking\u001b[38;5;243m thinking \u00b7 together \u00b7 ctrl+e\u001b[39m \u001b[38;5;235m\u2191\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;235m\u2193\u001b[38;5;243m 507\u001b[39m\r\n\r\n\r\n\r\n \u001b[38;5;252m\u276e\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m\u2500 \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto \u00b7 \u001b[38;5;173m\u25c7 YOLO\u001b[38;5;243m \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m \u00b7 \u001b[38;5;252m\u27f2 saved $0.0029 \u00b7 72% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M \u00b7 1%\u001b[39m \u001b[38;5;146m\u2839\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m \u2500\r\n\u001b[39m \u001b[38;5;243m\u203a \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] +[2, "o", "\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m>\u001b[38;5;179m\u25cf\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m \u00b7 \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m \u25d0 terminal check passed after clean output \u00d7 \u001b[0m\u001b[38;5;243m + \u25a6\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m\u00b7 \u001b[38;5;116mesc\u001b[38;5;243m interrupts \u00b7 \u001b[38;5;116mctrl+c\u001b[38;5;243m quits \u00b7 \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m\u203a \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 worked 3.9s \u00b7 thought 0.1s \u00b7 1 tool call \u00b7 ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m\u25b8 \u001b[38;5;103mWorking\u001b[38;5;243m thinking \u00b7 together \u00b7 ctrl+e\u001b[39m \u001b[38;5;235m\u2191\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m\u2193\u001b[38;5;252m 544\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m\u276e\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m\u2500 \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto \u00b7 \u001b[38;5;173m\u25c7 YOLO\u001b[38;5;243m \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m \u00b7 \u001b[38;5;252m\u27f2 saved $0.0029 \u00b7 72% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M \u00b7 1%\u001b[39m \u001b[38;5;146m\u2838\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m \u2500\r\n\u001b[39m \u001b[38;5;243m\u203a \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] +[4, "o", "\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m>\u001b[38;5;179m\u25cf\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m \u00b7 \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m \u25d0 terminal check passed after clean output \u00d7 \u001b[0m\u001b[38;5;243m + \u25a6\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m\u00b7 \u001b[38;5;116mesc\u001b[38;5;243m interrupts \u00b7 \u001b[38;5;116mctrl+c\u001b[38;5;243m quits \u00b7 \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m\u203a \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 worked 3.9s \u00b7 thought 0.1s \u00b7 1 tool call \u00b7 ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m\u2713\u001b[39m \u001b[38;5;243m\u25c6\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m \u00b7 done \u00b7 8s \u00b7 1 file \u00b7 branch kept \u00b7 task/write-a-file-called-hello-txt-co-b2ad8a \u00b7 ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m\u25b8 \u001b[38;5;103mWorking\u001b[38;5;243m thinking \u00b7 together \u00b7 ctrl+e\u001b[39m \u001b[38;5;235m\u2191\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m\u2193\u001b[38;5;252m 651\u001b[39m\r\n\r\n\r\n\r\n \u001b[38;5;252m\u276e\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m\u2500 \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto \u00b7 \u001b[38;5;173m\u25c7 YOLO\u001b[38;5;243m \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m \u00b7 \u001b[38;5;252m\u27f2 saved $0.0029 \u00b7 72% cached\u001b[38;5;243m 15k/1M \u00b7 1%\u001b[39m \u001b[38;5;146m\u2834\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m \u2500\r\n\u001b[39m \u001b[38;5;243m\u203a \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] [6, "o", ""] diff --git a/docs/design/chat-cleanup/evidence/notification-sequence.gif b/docs/design/chat-cleanup/evidence/notification-sequence.gif index 253e03339ae545f59434747106beb79002ddcace..96ad7fd861bd1a5a87b03da9959a6dde3d8721ce 100644 GIT binary patch delta 72908 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⑭svVVVnA!av&D%gT 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 YH$ppSdb2M1r+={2TC->$nE=uM57T>R+5i9m diff --git a/docs/design/chat-cleanup/evidence/recovery-models.json b/docs/design/chat-cleanup/evidence/recovery-models.json index 8413cc948d..16543a85ef 100644 --- a/docs/design/chat-cleanup/evidence/recovery-models.json +++ b/docs/design/chat-cleanup/evidence/recovery-models.json @@ -1,100 +1,100 @@ [ { - "id": "3f537e00", + "id": "f158fecb", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", - "tag": "turn", - "ts": "2026-09-27T11:12:52.035-04:00" + "tag": "title", + "ts": "2026-09-27T11:54:45.017-04:00" }, { - "id": "1cf379ff", + "id": "237ac90b", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", - "tag": "title", - "ts": "2026-09-27T11:12:52.035-04:00" + "tag": "router", + "ts": "2026-09-27T11:54:45.017-04:00" }, { - "id": "a85b4258", + "id": "873fec43", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", - "tag": "router", - "ts": "2026-09-27T11:12:52.035-04:00" + "tag": "turn", + "ts": "2026-09-27T11:54:45.018-04:00" }, { - "id": "a85b4258", + "id": "237ac90b", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "router", - "ts": "2026-09-27T11:12:53.040-04:00" + "ts": "2026-09-27T11:54:45.415-04:00" }, { - "id": "3f537e00", + "id": "873fec43", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:12:53.042-04:00" + "ts": "2026-09-27T11:54:45.623-04:00" }, { - "id": "a03aeed7", + "id": "8176b2e8", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:12:53.073-04:00" + "ts": "2026-09-27T11:54:45.649-04:00" }, { - "id": "a03aeed7", + "id": "8176b2e8", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:12:53.426-04:00" + "ts": "2026-09-27T11:54:45.916-04:00" }, { - "id": "08f03587", + "id": "e1663495", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "caption", - "ts": "2026-09-27T11:12:53.932-04:00" + "ts": "2026-09-27T11:54:46.420-04:00" }, { - "id": "08f03587", + "id": "e1663495", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "caption", - "ts": "2026-09-27T11:12:54.948-04:00" + "ts": "2026-09-27T11:54:46.595-04:00" }, { - "id": "1cf379ff", + "id": "f158fecb", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "title", - "ts": "2026-09-27T11:12:55.453-04:00" + "ts": "2026-09-27T11:54:47.142-04:00" }, { - "id": "428b3fb8", + "id": "7f15b907", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:12:56.516-04:00" + "ts": "2026-09-27T11:54:48.939-04:00" }, { - "id": "428b3fb8", + "id": "7f15b907", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:12:56.811-04:00" + "ts": "2026-09-27T11:54:49.120-04:00" }, { - "id": "82d00943", + "id": "738b80a5", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "reflex", - "ts": "2026-09-27T11:12:56.813-04:00" + "ts": "2026-09-27T11:54:49.125-04:00" }, { - "id": "82d00943", + "id": "738b80a5", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "reflex", - "ts": "2026-09-27T11:12:57.667-04:00" + "ts": "2026-09-27T11:54:49.725-04:00" } ] \ No newline at end of file diff --git a/docs/design/chat-cleanup/evidence/run-summary.json b/docs/design/chat-cleanup/evidence/run-summary.json index 8c1414a05f..fa6e5147a6 100644 --- a/docs/design/chat-cleanup/evidence/run-summary.json +++ b/docs/design/chat-cleanup/evidence/run-summary.json @@ -1,5 +1,5 @@ { - "source_commit": "d19673f85", + "source_commit": "0b970f4bc", "date": "2026-09-27", "terminal": { "columns": 140, @@ -14,7 +14,7 @@ }, "total_completed_request_records": 34, "tests_passed": 4, - "duration_seconds": 96.531, + "duration_seconds": 95.919, "capture_method": "real tmux capture-pane ANSI framebuffer, rendered by agg", "manager_scenario": "historical journal fixture plus live model follow-up" } diff --git a/docs/design/chat-cleanup/evidence/run.log b/docs/design/chat-cleanup/evidence/run.log index f2af03bdf9..68d4528c45 100644 --- a/docs/design/chat-cleanup/evidence/run.log +++ b/docs/design/chat-cleanup/evidence/run.log @@ -1,29 +1,29 @@ === RUN TestCleanChat - chatclean_e2e_test.go:41: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/00-active.cast - chatclean_e2e_test.go:50: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/01-chat.cast - chatclean_e2e_test.go:67: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/01-expanded.cast - chatclean_e2e_test.go:69: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/01-closed.cast - chatclean_e2e_test.go:86: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/02-notification.cast - chatclean_e2e_test.go:96: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/03-dismissed.cast - chatclean_e2e_test.go:100: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/04-restored.cast + chatclean_e2e_test.go:41: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/00-active.cast + chatclean_e2e_test.go:50: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/01-chat.cast + chatclean_e2e_test.go:67: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/01-expanded.cast + chatclean_e2e_test.go:69: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/01-closed.cast + chatclean_e2e_test.go:86: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/02-notification.cast + chatclean_e2e_test.go:96: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/03-dismissed.cast + chatclean_e2e_test.go:100: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/04-restored.cast chatclean_e2e_test.go:102: chat: 13 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash ---- PASS: TestCleanChat (25.88s) +--- PASS: TestCleanChat (26.56s) === RUN TestCleanManagerReplay - chatclean_e2e_test.go:176: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/05-manager-replay.cast - chatclean_e2e_test.go:180: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/06-manager-live-followup.cast + chatclean_e2e_test.go:176: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/05-manager-replay.cast + chatclean_e2e_test.go:180: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/06-manager-live-followup.cast chatclean_e2e_test.go:182: manager: 5 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash ---- PASS: TestCleanManagerReplay (13.91s) +--- PASS: TestCleanManagerReplay (13.33s) === RUN TestCleanChatFailureRecovery - chatclean_e2e_test.go:206: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/07-failure-recovery-active.cast - chatclean_e2e_test.go:218: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/08-recovery-finished.cast - chatclean_e2e_test.go:239: recovery: 7 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash ---- PASS: TestCleanChatFailureRecovery (18.57s) + chatclean_e2e_test.go:206: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/07-failure-recovery-active.cast + chatclean_e2e_test.go:221: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/08-recovery-finished.cast + chatclean_e2e_test.go:263: recovery: 7 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash +--- PASS: TestCleanChatFailureRecovery (17.28s) === RUN TestCleanChatSteering - chatclean_e2e_test.go:323: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/09-user-steering.cast - chatclean_e2e_test.go:328: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/09-assistant-update.cast - chatclean_e2e_test.go:363: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/10-steering-finished.cast - chatclean_e2e_test.go:377: captured real tmux frame: /tmp/codeaf-chat-cleanup-d19673f85-evidence/11-steering-resumed.cast - chatclean_e2e_test.go:379: steering: 9 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash ---- PASS: TestCleanChatSteering (38.08s) + chatclean_e2e_test.go:347: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/09-user-steering.cast + chatclean_e2e_test.go:352: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/09-assistant-update.cast + chatclean_e2e_test.go:387: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/10-steering-finished.cast + chatclean_e2e_test.go:401: captured real tmux frame: /tmp/codeaf-chat-cleanup-0b970f4bc-evidence/11-steering-resumed.cast + chatclean_e2e_test.go:403: steering: 9 completed model requests; every call-log record checked against deepseek/deepseek-v4.1-flash +--- PASS: TestCleanChatSteering (38.59s) PASS -ok github.com/Agent-Field/codeaf/internal/e2e 96.531s +ok github.com/Agent-Field/codeaf/internal/e2e 95.919s diff --git a/docs/design/chat-cleanup/evidence/steering-models.json b/docs/design/chat-cleanup/evidence/steering-models.json index d96b850618..0462e1afec 100644 --- a/docs/design/chat-cleanup/evidence/steering-models.json +++ b/docs/design/chat-cleanup/evidence/steering-models.json @@ -1,127 +1,127 @@ [ { - "id": "1bef6fde", + "id": "e701d877", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", - "tag": "title", - "ts": "2026-09-27T11:13:09.554-04:00" + "tag": "router", + "ts": "2026-09-27T11:55:02.165-04:00" }, { - "id": "ead1b769", + "id": "baa985ed", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", - "tag": "router", - "ts": "2026-09-27T11:13:09.555-04:00" + "tag": "title", + "ts": "2026-09-27T11:55:02.165-04:00" }, { - "id": "c1ea3613", + "id": "8a902a18", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:13:09.557-04:00" + "ts": "2026-09-27T11:55:02.168-04:00" }, { - "id": "c1ea3613", + "id": "8a902a18", "model": "deepseek/deepseek-v4.1-flash", "tag": "turn", - "ts": "2026-09-27T11:13:09.915-04:00" + "ts": "2026-09-27T11:55:02.427-04:00" }, { - "id": "c4a17c6a", + "id": "a268e83d", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:13:09.916-04:00" + "ts": "2026-09-27T11:55:02.431-04:00" }, { - "id": "ead1b769", + "id": "e701d877", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "router", - "ts": "2026-09-27T11:13:10.254-04:00" + "ts": "2026-09-27T11:55:02.774-04:00" }, { - "id": "c4a17c6a", + "id": "a268e83d", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:13:10.560-04:00" + "ts": "2026-09-27T11:55:02.873-04:00" }, { - "id": "8b953280", + "id": "baa985ed", "model": "deepseek/deepseek-v4.1-flash", - "phase": "start", - "tag": "caption", - "ts": "2026-09-27T11:13:11.063-04:00" + "status": 200, + "tag": "title", + "ts": "2026-09-27T11:55:03.143-04:00" }, { - "id": "1bef6fde", + "id": "d47f8824", "model": "deepseek/deepseek-v4.1-flash", - "status": 200, - "tag": "title", - "ts": "2026-09-27T11:13:11.280-04:00" + "phase": "start", + "tag": "caption", + "ts": "2026-09-27T11:55:03.375-04:00" }, { - "id": "8b953280", + "id": "d47f8824", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "caption", - "ts": "2026-09-27T11:13:12.086-04:00" + "ts": "2026-09-27T11:55:03.705-04:00" }, { - "id": "f11d5bf3", + "id": "328cef18", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:13:18.788-04:00" + "ts": "2026-09-27T11:55:10.902-04:00" }, { - "id": "f11d5bf3", + "id": "328cef18", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:13:19.081-04:00" + "ts": "2026-09-27T11:55:12.006-04:00" }, { - "id": "e564ca37", + "id": "c919dde2", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "caption", - "ts": "2026-09-27T11:13:19.584-04:00" + "ts": "2026-09-27T11:55:12.508-04:00" }, { - "id": "e564ca37", + "id": "c919dde2", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "caption", - "ts": "2026-09-27T11:13:22.090-04:00" + "ts": "2026-09-27T11:55:12.952-04:00" }, { - "id": "371e4720", + "id": "b6239ea1", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "turn", - "ts": "2026-09-27T11:13:22.097-04:00" + "ts": "2026-09-27T11:55:15.029-04:00" }, { - "id": "371e4720", + "id": "b6239ea1", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "turn", - "ts": "2026-09-27T11:13:22.333-04:00" + "ts": "2026-09-27T11:55:15.472-04:00" }, { - "id": "c7cf3058", + "id": "6a816621", "model": "deepseek/deepseek-v4.1-flash", "phase": "start", "tag": "reflex", - "ts": "2026-09-27T11:13:22.335-04:00" + "ts": "2026-09-27T11:55:15.474-04:00" }, { - "id": "c7cf3058", + "id": "6a816621", "model": "deepseek/deepseek-v4.1-flash", "status": 200, "tag": "reflex", - "ts": "2026-09-27T11:13:22.713-04:00" + "ts": "2026-09-27T11:55:15.994-04:00" } ] \ No newline at end of file From d44b8b7de5d6733e80a39bcbc69e39f00a3bde5e Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 12:26:43 -0400 Subject: [PATCH 13/23] Close interrupted response state when steering is consumed --- docs/changes/unreleased/1607-clean-chat.md | 3 +- internal/tui3/feed.go | 19 ++++- internal/tui3/feed_update_test.go | 83 ++++++++++++++++++++++ 3 files changed, 103 insertions(+), 2 deletions(-) diff --git a/docs/changes/unreleased/1607-clean-chat.md b/docs/changes/unreleased/1607-clean-chat.md index aad13c8c2d..92ca4ade45 100644 --- a/docs/changes/unreleased/1607-clean-chat.md +++ b/docs/changes/unreleased/1607-clean-chat.md @@ -4,6 +4,7 @@ title: chat keeps messages readable and folds operational work across every conv pr: 1607 surface: [chat, engine, docs] invalidates: + - "Steering during streamed tool arguments left a discarded call visible and leaked the next response’s [update] marker. Consuming a correction now closes the response boundary, preserves its human update, and removes calls that never ran (#1609)." - "Task completion cards and batches stayed expanded and could not be dismissed. They now start as one row; /dismiss hides settled notifications and /dismiss undo restores them without changing task records or pending decisions." - "Manager team exchanges, failed calls, skills, and compaction could spill outside live activity. Operational work now shares the existing scrolling activity view, capped at three rows, with a failure mark and full detail behind disclosure." - "Later work or task receipts could demote a completed answer into raw Markdown. Explicit tool-free response boundaries and marked user updates now keep messages to the person readable in live and replayed conversations, including updates before more work." @@ -11,4 +12,4 @@ invalidates: - "Team wake instructions invited repeated status paragraphs. The manager now uses the existing exact no-change response when coordination produces nothing new to tell the person." --- -Closes the presentation gaps tracked in #1564, #1565, and #1605. +Closes the presentation gaps tracked in #1564, #1565, #1605, and #1609. diff --git a/internal/tui3/feed.go b/internal/tui3/feed.go index c6d62a8f69..9e44ed1788 100644 --- a/internal/tui3/feed.go +++ b/internal/tui3/feed.go @@ -184,7 +184,8 @@ type feedHooks struct { // and is safe for that reason. closed func(e *entry, ev session.Event) // retrying fires when a cut request is about to be asked again, after the - // dead attempt's rows have gone and before the reason is written down. The + // dead attempt's rows have gone and before the reason is written down. A + // consumed steer also cuts that request and invokes the same cleanup. The // chat throws away the half-arrived proposal card there (task.go), which is // a block only the chat has; a node draws no card and installs nothing. // @@ -313,6 +314,22 @@ func (f *feed) ingestStream(ev session.Event, lump bool) { f.updateDelivery = userUpdateStream{} f.retry(ev) + case session.EventSteerConsumed: + if ev.Steer != nil { + // Consumption begins a new provider response even when the turn + // continues. The session retains interrupted prose, but discards + // calls that never began. Close that same boundary on every deck + // before the next response can inherit its marker or partial tool. + f.flushUpdatePrefix() + f.confirmResponse() + f.updateDelivery = userUpdateStream{} + f.closeLive() + f.dropRetryingFormingTools() + if f.hooks.retrying != nil { + f.hooks.retrying() + } + } + case session.EventToolForming: // The provider may still discard this attempt. Explicit updates stay // addressed while streaming, but are confirmed only with a durable call. diff --git a/internal/tui3/feed_update_test.go b/internal/tui3/feed_update_test.go index 9885c97e78..7dc2b634ec 100644 --- a/internal/tui3/feed_update_test.go +++ b/internal/tui3/feed_update_test.go @@ -247,3 +247,86 @@ func TestExplicitUpdateConfirmedWhenAnnouncedCallBegins(t *testing.T) { t.Fatal("durable tool response lost confirmed user update") } } + +// Steering during argument generation retains the delivered update, not the +// abandoned call. The next request starts its own audience marker probe even +// though it shares the same turn and follows the person's correction. +func TestConsumedSteerClosesInterruptedUpdateAndFormingCall(t *testing.T) { + for name, status := range map[string]session.EventKind{"forming": session.EventToolForming, "announced": session.EventToolAnnounced} { + t.Run(name, func(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.turn = 1 + runBatch(&a.feed, "read", "executed") + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] First file is ready."}) + a.ingest(session.Event{Kind: status, Tool: "write", CallID: "abandoned", Args: `{"path":"test.py","content":"PRIVATE_PARTIAL_TOOL"}`, ArgsText: `{"path":"test.py","content":"PRIVATE_PARTIAL_TOOL"}`}) + a.steerAccepted(&session.SteerNote{ID: 1, Words: "Use Decimal"}) + a.ingest(session.Event{Kind: session.EventSteerConsumed, Steer: &session.SteerNote{ID: 1}}) + for _, text := range []string{"[up", "date] Already using Decimal."} { + a.ingest(session.Event{Kind: session.EventTextDelta, Text: text}) + } + runBatch(&a.feed, "read", "next") + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "All tests pass."}) + a.ingest(session.Event{Kind: session.EventAssistantDone}) + a.touch() + page := strings.Join(plainRows(a), "\n") + for _, want := range []string{"First file is ready.", "Use Decimal", "Already using Decimal.", "All tests pass."} { + if strings.Count(page, want) != 1 { + t.Fatalf("lost or duplicated %q:\n%s", want, page) + } + } + for _, hidden := range []string{"[update]", "PRIVATE_PARTIAL_TOOL"} { + if strings.Contains(page, hidden) { + t.Fatalf("leaked %q:\n%s", hidden, page) + } + } + if kept := toolRowFor(t, &a.feed, "executed"); kept.status != toolOK || kept.detail.Output != "ok" { + t.Fatal("consumption discarded an executed call or its result") + } + for _, e := range a.entries { + if e.kind == entryTool && e.callID == "abandoned" { + t.Fatal("discarded tool remains in the live transcript") + } + } + }) + } +} + +func TestConsumedSteerSeparatesRetainedTextFromNextResponse(t *testing.T) { + for _, partial := range []string{"[up", "I have read the first file."} { + t.Run(partial, func(t *testing.T) { + f := newFeed(feedHooks{}) + f.turn = 1 + f.ingest(session.Event{Kind: session.EventTextDelta, Text: partial}) + f.ingest(session.Event{Kind: session.EventSteerConsumed, Steer: &session.SteerNote{ID: 1}}) + f.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] Correction applied."}) + f.ingest(session.Event{Kind: session.EventAssistantDone}) + var said []string + for _, e := range f.entries { + if e.kind == entryAssistant && e.text != "" { + said = append(said, e.text) + } + } + if len(said) != 2 || said[0] != partial || said[1] != "Correction applied." { + t.Fatalf("interrupted and subsequent responses crossed their boundary: %q", said) + } + }) + } +} + +func TestConsumedSteerDiscardsPartialProposalCard(t *testing.T) { + a, agent := formingTurn(t) + drive(t, a, streamEventMsg{gen: a.gen, ev: forming("abandoned", taskTool, taskTool+" Draft proposal", "{\"title\":\"Draft\"")}) + if a.formingCard() == nil { + t.Fatal("forming proposal did not raise a card") + } + drive(t, a, streamEventMsg{gen: a.gen, ev: steerAcceptedEvent(1, "Keep the work here")}) + drive(t, a, streamEventMsg{gen: a.gen, ev: steerConsumedEvent(1)}) + if a.formingCard() != nil || a.formingCardLive() { + t.Fatal("consumed steer retained abandoned proposal") + } + if !strings.Contains(strings.Join(plainRows(a), "\n"), "Keep the work here") { + t.Fatal("discarding proposal lost the correction") + } + agent.finish() + drive(t, a, streamClosedMsg{gen: a.gen}) +} From 12e114bb3d9452885ce6db1252fc8580444e8dc2 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 12:47:13 -0400 Subject: [PATCH 14/23] Account for interleaved captions in Codex redaction acceptance --- internal/session/codex_client_test.go | 49 ++++++++++++++++++++++++++- 1 file changed, 48 insertions(+), 1 deletion(-) diff --git a/internal/session/codex_client_test.go b/internal/session/codex_client_test.go index 469ade0316..e4ec0e2363 100644 --- a/internal/session/codex_client_test.go +++ b/internal/session/codex_client_test.go @@ -5,6 +5,7 @@ import ( "context" "encoding/json" "fmt" + "io" "io/fs" "net/http" "net/http/httptest" @@ -288,12 +289,29 @@ func TestCodexAccessTokenSplitAcrossTextDeltasNeverReachesAnyCompletedSink(t *te // EventError, call log, and debug record each scrub the text they actually // write after the provider has assembled it. const access = "codex-split-sink-access-secret" - var backendCalls atomic.Int32 + var backendCalls, captionCalls atomic.Int32 + captionArrived := make(chan struct{}) + var captionOnce sync.Once backend := httptest.NewServer(http.HandlerFunc(func(writer http.ResponseWriter, request *http.Request) { if request.Header.Get("Authorization") != "Bearer "+access { t.Errorf("backend bearer = %q", request.Header.Get("Authorization")) } writer.Header().Set("Content-Type", "text/event-stream") + rawRequest, err := io.ReadAll(request.Body) + if err != nil { + t.Errorf("read backend request: %v", err) + return + } + // Auxiliary narration is a separate request, not a retry or the + // terminal follow-up. Keep the two-call security assertion about the + // conversation, even when its real tool takes long enough to narrate. + if bytes.Contains(rawRequest, []byte(captionSystem)) { + captionCalls.Add(1) + fmt.Fprintln(writer, `data: {"type":"response.completed","response":{"usage":{"input_tokens":1,"output_tokens":0}}}`) + fmt.Fprintln(writer) + captionOnce.Do(func() { close(captionArrived) }) + return + } if backendCalls.Add(1) > 1 { failed, _ := json.Marshal(map[string]any{ "type": "response.failed", @@ -357,6 +375,32 @@ func TestCodexAccessTokenSplitAcrossTextDeltasNeverReachesAnyCompletedSink(t *te if !agent.setTitleIfUnnamed("split token sink test") { t.Fatal("fresh session already had a title") } + // Hold this tool until the real caption request reaches the fake backend. + // This makes the interleaving deterministic instead of relying on a busy + // runner to stretch manual lookup past the narration dwell. + wrappedManual := false + for i := range agent.tools { + if agent.tools[i].Name != "manual" { + continue + } + execute := agent.tools[i].Execute + agent.tools[i].Execute = func(ctx context.Context, args json.RawMessage) (string, bool, error) { + timer := time.NewTimer(5 * time.Second) + defer timer.Stop() + select { + case <-captionArrived: + return execute(ctx, args) + case <-ctx.Done(): + return "", true, ctx.Err() + case <-timer.C: + return "", true, fmt.Errorf("caption request did not arrive") + } + } + wrappedManual = true + } + if !wrappedManual { + t.Fatal("manual tool is missing") + } events, err := agent.Submit(ctx, "stream the hostile answer") if err != nil { t.Fatal(err) @@ -371,6 +415,9 @@ func TestCodexAccessTokenSplitAcrossTextDeltasNeverReachesAnyCompletedSink(t *te if streamed.String() != access { t.Fatalf("fake backend did not split the access token across text deltas: %q", streamed.String()) } + if captionCalls.Load() != 1 { + t.Fatalf("caption calls = %d, want one interleaved auxiliary request", captionCalls.Load()) + } if backendCalls.Load() != 2 { t.Fatalf("backend calls = %d, want the completed tool call and terminal follow-up", backendCalls.Load()) } From 8e9a5fdf0659cc17d0d8b52e863589faa21f08bf Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 12:50:57 -0400 Subject: [PATCH 15/23] Fold task reply provenance into shared work disclosure --- docs/changes/unreleased/1607-clean-chat.md | 3 +- internal/manual/chat/screen.md | 18 ++-- internal/tui3/feed.go | 16 ++- internal/tui3/render.go | 16 +-- internal/tui3/replay.go | 3 + internal/tui3/taskreplytag_test.go | 110 +++++++++++++++++++++ 6 files changed, 148 insertions(+), 18 deletions(-) diff --git a/docs/changes/unreleased/1607-clean-chat.md b/docs/changes/unreleased/1607-clean-chat.md index 92ca4ade45..9006190d39 100644 --- a/docs/changes/unreleased/1607-clean-chat.md +++ b/docs/changes/unreleased/1607-clean-chat.md @@ -4,6 +4,7 @@ title: chat keeps messages readable and folds operational work across every conv pr: 1607 surface: [chat, engine, docs] invalidates: + - "Task-sourced replies repeated full original requests above the answer, including duplicate quick-reading handoffs. Source metadata now stays behind the shared work disclosure in live and resumed conversations; full requests remain available when opened (#1613)." - "Steering during streamed tool arguments left a discarded call visible and leaked the next response’s [update] marker. Consuming a correction now closes the response boundary, preserves its human update, and removes calls that never ran (#1609)." - "Task completion cards and batches stayed expanded and could not be dismissed. They now start as one row; /dismiss hides settled notifications and /dismiss undo restores them without changing task records or pending decisions." - "Manager team exchanges, failed calls, skills, and compaction could spill outside live activity. Operational work now shares the existing scrolling activity view, capped at three rows, with a failure mark and full detail behind disclosure." @@ -12,4 +13,4 @@ invalidates: - "Team wake instructions invited repeated status paragraphs. The manager now uses the existing exact no-change response when coordination produces nothing new to tell the person." --- -Closes the presentation gaps tracked in #1564, #1565, #1605, and #1609. +Closes the presentation gaps tracked in #1564, #1565, #1605, #1609, and #1613. diff --git a/internal/manual/chat/screen.md b/internal/manual/chat/screen.md index b9f0f8e4c5..4762cc9cdd 100644 --- a/internal/manual/chat/screen.md +++ b/internal/manual/chat/screen.md @@ -945,14 +945,16 @@ If the answer is just the word `codeaf`, this conversation has no project — it started somewhere with nothing to borrow, and works in a directory of its own. `/status` prints where that actually is. -## The task name above an answer that appeared on its own - -A reply that begins because a task finished has a dim task line immediately above it in -the transcript. The line uses the same identity mark and name as the task column and quotes -your original request. Several finished tasks answered by one turn make several lines in -arrival order. A reply to something you just typed has no task line, and a task with no -recorded request shows its name without an empty quote. These lines return with the reply -after `/resume`; the finished-task strip above the input is unchanged. +## The task sources behind an answer that appeared on its own + +A reply that begins because tasks finished keeps their source details inside the +work disclosure. Press `ctrl+e` to inspect each task's identity, name, and full +original request, in arrival order. Closing the disclosure keeps repeated +requests out of the conversation while the assistant's answer stays visible. +A reply to something you just typed has no task sources; a task with no recorded +request shows its name without an empty quote. The same source details remain +available after `/resume`, and the tasks themselves remain accessible in the task +column. ## Provider missing or tok/s not showing — why via or the machine in brackets or the rate is not there, no rate after a follow-up diff --git a/internal/tui3/feed.go b/internal/tui3/feed.go index 9e44ed1788..82201c4b5a 100644 --- a/internal/tui3/feed.go +++ b/internal/tui3/feed.go @@ -1200,14 +1200,26 @@ func (f *feed) reasonStream(text string, lump bool) { f.follow() } -// takeReplyTags labels the answer with the task reports it is written from -// (render.go's reply-tag row: cause above consequence). +// taskReplySourceEntry retains typed provenance as inspectable operational work. +func taskReplySourceEntry(tags []session.TaskReplyTag, turn int) entry { + return entry{kind: entryNote, text: "task sources", turn: turn, + replyTags: append([]session.TaskReplyTag(nil), tags...)} +} + +// takeReplyTags retains task provenance on the answer and files its visible +// details with operational work, behind the shared disclosure. // // TAGS CAN ARRIVE BEFORE THE FIRST WORD THEY LABEL, which is why they are held // rather than dropped: the engine names the reports the turn is about to answer // from as it picks them up, and the block that carries them may not exist yet. // [feed.say] empties the held list onto the block it opens. func (f *feed) takeReplyTags(tags []session.TaskReplyTag) { + if len(tags) == 0 { + return + } + f.said(taskReplySourceEntry(tags, f.turn)) + f.follow() + f.touch() f.pendingReplyTags = append(f.pendingReplyTags, tags...) if f.live < 0 || f.live >= len(f.entries) || f.entries[f.live].kind != entryAssistant { return diff --git a/internal/tui3/render.go b/internal/tui3/render.go index 9e9640e1dc..0fc6fdc4aa 100644 --- a/internal/tui3/render.go +++ b/internal/tui3/render.go @@ -684,7 +684,7 @@ func (a *app) deckRows(d deck, width int) ([]row, bool) { // link's columns are a fact about the row it landed on, and the row it // lands on is decided by a wrap this pass must not have an opinion // about. - if e.kind == entryAssistant { + if e.kind == entryAssistant || (e.kind == entryNote && len(e.replyTags) > 0) { // AND THE ONE THE POINTER IS ON IS INKED BY THE SAME PASS. It cannot be // done afterwards: the row that comes back is styled text, and a hue // spliced into it by column would have to redo the escape bookkeeping @@ -916,7 +916,7 @@ func (a *app) disclosedEntryRows(d deck, at, width int) []row { links := 0 for n, text := range a.entryRows(d, at, width) { r := row{text: text, entry: at} - if e.kind == entryAssistant { + if e.kind == entryAssistant || (e.kind == entryNote && len(e.replyTags) > 0) { hot := -1 if h := a.hoveringLink(at); h >= 0 { hot = h - links @@ -1319,6 +1319,9 @@ func (a *app) renderEntry(i int, e *entry, width int) []string { return a.teamCardRows(*e, width) case entryNote: + if len(e.replyTags) > 0 { + return a.linkPaths(a.taskReplyTagRows(e.replyTags, width)) + } // A LINE MAY BE QUIET; THE FACT IT CARRIES MAY NOT BE (payload.go). The // lane keeps its dim prose and its dim lead — a note is still the surface // talking about itself — while the words the person typed the command to @@ -1419,7 +1422,6 @@ func (a *app) renderEntry(i int, e *entry, width int) []string { // those bytes are final enough to format, so the head being calm and the tail // being lit is the same fact the promotion itself states, said in ink. func (a *app) assistantRows(at int, e *entry, width int) []string { - tags := a.taskReplyTagRows(e.replyTags, width) // ── AND PROSE THAT TURNED OUT NOT TO BE THE ANSWER ────────────────────── // // A block that more work opened under is narration, and it is drawn as what @@ -1445,10 +1447,10 @@ func (a *app) assistantRows(at int, e *entry, width int) []string { if e.capHead && e.capCut > 0 && e.capCut <= len(text) { text = text[e.capCut:] } - return append(tags, a.workingProse(text, width)...) + return a.workingProse(text, width) } if e.settled { - return append(tags, a.settledMarkdown(at, e, width)...) + return a.settledMarkdown(at, e, width) } e.feet = nil var out []string @@ -1459,7 +1461,7 @@ func (a *app) assistantRows(at int, e *entry, width int) []string { } else { out = append(out, a.liveTail(drawn, width)...) } - return append(tags, trimBlanks(out)...) + return trimBlanks(out) } // promotedRows is the head of a streaming reply — the bytes the throttle has @@ -1515,7 +1517,7 @@ func (a *app) liveTail(text string, width int) []string { return rows } -// taskReplyTagRows puts the cause immediately above the answer it prompted. +// taskReplyTagRows draws source details only inside disclosed operational work. // The request is copied as-is from the task record and omitted when empty. func (a *app) taskReplyTagRows(tags []session.TaskReplyTag, width int) []string { var out []string diff --git a/internal/tui3/replay.go b/internal/tui3/replay.go index 58d5134f00..5fc689e70c 100644 --- a/internal/tui3/replay.go +++ b/internal/tui3/replay.go @@ -704,6 +704,9 @@ func (a *app) replayBlocks(entries []session.DisplayEntry, shape replayShape) ([ if text == "" { continue // a step that only called tools; its calls follow } + if len(e.ReplyTags) > 0 { + blocks = append(blocks, taskReplySourceEntry(e.ReplyTags, turn)) + } blocks = append(blocks, entry{ kind: entryAssistant, text: text, turn: turn, settled: true, confirmed: confirmation, replyTags: append([]session.TaskReplyTag(nil), e.ReplyTags...), diff --git a/internal/tui3/taskreplytag_test.go b/internal/tui3/taskreplytag_test.go index aefd0b0835..b7c37cd42a 100644 --- a/internal/tui3/taskreplytag_test.go +++ b/internal/tui3/taskreplytag_test.go @@ -61,3 +61,113 @@ func TestResumedReplyRestoresItsTaskTag(t *testing.T) { } t.Fatalf("resumed assistant did not restore its tag: %#v", a.entries) } + +func TestTaskReplySourcesUseSharedDisclosureAcrossSurfaces(t *testing.T) { + tags := []session.TaskReplyTag{ + {ID: 1, Title: "Reading source one", Request: strings.Repeat("PRIVATE_ORIGINAL_REQUEST ", 20)}, + {ID: 2, Title: "Reading source two", Request: "SECOND_SOURCE_REQUEST"}, + } + for _, width := range []int{40, 140} { + for _, mode := range []lens{participantLens, overseerLens, transcriptLens} { + for _, live := range []bool{false, true} { + a := newTestApp(&fakeAgent{model: "m"}) + a.turn = 1 + a.entries = []entry{{kind: entryUser, text: "Build the report", turn: 1}} + a.ingest(session.Event{Kind: session.EventTaskReplyTags, TaskReplyTags: tags}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] The totals are verified."}) + a.ingest(session.Event{Kind: session.EventAssistantDone}) + d := deck{entries: a.entries, lens: mode, workOpen: map[int]bool{}, capOpen: map[int]bool{}} + if live { + d.runningTurn = 1 + } + text := func() string { + rendered, _ := a.deckRows(d, width) + var lines []string + for _, r := range rendered { + lines = append(lines, plain(r.text)) + } + return strings.Join(lines, "\n") + } + closed := text() + if strings.Contains(closed, "PRIVATE_ORIGINAL_REQUEST") || strings.Contains(closed, "SECOND_SOURCE_REQUEST") || strings.Contains(closed, "Reading source") { + t.Fatalf("width %d live %v: source metadata escaped work disclosure:\n%s", width, live, closed) + } + if !strings.Contains(closed, "The totals are verified.") { + t.Fatalf("reply disappeared: %s", closed) + } + if key, ok := a.liveWorkOf(d); ok { + d.workOpen[key] = true + } + for _, fold := range a.deckFolds(d) { + d.workOpen[fold.key] = true + } + opened := strings.Join(strings.Fields(text()), " ") + for _, tag := range tags { + if !strings.Contains(opened, strings.Join(strings.Fields(tag.Request), " ")) || !strings.Contains(opened, tag.Title) { + t.Fatalf("width %d live %v: disclosed source lost data: %s", width, live, opened) + } + } + } + } + } +} + +func TestTaskReplySourcesResumeBehindWorkDisclosure(t *testing.T) { + tag := session.TaskReplyTag{ID: 4, Title: "Reading source", Request: strings.Repeat("PRIVATE_RESUMED_REQUEST ", 10)} + a := resumedApp(t, + session.DisplayEntry{Role: "user", Text: "Produce a handoff"}, + session.DisplayEntry{Role: "assistant", Text: "The handoff is ready.", Answer: true, ReplyTags: []session.TaskReplyTag{tag}}, + ) + closed := strings.Join(plainRows(a), "\n") + if strings.Contains(closed, "PRIVATE_RESUMED_REQUEST") || !strings.Contains(closed, "The handoff is ready.") { + t.Fatalf("resumed sources escaped disclosure or reply disappeared:\n%s", closed) + } + drive(t, a, key("ctrl+e")) + opened := strings.Join(strings.Fields(strings.Join(plainRows(a), "\n")), " ") + if !strings.Contains(opened, strings.TrimSpace(tag.Request)) { + t.Fatalf("resumed source cannot be opened: %s", opened) + } + drive(t, a, key("ctrl+e")) + if strings.Contains(strings.Join(plainRows(a), "\n"), "PRIVATE_RESUMED_REQUEST") { + t.Fatal("closing the work disclosure left source details visible") + } +} + +func TestTaskReplySourcesArrivingDuringProseKeepTheLiveAnswerWhole(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.turn = 1 + a.entries = []entry{{kind: entryUser, text: "Review the totals", turn: 1}} + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "The report "}) + live := a.live + tag := session.TaskReplyTag{ID: 7, Title: "Reading task", Request: "PRIVATE_LATE_REQUEST"} + a.ingest(session.Event{Kind: session.EventTaskReplyTags, TaskReplyTags: []session.TaskReplyTag{tag}}) + if a.live != live { + t.Fatal("source metadata displaced the live answer") + } + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "is ready."}) + a.ingest(session.Event{Kind: session.EventAssistantDone}) + if a.entries[live].text != "The report is ready." || len(a.entries[live].replyTags) != 1 { + t.Fatal("late source metadata split the answer or lost provenance") + } + closed := strings.Join(plainRows(a), "\n") + if strings.Contains(closed, tag.Request) || strings.Count(closed, "The report is ready.") != 1 { + t.Fatalf("late source escaped disclosure or changed the answer:\n%s", closed) + } + drive(t, a, key("ctrl+e")) + if !strings.Contains(strings.Join(plainRows(a), "\n"), tag.Request) { + t.Fatal("late source cannot be inspected") + } +} + +func TestTaskReplySourcesKeepTaskLinksWhenOpened(t *testing.T) { + a, _, _ := roomApp(t) + a.turn = 1 + a.entries = []entry{{kind: entryUser, text: "Inspect the result", turn: 1}} + a.ingest(session.Event{Kind: session.EventTaskReplyTags, TaskReplyTags: []session.TaskReplyTag{{ID: 7, Title: "Source", Request: "Inspect task 7"}}}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "The result is ready."}) + a.ingest(session.Event{Kind: session.EventAssistantDone}) + drive(t, a, key("ctrl+e")) + if _, _, ok := linkedRow(a); !ok { + t.Fatal("disclosed source lost its task link") + } +} From fd6256012d37795f49c97fda421d957b0f4b2b38 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 12:51:28 -0400 Subject: [PATCH 16/23] Record deterministic caption acceptance fix --- docs/changes/unreleased/1607-clean-chat.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docs/changes/unreleased/1607-clean-chat.md b/docs/changes/unreleased/1607-clean-chat.md index 9006190d39..ed0647a327 100644 --- a/docs/changes/unreleased/1607-clean-chat.md +++ b/docs/changes/unreleased/1607-clean-chat.md @@ -4,6 +4,7 @@ title: chat keeps messages readable and folds operational work across every conv pr: 1607 surface: [chat, engine, docs] invalidates: + - "The Codex redaction fixture counted auxiliary captions as conversation requests and failed depending on tool latency. It now deliberately interleaves one caption while retaining exactly two conversation requests and all redaction assertions (#1614)." - "Task-sourced replies repeated full original requests above the answer, including duplicate quick-reading handoffs. Source metadata now stays behind the shared work disclosure in live and resumed conversations; full requests remain available when opened (#1613)." - "Steering during streamed tool arguments left a discarded call visible and leaked the next response’s [update] marker. Consuming a correction now closes the response boundary, preserves its human update, and removes calls that never ran (#1609)." - "Task completion cards and batches stayed expanded and could not be dismissed. They now start as one row; /dismiss hides settled notifications and /dismiss undo restores them without changing task records or pending decisions." @@ -14,3 +15,4 @@ invalidates: --- Closes the presentation gaps tracked in #1564, #1565, #1605, #1609, and #1613. +Also fixes the acceptance fixture tracked in #1614. From a6c693f4da751e110485859c4d680df519c5d105 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 13:07:27 -0400 Subject: [PATCH 17/23] docs: describe durable audience and interrupted human updates --- docs/changes/unreleased/1607-clean-chat.md | 4 ++- internal/manual/chat/keys.md | 9 +++-- internal/manual/chat/screen.md | 39 +++++++++++----------- 3 files changed, 26 insertions(+), 26 deletions(-) diff --git a/docs/changes/unreleased/1607-clean-chat.md b/docs/changes/unreleased/1607-clean-chat.md index ed0647a327..4a8aa5ddbf 100644 --- a/docs/changes/unreleased/1607-clean-chat.md +++ b/docs/changes/unreleased/1607-clean-chat.md @@ -4,6 +4,8 @@ title: chat keeps messages readable and folds operational work across every conv pr: 1607 surface: [chat, engine, docs] invalidates: + - "Generated interruption and handover records could replay as assistant answers. Source-authored presentation metadata now folds those records while preserving exact human text and unchanged provider context (#1617)." + - "An interrupted human update disappeared live and returned as a completed answer after resume. Audience and interruption are now separate durable facts: addressed partials stay readable with an interrupted label, while unfinished operational narration remains folded (#1620)." - "The Codex redaction fixture counted auxiliary captions as conversation requests and failed depending on tool latency. It now deliberately interleaves one caption while retaining exactly two conversation requests and all redaction assertions (#1614)." - "Task-sourced replies repeated full original requests above the answer, including duplicate quick-reading handoffs. Source metadata now stays behind the shared work disclosure in live and resumed conversations; full requests remain available when opened (#1613)." - "Steering during streamed tool arguments left a discarded call visible and leaked the next response’s [update] marker. Consuming a correction now closes the response boundary, preserves its human update, and removes calls that never ran (#1609)." @@ -14,5 +16,5 @@ invalidates: - "Team wake instructions invited repeated status paragraphs. The manager now uses the existing exact no-change response when coordination produces nothing new to tell the person." --- -Closes the presentation gaps tracked in #1564, #1565, #1605, #1609, and #1613. +Closes the presentation gaps tracked in #1564, #1565, #1605, #1609, #1613, #1617, and #1620. Also fixes the acceptance fixture tracked in #1614. diff --git a/internal/manual/chat/keys.md b/internal/manual/chat/keys.md index bff03a2469..824803e301 100644 --- a/internal/manual/chat/keys.md +++ b/internal/manual/chat/keys.md @@ -3391,11 +3391,10 @@ elapsed time, the thinking block's time when there was one, and the real call co There is a blank row between the chip and the answer under it. Detailed time, token and spend receipts appear only when you open the work. -**A turn you stopped with `esc` says so instead**, and it collapses whole: -`▸ stopped by you at 40s · 4 tool calls · ctrl+e`, with nothing left standing under it. -A stopped turn never reached an answer, so there is no answer to leave out of the chip — -that is the point of the wording. codeaf's own lines about the stop (`· stopped`, and -what it dropped from the queue) stay outside the chip where you can read them. +**A turn you stopped with `esc` says so instead**. Its unfinished work collapses +into a stopped-work chip. Completed replies and explicitly addressed updates stay +outside it; a human update interrupted mid-stream is labeled `interrupted`. +The retained audience and interruption state survive reopening the conversation. Click the chip or press `ctrl+e` over an empty message box to open or close it. There is no transcript cursor, so the key first chooses the running conversation’s compact diff --git a/internal/manual/chat/screen.md b/internal/manual/chat/screen.md index 4762cc9cdd..abea02cdc7 100644 --- a/internal/manual/chat/screen.md +++ b/internal/manual/chat/screen.md @@ -1791,25 +1791,22 @@ a flush half. Below 60 columns the gutter is dropped and the shading alone carries the difference. With no colour at all, the gutter alone does. -## I pressed esc and the reply stayed grey — why nothing became the answer +## What remains visible when I stop a reply -That is the screen telling you the truth: **an interrupted turn never reached an answer.** +Press `esc` while a turn is running to stop its unfinished work. Completed replies +and updates already addressed to you remain readable. An explicitly addressed +update interrupted while streaming also stays visible, with an `interrupted` +label; it does not claim to be a completed answer. -Press `esc` while a turn is running and whatever had been written stays on screen, -because the session keeps it — but it stays at the working shade, in the working column, for good. The missing -flush-left paragraph *is* the statement that you did not get an answer, so nothing has to -be added to say it. Asking something else afterwards does not promote it later. +Unfinished operational narration and tool details collapse into the stopped-work +chip. Click it or press `ctrl+e` to inspect the retained details. Your messages, +steering and actionable decisions remain outside the disclosure. -The turn also collapses to a chip that says who stopped it — -`▸ stopped by you at 40s · 4 tool calls · ctrl+e` — with nothing left standing under it. -`ctrl+e` over an empty message box, or a click on the chip, opens it again. codeaf's own -lines about the stop, `· stopped` and anything it dropped from the queue, stay outside -the chip. - -One limit worth knowing: the session file keeps the words a stopped turn managed to say -and keeps no mark saying it was stopped. So if you close codeaf and **resume** that -conversation later, that turn is rebuilt from its shape alone and its last paragraph reads -as an answer again. +Newly recorded conversations preserve the audience and interruption state when +you reopen them. Engine-generated handover and interruption notes stay inside +operational disclosure. For older journals without this metadata, only complete +reserved interruption records can be recognized safely; ambiguous mixed prose is +preserved rather than removing words that might have been intended for you. ## My message appeared in the middle of the reply — a message never lands mid-stream @@ -4241,16 +4238,18 @@ press `ctrl+e` to inspect the complete words while they arrive. When the response finishes with an answer and no tool calls, the full reply opens as formatted text. Questions open at that same boundary, before later completion checks finish. This means full answers no longer appear at full size token by -token in the compact view. A response that calls a tool stays a step. If work -continues later, earlier prose returns to the work hierarchy. +token in the compact view. Ordinary narration that calls a tool stays a step. A confirmed reply remains +visible when later work starts. An explicit human update streams as formatted +text immediately, with its protocol marker hidden, even before more tool calls. The same behavior applies inside task rooms. Saved answers remain readable when you return, and completion still collapses the intermediate work. Explicitly expanded work and `ui.work = open` keep the detailed reading view available. A message queued beneath a streaming reply, or a notice displayed there, stays -below the complete answer when its response is confirmed. Stopping the turn keeps -its partial response dim even if a confirmation was already in flight. +below the complete answer when its response is confirmed. Stopping preserves +explicit human updates with an interrupted label and folds unfinished operational +narration, even if a confirmation was already in flight. If private work falls below a queued message, its finished work stays behind a separate closed `worked` chip. Expanding that chip still reveals its details. From d659ed397bede55f4ee179cc55d3dfa63ea40ad4 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 13:12:06 -0400 Subject: [PATCH 18/23] Preserve assistant audience and interruption across transcript replay --- internal/session/agent.go | 68 ++++-- internal/session/checkpoint.go | 2 +- internal/session/checkpoint_quick.go | 3 +- internal/session/image.go | 15 +- internal/session/loop.go | 8 +- internal/session/presentation.go | 100 +++++++++ internal/session/presentation_test.go | 296 ++++++++++++++++++++++++++ internal/session/reasoning.go | 10 +- internal/session/rewind.go | 2 +- internal/session/session.go | 10 +- internal/session/sessionfile.go | 38 +++- internal/session/transcriptread.go | 15 +- internal/session/turnfold.go | 2 +- 13 files changed, 511 insertions(+), 58 deletions(-) create mode 100644 internal/session/presentation.go create mode 100644 internal/session/presentation_test.go diff --git a/internal/session/agent.go b/internal/session/agent.go index 4310eb3701..6f083c9da6 100644 --- a/internal/session/agent.go +++ b/internal/session/agent.go @@ -143,6 +143,7 @@ func newAgent(config Config, client Completer) (*Agent, error) { // with the header's id, which survives every resume. id: NewSessionID(), } + agent.presentation = &presentationIndex{} agent.cacheKey = sessionCacheKey(agent.id) // WHAT IS ALREADY KNOWN ABOUT THIS MODEL'S REAL WINDOW, before the first // check. The memo survives processes (internal/provider's ServedWindow), so @@ -236,6 +237,7 @@ func newAgent(config Config, client Completer) (*Agent, error) { } restored := replayed.messages agent.file = file + agent.presentation = file.presentation agent.restoreProgramHold() // AND WHAT AN EARLIER PROCESS OF THIS SESSION MADE. It is the one thing // in the journal that cannot be re-derived from the transcript — whether @@ -1117,7 +1119,7 @@ func (a *Agent) AttachReplay() (entries []DisplayEntry, events <-chan Event, sto a.mu.Lock() defer a.mu.Unlock() if a.closed || !a.running || a.hub == nil { - return shapeEntries(a.messages, a.file), nil, func() {} + return shapeEntries(a.messages, a.file, a.presentation), nil, func() {} } // The hub cannot already be closed here: the turn's goroutine clears // running under a.mu before it closes the hub, and we hold a.mu. The @@ -1125,7 +1127,7 @@ func (a *Agent) AttachReplay() (entries []DisplayEntry, events <-chan Event, sto // the caller where the full record answers them. stream, live := a.hub.attach(a.stillAskedLocked()) if !live { - return shapeEntries(a.messages, a.file), nil, func() {} + return shapeEntries(a.messages, a.file, a.presentation), nil, func() {} } floor := a.turnFloor if floor > len(a.messages) { @@ -1141,7 +1143,7 @@ func (a *Agent) AttachReplay() (entries []DisplayEntry, events <-chan Event, sto } } hub := a.hub - return shapeEntries(kept, a.file), stream.out, func() { hub.drop(stream) } + return shapeEntries(kept, a.file, a.presentation), stream.out, func() { hub.drop(stream) } } // userMessage is a person's message on its way into the transcript: the message @@ -2553,6 +2555,9 @@ func (a *Agent) Close() error { // order is the transcript order by construction; it is one buffered append to // an already-open file, not a place a turn waits. func (a *Agent) recordLocked(message ai.Message) { + if message.Role == "assistant" { + message.Content = append([]ai.ContentPart(nil), message.Content...) + } a.alignReasoningLocked() a.messages = append(a.messages, message) a.messageReasoning = append(a.messageReasoning, provider.MessageReasoning{}) @@ -4314,13 +4319,12 @@ func (h *eventHub) foldedLocked() { // a backlog — which is true for exactly the two kinds that are a STREAM OF TEXT // and carry nothing else. // -// EventTextDelta and EventReasoning are each emitted as `Event{Kind: …, Text: …}` -// and nothing more, at every one of the six places that emit them (loop.go, -// image.go, harness.go, task_room.go). THAT IS THE LAW THIS DEPENDS ON: a kind -// that ever grows a second field must come off this list in the same change, or -// the fold will quietly drop it for whoever attaches next. +// The stream's audience is part of its meaning, so adjacent deltas fold only +// when that declaration agrees. A newly added stream field must likewise join +// this comparison, or be excluded from folding, to survive a late attach. + func foldsInto(prev, next Event) bool { - if prev.Kind != next.Kind { + if prev.Kind != next.Kind || prev.Addressed != next.Addressed { return false } return prev.Kind == EventTextDelta || prev.Kind == EventReasoning @@ -4532,9 +4536,13 @@ type DisplayEntry struct { // Answer marks a completed tool-free response or an explicit human update. This // boundary survives replay so a later response cannot demote its message. Answer bool - Text string - Tool string // set when the entry is one call in a batch - Hint string // the call's gloss, as the tool cluster rendered it + // Addressed identifies an explicit update to the person, independently of + // completion. Interrupted updates remain readable without claiming success. + Addressed bool + Interrupted bool + Text string + Tool string // set when the entry is one call in a batch + Hint string // the call's gloss, as the tool cluster rendered it // CallID is the provider's own identity for a tool entry's call, exactly as // the record holds it, and "" for every entry that is not a call. @@ -4680,7 +4688,7 @@ type SteerMark struct { func (a *Agent) Transcript() []DisplayEntry { a.mu.Lock() defer a.mu.Unlock() - return shapeEntries(a.messages, a.file) + return shapeEntries(a.messages, a.file, a.presentation) } // EarlierHistory is the conversation a compaction pass edited away, and where @@ -4752,7 +4760,14 @@ func displayEntries(messages []ai.Message) []DisplayEntry { // that made it, and its result is a SEPARATE message further down, keyed by the // call's id. One pass to index, one pass to shape, so a batch of ten calls costs // one walk rather than ten. -func shapeEntries(messages []ai.Message, journal *sessionFile) []DisplayEntry { +func shapeEntries(messages []ai.Message, journal *sessionFile, indexes ...*presentationIndex) []DisplayEntry { + var presentation *presentationIndex + if journal != nil { + presentation = journal.presentation + } + if len(indexes) > 0 { + presentation = indexes[0] + } results := toolResults(messages) // Sized by [entryRows], which is the rule this loop appends by, so a // transcript full of tool batches is not grown a power of two at a time. @@ -4777,6 +4792,18 @@ func shapeEntries(messages []ai.Message, journal *sessionFile) []DisplayEntry { role = "aside" replyTags = append(replyTags, journal.taskReplyTags(msg)...) } + displayText := messageContentText(msg) + interrupted, explicitlyHuman := false, false + if mark := presentation.of(msg); role == "assistant" && mark != nil { + interrupted = mark.Interrupted + explicitlyHuman = mark.Audience == "human" + if mark.Audience == "operational" { + role = "aside" + } + if mark.Audience == "human" && mark.Text != nil { + displayText = *mark.Text + } + } var team []TeamLine if role == "aside" { team = teamNewsLines(messageContentText(msg)) @@ -4786,17 +4813,18 @@ func shapeEntries(messages []ai.Message, journal *sessionFile) []DisplayEntry { tags = append([]TaskReplyTag(nil), replyTags...) replyTags = nil } - displayText := messageContentText(msg) update := false if role == "assistant" { displayText, update = UserFacingUpdate(displayText) } entries = append(entries, DisplayEntry{ - Role: role, - Answer: role == "assistant" && (len(msg.ToolCalls) == 0 || update), - Text: displayText, - ImageRefs: journal.imageRefs(msg), - ReplyTags: tags, + Role: role, + Answer: role == "assistant" && !interrupted && (len(msg.ToolCalls) == 0 || update), + Addressed: role == "assistant" && (update || interrupted && explicitlyHuman), + Interrupted: interrupted, + Text: displayText, + ImageRefs: journal.imageRefs(msg), + ReplyTags: tags, // The journal is the only thing that remembers a user line was typed // INTO the turn above it rather than opening one of its own: the // message itself is an ordinary user message, because that is what the diff --git a/internal/session/checkpoint.go b/internal/session/checkpoint.go index 65c8e43be8..c91a4afe05 100644 --- a/internal/session/checkpoint.go +++ b/internal/session/checkpoint.go @@ -4625,7 +4625,7 @@ func (a *Agent) handOverRunningTurn(ctx context.Context, hub *eventHub, turn *Us // landing opens on this line and finds the integration, the review and the // pull request still owed, in the order they were drawn. Without it the // reduction would be a harness quietly dropping half of what was asked for. - a.record(textMessage("assistant", line+"\n"+said+heldRestRecord(read.ownRemainder))) + a.recordPresentedAssistant(textMessage("assistant", line+"\n"+said+heldRestRecord(read.ownRemainder)), provider.MessageReasoning{}, &messagePresentation{Audience: "operational"}) hub.send(Event{Kind: EventTurnDone, Usage: a.sealTurn(*turn, started, model)}) // And the name, on the terms every other turn shape takes it (title.go). a.maybeTitle(ctx, hub) diff --git a/internal/session/checkpoint_quick.go b/internal/session/checkpoint_quick.go index 58677f7ecc..d443ff6a89 100644 --- a/internal/session/checkpoint_quick.go +++ b/internal/session/checkpoint_quick.go @@ -52,6 +52,7 @@ package session import ( "context" + "github.com/Agent-Field/codeaf/internal/provider" "strings" "time" ) @@ -299,7 +300,7 @@ func (a *Agent) handOverAsQuick(ctx context.Context, hub *eventHub, turn *Usage, a.mu.Unlock() // AND THE TRANSCRIPT IS NOT LEFT WITH A REQUEST NOBODY REPLIED TO. It is ONE // line here where the other road records two, because one is what was said. - a.record(textMessage("assistant", said)) + a.recordPresentedAssistant(textMessage("assistant", said), provider.MessageReasoning{}, &messagePresentation{Audience: "operational"}) hub.send(Event{Kind: EventTurnDone, Usage: a.sealTurn(*turn, started, model)}) a.maybeTitle(ctx, hub) return checkpointHandover{moved: true, decision: checkpointCeilingMoved, taskID: id, carry: carryRungQuick} diff --git a/internal/session/image.go b/internal/session/image.go index 911425ee46..46cdd8309a 100644 --- a/internal/session/image.go +++ b/internal/session/image.go @@ -473,7 +473,7 @@ func (a *Agent) runVision(ctx context.Context, hub *eventHub, live ai.Message, s // words — including for an interrupt, where the buffer is what survives. partial := &partialBuffer{} partial.write(note) - hub.send(Event{Kind: EventTextDelta, Text: note}) + hub.send(Event{Kind: EventTextDelta, Addressed: true, Text: note}) var streamed atomic.Int64 ctx = provider.WithStreamObserver(ctx, func(event provider.StreamEvent) { @@ -481,7 +481,7 @@ func (a *Agent) runVision(ctx context.Context, hub *eventHub, live ai.Message, s case provider.StreamDelta: streamed.Add(int64(len(event.Delta))) partial.write(event.Delta) - hub.send(Event{Kind: EventTextDelta, Text: event.Delta}) + hub.send(Event{Kind: EventTextDelta, Addressed: true, Text: event.Delta}) case provider.StreamThinking: hub.send(Event{Kind: EventThinking}) case provider.StreamReasoning: @@ -515,7 +515,14 @@ func (a *Agent) runVision(ctx context.Context, hub *eventHub, live ai.Message, s // only the note would be a reply that says who spoke and not what they // said. if streamed.Load() > 0 { - a.keepPartial(partial, hub) + // This producer knows its partial is an answer to the person's + // image question, including the attribution they already saw. + text := partial.take() + if !a.stoppedSoup(text, hub) { + mark := humanPresentation(text) + mark.Interrupted = true + a.recordPresentedAssistant(textMessage("assistant", text), provider.MessageReasoning{}, mark) + } } else { partial.reset() } @@ -535,7 +542,7 @@ func (a *Agent) runVision(ctx context.Context, hub *eventHub, live ai.Message, s // and only when nothing streamed — is what keeps a non-streaming endpoint // from showing a blank reply and a streaming one from showing two copies. if streamed.Load() == 0 { - hub.send(Event{Kind: EventTextDelta, Text: answer}) + hub.send(Event{Kind: EventTextDelta, Addressed: true, Text: answer}) } partial.reset() a.record(textMessage("assistant", note+answer)) diff --git a/internal/session/loop.go b/internal/session/loop.go index bcb97a91a6..26fb02845c 100644 --- a/internal/session/loop.go +++ b/internal/session/loop.go @@ -1637,7 +1637,7 @@ func (a *Agent) keepPartial(partial *partialBuffer, hub *eventHub) { if a.stoppedSoup(text, hub) { return } - a.record(textMessage("assistant", text)) + a.recordPresentedAssistant(textMessage("assistant", text), provider.MessageReasoning{}, interruptedPresentation(text)) } // stoppedSoup is the keep path's one question, and its one word to the person @@ -1706,6 +1706,7 @@ func cutDroppedCallNote(err error) string { // continuation metadata actually received are kept. func (a *Agent) keepSteeredPartial(partial *partialBuffer, reasoning *reasoningBuffer, droppedCall bool, hub *eventHub, dropped string) { text := partial.take() + visible := text // The same law as keepPartial: a steer that cut a stream mid-soup keeps // none of it, and the person is told. if a.stoppedSoup(text, hub) { @@ -1723,7 +1724,8 @@ func (a *Agent) keepSteeredPartial(partial *partialBuffer, reasoning *reasoningB // the bytes actually received can appear on the next request. return } - a.recordAssistant(textMessage("assistant", text), reasoning.snapshot()) + mark := interruptedPresentation(visible) + a.recordPresentedAssistant(textMessage("assistant", text), reasoning.snapshot(), mark) } // sealTurn stamps the turn's wall duration, folds it into the session total, @@ -4928,7 +4930,7 @@ func (a *Agent) compact(_ context.Context, hub *eventHub) (bool, error) { // the transcript it drew can carry that position straight over into the // region, because the two lists are the same list (internal/tui3's replay.go). // The system message needs no removing — shapeEntries drops it. - earlier := shapeEntries(a.messages, a.file) + earlier := shapeEntries(a.messages, a.file, a.presentation) pass := compactionPass{stored: a.chatlog != nil} pass.stubbed = a.stubOldOutputsLocked() diff --git a/internal/session/presentation.go b/internal/session/presentation.go new file mode 100644 index 0000000000..f80179c6e4 --- /dev/null +++ b/internal/session/presentation.go @@ -0,0 +1,100 @@ +package session + +import ( + "sync" + + "github.com/Agent-Field/agentfield/sdk/go/ai" + "github.com/Agent-Field/codeaf/internal/provider" +) + +// messagePresentation records who a producer meant to address. The provider's +// content remains untouched; Text, when supplied, is the exact human portion of +// a mixed message. Operational records remain available behind disclosure. +type messagePresentation struct { + Audience string `json:"audience"` + Text *string `json:"text,omitempty"` + Interrupted bool `json:"interrupted,omitempty"` +} + +// Message identity follows its immutable content allocation, as reasoning repair +// already does. Equal words from different speakers or later responses cannot +// inherit one another's audience. Shallow rewind, repair and compaction copies +// retain identity; synthesized summaries deliberately start with their own. +type presentationIndex struct { + mu sync.Mutex + entries map[*ai.ContentPart]messagePresentation +} + +func (p *presentationIndex) remember(message ai.Message, mark *messagePresentation) { + if p == nil || mark == nil || len(message.Content) == 0 { + return + } + p.mu.Lock() + defer p.mu.Unlock() + if p.entries == nil { + p.entries = make(map[*ai.ContentPart]messagePresentation) + } + p.entries[&message.Content[0]] = *mark +} + +func (p *presentationIndex) of(message ai.Message) *messagePresentation { + if p == nil || len(message.Content) == 0 { + return nil + } + p.mu.Lock() + defer p.mu.Unlock() + mark, ok := p.entries[&message.Content[0]] + if !ok { + return nil + } + return &mark +} + +func humanPresentation(text string) *messagePresentation { + return &messagePresentation{Audience: "human", Text: &text} +} + +func (a *Agent) recordPresentedAssistant(message ai.Message, reasoning provider.MessageReasoning, mark *messagePresentation) { + a.mu.Lock() + defer a.mu.Unlock() + if a.presentation == nil { + a.presentation = &presentationIndex{} + } + // A caller may reuse an ai.Message value. Recording creates a new + // occurrence, while later transcript snapshots remain shallow copies. + message.Content = append([]ai.ContentPart(nil), message.Content...) + a.presentation.remember(message, mark) + a.alignReasoningLocked() + a.messages = append(a.messages, message) + a.messageReasoning = append(a.messageReasoning, reasoning) + if a.file != nil { + a.file.appendReasonedMessage(message, reasoning) + } + a.chatlog.post(message) +} + +// An interrupted response has not completed. Only its explicit address to +// the person can keep it in conversation; ordinary partial narration remains +// operational. The exact streamed words are retained in either case. +func interruptedPresentation(text string) *messagePresentation { + if _, addressed := UserFacingUpdate(text); addressed { + mark := humanPresentation(text) + mark.Interrupted = true + return mark + } + return &messagePresentation{Audience: "operational", Interrupted: true} +} + +// Older records cannot prove the audience of mixed prose. Only the two exact, +// standalone reserved interruption records are treated as operational. Quoted +// text and mixed replies remain untouched. New records always write an explicit +// audience, so even these exact words can be deliberately addressed to a person. +func legacyPresentation(entry sessionEntry) *messagePresentation { + if entry.Role != "assistant" || len(entry.ToolCalls) != 0 { + return nil + } + if entry.Content == cutDroppedCallNote(nil) || entry.Content == cutDroppedCallNote(errMarkCut) { + return &messagePresentation{Audience: "operational"} + } + return nil +} diff --git a/internal/session/presentation_test.go b/internal/session/presentation_test.go new file mode 100644 index 0000000000..34f6296c89 --- /dev/null +++ b/internal/session/presentation_test.go @@ -0,0 +1,296 @@ +package session + +import ( + "context" + "encoding/json" + "os" + "path/filepath" + "strings" + "testing" + "time" + + "github.com/Agent-Field/agentfield/sdk/go/ai" + "github.com/Agent-Field/codeaf/internal/provider" +) + +func TestSteeredPresentationPreservesProviderContextAndHumanPartial(t *testing.T) { + for _, cause := range []error{nil, errMarkCut} { + for _, human := range []string{"", "[update] The first file is ready.", "[update] I am quoting `" + cutDroppedCallNote(nil) + "`."} { + agent, _ := newTestAgent(t, &scriptedCompleter{}, nil) + partial := &partialBuffer{} + partial.write(human) + agent.keepSteeredPartial(partial, &reasoningBuffer{}, true, nil, cutDroppedCallNote(cause)) + raw := messageContentText(agent.snapshot()[len(agent.snapshot())-1]) + if !strings.HasSuffix(raw, cutDroppedCallNote(cause)) || !strings.HasPrefix(raw, human) { + t.Fatalf("provider content changed: %q", raw) + } + entries := agent.Transcript() + got := entries[len(entries)-1] + if human == "" { + if got.Role != "aside" || got.Text != raw { + t.Fatalf("bookkeeping is not retained as operational detail: %#v", got) + } + } else { + want, _ := UserFacingUpdate(human) + if got.Role != "assistant" || got.Text != want || got.Answer || !got.Addressed || !got.Interrupted { + t.Fatalf("human partial changed: %#v", got) + } + } + } + } +} + +func TestPresentationUsesOccurrenceIdentityAcrossJournalCompactionAndReopen(t *testing.T) { + path := filepath.Join(t.TempDir(), "session.jsonl") + agent, _ := newTestAgent(t, &scriptedCompleter{}, func(c *Config) { c.SessionFile = path }) + raw := "A visible finding.\n\n" + cutDroppedCallNote(nil) + marked := textMessage("assistant", raw) + agent.recordPresentedAssistant(marked, provider.MessageReasoning{}, humanPresentation("A visible finding.")) + // Identical content from another response is still an ordinary human answer. + agent.recordAssistant(marked, provider.MessageReasoning{}) + agent.recordAssistant(textMessage("assistant", cutDroppedCallNote(nil)), provider.MessageReasoning{}) + assert := func(es []DisplayEntry) { + t.Helper() + if len(es) != 3 || es[0].Text != "A visible finding." || es[1].Text != raw || es[2].Text != cutDroppedCallNote(nil) || es[2].Role != "assistant" { + t.Fatalf("presentation crossed message identities: %#v", es) + } + } + assert(agent.Transcript()) + window := append([]ai.Message(nil), agent.snapshot()[1:]...) + // Compaction re-journals the same immutable messages, without content hashes. + agent.file.appendCompaction(compactionPass{}, 0, window) + if err := agent.Close(); err != nil { + t.Fatal(err) + } + replayed, err := replaySessionFile(path) + if err != nil { + t.Fatal(err) + } + assert(shapeEntries(replayed.messages, &sessionFile{presentation: replayed.presentation})) + for i, message := range replayed.messages { + if i < 2 && messageContentText(message) != raw { + t.Fatal("reopen rewrote provider text") + } + } +} + +func TestLegacyPresentationOnlyFoldsStandaloneReservedBookkeeping(t *testing.T) { + for _, text := range []string{ + cutDroppedCallNote(nil), cutDroppedCallNote(errMarkCut), + "Visible finding.\n\n" + cutDroppedCallNote(nil), + "`" + cutDroppedCallNote(nil) + "`", + "```\n" + cutDroppedCallNote(nil) + "\n```", + } { + entry := sessionEntry{Type: "message", Role: "assistant", Content: text} + data, _ := json.Marshal(entry) + path := filepath.Join(t.TempDir(), "legacy.jsonl") + if err := os.WriteFile(path, append(data, '\n'), 0600); err != nil { + t.Fatal(err) + } + replayed, err := replaySessionFile(path) + if err != nil { + t.Fatal(err) + } + entries := shapeEntries(replayed.messages, &sessionFile{presentation: replayed.presentation}) + want := "assistant" + if text == cutDroppedCallNote(nil) || text == cutDroppedCallNote(errMarkCut) { + want = "aside" + } + if len(entries) != 1 || entries[0].Role != want || entries[0].Text != text { + t.Fatalf("legacy %q changed: %#v", text, entries) + } + } +} + +func TestPresentationKeepsTaskReplyTagsForTheHumanAnswer(t *testing.T) { + path := filepath.Join(t.TempDir(), "session.jsonl") + agent, _ := newTestAgent(t, &scriptedCompleter{}, func(c *Config) { c.SessionFile = path }) + note := userText("task 9 finished") + note.authored = true + note.replyTags = []TaskReplyTag{{ID: 9, Title: "Check report", Request: "Keep this exact request"}} + agent.mu.Lock() + agent.recordUserLocked(note) + agent.mu.Unlock() + agent.recordPresentedAssistant(textMessage("assistant", "internal handover"), provider.MessageReasoning{}, &messagePresentation{Audience: "operational"}) + agent.recordAssistant(textMessage("assistant", "The report passes."), provider.MessageReasoning{}) + assert := func(es []DisplayEntry) { + t.Helper() + if len(es) != 3 || es[1].Role != "aside" || len(es[1].ReplyTags) != 0 || len(es[2].ReplyTags) != 1 || es[2].ReplyTags[0].Request != "Keep this exact request" { + t.Fatalf("operational message consumed source attribution: %#v", es) + } + } + assert(agent.Transcript()) + agent.Close() + replayed, err := replaySessionFile(path) + if err != nil { + t.Fatal(err) + } + assert(shapeEntries(replayed.messages, &sessionFile{presentation: replayed.presentation, notes: replayed.notes, replyTags: replayed.replyTags})) +} + +func TestPresentationSurvivesSteeringAndRewindWithoutCrossingOccurrences(t *testing.T) { + path := filepath.Join(t.TempDir(), "session.jsonl") + agent, _ := newTestAgent(t, &scriptedCompleter{}, func(c *Config) { c.SessionFile = path }) + agent.record(textMessage("user", "Build the report")) + partial := &partialBuffer{} + partial.write("[update] The first file is ready.") + agent.keepSteeredPartial(partial, &reasoningBuffer{}, true, nil, cutDroppedCallNote(nil)) + steer := userText("Use Decimal") + steer.crossed = &SteerMark{Consumed: true, Landing: "stopped the reply here"} + agent.mu.Lock() + agent.recordUserLocked(steer) + agent.mu.Unlock() + agent.recordAssistant(textMessage("assistant", "The Decimal report is ready."), provider.MessageReasoning{}) + agent.record(textMessage("user", "Change the output again")) + agent.recordPresentedAssistant(textMessage("assistant", "internal handover"), provider.MessageReasoning{}, &messagePresentation{Audience: "operational"}) + removed, err := agent.Rewind() + if err != nil { + t.Fatal(err) + } + if len(removed) != 2 || removed[1].Role != "aside" { + t.Fatalf("rewind projected removed bookkeeping as speech: %#v", removed) + } + assert := func(es []DisplayEntry) { + t.Helper() + if len(es) != 4 || es[1].Text != "The first file is ready." || es[1].Answer || !es[1].Addressed || !es[1].Interrupted || es[2].Text != "Use Decimal" || es[2].Steer == nil || es[3].Text != "The Decimal report is ready." { + t.Fatalf("rewind lost update or steering: %#v", es) + } + } + assert(agent.Transcript()) + agent.Close() + replayed, err := replaySessionFile(path) + if err != nil { + t.Fatal(err) + } + assert(shapeEntries(replayed.messages, &sessionFile{presentation: replayed.presentation, steers: replayed.steers})) +} + +func TestHandoverPresentationKeepsHeldRemainderOperational(t *testing.T) { + completer := &routeCompleter{handoff: custodyDraft} + agent, _, _ := routeAgent(t, completer) + agent.personAsk = routeAsk + taken := Decision{Verb: DecideCarryOn, Brief: "finish the repository changes"} + over := agent.handOverRunningTurn(context.Background(), newEventHub(), &Usage{}, time.Now(), agent.model, + checkpointCeilingNote, checkpointSeamCeiling, 0, nil, + routeVerdict{Work: true, Goal: routeAsk}, checkpointRead{ownRemainder: custodyHeldPart}, &taken) + if !over.moved { + t.Fatal("fixture did not hand over work") + } + raw := messageContentText(lastMessage(agent)) + if !strings.Contains(raw, checkpointOwnRemainderHead) { + t.Fatal("provider lost held remainder") + } + es := agent.Transcript() + if last := es[len(es)-1]; last.Role != "aside" || last.Text != raw { + t.Fatalf("handover rendered as an answer: %#v", last) + } +} + +func TestInterruptedPresentationSurvivesReopenWithoutClaimingCompletion(t *testing.T) { + for _, text := range []string{"[update] Partial human finding", "unfinished tool narration"} { + path := filepath.Join(t.TempDir(), "session.jsonl") + agent, _ := newTestAgent(t, &scriptedCompleter{}, func(c *Config) { c.SessionFile = path }) + agent.record(textMessage("user", "Check the report")) + partial := &partialBuffer{} + partial.write(text) + agent.keepPartial(partial, nil) + assert := func(es []DisplayEntry) { + t.Helper() + got := es[len(es)-1] + visible, addressed := UserFacingUpdate(text) + if !got.Interrupted || got.Answer || got.Addressed != addressed { + t.Fatalf("interrupted response claimed completion or wrong audience: %#v", got) + } + if addressed && (got.Role != "assistant" || got.Text != visible) { + t.Fatalf("lost human partial: %#v", got) + } + if !addressed && (got.Role != "aside" || got.Text != text) { + t.Fatalf("promoted unfinished narration: %#v", got) + } + } + assert(agent.Transcript()) + window := agent.snapshot()[1:] + agent.file.appendCompaction(compactionPass{}, 0, window) + agent.Close() + replayed, err := replaySessionFile(path) + if err != nil { + t.Fatal(err) + } + assert(shapeEntries(replayed.messages, &sessionFile{presentation: replayed.presentation})) + } +} + +func TestInterruptedVisionPresentationRetainsHumanAnswerAndAttribution(t *testing.T) { + for _, soup := range []bool{false, true} { + name := "human answer" + if soup { + name = "degenerate response" + } + t.Run(name, func(t *testing.T) { + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + text := "A red harbour is visible." + if soup { + text = strings.Repeat("", 400) + } + completer := &scriptedCompleter{steps: []step{func(ctx context.Context, _ []ai.Message) (*ai.Response, error) { + provider.Emit(ctx, provider.StreamDelta, text) + cancel() + return nil, ctx.Err() + }}} + path := filepath.Join(t.TempDir(), "session.jsonl") + agent, workspace := newTestAgent(t, completer, func(c *Config) { blindWithVision(c); c.SessionFile = path }) + agent.SetModel("vendor/blind") + photo := writeImage(t, workspace, "shot.png", "PHOTOBYTES") + events, err := agent.SubmitImage(ctx, "Describe this image", []Image{{Path: photo}}) + if err != nil { + t.Fatal(err) + } + collected := collect(t, events) + for _, event := range collected { + if event.Kind == EventTextDelta && !event.Addressed { + t.Fatal("vision answer stream lost its declared audience") + } + } + if soup { + if lastMessage(agent).Role == "assistant" { + t.Fatal("interrupted degenerate response was kept") + } + if _, ok := firstOfKind(collected, EventNotice); !ok { + t.Fatal("discarded degenerate response was not explained") + } + return + } + assert := func(es []DisplayEntry) { + t.Helper() + got := es[len(es)-1] + if got.Role != "assistant" || got.Text != "[vision: vendor/eyes]\n\n"+text || !got.Addressed || !got.Interrupted || got.Answer { + t.Fatalf("vision partial changed audience or completion: %#v", got) + } + } + assert(agent.Transcript()) + agent.Close() + replayed, err := replaySessionFile(path) + if err != nil { + t.Fatal(err) + } + assert(shapeEntries(replayed.messages, &sessionFile{presentation: replayed.presentation})) + }) + } +} + +func TestPresentationHubDoesNotMergeDifferentAudiences(t *testing.T) { + hub := newEventHub() + hub.send(Event{Kind: EventTextDelta, Text: "internal "}) + hub.send(Event{Kind: EventTextDelta, Addressed: true, Text: "human "}) + hub.send(Event{Kind: EventTextDelta, Addressed: true, Text: "update"}) + stream, ok := hub.attach(nil) + if !ok { + t.Fatal("hub did not accept subscriber") + } + hub.close() + events := collect(t, stream.out) + if len(events) != 2 || events[0].Text != "internal " || events[0].Addressed || events[1].Text != "human update" || !events[1].Addressed { + t.Fatalf("attach lost audience boundary: %#v", events) + } +} diff --git a/internal/session/reasoning.go b/internal/session/reasoning.go index 4ae823b234..7310579fae 100644 --- a/internal/session/reasoning.go +++ b/internal/session/reasoning.go @@ -174,15 +174,7 @@ func assembledReasoningDetails(raw json.RawMessage) json.RawMessage { } func (a *Agent) recordAssistant(message ai.Message, reasoning provider.MessageReasoning) { - a.mu.Lock() - a.alignReasoningLocked() - a.messages = append(a.messages, message) - a.messageReasoning = append(a.messageReasoning, reasoning) - if a.file != nil { - a.file.appendReasonedMessage(message, reasoning) - } - a.chatlog.post(message) - a.mu.Unlock() + a.recordPresentedAssistant(message, reasoning, nil) } // snapshotWithReasoning takes both aligned slices under one lock. THE SIDECAR diff --git a/internal/session/rewind.go b/internal/session/rewind.go index eadf821e3a..aa8c18d13b 100644 --- a/internal/session/rewind.go +++ b/internal/session/rewind.go @@ -176,7 +176,7 @@ func (a *Agent) rewindReadyLocked() error { func (a *Agent) cutLocked(index int) []DisplayEntry { a.alignReasoningLocked() dropped := a.messages[index:] - removed := displayEntries(dropped) + removed := shapeEntries(dropped, a.file, a.presentation) if a.file != nil { a.file.appendRewind(len(dropped)) } diff --git a/internal/session/session.go b/internal/session/session.go index b88ab72aee..6d127614e3 100644 --- a/internal/session/session.go +++ b/internal/session/session.go @@ -670,7 +670,10 @@ type TaskReplyTag struct { type Event struct { Discussion *QuestionDiscussion `json:",omitempty"` - Kind EventKind + Kind EventKind + // Addressed is a producer's declaration that streamed text is for the person. + // It does not imply a completed response and survives interruption. + Addressed bool `json:"Addressed,omitempty"` Text string ShortTitle string `json:"ShortTitle,omitempty"` Tool string @@ -2372,8 +2375,9 @@ type Agent struct { // definition block rides at the front of every request and a definition that // shifts re-bills the whole prompt behind it (internal/exec's tools.go states // the law). - tools []bare.Tool - definitions []ai.ToolDefinition + presentation *presentationIndex + tools []bare.Tool + definitions []ai.ToolDefinition // served is what the belt cannot say about the tools an ACCOUNT named // rather than this build (served.go): whose account each one is, what the // account calls it, and which capability governs it. Keyed by the name the diff --git a/internal/session/sessionfile.go b/internal/session/sessionfile.go index b5767cc531..410283c935 100644 --- a/internal/session/sessionfile.go +++ b/internal/session/sessionfile.go @@ -105,11 +105,15 @@ type sessionHeader struct { } type sessionEntry struct { - Type string `json:"type"` - Role string `json:"role,omitempty"` - Content string `json:"content,omitempty"` - ToolCalls []ai.ToolCall `json:"toolCalls,omitempty"` - ToolCallID string `json:"toolCallId,omitempty"` + // Presentation is the source-authored audience of this occurrence, never a + // rule inferred from its words. Older entries omit it and use conservative + // compatibility handling only for complete reserved bookkeeping records. + Presentation *messagePresentation `json:"presentation,omitempty"` + Type string `json:"type"` + Role string `json:"role,omitempty"` + Content string `json:"content,omitempty"` + ToolCalls []ai.ToolCall `json:"toolCalls,omitempty"` + ToolCallID string `json:"toolCallId,omitempty"` // Reasoning fields are the assistant continuation exactly as it arrived. // They stay beside the message rather than inside Content so a resumed tool // loop preserves both the wire contract and what the person actually saw. @@ -1160,8 +1164,9 @@ type sessionFile struct { // distinguishes it from a line somebody typed — the mark is on the journal's // line, so the journal is what a surface asks (see [sessionEntry.Note] and // [shapeEntries]). - notes map[string]bool - replyTags map[string][]TaskReplyTag + presentation *presentationIndex + notes map[string]bool + replyTags map[string][]TaskReplyTag // delivered is the set of durable delivery ids this file has recorded, from // the replay at open and from every note appended since. It answers one // question — has this conversation already been told this landing — for a @@ -1692,6 +1697,10 @@ func openSessionFile(path, cwd, model, id string) (*sessionFile, replayedSession journal.id = replayed.id journal.images = replayed.images journal.notes = replayed.notes + journal.presentation = replayed.presentation + if journal.presentation == nil { + journal.presentation = &presentationIndex{} + } journal.replyTags = replayed.replyTags journal.delivered = replayed.delivered journal.noteDeliveries = replayed.noteDeliveries @@ -1849,6 +1858,7 @@ func readJournal(reader io.Reader, path string, rebuild bool) (replayedSession, // And the note index with it, for the same reason and in the same pass: the // mark is on the LINE, and once the line has been rebuilt into a message // there is nothing left to read it off (see [sessionFile.notes]). + presentation := &presentationIndex{} notes := make(map[string]bool) // And the caption index, for the notes' reason exactly: a `caption` line is // news about a batch that is not carried by any message, so this pass is the @@ -1932,6 +1942,11 @@ func readJournal(reader io.Reader, path string, rebuild bool) (replayedSession, asked = entry.Role == "user" && !entry.Note && entry.Steer == nil stopped = "" message := replayedMessage(entry, rebuild) + mark := entry.Presentation + if mark == nil { + mark = legacyPresentation(entry) + } + presentation.remember(message, mark) rememberParts(images, message, entry.Parts) if entry.Note { rememberNote(notes, message) @@ -2205,6 +2220,7 @@ func readJournal(reader io.Reader, path string, rebuild bool) (replayedSession, id: id, images: images, notes: notes, + presentation: presentation, replyTags: replyTags, delivered: delivered, noteDeliveries: noteDeliveries, @@ -2390,7 +2406,8 @@ type replayedSession struct { images map[string]string // notes is which of those messages the session wrote itself, keyed by // [noteKey] — the index [sessionFile.notes] is opened holding. - notes map[string]bool + notes map[string]bool + presentation *presentationIndex // replyTags is the typed identity stored on task completion notes. replyTags map[string][]TaskReplyTag // delivered is the set of durable delivery ids this file already recorded, @@ -2753,7 +2770,12 @@ func (s *sessionFile) appendWithReasoning(message ai.Message, note bool, refs [] deliveries = append(deliveries, string(id)) } } + presentation := s.presentation.of(message) + if presentation == nil && message.Role == "assistant" { + presentation = &messagePresentation{Audience: "human"} + } wrote := s.writeLine(sessionEntry{ + Presentation: presentation, Type: "message", Role: message.Role, Content: text, diff --git a/internal/session/transcriptread.go b/internal/session/transcriptread.go index b44526410c..2299fc32a6 100644 --- a/internal/session/transcriptread.go +++ b/internal/session/transcriptread.go @@ -223,13 +223,14 @@ func transcriptFrom(replayed replayedSession, err error) Record { return Record{Unreadable: unreadRefusal(err)} } journal := &sessionFile{ - images: replayed.images, - notes: replayed.notes, - replyTags: replayed.replyTags, - delivered: replayed.delivered, - steers: replayed.steers, - captions: replayed.captions, - tooks: replayed.tooks, + presentation: replayed.presentation, + images: replayed.images, + notes: replayed.notes, + replyTags: replayed.replyTags, + delivered: replayed.delivered, + steers: replayed.steers, + captions: replayed.captions, + tooks: replayed.tooks, } overlap := replayed.overlap if overlap > len(replayed.messages) { diff --git a/internal/session/turnfold.go b/internal/session/turnfold.go index 2a66daec07..a07532a4ef 100644 --- a/internal/session/turnfold.go +++ b/internal/session/turnfold.go @@ -125,7 +125,7 @@ func (a *Agent) foldTurnOutputs(seenThrough int, consumedReads map[*ai.ToolCall] return } - earlier := shapeEntries(a.messages, a.file) + earlier := shapeEntries(a.messages, a.file, a.presentation) place := a.resultPlaceLocked() target := turnWorkingTarget(a.window()) * bytesPerToken batches := turnFoldBatches(a.messages, a.turnFloor, limit, consumedReads) From 18a6ec5f21386c1a2e1d5c6165b55a4804086c2d Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 13:22:49 -0400 Subject: [PATCH 19/23] Keep interrupted human updates visible across shared chat views Preserve explicit audience without confirming partial responses, retain full operational disclosure on replay, and exercise stop/steer/retry transitions across all lenses. Refs #1620. --- internal/tui3/app.go | 10 +- internal/tui3/feed.go | 25 ++- internal/tui3/feed_update_test.go | 4 +- internal/tui3/interrupted_update_test.go | 212 +++++++++++++++++++++++ internal/tui3/render.go | 4 + internal/tui3/replay.go | 3 +- internal/tui3/taskrequest_test.go | 4 +- internal/tui3/workfold.go | 16 +- 8 files changed, 257 insertions(+), 21 deletions(-) create mode 100644 internal/tui3/interrupted_update_test.go diff --git a/internal/tui3/app.go b/internal/tui3/app.go index 8717adb6c8..6f401ec9a1 100644 --- a/internal/tui3/app.go +++ b/internal/tui3/app.go @@ -6906,11 +6906,11 @@ func waitEvent(ch <-chan session.Event, gen int) tea.Cmd { // IT IS internal/session's OWN [foldsInto] SAID ON THIS SIDE OF THE CHANNEL. The // hub folds a slow subscriber's backlog by that rule; [waitEvent] folds a fast // stream's arrivals by this one, and both rest on the same law: EventTextDelta -// and EventReasoning are each emitted as a kind and a text and nothing more, at -// every one of the places that emit them. A kind that grows a second field comes -// off BOTH lists in the same change, or each fold quietly drops it. +// and EventReasoning preserve their kind and source audience while joining +// text. Both folding layers keep audience boundaries, so a queued human update +// cannot inherit an internal event's presentation. func foldsInto(prev, next session.Event) bool { - if prev.Kind != next.Kind { + if prev.Kind != next.Kind || prev.Addressed != next.Addressed { return false } return prev.Kind == session.EventTextDelta || prev.Kind == session.EventReasoning @@ -8391,6 +8391,8 @@ func (a *app) interruptTurn() { return } a.agent.Interrupt() + a.flushUpdatePrefix() + a.finishResponse(true) a.state = stateInterrupted // AND THE STOP IS BOUNDED FROM THIS INSTANT. See the block below // [app.windingDown]: the letting-go is the engine's and it takes as long as diff --git a/internal/tui3/feed.go b/internal/tui3/feed.go index 82201c4b5a..2ef439ee38 100644 --- a/internal/tui3/feed.go +++ b/internal/tui3/feed.go @@ -264,6 +264,10 @@ func (f *feed) ingest(ev session.Event) { func (f *feed) ingestStream(ev session.Event, lump bool) { switch ev.Kind { case session.EventTextDelta: + if ev.Addressed { + f.syncUpdateTurn() + f.updateDelivery.marked = true + } f.sayStream(ev.Text, lump) case session.EventAssistantDone: @@ -321,7 +325,7 @@ func (f *feed) ingestStream(ev session.Event, lump bool) { // calls that never began. Close that same boundary on every deck // before the next response can inherit its marker or partial tool. f.flushUpdatePrefix() - f.confirmResponse() + f.finishResponse(true) f.updateDelivery = userUpdateStream{} f.closeLive() f.dropRetryingFormingTools() @@ -1617,7 +1621,10 @@ func (f *feed) dropRetryingFormingTools() { // A provider may end with private reasoning after its last visible words. Walk // only this response's tail so confirmation still reaches those words without // promoting a tool preamble or another exchange's answer. -func (f *feed) confirmResponse() { +func (f *feed) confirmResponse() { f.finishResponse(false) } + +// Interruption preserves the audience and words without certifying completion. +func (f *feed) finishResponse(interrupted bool) { confirmation := &responseConfirmation{} // A person's queued line or a surface notice can sit below the active // assembler while its answer keeps growing. That pointer owns the response; @@ -1633,13 +1640,13 @@ func (f *feed) confirmResponse() { // A streamed call closes the assembler before it becomes durable. Restore // the explicit update's response anchor so a queued human line cannot hide // its confirmation at ToolBegin. - if !anchored && f.updateDelivery.marked { + if !anchored && (f.updateDelivery.marked || interrupted) { for i := end; i >= 0 && f.entries[i].turn == f.turn; i-- { e := &f.entries[i] if e.kind == entryTool && e.status != toolForming && e.status != toolQueued { break } - if e.kind == entryAssistant && e.addressed && e.provisional { + if e.kind == entryAssistant && (e.addressed || interrupted) && e.provisional { end, anchored = i, true if e.confirmed != nil && !e.confirmed.done { confirmation = e.confirmed @@ -1651,7 +1658,7 @@ func (f *feed) confirmResponse() { var fragments []int for i := end; i >= 0; i-- { e := &f.entries[i] - if e.turn != f.turn || groupBreaks(e) || (e.kind == entryTool && !(f.updateDelivery.marked && (e.status == toolForming || e.status == toolQueued))) || e.kind == entryCompact { + if e.turn != f.turn || groupBreaks(e) || (e.kind == entryTool && !((f.updateDelivery.marked || interrupted) && (e.status == toolForming || e.status == toolQueued))) || e.kind == entryCompact { break } if e.kind != entryAssistant { @@ -1668,10 +1675,10 @@ func (f *feed) confirmResponse() { fragments = append(fragments, i) } if len(fragments) > 0 { - confirmation.done = true + confirmation.done = !interrupted for _, i := range fragments { e := &f.entries[i] - e.provisional, e.confirmed = false, confirmation + e.provisional, e.confirmed, e.cut = false, confirmation, interrupted if f.live == i { f.closeLive() } else { @@ -1684,9 +1691,11 @@ func (f *feed) confirmResponse() { // empty earlier fragments in place so every existing index stays valid. var text strings.Builder var tags []session.TaskReplyTag + addressed := false for at := len(fragments) - 1; at >= 0; at-- { e := &f.entries[fragments[at]] text.WriteString(e.text) + addressed = addressed || e.addressed tags = append(tags, e.replyTags...) e.text, e.replyTags, e.stale = "", nil, true } @@ -1699,7 +1708,7 @@ func (f *feed) confirmResponse() { last = len(f.entries) - 1 } e := &f.entries[last] - e.text, e.replyTags, e.demoted = text.String(), tags, false + e.text, e.replyTags, e.demoted, e.addressed = text.String(), tags, false, addressed // A RESPONSE THAT IS ONLY [session.NoChangeReply] WITHDREW ITSELF AS THE // ANSWER. It is the model telling the completion check its note was wrong, // never words for the person, so the confirmed block is emptied in place diff --git a/internal/tui3/feed_update_test.go b/internal/tui3/feed_update_test.go index 7dc2b634ec..be69555e19 100644 --- a/internal/tui3/feed_update_test.go +++ b/internal/tui3/feed_update_test.go @@ -144,8 +144,8 @@ func TestExplicitUpdateStreamsAsAddressedButNotCompletedAcrossLenses(t *testing. if confirmedAnswer(&a.entries[at]) || !a.entries[at].cut { t.Fatal("interrupted partial update claimed completion") } - if !workEntry(a.entries, nil, at) { - t.Fatal("audience bypass promoted an interrupted partial update") + if workEntry(a.entries, nil, at) { + t.Fatal("interruption hid an explicitly addressed partial update") } } diff --git a/internal/tui3/interrupted_update_test.go b/internal/tui3/interrupted_update_test.go new file mode 100644 index 0000000000..84abd3c94b --- /dev/null +++ b/internal/tui3/interrupted_update_test.go @@ -0,0 +1,212 @@ +package tui3 + +import ( + "fmt" + "strings" + "testing" + + "github.com/Agent-Field/codeaf/internal/config" + "github.com/Agent-Field/codeaf/internal/session" +) + +// Exercise response ownership through successive transitions, rather than +// assembling the desired final entry flags by hand. +func TestInterruptedUpdatesAcrossStopSteerRetryAndSharedDecks(t *testing.T) { + for _, ending := range []string{"stop", "steer", "retry"} { + for _, width := range []int{32, 100} { + for _, surface := range []struct { + name string + lens lens + }{{"chat", participantLens}, {"task", overseerLens}, {"nested", transcriptLens}} { + t.Run(fmt.Sprintf("%s/%s/%d", ending, surface.name, width), func(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.workMode = config.WorkFold + a.turn = 1 + a.state = stateWorking + a.said(entry{kind: entryUser, text: "Check files", turn: 1}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] First result ready."}) + runBatch(&a.feed, "read", "done") + a.steerAccepted(&session.SteerNote{ID: 1, Words: "Check exports too"}) + a.steerConsumed(&session.SteerNote{ID: 1}) + a.ingest(session.Event{Kind: session.EventCompacting, Hint: "PRIVATE COMPACTION"}) + a.ingest(session.Event{Kind: session.EventCompacted, Hint: "PRIVATE COMPACTION FINISHED"}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] Second result"}) + a.ingest(session.Event{Kind: session.EventReasoning, Text: "PRIVATE REASONING"}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: " arriving."}) + a.ingest(session.Event{Kind: session.EventToolForming, Tool: "bash", CallID: "abandoned", ArgsText: "PRIVATE ABANDONED PAYLOAD"}) + wanted := []string{"First result ready.", "Check exports too"} + hidden := []string{"PRIVATE ABANDONED PAYLOAD", "PRIVATE COMPACTION", "PRIVATE REASONING", "[update]"} + switch ending { + case "steer": + a.steerAccepted(&session.SteerNote{ID: 2, Words: "Use Decimal"}) + a.steerConsumed(&session.SteerNote{ID: 2}) + wanted = append(wanted, "Use Decimal") + a.ingest(session.Event{Kind: session.EventSteerConsumed, Steer: &session.SteerNote{ID: 2}}) + wanted = append(wanted, "Second result arriving.") + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] Export result arriving."}) + wanted = append(wanted, "Export result arriving.") + case "retry": + a.ingest(session.Event{Kind: session.EventRetrying, Hint: "retrying"}) + hidden = append(hidden, "Second result arriving.") + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[update] Replacement arriving."}) + wanted = append(wanted, "Replacement arriving.") + default: + wanted = append(wanted, "Second result arriving.") + } + a.interrupt() + a.settle() + for _, e := range a.entries { + if e.kind == entryAssistant && e.cut && confirmedAnswer(&e) { + t.Fatal("interrupted update certified complete") + } + } + d := deck{entries: a.entries, lens: surface.lens} + assertInterruptedDeck(t, a, d, width, wanted, hidden) + // Opening and closing disclosure must not change the conversation. + d.workOpen = map[int]bool{} + d.capOpen = map[int]bool{} + for _, f := range a.deckFolds(d) { + d.workOpen[f.key] = true + } + for i := range d.entries { + d.capOpen[i] = true + } + a.deckRows(d, width) + d.workOpen = nil + d.capOpen = nil + assertInterruptedDeck(t, a, d, width, wanted, hidden) + }) + } + } + } +} + +func assertInterruptedDeck(t *testing.T, a *app, d deck, width int, wanted, hidden []string) { + t.Helper() + rows, _ := a.deckRows(d, width) + var lines []string + activity := 0 + for _, r := range rows { + lines = append(lines, plain(r.text)) + if r.hit == hitWorkFold { + activity++ + } + } + page := strings.Join(lines, "\n") + for _, s := range wanted { + if strings.Count(page, s) != 1 { + t.Fatalf("want once %q:\n%s", s, page) + } + } + for _, s := range hidden { + if strings.Contains(page, s) { + t.Fatalf("leaked %q:\n%s", s, page) + } + } + if !strings.Contains(page, "interrupted") { + t.Fatalf("partial response lacks interrupted status:\n%s", page) + } + if activity > liveStepRows { + t.Fatalf("%d activity rows:\n%s", activity, page) + } +} + +func TestInterruptedUpdateJournalReopensWithoutPromotingNarration(t *testing.T) { + journal := []byte(`{"type":"message","role":"user","content":"Check files"} +{"type":"message","role":"assistant","content":"[update] First result ready.","presentation":{"audience":"human"}} +{"type":"message","role":"assistant","content":"[update] Second result arriving.\n\n[incomplete tool call dropped when you steered]","presentation":{"audience":"human","text":"[update] Second result arriving.","interrupted":true}} +{"type":"message","role":"assistant","content":"PRIVATE UNFINISHED NARRATION","presentation":{"audience":"operational","interrupted":true}} +{"type":"message","role":"assistant","content":"HANDOVER BOOKKEEPING\nRETAINED SECOND LINE","presentation":{"audience":"operational"}} +`) + record := session.ReadTranscriptBytes(journal) + for _, surface := range []lens{participantLens, overseerLens, transcriptLens} { + for _, width := range []int{32, 100} { + a := newTestApp(&fakeAgent{model: "m"}) + a.workMode = config.WorkFold + es, _ := a.replayBlocks(record.Entries, chatReplay(0)) + for _, e := range es { + if e.text == "Second result arriving." && (confirmedAnswer(&e) || !interruptedUpdate(&e)) { + t.Fatal("reopen lost incomplete human audience") + } + } + d := deck{entries: es, lens: surface} + assertInterruptedDeck(t, a, d, width, []string{"Check files", "First result ready.", "Second result arriving."}, []string{"PRIVATE UNFINISHED", "HANDOVER BOOKKEEPING", "RETAINED SECOND LINE", "incomplete tool call", "[update]"}) + d.workOpen = map[int]bool{} + for _, f := range a.deckFolds(d) { + d.workOpen[f.key] = true + } + d.capOpen = map[int]bool{} + for i := range es { + d.capOpen[i] = true + } + rows, _ := a.deckRows(d, width) + var page strings.Builder + for _, r := range rows { + page.WriteString(plain(r.text)) + page.WriteByte('\n') + } + if !strings.Contains(page.String(), "PRIVATE UNFINISHED NARRATION") || !strings.Contains(page.String(), "RETAINED SECOND LINE") { + t.Fatalf("disclosure lost interrupted narration:\n%s", page.String()) + } + } + } +} + +func TestSourceAddressedTextKeepsAudienceAcrossBatchesAndStop(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.turn = 1 + a.state = stateWorking + a.workMode = config.WorkFold + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "[vision: reader]\n\n", Addressed: true}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "The image has "}) + a.ingest(session.Event{Kind: session.EventReasoning, Text: "PRIVATE REASONING"}) + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "two panels."}) + a.interrupt() + a.settle() + for _, l := range []lens{participantLens, overseerLens, transcriptLens} { + assertInterruptedDeck(t, a, deck{entries: a.entries, lens: l}, 40, []string{"[vision: reader]", "The image has two panels."}, []string{"PRIVATE REASONING", "[update]"}) + } + a.turn++ + a.ingest(session.Event{Kind: session.EventTextDelta, Text: "ordinary next turn"}) + runBatch(&a.feed, "read", "next") + for _, e := range a.entries { + if e.turn == a.turn && e.kind == entryAssistant && e.addressed { + t.Fatal("source audience leaked into next turn") + } + } +} + +func TestTextCoalescingKeepsSourceAudienceBoundary(t *testing.T) { + internal := session.Event{Kind: session.EventTextDelta, Text: "internal"} + human := session.Event{Kind: session.EventTextDelta, Text: "human", Addressed: true} + if foldsInto(internal, human) || foldsInto(human, internal) { + t.Fatal("coalescing crossed source audience boundary") + } + if !foldsInto(human, human) { + t.Fatal("same-audience text no longer coalesces") + } +} + +func TestInterruptedUpdateRejectsInFlightCompletionAfterEscape(t *testing.T) { + a := newTestApp(&fakeAgent{model: "m"}) + a.turn = 1 + a.state = stateWorking + a.workMode = config.WorkFold + stream := make(chan session.Event, 3) + a.stream = stream + a.apply(session.Event{Kind: session.EventTextDelta, Text: "[update] A finding is arriving."}) + a.interrupt() + // Use the actual application event gate: these events were already queued + // when Escape arrived, but cannot create another response after the stop. + a.Update(streamEventMsg{gen: a.gen, ev: session.Event{Kind: session.EventTextDelta, Text: "LATE WORDS"}}) + a.Update(streamEventMsg{gen: a.gen, ev: session.Event{Kind: session.EventAssistantDone}}) + a.Update(streamEventMsg{gen: a.gen, ev: session.Event{Kind: session.EventToolForming, Tool: "bash", CallID: "late", ArgsText: "LATE PAYLOAD"}}) + close(stream) + a.Update(streamClosedMsg{gen: a.gen}) + for _, e := range a.entries { + if e.kind == entryAssistant && e.text != "" && (!interruptedUpdate(&e) || confirmedAnswer(&e)) { + t.Fatal("late completion promoted interrupted update") + } + } + assertInterruptedDeck(t, a, deck{entries: a.entries, lens: participantLens}, 60, []string{"A finding is arriving."}, []string{"LATE WORDS", "LATE PAYLOAD", "[update]"}) +} diff --git a/internal/tui3/render.go b/internal/tui3/render.go index 0fc6fdc4aa..feb17ce96a 100644 --- a/internal/tui3/render.go +++ b/internal/tui3/render.go @@ -1422,6 +1422,10 @@ func (a *app) renderEntry(i int, e *entry, width int) []string { // those bytes are final enough to format, so the head being calm and the tail // being lit is the same fact the promotion itself states, said in ink. func (a *app) assistantRows(at int, e *entry, width int) []string { + if interruptedUpdate(e) { + rows := a.settledMarkdown(at, e, width) + return append(rows, a.pal.dim(fit("· interrupted", width))) + } // ── AND PROSE THAT TURNED OUT NOT TO BE THE ANSWER ────────────────────── // // A block that more work opened under is narration, and it is drawn as what diff --git a/internal/tui3/replay.go b/internal/tui3/replay.go index 5fc689e70c..8c416cb841 100644 --- a/internal/tui3/replay.go +++ b/internal/tui3/replay.go @@ -709,6 +709,7 @@ func (a *app) replayBlocks(entries []session.DisplayEntry, shape replayShape) ([ } blocks = append(blocks, entry{ kind: entryAssistant, text: text, turn: turn, settled: true, confirmed: confirmation, + addressed: e.Addressed, cut: e.Interrupted, replyTags: append([]session.TaskReplyTag(nil), e.ReplyTags...), }) @@ -805,7 +806,7 @@ func (a *app) replayBlocks(entries []session.DisplayEntry, shape replayShape) ([ // A note from a file written before the mark arrives as "user" and // draws exactly as it always did. blocks = append(blocks, entry{ - kind: entryNote, text: firstLine(text), turn: turn, + kind: entryNote, text: text, turn: turn, cut: e.Interrupted, }) } } diff --git a/internal/tui3/taskrequest_test.go b/internal/tui3/taskrequest_test.go index 46eee3dc85..81c449852e 100644 --- a/internal/tui3/taskrequest_test.go +++ b/internal/tui3/taskrequest_test.go @@ -100,14 +100,14 @@ func TestTaskRequestReplayLeavesLaterNotesCorrectionsAndMainAlone(t *testing.T) if len(blocks) != len(entries) || turns != 2 { t.Fatalf("replay changed message/turn count: %d/%d", len(blocks), turns) } - if blocks[2].kind != entryNote || blocks[2].text != "Task 9 finished." || blocks[2].brief || blocks[5].kind != entryNote || blocks[5].brief { + if blocks[2].kind != entryNote || blocks[2].text != entries[2].Text || blocks[2].brief || blocks[5].kind != entryNote || blocks[5].brief || blocks[5].text != entries[5].Text { t.Fatalf("later engine notes acquired request semantics: %#v / %#v", blocks[2], blocks[5]) } if blocks[3].brief || requestDisplayText(&blocks[3]) != entries[3].Text || blocks[4].kind != entrySteer || blocks[4].steer.words != entries[4].Text { t.Fatal("the person's later message or correction changed") } main, _ := a.replayBlocks(entries, chatReplay(0)) - if main[0].kind != entryNote || main[0].brief || main[0].text != taskRequestAsk { + if main[0].kind != entryNote || main[0].brief || main[0].text != entries[0].Text { t.Fatalf("main replay adopted the room-only request treatment: %#v", main[0]) } for _, text := range []string{"THE WORK is still unfinished", "A normal task update", "WHAT THE PERSON ASKED FOR, IN THEIR OWN WORDS\nUnrelated prose"} { diff --git a/internal/tui3/workfold.go b/internal/tui3/workfold.go index 4ae7f46696..4fa447b1cd 100644 --- a/internal/tui3/workfold.go +++ b/internal/tui3/workfold.go @@ -230,6 +230,9 @@ func (p *phaseRun) close(es []entry, answer int) (workfold, bool) { // phaseKeeps preserves actionable boundaries and calls still in flight. func phaseKeeps(e *entry) bool { + if interruptedUpdate(e) { + return true + } switch e.kind { case entryTask, entryStanding, entryConnect, entrySeam, entryHarness, entryDone: return true @@ -280,7 +283,7 @@ func deriveWorkfolds(es []entry, runningTurn int) map[int]workfold { // landing as a boundary so unrelated housekeeping on either side // still folds, even when an async command acknowledgement arrived // after the response without a new user message. - if es[i].kind == entryTask || es[i].kind == entryConnect || es[i].kind == entryStanding || es[i].kind == entryDone { + if interruptedUpdate(&es[i]) || es[i].kind == entryTask || es[i].kind == entryConnect || es[i].kind == entryStanding || es[i].kind == entryDone { asks = append(asks, i) } if es[i].kind == entryTool && ((es[i].status != toolOK && es[i].status != toolFailed && !es[i].cut) || es[i].decision != "") { @@ -542,6 +545,11 @@ func workIndent(width int) string { return strings.Repeat(" ", spacingConversationLead) } +// Interrupted updates retain their explicit audience without completing a reply. +func interruptedUpdate(e *entry) bool { + return e.kind == entryAssistant && e.addressed && e.cut && strings.TrimSpace(e.text) != "" +} + // A tool-free response boundary is an explicit message to the person, even // when the session continues working afterwards. No prose keywords are guessed. func confirmedAnswer(e *entry) bool { @@ -570,9 +578,9 @@ func workEntry(es []entry, folds map[int]workfold, i int) bool { if e.kind != entryAssistant { return false } - // Explicitly addressed updates are visible while streaming. This does - // not confirm the response; interrupted partial updates still recede. - if e.addressed && !e.cut { + // Audience survives interruption: these words were meant for the person. + // A cut update stays visible without claiming the response completed. + if e.addressed { return false } // Streaming content can still be a preamble to an upcoming tool. The From d606fa41386425aaac8f5975dd40362705bfe7f8 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 13:32:04 -0400 Subject: [PATCH 20/23] docs: retain Escape search terms for interrupted updates --- internal/manual/chat/screen.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/internal/manual/chat/screen.md b/internal/manual/chat/screen.md index abea02cdc7..1bf9771cc1 100644 --- a/internal/manual/chat/screen.md +++ b/internal/manual/chat/screen.md @@ -1791,7 +1791,7 @@ a flush half. Below 60 columns the gutter is dropped and the shading alone carries the difference. With no colour at all, the gutter alone does. -## What remains visible when I stop a reply +## I pressed esc and the reply stayed grey — why nothing became the answer Press `esc` while a turn is running to stop its unfinished work. Completed replies and updates already addressed to you remain readable. An explicitly addressed From ed8fed2bc3a208226b801c5818db1fbfba236180 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 13:48:39 -0400 Subject: [PATCH 21/23] test: distinguish interrupted and completed steering collapse --- internal/tui3/steerelbow_test.go | 69 +++++++++++++++++++++++--------- 1 file changed, 51 insertions(+), 18 deletions(-) diff --git a/internal/tui3/steerelbow_test.go b/internal/tui3/steerelbow_test.go index 0eb3c53476..97fcc3321a 100644 --- a/internal/tui3/steerelbow_test.go +++ b/internal/tui3/steerelbow_test.go @@ -424,24 +424,57 @@ func TestALandingAsksForTheFadesTwoWakeupsAndNoTicker(t *testing.T) { // THE POINT OF THE DESIGN. A finished turn collapses its machinery into one // chip, and everything the person ASKED is still on the screen. func TestACollapsedTurnKeepsTheQuestionsElbows(t *testing.T) { - agent := &fakeAgent{turns: [][]session.Event{{ - toolBegin("read", "internal/parse/lex.go"), - toolEnd("read", "package parse"), - text(session.EventTextDelta, "done — the lexer is swapped"), - }}} - a := newTestApp(agent) - typeLine(t, a, "port the parser") - drive(t, a, streamEventMsg{gen: a.gen, ev: steerAcceptedEvent(1, "use the staging bucket")}) - drive(t, a, streamEventMsg{gen: a.gen, ev: steerConsumedEvent(1)}) - agent.finish() - drive(t, a, streamClosedMsg{gen: a.gen}) - - lines := strings.Join(plainRows(a), "\n") - if !strings.Contains(lines, "worked") { - t.Fatalf("the turn did not collapse, so this test proves nothing:\n%s", lines) - } - if !strings.Contains(lines, glyphSteer+"use the staging bucket") { - t.Fatalf("the collapse ate the question's corrections:\n%s", lines) + for _, completed := range []bool{false, true} { + name := "interrupted_without_replacement" + if completed { + name = "completed_after_steer" + } + t.Run(name, func(t *testing.T) { + agent := &fakeAgent{turns: [][]session.Event{{ + toolBegin("read", "internal/parse/lex.go"), + toolEnd("read", "PRIVATE ORIGINAL RESULT"), + text(session.EventTextDelta, "unfinished parser narration"), + }}} + a := newTestApp(agent) + typeLine(t, a, "port the parser") + drive(t, a, streamEventMsg{gen: a.gen, ev: steerAcceptedEvent(1, "use the staging bucket")}) + drive(t, a, streamEventMsg{gen: a.gen, ev: steerConsumedEvent(1)}) + if completed { + for _, ev := range []session.Event{ + toolBegin("bash", "verify staging"), + toolEnd("bash", "PRIVATE STAGING RESULT"), + text(session.EventTextDelta, "The staging parser is ready."), + {Kind: session.EventAssistantDone}, + } { + drive(t, a, streamEventMsg{gen: a.gen, ev: ev}) + } + } + agent.finish() + drive(t, a, streamClosedMsg{gen: a.gen}) + lines := strings.Join(plainRows(a), "\n") + if !strings.Contains(lines, "stopped by you") { + t.Fatalf("interrupted generation lost its compact status:\n%s", lines) + } + if strings.Count(lines, glyphSteer+"use the staging bucket") != 1 { + t.Fatalf("the collapse lost or duplicated the correction:\n%s", lines) + } + for _, hidden := range []string{"PRIVATE ORIGINAL RESULT", "PRIVATE STAGING RESULT", "unfinished parser narration"} { + if strings.Contains(lines, hidden) { + t.Fatalf("closed work leaked %q:\n%s", hidden, lines) + } + } + if completed { + if !strings.Contains(lines, "worked") || strings.Count(lines, "The staging parser is ready.") != 1 { + t.Fatalf("completed replacement lost its work disclosure or answer:\n%s", lines) + } + } else { + for _, e := range a.entries { + if confirmedAnswer(&e) { + t.Fatal("interrupted generation was promoted to a completed answer") + } + } + } + }) } } From 561e1c5f1e3db85eb553d0ea4d032992a99556b1 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 14:07:04 -0400 Subject: [PATCH 22/23] test: reuse reviewed run teardown fixtures for clean validation 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. --- internal/session/task_run_belt_test.go | 17 ++++++++++++----- internal/session/task_run_orphan_test.go | 5 +++-- 2 files changed, 15 insertions(+), 7 deletions(-) diff --git a/internal/session/task_run_belt_test.go b/internal/session/task_run_belt_test.go index cac5f03a75..30b5e6a761 100644 --- a/internal/session/task_run_belt_test.go +++ b/internal/session/task_run_belt_test.go @@ -164,12 +164,19 @@ func registerBeltRunEngine(t *testing.T, engine RunEngine) { // directory's removal, and lost it under load as "directory not empty". func endBeltRun(t *testing.T, agent *Agent, double *beltRunDouble) { t.Helper() + agent.beltMu.Lock() + run := agent.beltRun + agent.beltMu.Unlock() close(double.release) - beltRunWaitFor(t, "the run to end", func() bool { - agent.beltMu.Lock() - defer agent.beltMu.Unlock() - return agent.beltRun == nil - }) + if run == nil { + return + } + // The owner's completion channel covers the final record and store close. + select { + case <-run.over: + case <-time.After(10 * time.Second): + t.Fatal("run did not finish settling after its engine returned") + } } // beltRunStoreAt is a fresh handle on the run's store, adopted by path — the diff --git a/internal/session/task_run_orphan_test.go b/internal/session/task_run_orphan_test.go index 6073a1da95..54feb8502c 100644 --- a/internal/session/task_run_orphan_test.go +++ b/internal/session/task_run_orphan_test.go @@ -210,8 +210,9 @@ func TestClosingUnderAProgramsRunEndsItInItsStoreFirst(t *testing.T) { t.Fatalf("the second run is on root %q with brief %q", spec.Store.RootID(), spec.Store.Task(spec.Store.RootID()).Description) } endBeltRun(t, again, second) - close(first.release) - <-first.finished + // The double returning is not the owner finishing: the driver still owes + // its final record and store close before the fixture can remove its files. + endBeltRun(t, agent, first) } // THE RESTORE ROAD: a conversation read back from disk whose run row comes From 77f3132a20b52f9776809353c57a1da20aed78a8 Mon Sep 17 00:00:00 2001 From: santoshkumarradha Date: Sun, 27 Sep 2026 14:20:55 -0400 Subject: [PATCH 23/23] docs: publish sustained chat UX acceptance and validation evidence --- docs/design/chat-cleanup/README.md | 105 +- docs/design/chat-cleanup/UX-COVERAGE.md | 42 + .../chat-cleanup/evidence/00-active.cast | 2 +- .../chat-cleanup/evidence/00-active.gif | Bin 32295 -> 32329 bytes .../chat-cleanup/evidence/00-active.txt | 8 +- .../design/chat-cleanup/evidence/01-chat.cast | 2 +- docs/design/chat-cleanup/evidence/01-chat.gif | Bin 36647 -> 36937 bytes docs/design/chat-cleanup/evidence/01-chat.txt | 10 +- .../chat-cleanup/evidence/01-closed.cast | 2 +- .../chat-cleanup/evidence/01-closed.gif | Bin 36647 -> 36937 bytes .../chat-cleanup/evidence/01-closed.txt | 10 +- .../chat-cleanup/evidence/01-expanded.cast | 2 +- .../chat-cleanup/evidence/01-expanded.gif | Bin 47476 -> 47960 bytes .../chat-cleanup/evidence/01-expanded.txt | 18 +- .../evidence/02-notification.cast | 2 +- .../chat-cleanup/evidence/02-notification.gif | Bin 41564 -> 41753 bytes .../chat-cleanup/evidence/02-notification.txt | 14 +- .../chat-cleanup/evidence/03-dismissed.cast | 2 +- .../chat-cleanup/evidence/03-dismissed.gif | Bin 36714 -> 37488 bytes .../chat-cleanup/evidence/03-dismissed.txt | 16 +- .../chat-cleanup/evidence/04-restored.cast | 2 +- .../chat-cleanup/evidence/04-restored.gif | Bin 41615 -> 42756 bytes .../chat-cleanup/evidence/04-restored.txt | 18 +- .../evidence/05-manager-replay.cast | 2 +- .../evidence/05-manager-replay.gif | Bin 30479 -> 30309 bytes .../evidence/05-manager-replay.txt | 4 +- .../evidence/06-manager-live-followup.cast | 2 +- .../evidence/06-manager-live-followup.gif | Bin 36955 -> 37485 bytes .../evidence/06-manager-live-followup.txt | 8 +- .../evidence/07-failure-recovery-active.cast | 2 +- .../evidence/07-failure-recovery-active.gif | Bin 41504 -> 41763 bytes .../evidence/07-failure-recovery-active.txt | 8 +- .../evidence/08-recovery-finished.cast | 2 +- .../evidence/08-recovery-finished.gif | Bin 41111 -> 41613 bytes .../evidence/08-recovery-finished.txt | 12 +- .../evidence/09-assistant-update.cast | 2 +- .../evidence/09-assistant-update.gif | Bin 38000 -> 40326 bytes .../evidence/09-assistant-update.txt | 10 +- .../evidence/09-user-steering.cast | 2 +- .../evidence/09-user-steering.gif | Bin 36947 -> 36871 bytes .../evidence/09-user-steering.txt | 8 +- .../evidence/10-steering-finished.cast | 2 +- .../evidence/10-steering-finished.gif | Bin 49850 -> 49418 bytes .../evidence/10-steering-finished.txt | 16 +- .../evidence/11-steering-resumed.cast | 2 +- .../evidence/11-steering-resumed.gif | Bin 49042 -> 49027 bytes .../evidence/11-steering-resumed.txt | 16 +- .../chat-cleanup/evidence/chat-models.json | 128 +- docs/design/chat-cleanup/evidence/e2e.log | 29 + .../chat-cleanup/evidence/manager-models.json | 52 +- .../evidence/notification-sequence.cast | 6 +- .../evidence/notification-sequence.gif | Bin 76952 -> 82921 bytes .../evidence/recovery-models.json | 64 +- .../chat-cleanup/evidence/run-summary.json | 38 +- docs/design/chat-cleanup/evidence/run.log | 42 +- docs/design/chat-cleanup/evidence/sha256.json | 57 + .../evidence/steering-models.json | 86 +- .../design/chat-cleanup/evidence/summary.json | 32 + .../01-built-and-steered.txt | 42 + .../01-steering-before-fix/02-filter-json.txt | 42 + .../03-validation-refunds.txt | 42 + .../04-audit-task-completed.txt | 42 + .../01-steering-before-fix/05-dismissed.txt | 42 + .../06-final-handoff.txt | 42 + .../history/01-steering-before-fix/README.md | 31 + .../artifact-retrieval.txt | 1 + .../01-steering-before-fix/full-session.cast | 381 ++ .../01-steering-before-fix/models.json | 944 ++++ .../01-steering-before-fix/run-summary.json | 10 + .../01-steering-before-fix/timeline.json | 67 + .../03-duplicated-reading-brief.txt | 42 + .../05-csv-goal-complete.txt | 42 + .../08-corrected-finance-handoff.txt | 42 + .../10-dismissed-handoff-preserved.txt | 42 + .../02-task-sources-before-fix/README.md | 40 + .../full-session.cast | 512 ++ .../independent-verification.json | 39 + .../02-task-sources-before-fix/models.json | 1135 ++++ .../run-summary.json | 10 + .../02-task-sources-before-fix/timeline.json | 52 + .../07-resumed-history-folded.txt | 42 + .../11-live-steering-and-human-updates.txt | 42 + .../12-real-failed-call-stays-closed.txt | 42 + .../13-real-task-completion-compact.txt | 42 + .../16-october-food-consumer-result.txt | 42 + .../history/03-replay-before-fix/README.md | 49 + .../03-replay-before-fix/full-session.cast | 595 +++ .../independent-verification.json | 31 + .../history/03-replay-before-fix/models.json | 729 +++ .../03-replay-before-fix/run-summary.json | 10 + .../03-replay-before-fix/timeline.json | 82 + docs/design/chat-cleanup/history/README.md | 16 + .../13-history-marker-folded.cast | 3 + .../13-history-marker-folded.gif | Bin 0 -> 48068 bytes .../13-history-marker-folded.txt | 42 + .../16-human-update-before-steering.cast | 3 + .../16-human-update-before-steering.gif | Bin 0 -> 54204 bytes .../16-human-update-before-steering.txt | 42 + .../19-narrow-active-steering.cast | 3 + .../19-narrow-active-steering.gif | Bin 0 -> 41384 bytes .../19-narrow-active-steering.txt | 32 + .../21-restored-width-updates-kept.txt | 42 + .../22-restored-width-confirmed.cast | 3 + .../22-restored-width-confirmed.gif | Bin 0 -> 59451 bytes .../22-restored-width-confirmed.txt | 42 + .../23-strict-safe-export-complete.txt | 42 + .../live-workflow/25-work-opened-by-user.txt | 42 + .../27-expanded-work-keeps-updates.cast | 3 + .../27-expanded-work-keeps-updates.gif | Bin 0 -> 54937 bytes .../27-expanded-work-keeps-updates.txt | 42 + .../29-explicit-tool-details.cast | 3 + .../29-explicit-tool-details.gif | Bin 0 -> 57856 bytes .../29-explicit-tool-details.txt | 42 + .../32-details-closed-handoff-preserved.cast | 3 + .../32-details-closed-handoff-preserved.gif | Bin 0 -> 56494 bytes .../32-details-closed-handoff-preserved.txt | 42 + .../36-final-tested-import-policy.cast | 3 + .../36-final-tested-import-policy.gif | Bin 0 -> 47753 bytes .../36-final-tested-import-policy.txt | 42 + .../chat-cleanup/live-workflow/README.md | 42 + .../live-workflow/excerpt-180s.cast | 223 + .../live-workflow/excerpt-180s.gif | Bin 0 -> 2434015 bytes .../chat-cleanup/live-workflow/excerpt.json | 7 + .../live-workflow/fleet-jobs.json | 5 + .../live-workflow/full-session.cast | 431 ++ .../generated-project/HANDOFF.md | 201 + .../live-workflow/generated-project/README.md | 1 + .../generated-project/mixed-month-sample.csv | 12 + .../live-workflow/generated-project/report.py | 258 + .../generated-project/run_report.sh | 33 + .../september-reimbursement-report.json | 8 + .../september-reimbursement-report.txt | 4 + ...eptember-reimbursement-report.warnings.txt | 3 + .../september-reimbursement-summary.csv | 5 + .../september-reimbursements.csv | 8 + .../generated-project/test_report.py | 443 ++ .../generated-project/test_run_report.py | 82 + .../live-workflow/gif-timing-audit.json | 29 + .../independent-verification.json | 33 + .../chat-cleanup/live-workflow/models.json | 576 ++ .../live-workflow/run-summary.json | 10 + .../chat-cleanup/live-workflow/timeline.json | 182 + .../chat-cleanup/live-workflow/ux-audit.json | 17 + docs/design/chat-cleanup/validation/README.md | 10 + .../validation/combined-run-summary.json | 11 + .../initial-ci-steering-fixture-failure.log | 4742 +++++++++++++++++ .../initial-gate-run-cleanup-failure.log | 1372 +++++ .../initial-gate-search-failure.log | 17 + .../chat-cleanup/validation/pr-ready.log | 81 + 149 files changed, 15240 insertions(+), 333 deletions(-) create mode 100644 docs/design/chat-cleanup/UX-COVERAGE.md create mode 100644 docs/design/chat-cleanup/evidence/e2e.log create mode 100644 docs/design/chat-cleanup/evidence/sha256.json create mode 100644 docs/design/chat-cleanup/evidence/summary.json create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/01-built-and-steered.txt create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/02-filter-json.txt create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/03-validation-refunds.txt create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/04-audit-task-completed.txt create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/05-dismissed.txt create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/06-final-handoff.txt create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/README.md create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/artifact-retrieval.txt create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/full-session.cast create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/models.json create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/run-summary.json create mode 100644 docs/design/chat-cleanup/history/01-steering-before-fix/timeline.json create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/03-duplicated-reading-brief.txt create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/05-csv-goal-complete.txt create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/08-corrected-finance-handoff.txt create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/10-dismissed-handoff-preserved.txt create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/README.md create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/full-session.cast create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/independent-verification.json create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/models.json create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/run-summary.json create mode 100644 docs/design/chat-cleanup/history/02-task-sources-before-fix/timeline.json create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/07-resumed-history-folded.txt create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/11-live-steering-and-human-updates.txt create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/12-real-failed-call-stays-closed.txt create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/13-real-task-completion-compact.txt create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/16-october-food-consumer-result.txt create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/README.md create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/full-session.cast create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/independent-verification.json create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/models.json create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/run-summary.json create mode 100644 docs/design/chat-cleanup/history/03-replay-before-fix/timeline.json create mode 100644 docs/design/chat-cleanup/history/README.md create mode 100644 docs/design/chat-cleanup/live-workflow/13-history-marker-folded.cast create mode 100644 docs/design/chat-cleanup/live-workflow/13-history-marker-folded.gif create mode 100644 docs/design/chat-cleanup/live-workflow/13-history-marker-folded.txt create mode 100644 docs/design/chat-cleanup/live-workflow/16-human-update-before-steering.cast create mode 100644 docs/design/chat-cleanup/live-workflow/16-human-update-before-steering.gif create mode 100644 docs/design/chat-cleanup/live-workflow/16-human-update-before-steering.txt create mode 100644 docs/design/chat-cleanup/live-workflow/19-narrow-active-steering.cast create mode 100644 docs/design/chat-cleanup/live-workflow/19-narrow-active-steering.gif create mode 100644 docs/design/chat-cleanup/live-workflow/19-narrow-active-steering.txt create mode 100644 docs/design/chat-cleanup/live-workflow/21-restored-width-updates-kept.txt create mode 100644 docs/design/chat-cleanup/live-workflow/22-restored-width-confirmed.cast create mode 100644 docs/design/chat-cleanup/live-workflow/22-restored-width-confirmed.gif create mode 100644 docs/design/chat-cleanup/live-workflow/22-restored-width-confirmed.txt create mode 100644 docs/design/chat-cleanup/live-workflow/23-strict-safe-export-complete.txt create mode 100644 docs/design/chat-cleanup/live-workflow/25-work-opened-by-user.txt create mode 100644 docs/design/chat-cleanup/live-workflow/27-expanded-work-keeps-updates.cast create mode 100644 docs/design/chat-cleanup/live-workflow/27-expanded-work-keeps-updates.gif create mode 100644 docs/design/chat-cleanup/live-workflow/27-expanded-work-keeps-updates.txt create mode 100644 docs/design/chat-cleanup/live-workflow/29-explicit-tool-details.cast create mode 100644 docs/design/chat-cleanup/live-workflow/29-explicit-tool-details.gif create mode 100644 docs/design/chat-cleanup/live-workflow/29-explicit-tool-details.txt create mode 100644 docs/design/chat-cleanup/live-workflow/32-details-closed-handoff-preserved.cast create mode 100644 docs/design/chat-cleanup/live-workflow/32-details-closed-handoff-preserved.gif create mode 100644 docs/design/chat-cleanup/live-workflow/32-details-closed-handoff-preserved.txt create mode 100644 docs/design/chat-cleanup/live-workflow/36-final-tested-import-policy.cast create mode 100644 docs/design/chat-cleanup/live-workflow/36-final-tested-import-policy.gif create mode 100644 docs/design/chat-cleanup/live-workflow/36-final-tested-import-policy.txt create mode 100644 docs/design/chat-cleanup/live-workflow/README.md create mode 100644 docs/design/chat-cleanup/live-workflow/excerpt-180s.cast create mode 100644 docs/design/chat-cleanup/live-workflow/excerpt-180s.gif create mode 100644 docs/design/chat-cleanup/live-workflow/excerpt.json create mode 100644 docs/design/chat-cleanup/live-workflow/fleet-jobs.json create mode 100644 docs/design/chat-cleanup/live-workflow/full-session.cast create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/HANDOFF.md create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/README.md create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/mixed-month-sample.csv create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/report.py create mode 100755 docs/design/chat-cleanup/live-workflow/generated-project/run_report.sh create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/september-reimbursement-report.json create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/september-reimbursement-report.txt create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/september-reimbursement-report.warnings.txt create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/september-reimbursement-summary.csv create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/september-reimbursements.csv create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/test_report.py create mode 100644 docs/design/chat-cleanup/live-workflow/generated-project/test_run_report.py create mode 100644 docs/design/chat-cleanup/live-workflow/gif-timing-audit.json create mode 100644 docs/design/chat-cleanup/live-workflow/independent-verification.json create mode 100644 docs/design/chat-cleanup/live-workflow/models.json create mode 100644 docs/design/chat-cleanup/live-workflow/run-summary.json create mode 100644 docs/design/chat-cleanup/live-workflow/timeline.json create mode 100644 docs/design/chat-cleanup/live-workflow/ux-audit.json create mode 100644 docs/design/chat-cleanup/validation/README.md create mode 100644 docs/design/chat-cleanup/validation/combined-run-summary.json create mode 100644 docs/design/chat-cleanup/validation/initial-ci-steering-fixture-failure.log create mode 100644 docs/design/chat-cleanup/validation/initial-gate-run-cleanup-failure.log create mode 100644 docs/design/chat-cleanup/validation/initial-gate-search-failure.log create mode 100644 docs/design/chat-cleanup/validation/pr-ready.log diff --git a/docs/design/chat-cleanup/README.md b/docs/design/chat-cleanup/README.md index 16146deb0f..45ecc062fc 100644 --- a/docs/design/chat-cleanup/README.md +++ b/docs/design/chat-cleanup/README.md @@ -1,47 +1,81 @@ -# Clean chat terminal evidence +# Clean chat: live acceptance -The acceptance suite launches `bin/codeaf` in real tmux terminals at 140 × 42. -All live text requests use Spark's OpenRouter key with -`deepseek/deepseek-v4.1-flash`. The fixture pins all text seats, uses -`--one-model`, restricts the crew's allowed model, and disables the shared model -pool. No key is stored in these artifacts. The `*-models.json` files retain only -request timestamps, IDs, phases, role tags, model names, and HTTP statuses. +The shared conversation renderer keeps human questions, steering, completed answers, +and explicit intended-human updates visible. Internal activity uses the existing +three-row scrolling animation and folds when finished. Errors remain compact; +opening disclosure still reveals the full record. Settled task notifications can +be dismissed and restored without deleting their results. -## Scenarios +## Sustained real workflow -| Test | What it checks | +![Three minutes of actual terminal interaction](live-workflow/excerpt-180s.gif) + +The recording uses application source `18a6ec5f21386c1a2e1d5c6165b55a4804086c2d` +on Spark. The full continuous recording lasts **254.792 seconds**. The GIF is a +contiguous **180-second excerpt (74.792–254.792) at normal speed**, with the full original cast +preserved. The model completed **41 requests**, all using OpenRouter +`deepseek/deepseek-v4.1-flash`; auxiliary roles and request starts were audited too. + +The live task extended a real reimbursement-report program with strict validation +and an atomic export wrapper. Follow-up steering required failed exports to keep +the existing CSV intact. A later consumer question exposed confusing shell advice; +the user corrected it and the model tested a safe import condition locally. +Independent verification executes the generated program and checks its actual files, +exit codes and import marker, rather than trusting the assistant's summary. + +[Full recording, captions, model audit, generated files and independent results](live-workflow/README.md). + +During that workflow we resized the actual terminal from 140×42 to 90×32 and back, +opened work and an individual command, closed them, and dismissed receipts. Human +updates and steering survived these transitions. No raw update marker, reserved +interruption marker or automatically expanded task-reading brief was observed. + +## Focused live terminal scenarios + +All four real tmux scenarios passed in **112.054 seconds** on the same application +source. Every live role used `deepseek/deepseek-v4.1-flash`. + +| Scenario | Verified behavior | | --- | --- | -| `TestCleanChat` | A live bash call folds; its command details remain accessible through work and step disclosures. A real task finishes, its notification is compact, `/dismiss` hides it, and `/dismiss undo` restores it. | -| `TestCleanManagerReplay` | A deterministic historical manager journal contains a team send, a team delivery, an internal wake note, and a Markdown answer. The real TUI resumes it without exposing traffic or raw Markdown, then takes a live model follow-up. This is **replay plus live follow-up**, not a claim that a live teammate sent the fixture. | -| `TestCleanChatFailureRecovery` | A live model makes an intentionally failing bash call and a separate recovery call. Polling checks that the failure output never auto-expands; the real journal confirms that the failure actually happened. | -| `TestCleanChatSteering` | Real keyboard input is sent while the assistant is working. The user correction, an explicit `[update]` assistant progress message, and the final answer remain visible after two tool calls. The assistant marker is consumed by the renderer. Closing and reopening the real journal preserves all three messages. | +| Chat and task completion | Tool work folds, details open on request, compact task receipt dismisses and restores. | +| Manager replay and follow-up | Historical team traffic and wake instructions fold; the formatted answer and a new live response remain visible. Historical traffic is a fixture, not a claim of live teammate delivery. | +| Failure and recovery | An actual failing tool call stays compact while recovery runs; its output remains inspectable. | +| Steering and reopening | Real keyboard steering and an explicit assistant update remain readable during tools and after reopening the journal. | + +[Run log](evidence/run.log) · [Run summary and model counts](evidence/run-summary.json) -The narrow unit regressions additionally cover the three-row activity bound -across conversation, task, and nested views, plus interrupted intermediate -updates and Markdown rendering. +![Human update remains visible while work continues](evidence/09-assistant-update.gif) -## Verified run +![Task receipt dismissed and restored: three captured screenshots](evidence/notification-sequence.gif) -On 2026-09-27, `make build` from source `0b970f4bc` passed, followed by all four -real-tmux scenarios in **95.919 seconds**. The final run recorded **34 completed -request records**, all on `deepseek/deepseek-v4.1-flash`: chat/task 13, manager 5, -recovery 7, steering/resume 9. The audit also checks every start record. +The dismissal sequence captures a running conversation; additional model replies +arrive between frames. The captures are unmodified, so this is not a perfectly +static before/after comparison. -[Run output](evidence/run.log) · [Machine-readable summary](evidence/run-summary.json) +## Transition coverage and verification -## Captured screens +[UX coverage matrix](UX-COVERAGE.md) records stop, consumed steering, retry, +compaction, rewind, replay, narrow widths, all chat lenses, disclosures and pending +decisions. Audience and interrupted status are stored as typed presentation +metadata while provider history and underlying details remain intact. -1. [Clean conversation](evidence/01-chat.gif) and [expanded command details](evidence/01-expanded.gif). -2. [Notification → dismissed → restored](evidence/notification-sequence.gif), a sequence of three screenshots. -3. [Manager journal replay](evidence/05-manager-replay.gif) and [live follow-up](evidence/06-manager-live-followup.gif). -4. [Failure during recovery](evidence/07-failure-recovery-active.gif) and [finished recovery](evidence/08-recovery-finished.gif). -5. [User steering](evidence/09-user-steering.gif), [assistant update while working](evidence/09-assistant-update.gif), [final conversation](evidence/10-steering-finished.gif), and [reopened journal](evidence/11-steering-resumed.gif). +Older ambiguous mixed prose remains intact: legacy journals lack the metadata +needed to distinguish it safely from a human answer. -![Explicit assistant update remains visible while work continues](evidence/09-assistant-update.gif) +[Repository gate log](validation/pr-ready.log) records build, vet, formatting, +manuals, repository laws and affected-package tests. The help-search heading was +restored after the first combined run found a documentation regression; the +recorded application code was unchanged by that documentation-only correction. +A subsequent CI check exposed an older fixture that stopped at a steering boundary +but still expected completed work; the fixture now covers stopped and completed +responses separately. The first full gate also reproduced the already-fixed +program-run cleanup race; the existing reviewed #1619/#1622 test-only fixes +were reused as validation dependencies. No new production fix was introduced. -![Task notification dismissed and restored — screenshot sequence](evidence/notification-sequence.gif) +[Earlier full recordings](history/README.md) preserve intermediate failures and +the fixes they motivated. They are not substituted for final acceptance evidence. -## Reproduce +## Reproduce the focused live scenarios ```sh make build @@ -53,7 +87,8 @@ python3 docs/design/chat-cleanup/render-evidence.py \ /tmp/codeaf-chat-cleanup-evidence docs/design/chat-cleanup/evidence ``` -Every `.cast` contains the actual ANSI framebuffer read by `tmux capture-pane`. -`agg` renders those bytes into GIF screenshots; the corresponding `.txt` is the -plain terminal capture. `notification-sequence.gif` cycles three separate -screenshots (before dismissal, dismissed, restored); it is not continuous video. +Run through Fleet on Spark with the configured OpenRouter credential. No keys, +private session directories or provider configuration belong in this evidence. +All captured screens originate from real tmux framebuffers; GIF rendering only +converts those captured bytes. The notification sequence is a labeled slideshow, +not continuous video. diff --git a/docs/design/chat-cleanup/UX-COVERAGE.md b/docs/design/chat-cleanup/UX-COVERAGE.md new file mode 100644 index 0000000000..44ded06a77 --- /dev/null +++ b/docs/design/chat-cleanup/UX-COVERAGE.md @@ -0,0 +1,42 @@ +# Conversation UX acceptance + +The shared display policy separates who a message addresses from whether that +message finished. Human questions, steering, completed answers and explicit +interim updates remain conversation. Tool activity, reasoning, internal team +traffic, source metadata and maintenance records remain available under +disclosure. Closed active work uses at most three rows of the existing scrolling +animation. Approval and pending-decision controls remain actionable. + +| Boundary | Required result | Regression coverage | +| --- | --- | --- | +| Interim update followed by tools | Human update stays formatted and visible once; protocol marker stays hidden even across fragment splits | `feed_update_test.go`, `chat_steering_clean_test.go` | +| Steering during tool arguments | Unexecuted tool payload disappears; steering remains; new response gets a fresh audience boundary | `feed_update_test.go`, issue #1609 | +| Stop during human update | Partial update stays readable and explicitly interrupted; completion is not asserted | interrupted-update transition tests, issue #1620 | +| Retry | Undelivered attempt is discarded; earlier durable updates survive | `feed_update_test.go`, transition tests | +| Resume, compaction, rewind | Source-owned audience and interruption metadata survive; identical words in different message occurrences do not share classification | `presentation_test.go`, issue #1617 | +| Failed tool | Compact failure indicator; full error available on request | `chatcleanup_test.go`, live failure-recovery scenario | +| Task completion and dismissal | Compact receipt; dismissal removes it without deleting work; undo restores it; pending decisions cannot be dismissed | `taskdismiss_test.go`, live task scenario | +| Task result provenance | Repeated original briefs stay folded; source links and full requests remain inspectable | `taskreplytag_test.go`, issue #1613 | +| Internal manager activity | Team traffic and injected wake guidance fold; actual answer and explicit UI responses remain visible | `chatcleanup_test.go`, `async_command_visibility_test.go`, manager replay + live follow-up | +| View and width changes | Ordinary conversation, task and nested transcripts share the policy; compact activity remains within three rows | `chatcleanup_test.go`, `chat_steering_clean_test.go`, `livesteps_test.go`, transition tests | +| Disclosure and later completion | Opening preserves all details; closing restores compact view; completed work collapses again | `nested_disclosure_test.go`, `livesteps_test.go`, real terminal captures | + +## Compatibility boundary + +Older journals did not record audience or interrupted-response metadata. Complete +reserved interruption records can be folded safely. Ambiguous older mixed prose +remains intact, because deleting a matching phrase could remove an actual human +answer. Newly written records carry typed metadata and do not need that guess. + +## Evidence discipline + +Recordings are sampled from the real tmux framebuffer with wall-clock timing. +Contiguous GIF excerpts run at 1x speed; the full original cast is preserved. +Historical manager traffic is explicitly labeled as a fixture with a live +follow-up. Practical workflows use a real generated reimbursement program and +independent invocations of that program, not just screenshots of claimed output. + +All live requests, including auxiliary model roles, are audited against +`deepseek/deepseek-v4.1-flash` on OpenRouter. Model audit files omit credentials and +prompt bodies. Failed intermediate runs remain identified as failures; only the +final frozen revision's checks support readiness. diff --git a/docs/design/chat-cleanup/evidence/00-active.cast b/docs/design/chat-cleanup/evidence/00-active.cast index 34b9bc925b..9fffe41b4e 100644 --- a/docs/design/chat-cleanup/evidence/00-active.cast +++ b/docs/design/chat-cleanup/evidence/00-active.cast @@ -1,3 +1,3 @@ {"height":42,"title":"00-active","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;252m|\u001b[38;5;179m●\u001b[39m \u001b[38;5;243mCaching curiosity\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.6k/1M · 1%\u001b[39m \u001b[38;5;146m⠙\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 1:28pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;252m\u003e\u001b[39m \u001b[38;5;179m·\u001b[39m \u001b[38;5;179m•\u001b[39m \u001b[38;5;179m˙\u001b[39m \u001b[38;5;243mOptimizing a hunch\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.6k/1M · 1%\u001b[39m \u001b[38;5;146m⠋\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat943326564/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/00-active.gif b/docs/design/chat-cleanup/evidence/00-active.gif index 371c4a31b45d22c349fb369577295569222979dc..03ed0d03f22ba6a34ec12ec1ad5631a6cc906c8a 100644 GIT binary patch delta 29315 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 PO>|INW6%T|1swYyeZ&g2 diff --git a/docs/design/chat-cleanup/evidence/00-active.txt b/docs/design/chat-cleanup/evidence/00-active.txt index 5a2037da3d..5c06cc7698 100644 --- a/docs/design/chat-cleanup/evidence/00-active.txt +++ b/docs/design/chat-cleanup/evidence/00-active.txt @@ -1,4 +1,4 @@ - >● codeaf home teams chats sessions spend settings sun 11:54am + >● codeaf home teams chats sessions spend settings sun 1:28pm ◐ Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by... × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -8,7 +8,7 @@ › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - |● Caching curiosity + > · • ˙ Optimizing a hunch @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.6k/1M · 1% ⠙ working ─ +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.6k/1M · 1% ⠋ working ─ › - esc interrupt project: /tmp/TestCleanChat412404832/002/clean-chat + esc interrupt project: /tmp/TestCleanChat943326564/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/01-chat.cast b/docs/design/chat-cleanup/evidence/01-chat.cast index f3ba7bc44a..e6f7698e39 100644 --- a/docs/design/chat-cleanup/evidence/01-chat.cast +++ b/docs/design/chat-cleanup/evidence/01-chat.cast @@ -1,3 +1,3 @@ {"height":42,"title":"01-chat","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0032\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────── \u001b[39m \u001b[38;5;252m$0.0042\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0007 · 67% cached\u001b[38;5;243m \u001b[38;5;252m15k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0034\u001b[39m · \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash print sleep then terminal check passed × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────── \u001b[39m \u001b[38;5;252m$0.0041\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0007 · 66% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat943326564/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/01-chat.gif b/docs/design/chat-cleanup/evidence/01-chat.gif index 495e07cc9909e00d297f2abe8953b571c551c711..9305e434e197a9271f97c71a358252c147302373 100644 GIT binary patch delta 34539 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�FCiqI%!Ay+ULu($p8 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 delta 34246 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 TkP>N;8tIWDX_8uIKmY(cdYiH6 diff --git a/docs/design/chat-cleanup/evidence/01-chat.txt b/docs/design/chat-cleanup/evidence/01-chat.txt index 0927d04333..426c7c1915 100644 --- a/docs/design/chat-cleanup/evidence/01-chat.txt +++ b/docs/design/chat-cleanup/evidence/01-chat.txt @@ -1,5 +1,5 @@ - >● codeaf home teams chats sessions spend settings 1 moving · $0.0032 · sun 11:54am - terminal check passed after clean output × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0034 · sun 1:29pm + bash print sleep then terminal check passed × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -8,7 +8,7 @@ › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e + ▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e The terminal check passed. @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───────────────────── $0.0042 · ⟲ saved $0.0007 · 67% cached 15k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───────────────────── $0.0041 · ⟲ saved $0.0007 · 66% cached 15k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat412404832/002/clean-chat + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat943326564/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/01-closed.cast b/docs/design/chat-cleanup/evidence/01-closed.cast index 6bd836dcda..65303bfbfa 100644 --- a/docs/design/chat-cleanup/evidence/01-closed.cast +++ b/docs/design/chat-cleanup/evidence/01-closed.cast @@ -1,3 +1,3 @@ {"height":42,"title":"01-closed","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0032\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────── \u001b[39m \u001b[38;5;252m$0.0042\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0007 · 67% cached\u001b[38;5;243m \u001b[38;5;252m15k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0034\u001b[39m · \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash print sleep then terminal check passed × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────── \u001b[39m \u001b[38;5;252m$0.0041\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0007 · 66% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat943326564/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/01-closed.gif b/docs/design/chat-cleanup/evidence/01-closed.gif index 495e07cc9909e00d297f2abe8953b571c551c711..9305e434e197a9271f97c71a358252c147302373 100644 GIT binary patch delta 34539 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�FCiqI%!Ay+ULu($p8 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 delta 34246 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 TkP>N;8tIWDX_8uIKmY(cdYiH6 diff --git a/docs/design/chat-cleanup/evidence/01-closed.txt b/docs/design/chat-cleanup/evidence/01-closed.txt index 0927d04333..426c7c1915 100644 --- a/docs/design/chat-cleanup/evidence/01-closed.txt +++ b/docs/design/chat-cleanup/evidence/01-closed.txt @@ -1,5 +1,5 @@ - >● codeaf home teams chats sessions spend settings 1 moving · $0.0032 · sun 11:54am - terminal check passed after clean output × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0034 · sun 1:29pm + bash print sleep then terminal check passed × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -8,7 +8,7 @@ › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e + ▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e The terminal check passed. @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───────────────────── $0.0042 · ⟲ saved $0.0007 · 67% cached 15k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───────────────────── $0.0041 · ⟲ saved $0.0007 · 66% cached 15k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat412404832/002/clean-chat + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat943326564/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/01-expanded.cast b/docs/design/chat-cleanup/evidence/01-expanded.cast index dbd4142ae7..d7a811da87 100644 --- a/docs/design/chat-cleanup/evidence/01-expanded.cast +++ b/docs/design/chat-cleanup/evidence/01-expanded.cast @@ -1,3 +1,3 @@ {"height":42,"title":"01-expanded","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0032\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▾ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n \u001b[38;5;243m⠿ thought for 0s · 32 tok · ctrl+e\u001b[39m\r\n \u001b[38;5;243m▾ \u001b[38;5;103mprinting the marker and sleeping three seconds\u001b[39m \u001b[38;5;243m1 call\u001b[39m\r\n \u001b[38;5;243m╰─▶ \u001b[38;5;110mbash\u001b[39m \u001b[38;5;243mecho CLEAN_CHAT_TOOL_OUTPUT_7319 \u0026\u0026 \u001b[38;5;252msleep\u001b[39m \u001b[38;5;243m3\u001b[39m \u001b[38;5;243m3.0s\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▾ worked 3.9s · ctrl+e\u001b[39m\r\n \u001b[38;5;243m· ⟲ 20.2k cached · saved $0.0007\u001b[39m\r\n \u001b[38;5;110m· 11:54 · 3.9s · 1 tool call · $0.0042 ·\u001b[39m\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────── \u001b[39m \u001b[38;5;252m$0.0042\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0007 · 67% cached\u001b[38;5;243m \u001b[38;5;252m15k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0034\u001b[39m · \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash print sleep then terminal check passed × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▾ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n \u001b[38;5;243m⠿ thought for 0s · 50 tok · ctrl+e\u001b[39m\r\n \u001b[38;5;243m▾ \u001b[38;5;103mprinting test token and sleeping three seconds in clean-chat\u001b[39m \u001b[38;5;243m1 call\u001b[39m\r\n \u001b[38;5;243m╰─▶ \u001b[38;5;110mbash\u001b[39m \u001b[38;5;243mecho CLEAN_CHAT_TOOL_OUTPUT_7319 \u0026\u0026 \u001b[38;5;252msleep\u001b[39m \u001b[38;5;243m3\u001b[39m \u001b[38;5;243m3.0s\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▾ worked 5.8s · ctrl+e\u001b[39m\r\n \u001b[38;5;243m· ⟲ 20.2k cached · saved $0.0007\u001b[39m\r\n \u001b[38;5;110m· 13:29 · 5.8s · 1 tool call · $0.0041 ·\u001b[39m\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────── \u001b[39m \u001b[38;5;252m$0.0041\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0007 · 66% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat943326564/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/01-expanded.gif b/docs/design/chat-cleanup/evidence/01-expanded.gif index 867c840da48d216e6dbc2789c65477c04e96266f..2ad86ccb07ca5d9b9b817b41c2434ce2ead53289 100644 GIT binary patch delta 46210 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 diff --git a/docs/design/chat-cleanup/evidence/01-expanded.txt b/docs/design/chat-cleanup/evidence/01-expanded.txt index b457cbcfb8..a48e8b2d45 100644 --- a/docs/design/chat-cleanup/evidence/01-expanded.txt +++ b/docs/design/chat-cleanup/evidence/01-expanded.txt @@ -1,5 +1,5 @@ - >● codeaf home teams chats sessions spend settings 1 moving · $0.0032 · sun 11:54am - terminal check passed after clean output × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0034 · sun 1:29pm + bash print sleep then terminal check passed × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -8,15 +8,15 @@ › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▾ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e - ⠿ thought for 0s · 32 tok · ctrl+e - ▾ printing the marker and sleeping three seconds 1 call + ▾ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e + ⠿ thought for 0s · 50 tok · ctrl+e + ▾ printing test token and sleeping three seconds in clean-chat 1 call ╰─▶ bash echo CLEAN_CHAT_TOOL_OUTPUT_7319 && sleep 3 3.0s The terminal check passed. - ▾ worked 3.9s · ctrl+e + ▾ worked 5.8s · ctrl+e · ⟲ 20.2k cached · saved $0.0007 - · 11:54 · 3.9s · 1 tool call · $0.0042 · + · 13:29 · 5.8s · 1 tool call · $0.0041 · ❮ @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───────────────────── $0.0042 · ⟲ saved $0.0007 · 67% cached 15k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ───────────────────── $0.0041 · ⟲ saved $0.0007 · 66% cached 15k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat412404832/002/clean-chat + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChat943326564/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/02-notification.cast b/docs/design/chat-cleanup/evidence/02-notification.cast index 7f63120a7d..61aead53ad 100644 --- a/docs/design/chat-cleanup/evidence/02-notification.cast +++ b/docs/design/chat-cleanup/evidence/02-notification.cast @@ -1,3 +1,3 @@ {"height":42,"title":"02-notification","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m · done · 8s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-b2ad8a · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;235m↓\u001b[38;5;243m 507\u001b[39m\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 72% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;146m⠹\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.0098\u001b[39m · \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ bash print sleep then terminal check passed × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mhello file creation\u001b[38;5;243m · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-82dbda · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 20\u001b[39m\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────────── \u001b[39m \u001b[38;5;252m$0.0056\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 74% cached\u001b[38;5;243m 15k/1M · 1%\u001b[39m \u001b[38;5;146m⠋\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat943326564/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/02-notification.gif b/docs/design/chat-cleanup/evidence/02-notification.gif index c8dbe1bbdc9d949ed6e171d0a10f0106f28f2f67..2e5df206319606548c9b339e8f7dd4754c7deb39 100644 GIT binary patch delta 39936 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 delta 39745 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 diff --git a/docs/design/chat-cleanup/evidence/02-notification.txt b/docs/design/chat-cleanup/evidence/02-notification.txt index e605f9127b..1fd03ba28b 100644 --- a/docs/design/chat-cleanup/evidence/02-notification.txt +++ b/docs/design/chat-cleanup/evidence/02-notification.txt @@ -1,5 +1,5 @@ - >● codeaf home teams chats sessions spend settings $0.01 · sun 11:54am - ◐ terminal check passed after clean output × + ▦ All + >● codeaf home teams chats sessions spend settings $0.0098 · sun 1:29pm + ◐ bash print sleep then terminal check passed × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -8,13 +8,13 @@ › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e + ▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e The terminal check passed. - ✓ ◆ write hello file · done · 8s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-b2ad8a · ctrl+o + ✓ ◆ hello file creation · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-82dbda · ctrl+o - ▸ Working thinking · together · ctrl+e ↑ 15k ↓ 507 + ▸ Working thinking · together · ctrl+e ↑ 15k ↓ 20 @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────────── $0.01 · ⟲ saved $0.0029 · 72% cached 15k/1M · 1% ⠹ working ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────────── $0.0056 · ⟲ saved $0.0029 · 74% cached 15k/1M · 1% ⠋ working ─ › - esc interrupt project: /tmp/TestCleanChat412404832/002/clean-chat + esc interrupt project: /tmp/TestCleanChat943326564/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/03-dismissed.cast b/docs/design/chat-cleanup/evidence/03-dismissed.cast index b6079d6ba1..f72b0cb906 100644 --- a/docs/design/chat-cleanup/evidence/03-dismissed.cast +++ b/docs/design/chat-cleanup/evidence/03-dismissed.cast @@ -1,3 +1,3 @@ {"height":42,"title":"03-dismissed","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 544\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 72% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;146m⠸\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.0098\u001b[39m · \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ bash print sleep then terminal check passed × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m checking · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 542\u001b[39m\r\n\r\n \u001b[38;5;252mdone\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 74% cached\u001b[38;5;243m 15k/1M · 1%\u001b[39m \u001b[38;5;146m⠹\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat943326564/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/03-dismissed.gif b/docs/design/chat-cleanup/evidence/03-dismissed.gif index f9467d8ee5e5e56623773a2f918c880ab41e1d9c..6c0b738dc2187c170d4f8bf42c4959c1a7826a86 100644 GIT binary patch delta 36719 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⁢pAFC3t; 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 HfW!X){`0n3 delta 35939 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 ANdN!< diff --git a/docs/design/chat-cleanup/evidence/03-dismissed.txt b/docs/design/chat-cleanup/evidence/03-dismissed.txt index d4746167c4..3e99efe388 100644 --- a/docs/design/chat-cleanup/evidence/03-dismissed.txt +++ b/docs/design/chat-cleanup/evidence/03-dismissed.txt @@ -1,5 +1,5 @@ - >● codeaf home teams chats sessions spend settings $0.01 · sun 11:54am - ◐ terminal check passed after clean output × + ▦ All + >● codeaf home teams chats sessions spend settings $0.0098 · sun 1:29pm + ◐ bash print sleep then terminal check passed × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -8,14 +8,14 @@ › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e + ▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e The terminal check passed. - ▸ Working thinking · together · ctrl+e ↑ 15k ↓ 544 - - + ▸ Working checking · ctrl+e ↑ 15k ↓ 542 + done + The terminal check passed. ❮ @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────────── $0.01 · ⟲ saved $0.0029 · 72% cached 15k/1M · 1% ⠸ working ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────────── $0.01 · ⟲ saved $0.0029 · 74% cached 15k/1M · 1% ⠹ working ─ › - esc interrupt project: /tmp/TestCleanChat412404832/002/clean-chat + esc interrupt project: /tmp/TestCleanChat943326564/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/04-restored.cast b/docs/design/chat-cleanup/evidence/04-restored.cast index b95118bd5d..e678629228 100644 --- a/docs/design/chat-cleanup/evidence/04-restored.cast +++ b/docs/design/chat-cleanup/evidence/04-restored.cast @@ -1,3 +1,3 @@ {"height":42,"title":"04-restored","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mwrite hello file\u001b[38;5;243m · done · 8s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-b2ad8a · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 651\u001b[39m\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 72% cached\u001b[38;5;243m 15k/1M · 1%\u001b[39m \u001b[38;5;146m⠴\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.0098\u001b[39m · \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ bash print sleep then terminal check passed × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n\r\n \u001b[38;5;110m✓\u001b[39m \u001b[38;5;243m◆\u001b[39m \u001b[38;5;252mhello file creation\u001b[38;5;243m · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-82dbda · ctrl+o\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m checking · ctrl+e\u001b[39m \u001b[38;5;238m+584\u001b[39m \u001b[38;5;238m↑\u001b[38;5;252m 15.6k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 575\u001b[39m\r\n\r\n \u001b[38;5;252mdone\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0034 · 77% cached\u001b[38;5;243m \u001b[38;5;252m15.6k/1M · 1%\u001b[39m \u001b[38;5;146m⠼\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat943326564/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/04-restored.gif b/docs/design/chat-cleanup/evidence/04-restored.gif index 98ba46f8d371aa3c22bfe945869c97f85b45e769..4b75f4fe4befba4f4e669c2143c1fae038b3f1df 100644 GIT binary patch delta 41231 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 diff --git a/docs/design/chat-cleanup/evidence/04-restored.txt b/docs/design/chat-cleanup/evidence/04-restored.txt index f22233b227..09d596ed95 100644 --- a/docs/design/chat-cleanup/evidence/04-restored.txt +++ b/docs/design/chat-cleanup/evidence/04-restored.txt @@ -1,5 +1,5 @@ - >● codeaf home teams chats sessions spend settings $0.01 · sun 11:54am - ◐ terminal check passed after clean output × + ▦ All + >● codeaf home teams chats sessions spend settings $0.0098 · sun 1:29pm + ◐ bash print sleep then terminal check passed × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -8,17 +8,18 @@ › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e + ▸ worked 5.8s · thought 0.2s · 1 tool call · ctrl+e The terminal check passed. - ✓ ◆ write hello file · done · 8s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-b2ad8a · ctrl+o + ✓ ◆ hello file creation · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-82dbda · ctrl+o - ▸ Working thinking · together · ctrl+e ↑ 15k ↓ 651 + ▸ Working checking · ctrl+e +584 ↑ 15.6k ↓ 575 + done + The terminal check passed. ❮ - ❮ @@ -34,9 +35,8 @@ - -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────────── $0.01 · ⟲ saved $0.0029 · 72% cached 15k/1M · 1% ⠴ working ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────── $0.01 · ⟲ saved $0.0034 · 77% cached 15.6k/1M · 1% ⠼ working ─ › - esc interrupt project: /tmp/TestCleanChat412404832/002/clean-chat + esc interrupt project: /tmp/TestCleanChat943326564/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/05-manager-replay.cast b/docs/design/chat-cleanup/evidence/05-manager-replay.cast index ba2748f87b..ba6616f05d 100644 --- a/docs/design/chat-cleanup/evidence/05-manager-replay.cast +++ b/docs/design/chat-cleanup/evidence/05-manager-replay.cast @@ -1,3 +1,3 @@ {"height":42,"title":"05-manager-replay","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m Check the review status with the team. × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n \u001b[38;5;243m· resumed · Check the review status with the team\u001b[39m\r\n \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.7k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay454034178/002/manager-replay\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m Check the review status with the team. × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n \u001b[38;5;243m· resumed · Check the review status with the team\u001b[39m\r\n \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.7k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay471394247/002/manager-replay\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/05-manager-replay.gif b/docs/design/chat-cleanup/evidence/05-manager-replay.gif index 0e632b599ba25d81f0e300f5220ba01c685553c9..58c33c2bba705af3a88674c4996d3ad4d8252ae4 100644 GIT binary patch delta 28049 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 delta 28206 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𝔜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● codeaf home teams chats sessions spend settings sun 11:54am + >● codeaf home teams chats sessions spend settings sun 1:29pm Check the review status with the team. × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -39,4 +39,4 @@ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanManagerReplay454034178/002/manager-replay + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanManagerReplay471394247/002/manager-replay diff --git a/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast b/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast index ba6ffb81cb..9ab3ed3472 100644 --- a/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast +++ b/docs/design/chat-cleanup/evidence/06-manager-live-followup.cast @@ -1,3 +1,3 @@ {"height":42,"title":"06-manager-live-followup","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Check the review status with the team. × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n \u001b[38;5;243m· resumed · Check the review status with the team\u001b[39m\r\n \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mAnswer with only the words Still / ready / for / review. joined by spaces. No tools or delegation.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m checking · ctrl+e\u001b[39m \u001b[38;5;238m+25\u001b[39m \u001b[38;5;238m↑\u001b[38;5;252m 5,757\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 37\u001b[39m\r\n\r\n \u001b[38;5;252mStill ready for review\u001b[39m \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 \u001b[38;5;252m5.8k/1M · 1%\u001b[39m \u001b[38;5;146m⠼\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay454034178/002/manager-replay\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Check the review status with the team. × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mCheck the review status with the team.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked · 1 tool call · ctrl+e\r\n\r\n\u001b[39m \u001b[38;5;252mReview ready\u001b[39m\r\n\r\n \u001b[1m\u001b[38;5;252mAll checks passed.\u001b[0m\u001b[38;5;252m The change is ready for your review.\u001b[39m\r\n\r\n \u001b[38;5;243m· resumed · Check the review status with the team\u001b[39m\r\n \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mAnswer with only the words Still / ready / for / review. joined by spaces. No tools or delegation.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m checking · ctrl+e\u001b[39m \u001b[38;5;238m+9.4k\u001b[39m \u001b[38;5;238m↑\u001b[38;5;252m 12.3k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 101\u001b[39m\r\n\r\n \u001b[38;5;252mStill ready for review\u001b[39m \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────────────────────────────────── \u001b[39m \u001b[38;5;252m$0.0034\u001b[38;5;243m \u001b[38;5;252m12.3k/1M · 1%\u001b[39m \u001b[38;5;146m⠇\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m · \u001b[38;5;146m1s\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanManagerReplay471394247/002/manager-replay\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/06-manager-live-followup.gif b/docs/design/chat-cleanup/evidence/06-manager-live-followup.gif index 9c24e5274ea4703b89c8cc1557646c1a2d38cf0f..fe58b76ad30460df00f55e22248acb77a875f61f 100644 GIT binary patch delta 35534 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

a$JD!8r;{95UrM<;QVo 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 A3IG5A delta 35000 zcmX8Z`8$;V_XqI%p1H@&SjSG5#=c7`gf#ZC57|PDC41H^N#>q07+XeEDrHF}>sYeW zSd*v`SyEA{lw#VY#pnIKzW>0vUf22I^*q<(oKH1~rAh?TjiRMvlruk1FtIT=&)^cZk?X~Au>56CMH(@Adyltv1hM|&K_eeUE?#=_k7~=HM9)&9XNc*&R0X* zFfs9De0+kRUx0;65bZW6HZDFQB1%o;fVEqAe0;n!>8RcTE214~a&j^@HqOMx+tJBA zEG)wNsNc}=h(Evvk(d$HxuAa$>6EQA9r|ccvwDk@-yLdD=&+G0p zr`ON;_>%YTJ7j8RH##~tK7OAZ7!q>cDar!j8?~p@K@bUcy z=7tuoc1L5~+`JMJ5^HbQN9NpQv0D8Siww-1k5el`L&Gmzyd0K!-P+2^BO=q%+S%4K zDl02DARyS5=xpyBUsY9e^=hTHdqi?suchm8Gy7vXIZZV+H&d_NJ>=%=cq}QVuqm#o zC4-XX;o%V$5l68K2=D0Va&~qO3JOWPI~dPwO*q%??%~tZ+h=WaG_mbY@Wt}e6(hyP z=jdmPfMnPd=@x6QZXb&F+1)oXj8_2jnG2a{zUU}Wi z%j>9b;sIm(lcgOuZ`P6nBaZop{`cDc{(-#wvu;QHh+ZdRDMhTqCZ;jGWV*J9&Rj2%6jnws4`qCL)JMn|7;b~$eA5D*oenAF*woRSfgekmj4diuy1 zjdqhblj61+w7~c^!8SmdDY}$0W^e=j7Yy2#_e8nl85&piOL`U+y-o80h}{JAW91BUM&r z{1d$2vJ5MTxwCcSWs|6ff3IDCWERc*=66zJT8{ux{={1*FTEK7kjq(;(RtK!>?3G9sX7`4DH`Q zPL#TD?|V#_?A9m9D@5FyDX_@}uBGCN!-Jx9>mXJ0sJClxuTZiAkqE>OHD>uq!EUCk zvNC;;M{8>q65S-&kq*17);-eVd-IZ)UzkaS%%_zp2&D308J>gM?~XHimvAy9OVTlOwFh{9H}Y?4n_nw`3Jaf=CX0f0w*fB_^NvhiZok zC6Qd^=RBgGV~_`aN4F!V0!Pu}mB!I6_f&fu2!>MANPd2Hr0bq`cgsTg8GguL_k+77 z#X$*KD6(lf60Jm1Q<3mf+&7%|Rp{{cIXl;$^$rJS2glw7H}bKE4;T~S8@ZMwEH=B| zJSZ5V)zl+0(lRF67@dHU=MHW(0i;PCK<%ASI>7D# zZ_+~zzHdCccdx!ibJpsv>@D|8X?%>O*hRCcNGX1+QC*}Cp0Eh0a{&oECe9YgFGoTG zNrEAUFVc8-=qPMNIl~Z*O%kT9Ai4)>QU*o}Ab`SDA~A9!OoVXu%J;9${{I#nv9hX0&zCk zdi*5&Y?tG<1F(%W%&Pg#3Mz7-U3Dzm-0q{Nf)vbGiwdS3E zAAw!%%*sRO-tFOjq`(sDAL)d?c#A|Fau=tz(n_$5jWQtNfBIJZ0|=HVeG>jq`%A)( z;|eH5R|KNfx%9jh$=9H8uz~sUqoo8TF%(u&ml30;D zS%IK6*_;X`bhI}*;dzPXvUza`9PXvUDJ`NpRuKupY-dDqrW7wcLG3aJ_Ud6Iph_62 z9)n?u!a^ZHmSh(dX-vw6;FkysS3s`XVb)BHmJOB*0dLeV5XSX@!vtMnB-_)Bhdd=K zMKN~=$ZS9#&s5=G5dcy%rNdR6g#ZG|woNd(CMC-~A`sBFw}w7`+u7$N%;%f3fJ0sY zfL&JXAad!M*e8z*xfJDtbGuiVB{_LRFe=brp_UEzSbh4_SP5if+m>u8erf=INrk_sg8 zJc^O_D1Dds8N2WAJ&JcdzI`)N&{dp4+Fhs7%v)0zG)lkfMm^A|o74ah!|R|SQXvha z;H1Jh3c_>lYxqooJ5LwYrx1I07fMM1X&;Uxxng5Xx#B_>4i%; zYkmT1_?1PS`@C_v0D%u6UG1H;Q+U#?XjvD91gtoDDk0&?Vj_%&@bAU%1y+-0zQ5v( zVS%8RAaH}FN|DC&(5)Qzqq)krtfhRGf4}YQA2d34=hMTU;azDAJGz@=b;@ev3|!A7-u(3L@Z0TQRe%aWZ+)S_#7&(s1PUoh2U4P zEI;$T33a>P`)}FkS9@t-tM=9TOutnbr5`&}aWUiCH%N2{v(W-Dv{jFg?K*@b+OGRC zARHlFdI2w>2*6@Q(&7`r8bD`(4MQAwJP-sT#y`b)DN-Hu26yoRSL4jhd*}r}@yqGO zl&tm#epE6RST?ty%E;1egL z@1hW&BUOGs(DyMoa^Ey=-*BCX$Btvk;Cs1u7kZ!J)$j-`gwGZ&6F9-_4_T7uyaT|r zHUSO94Um;D;kdG_fJa+2!;deFwck9Ie{MH!W>+RgqxxL8dX|)AH()eGk@TO9 zd}ra+^9H*0fo_cxW>=!6iQno+^Vh$KnD#Fk$FOqFkOA#M-WfsDC9RVl~K8i6K++#r#uE=Y~lUavhF5V4&@WCeR;FL zZ$;qC_5@$e4<)s6k>moX|02b7Lc90x>IoO&XFF#1yZ-%tDNOlu?8v3h-q$c2=P6r* zO9xi5zf!(F;(t?k+;59T>E782@JDJ!vq`C*z9q>ozGg$l=Lv@~Jaa-Ygu#PW743kx z@5z4iW5C4=5k1yPs(Uf!aFT)wZWmsqI#^|L)e#}A`N+y?t_EDFaiTn%^UcVl!=x&A{>HGKpn_T2+5SXV=2K& z-LsGqu^-3%h7#ZFrjq0)rmDDVz`F|&c*0Q@!<*mudCEjD5DFCh#54s6dYFB}*5g`8 zm~KMMG{XSFTh7NRwb>l&?9jE?kWiA&f>nwdE-IBSR-AK!vCj(Sd0R0vTwO=BGit2W za~Un1&Y;s4G7WdUqm41Si?#__siA)?k*bvlPxwH-QO31YZ!}IF5lGoW18Q*@h!%tl zQ#NKMgEB|nRKrzx;N+M*P0Bz~39y%yzn6<>5J#9%^l;m*5rBFUk|9E6CZSvK0$=dL zt+<<+#&wz48a!^6X2K+xyvQ->K|1$m79z>e<5s5yQBa16(+E$|!T?K_JPz$VuZL0= zv(5BaJjp9MHn5RMAgHH@<_;^q4=&nDm6hNiZ|fl>;)rvqMPqN#UIe5(8Qru(5>=oe z`nd$*cJn9U=FSVJ^zWFr69j$$LCC#FW?_r>$${-;!50JpXLVsgY_W)4F?g!TlUan= z5iSuvSp2xUWM9PI0Fu>97;8PE@@ebrp0=}Q_e;cDO2ux=Js-9<@hm}hpV^>6VWl>_ zM}?g=blgvs(1wft86nQAUD#2_nMY8ptloq7J##lioFs!3_B=jc;e9c0#NjgwKyy$U zI5!ahaf}2R5fE;AxW=-?jBK2L9DrtF5F`ibM)Fh{pX6I&pv+6VVld zJDY7MQ;9_5c(l0`&?sqN6^J64A7&+W5=1p56SW&Lj!?uce;(=}ZAM!f|JW3jsgKjB47k83SvG6)>3Nlu_~2wH_L3mCj)P-pN6rt zhVjb{{ZH#ApEjJYYT)c@d~Dn}>(e-w*0^xF@u^S!!>5feCZv{jHN7%!TJ>pqo7S}U zp?
  • 7%jK`|T#~uI4Ys&EK}0KBYBp)k#iA^2*^*?+8#9mr^H30FK5rXcK^wEA=h_ zI*tpq8naL)%@zPkfsJ|9!xC7kms)4NHf|A@sh9c9g6diP4_a8fE%$b{ey^)1eKtOC z|6h0`A+SyVO0&Vv={7#Fv5U(K;drtMz&kbs!mVRzEbLOfIst%SgrZE#mkB64PSCl& z(XN-$PONWtG-)Df-D&Z;bM$np(&;;%GWAxz4gS5Y+P}qSj>G|Ml(iWD0WDn2IvAJV zmVCMs2{z&hKpYNmAtTdG+5>$XY}V_;96B=dJC@SAdMCQxf9Rr_-09)%KJL)KtnX^$ z6~95k?j}2-rg`EWaFzL;HK*IUB6)MzJd|uaP*+*+jO)m%#NNbrO>q&fc-|upXdN6X znu)OZT^G!0j^?0Bfch*Mpq>CY$JJl1Y=2na?ty1Pq~6Z;_MQj51NHUyeNo@z1QSRo z*`3q<{l9yIIc+STfovRbiQCtOuYYx=AH*S|aeyNMIEDk>nDBJ=U=esU1;U}6EALMI z?&I*)PvJ3r4-kvoI;10eT8kGV@ic1!5DwcsarYk|d;4_#7l*q)^6x^Gch}eZKK++s zfBL2!dOPxayV8apUKv6<^lSgA+x*?z@nHz%INWP8(2~Z+_OajeqO$S4C1gxCsc)zU zZ2|N(p01bt3=Bddy%aK1hzl4n5ng|QKo-uHgCsLCCi`*Mqj14~J)x6LojoXfEsP@* zo4^|Ee2RcbLyRa4ZRKt>4r=Z}LtNf!Zd*2M~jox8)wWYCXtT7rM zBca`uTyQUK@?Hl2xI;nx{U}TVcO0tZ0pa@;M}SI^1=LyNIkG_HM?sL(yC+UCQMSIO z;Xb$`2(hp?ai|0wP)q;}9P7ojG2fYxD-JccGS1Y#-|T}v^9*tLG~x<(qPTBTf`3p% z77#PNKkPSouW#Z`-h-aW2Lt?*&3_OrrVnQMCyFO0OVjT`%zK@6lMv@&i7D&6?4yg% zDEDrpPjuKn`q6jqPxJ$DWwIHVg78ysw9rQ6iNg+%og=UZ5A{Z40vzgHWJh-gBK21Q zH=K|*2~vQOS+{Y2kYFh3Ho|qRTBaxL&*Q1>M-R0y%{zH~36=Na8y+%b`YmumnBR3d zxDE}yevrjSt)H?z))hwpwDr2ZwJ5EopJuQ!v%)5`Q_TANGCU4_vkExC{coM;-#Qrr zP|vM9d}XRx^WMpiPb{2fBMCqWi#I_Q@{JSh+8*aKow$T!)&7}n@j?4Cr;ZVT(?I>% z{3%ht!REaA(|z-u+jH@U=96^lBcI>N5a@9IJJV&~4KWvwJfHLGU%V(VOR0Q5N&Q=w z*^hqXD`fs(qhW+APH0FILTd545`gNDBNE`K0$65%Lqq@wO9H}*^cY+G*m1Z+>(k>0 z0y7WgX6_iXqWJ4&I8c|*qGIo0@S*#Mm%z21KW&$Az=94mw}N04uypYc(siB&^L0FJ zTzLNXIfQ#r?g)J6)=`dD_JO$NJ;00RNM48of+P$CBTE}+e#@B3$W#yb%L8cZj7|Q17VTfx(K9~tx2~9lnlD^=EYq^|r%u3$ zea81yYZ~hzAEMCYY4Mc>iN1G_c9uH7JH4xo7O==)dsx4wj(?!b8YmE~Uub*>$#yjg zpsP6$jlzLG%Y?H*wh>?P8|P}2hT>`Y7E zb8|hcQ#vaU82lVJ-7&G4dhIoIxBmX=_pI$U(cSey@X~p$7nrl3+b4K}aHwE1@;eSS zmQnA>L`8DPOFnkF;84vwOq8GlqU*%M^}jtTrgI9;ceOXabZLH3j{Ty3cim`t9o(U; z-r@bs68sXh&UF@Q)pz*{lD|&9SbTJL)n2#ZXxvh<9!qY8+iEXN&jvI&2)YeLW)O^E z{+G~*5gi_dxDC|w{<*5hU(UXba^6gTbh{&RHeMcxCoOdLbe{PQ**x#Gb9tJCf9K0$ z=kC;zn6sGQQ1kjk_pYyR3%Z132Px*yw+8-fc{>3TkG9TM%wKl|6u7(z zLWT!gLBw&#D`V?@35c2KA@9x3PPs`t8Pr=HsD1aV%eyBn*!tnJypLs?ex2& z=(o*I-Tmcu*4g^Sokzb|^1rK!wmY8wW%2$?9AFOz{JFRJku&i9T@)rK?h~cs10oPV z(SG%dRR7YhPr^bgJn?uGP?b4K#i`W*gfdc~zGHxFq;#B3)deA5QMdLo*Vi^@{mY=AC(~`*hK|JW;-xl!GHH5lQ8%p0yE-B(u2UQ;RGGW(jK}t(R%|FhZ4LH8X=Or?j51Ti7zT6gcttKNOkBnW{i3W_y ze4Wnp3A!HABJ5e?Wy|cyI*s_?D&Uv34f}Lar1* ze4b5oso1YFGpUkA7k5*65ZwCcV1#($5wj=H4m`Hg>Mu3>&7CPaT)AdsTl$SoHvnXJ zvtKeLYBA<#kDaU~DGB@~)r#?pM_#9aJnC6~iPNJk$5NKF4E;~NyV2=?dUMpPYSSP$ zBvZ#R*MLl=pjErbnL;*3fmxEFU4c2fvyFUYB_pbW^0lrh1QZ&+?FueB%yTfL*mg`K zsKmwQ;PLZbq20$X23#l$xfFJ@JM>EI*uk)?CfVI#6%-!h@Twg7w6N<%HpUS*E{68J zFUrj}j=a5d>t@e~YgfmNqZ&Kk_Cz&zcKpBeeq`O%voSewXFjy|MCU1elbG&zH+y5~ z%VQ?7{XgIK#@_nGV;VPzR$Gc47P2*sAC(O2i!UjXF+-xwQcE~8c%+vdQ1VrV0G-_Z zQ@O-Yc7-zc_(JE%aowbD2mc?BFW!Yh^|B5+21(46-LneSKi};bYA|!@5j}MOje|~+ zo;x#_=SM;f?sPlFB+pz~hQf?S4>~7Ym??i}6=wXT+c~*o=ISOr%=FDcm$bQ=Yd=TA z%)WQKWc-+^*nz?csGbLWtj0>DwffHiHjHs6V^xV121=77qVsJyq5L|Cc$oGYypQ`K<_cND&ti7BlX&(O2b5bSZi;QmdSpA6f0MJfqA z14Zyo!X&%uS#k02wbFrg4h|w7w|nSy`lFG{f8tOK1RIHz5(ZLxL@F+?)&);J^*CJZ zDMh)ORIB8w<#Tjsu3;`Iq93+VvkIbOl<9~@7_d;zLo2aieyTM_}Q{QJi+VSTh#I=kxF zXj52l6pxbfYW-Z{#>slV=dV>$x~I-;#6A-DqtiRvD&?XBg?bl1UeoIMrP3G|amDBC z!u;Kvax9Ck_2)T?%4lRIs5-Yo#i%20Cy&PU8-s=ZbgL%eLICL#pNXL;BNT9z8#2U# zY&roD%>{;Kx8ic%`FIMaaA4b1J({rhAg`%BX!T1oNaV`ah=%{pXIszpJel?mbd8Zd z(%tkZT^kfptlb3kVVo#kUG^Ia$h%R#x<0hhDz3Lzeru&ToS)4+`4C) ztuD_)rV7J@yuSz(;?*w z_HI&y6!ACAAveD4ASA44OJMNwFwtSY?Ok3NE#kwcAA>1M%8L(T3~W95bd81JXUjI2 zHihjamg;qcwqjAl1mU$50v7-SmE$MKUq7J>W+^oO;&BSP7H_;Odzkzs#`T? z+l-$Aaa^ioy3)^wKL>vQjg8G*Tru}xpt=shd@0IJO17FkU}emSOj8BTu!8{3Y&|QW z>ZK45<&&Jz2(0q$={v3_pc8IRKFjYrlXGEQM5KxD9W# z*tF+D6>t_Qb!6c{y6|EVZ^* z!cw+g>GoS(-dudSCvd9%OxiP1{l5$zc?HL%-9M!T8E|AA5jQA zPxatYL;r7vguB~|%f*{Hls|7CnHE`MIzQ)Stzh%;Oyk%4I^@Rz(=DKp4~uYQ zYxqMWSbG<_A4xRYughX+OTkhW#XKMT)b2hCbJfFgD?V*BPpcs#Q z(`LC|J;L8T(t;eiSZ^h7WW6**H|Rok&6vgdj(W}_^l?Uqy))%mU4^X7HY5;HKSak^ z=XYg#ifWlVGJ@I}GDJ%tJX1ckDZmjE_>JK^IeP4)HNY{=Cy&*AF)rG&i7Ov=<8SvA zvwgGA*1@qcxImp^p5AZqjBTlm^3uz+8o5^vn)Nwks9r+t;QF=w0{YGoR5z56&mQRD=!6{UBU=gj=Z<0M_V!` z`W#!Y11ZDM&i?SMY6y5f;<#w+NW|+tE!CCknkovPnlErFv2x17JGag_PP9+HlAVlm zpPGhpKcx3;Xg9uSfS36n@=X#f8^$oGadhhXgOWmJISL0<;UErhkk%Z?gM&KG;Ys44 zvpAUZ9PAAa?;Q@`D2M+EN8k-d@H;hbB1c2edWejrjQeROSwZIjN z+LEUTR${fj%WHdJbi@H&k75l0>>kt+r2|K@2yQzn$K5WK!3qnoE)G`zjzP!4=h-mI z`@i+(k+QBC)8{j0PmV}b%`k!4Lx+y+b2?J${aCdySC0ik%uFNkT=NsT;(D`Xtl7fx zS@A0O;)PkuC!9Nf7@}nA?Ik#q4X7K{QlK@2$O1|O-v{AfMJdEy3>8UaSfPMD3$Qqm z0U1FesemS{OBw?TrhIXHs?J*4|*KE;o*B@jvnVlCo&5F&p?WbCrO8tHwZHs zp!Rnf8jk?jG#r7k8;3-z({@BtVMzk!=qH+J$*YI#t~@`)IIx)Kgt>OryW+&W!*k3z6`C}Yio;N8LkN)c z-*$Cg!P~2v^4#m9o==U(Q(E2Pm8r$hMo(~jq41OU8I`9Q9+-0nj+TmhBhDj0m?p@j z6)^#@mMYB!1#zJ48bIez#f;RCdw3l^kEE9YAQLQdas!M&bs|jXfH-v{Lzwn_1{5@^ z6=y7--JwNhGMWT09#a2t z^_W1iKX9HV5Kg6`u!>BokvD*5(-bP*c5l6CK66a810zc&XK}&Lr=Cmbk%7wPA|im3 zqVe%y|NdpH+zH${bBqF{1}zr`(b>-nm^1}XhV=q)@IQWKKjXaPc&RsF#*V)|rBh0@jEK1aeQc;Fbb)hEy4xiimk#G~}o$2@aSIO^l0(Dij$=j8M2I z+Y4O8m1FdyhhUct3A}td`fLF5l=wVq~nF*fQZr48Ud>85m*KZQvs1RIOyT)K?!&$#!ChteF^p&k@vkjvEFYJ?sVtleFM}h z^6{v~5@k(g%8MVLmU%W-BsN~EZoD$scx|(>>bdbIbmMLE#=Go|wF?{XZ*F|(*jOLi z_&B%m>FvhGkBv>9O|Hb|XVuLw2Af}PHotjpeh-a({$lJ$cI*WVy<&lGJnmJh4tT_Y z5*H*LFaVwr`$~|GCm~eIvMfkhQ)an{GRS6SGxc*UKoN?2DF~?&F@_k}T<V>vf&a>(ft?>%Nft)LFkZ|S3ob@+cjjrm z1TkiuSy-as#n(VB!l5ine<71@L{+QJjO~K_wqk*CI-aPr8v}=7zAiPzVVMBF7Ab~V z)`sw2Rj)AP9mL|5uOsn3H<87#on+6Hc^JOMoB!3_t^=JJ|DRSX+v2OhOoQsfUQ@u#{6- z%u^MlUye9LfI3wK;3@3fqOZgO-e@r*;GT+T6FfC9p9sL2PUM%W>Y3MnZcqK#l#a`x z2yG^ny-RC8yxmd=rI50uU?iD@a^GZJm}j)v{yux0u1aJSG;igjfdN|#KaQ3{LK@em z74L8%9F2Y}*#@8JS(&uTiy)Ul>6BAh3y6DON5^e3M!u{^y?B zd%LYfpi2n5lT4mZ1y)iN%Cd$jw?6IEqhSvWP1WhE4*{j#nSEz<8}Lr0r}CJp#i@{f zEerkAm&!OOh_KuPsuE6C%wyh3{-f0)#1;_lwTK=j*Qpul-UWSj!5B*-)b5>Gm^*_f zfMizCkp;-`V%*IlvHWnvP0k-20X7VMocQYt*~G*#*B!4F+ZMTfSx zl$hqc2bGJhcb!r`XQ$b%T;gQ>OS#n5{-DZv51&&i7YrjSmv=54O}iAL3_^NYgi8#K zw}$+ePK91JD+DR7q$G%p4G0u$6~%>pu*)HM=(Utq92c+5{3+G zjkvoFp_Lxg^)?0I!C@k9+F8r>jzNolHcpolKV%VmEhrDywZ>wq99><45d6=tY!2|< z(B!B*MBu5ab*3%%r5Yx`-4r>A*_%7YH$}_GInKI`>{y8T7Q~Nh29)o$MC~ru10|DIr{-!XfE2#mS6Ca2qb!GmNbJsi7#}mAn-Zuw|rdcnjng`lKaN7-gDAk z!Q$gf2Vg%^Z*iX1A$Gm-l@M|WLb?RNko>IFWgoZFM zQN8*6=W}rNOz(1}p}dtUU&M+9_XL`oY#F}O-=TB7@+{5V+SDBEeM0F<#5zIjO^ff3 zO*S1>DsgP(EC@FOBKjkoq#b2rYeiftnbtc7pqM_D@Tw%%Y#VV%n|e#JH4mVaDu_lB zK;FlaC5GbF{B=eZk`OHqn0%C87Y-A6yxB-q9I$IY9w9Du_t%rn3;@3*8aD`iO{!Nj z3nq$xJ1^)91@a?6nw@iCem+N;=YZoqJg+O}!zfd5U&Bj_bR4Yd9VBsl!LlNRXeqhGwlxSs=LD*otP(t~AJl`oIVDvb@IQ`g1 zK(F_ytNvLwEmubCl$~)#yn@pXDGLJ)@fzj2Vnd=aTA#*w6)3=pv?HrZXd%2mFs2r# zUIyzR$b8wUF8*`0++7H+x{&>mGaw*|ntX=@IG{7Yd7%M`OhpLBT^3rh0F>E@=J4^g67}?l!8=^MM6l_3*!veotV$wv*fd%9vWj5y8DLy~FblM!iJqt)h z^69d7Q-Dx#`jVf;e>bKCul=4`h4!V@h}+aERkcDjVx_0@)$ryH7Pg?eBvfLw)<(&= zgitCB_%bdMU~=x{{Z)kl978fSd8U{tc0;s;ZST8_fyaqoRXmlw0X?SMjn@Dw>eO9j z+$SQbQ`K2e?#^66o_qEfRR8jis@Ithv^EM4zMADbuC8{<9ZYr?Uxs%$)CMTA#DHB_e*23CU3T@)woyM#5n6rup+TwMSaF|c7) zbeL`9vXqg>VKSzs{nmLxVSEJ#JVg+o_u&Z2t!ML% zD}tR}ui68W3i*5&btQqfM=F2(=_!%aRnF$SA0^rv*WFaEsalV_N!X8b_&RYmS?$Eo z*27Za?YzeW00&A}Bes2On!jT5>9)v$;>*UU`VI?=omp)Xu-mk725#k0Oug~KH?a&5A0%=;wdlqEc#7R(5YX3E3od-l$NB}v z8prGfNY-4jr5UW`mbseuz5mL;6h>yC9HX^x{N?PZ z2>F#LBzHP{?Kl4K+$UwkQOs)u0P;#%U7ZJALXm`S5q~VNJrtaj@s5Md~-No{BZ6tY}?f;0N z4j=n)WuR@IzTtD;cnT{4OLx6~$7i=~_}QOUWHTgJ#{gyFD&Dl=-p|;}R)APn*wLLG zuS>d%(r=FIJ5wniqc899Xq(5U2pKJ$_;^@EYTz&4u4)Lijn@KYF3|-a&=Zr0 zRFKRN4Qo*t-K(H$r0}o75~#t6&K3nk6#bjB`u;|CVuhqrNqgcwjGCki6@oad@IN4^ zqLM99X(3K{k#Veo;yUwdOIi{;h?jV!(D6hHMH#FQpTwJ*yPtrXeh3v!M*stA1-YpYk_8(x@6(-k&y8qfL9NHadow%{vmA}SVO2dr zbVs#SU$vUP)#Tp=3sXz=vq7YIMeT`d1qD}Z1I`k@Z1)6j^5GtI=2#VK2M~oXS+!84 zNjf7Y3$Gou3;1Tie;QR#@#IQsq4rCM!>^Wy0igEf5Q<1p^)A4bnjdm1S6M5Z)PWEU zcu|OU>14j8MU55jh^?8qm2(IosBqqou-wg-IH_#81xvp=>hz~d<*9(RH#FNmEe}!o zW@$ttMIhSBHXYiI*kzeIh@FKgf|sY9{6{qUq1_+sdKd(}p2bGtAUpbs)&AqoJSw)S z(5nI~yK*bgK+@qE9YJ%qPCdKsaow>2dW0QuYE`kUoKmet$dXHa2OxC9n8fWM)MlEg(`{<$&gxm7wORh^ z*`c-BG3q(VwK*B;jO<#5U~MqXCikp*-mY;F1Fs8bNsfS+1p?oA4Z;*At+094M)?0j z%GvOver$?v4g1@n(X+31tcu-GOy1j8vhOXnYR`UAw=}v<(u>IRe1D=LJfC+IssV&2 zVg8R6yY}BMvgxwt0PK%G)az{mC2Dum0>_^ z5XUgbs51%5Yy~D8Nix64JSGwipp6Kvq(NQn5d;RV5`%#?0CSSSAE#kcRae)lX*o&2 z#IgChzvbKPfHE5g6L|lFe0|M;6YPlokt$xGhjKG& zo2YfiN6V7Dqt!A2)#hp5zWkx%W@N`4KUN!I2?KW#?7V6%3=!&!xsPQLrlQ$iWI!xk z(XpIeKNi_s9@SG_f4c|dV^9T*%pF{#M>TPcPc@r1Tt_B8ILby3=|&IpGywlKF14Wt z0rYxCUAP=II`(n0XWc@q!I8pl7~Rkw7}EmC4Pyz>uRlgM|I-vcS#irihXhATmcz9% zY}*5b28lsz4cj3896%pLh=F``wgo*}sj#7G8|EjNwRTN6e~o%p3cSr(`Oi&IZXJanOxbx288u0*eWaRev_-vvm|-HA$}N0$g37FXrRJ zrmrHg-zF#@|IcJ5Mz|KupD#DRO=x;Qpz~pDWLskM%~G{4AOCS?XeZNoWg!zlDD$&IywsEZQpJ&~kjhszz}yMR3Mn z=5D;~bwM-|Mk4`?C`;7^>KVB00M{*=0)iO2C~iQWR28iau%Iw#VKl22GK+PaJ zCr+axK@$m!;Xe{;;~Z;PKx(U1UtC*WL)Eh{GVi`9ervK9`^+Q87Ge@YAJeZJM=k!~ z)xX{fNG+-H5!8$HfsjN^N&tXuFB2dQ>V>r!o!$q;?ZCq?*}D5-v5yN5_&r*^tyWf% zU^|<~Jv#qke4~Gx=JMCqV{{WO!1TesLs|eHNjM;rs1O`k;5o6rS^A^TTKg*-*?9z zI3h~r9~ngaNAmn&=@{g+wBOm#sz!H+XBF{nQ$`oj?*xd_75MuhR(b{1G+WLD2r{u%eD2Q>7fg28Ts@ zeEktsWH1wNlQY?u`p*ob%N=ULEZ%lJTqk_P--w^^FgX`Zi zxrr!qBJfAw2TQeTZDz53hQt$Wg}P*ybvQH1ihh`jeV}pziK^PAS-qi=A(NMLIF*5f z1uN5=XNbc@6OUnRD`UeBdirk-;1`d0XE>&iX@ z6s3##d&{BgmxcN%M$|8hxKq^Ksj6B=RfbTes4fM4lKrKXAcC=aIyQ`uB}mo~E)xIy z*v*Ak;QhNBD|1*+G>yj$wr@Yw5o8f^cSfMC#*3=vWpzeYlkIEptVZ-6YBcKBhUf<{L}I#UN_fNA8YX zr`T@SL`604Y=h)dL^LcYOOPr{%g^31Vdbyh2;07iBy>6$-*_}~XXix6&yBWwP3?OC z&$i!P4?gD2Lu~YKwvutJRxjW0v|gq3hRxgE*L!<5PlhU`Rt5a&kT$-IFi*a3}iG4yLw_EbeWyjgKDLZsYBLHIxi?XU&Kl3KSG&<9w(ER0H286x` z5ULNBs*D<1HRYTm+>`n3P!U;Y@Ye#ri8Ko38#zf>)|zSVBm7}&J}3jW;#Xl)G$Y+o z?C*3~JCF7dl1V^M!o1fHJ>GNXe#-rOn-=4T`>j&{dXWeVw{++B(Vw-oJ)WVAtf>7R zjOw3#H1cv!|7`P_rMrKR%cPD9?HG>*n7s`fcpGc>E@j{y#cVBSV6DjP{l$Uz6=ol9 z4SZ-eTkjlLziamK-oVF41Lr$VQWnfUy~{{ezOB~_osS&djLK3bS~zKEg0hFz8X}m2 z5nPi|H7P)Cd`Rcn2+GQ&=R!THkHU3OC-l5(+Mw*Xv2I^+PVzqz`710-d)&e)-CTQQ zNJ;swH)DsHpn0VIu0DWJOQ$;db@8(|rvE|&^;7^Rn`fdyvNx*|g{BKB*pwO-2U+J! z?hT#oDh{?S+HIaKcJN$?U5T3OP516|#~m*22^=duSQ0vwFDScEz&H{{u{zqS|KZi_ zJ|&l{wq^>w#N!w3sWM(h%Esq+B0cK8T0)=noR9Kq4j9Z9&*w^LI}bD8=%oq>t2nm~ zi1n%DKfgut)0D@t{!1mQ_cC>fknk|yk$D7&K#9ACbcgx|gLUM=Aojj6}#*Q>6OPy<-cxU%P zgk03*Ac~ahK7_GfSkMV+|Giki6?R8H z=0O2S-fuNegEVcd-XmY>Dj5pO(wUw)T;SsUJf!^9a;EN3M_9QVwq%55@#jc0sEcmB ztl*T~VN{wU$z>K8Yp8)}6lA;pXbUF+AQ=KLSx{jPH0c4z8Qk1EMm(+#Q|K{&zS*1}I@+8r`zHM5`q@Rx?{>K}!B~7yS^y zuZ*885+}QmrFMr4)#YLG>P7GrK1_kLho!Hyk0r~TKlAS!ZF6P1L7fNgsyW^ z6Jww{H!Q{wZhW|kk79)NgQE!LQ`ei(R0<1@EtCVa;kAuq>XA6`uZEWG3Yomv%N|yHc&|)!=N39)%JJ6nw;bw}OKTHX9Uc2e z@lZc_uhw-iZdJm~?Ifq`MtE_MZBSPDzp1z+n$?QOPW)%yqhG)sT(g~Z-FO%WL z+||Wk)<4pS8}j#||B8c$a=U=!p^J)xxiV&ga6C!z8;G{|x%J0GO)^g){atJU7UZ(T z26%LP{R6v@79HTbq5_10#%`VHf}Dfj7Gwrn_zr*T#Y40kZVTg8hWij4n5kw$ATsu} zFCCyO&3208t)h+<#G+2rALYu(t0Tm6RvO;gZbeYiMY}Gl#hgN8*SdyMyE?$oC+>1z z7HBzt+dS15!j(Rii0!stb^_H^uBI4yX}itjABuKM7(EOW|i+NX)kWlNz_c$ zmc&wN3o=}mtSPP|*9Q;9*ShDVKe5}=$WETOSMwQ#Sw`$a@F>V#5i$kDcSzy&>ZCZk z2~L?zC(p6q`?|@cU5hg3Ev{9&bMHdMCetM!ejE@1aIG) zo=p+^m0EW6beJo&C{r$Yy~_glSUj47RFY2IfB=_j+6{6bBKA)JA4p6om zZn&NH?eM9n4z7Qp=kC@L=fu;Lz>Vj0y>QSa`R=U0)aA04d)=d!z2KRO-j%l0Y!SH`n5-6$xiIF9{!Mt)`gk)oT9x0ti9e*CyGs1zNW zU-|N#>Cc|2>gdGFm9N&4e)i2P#hmc$O-O9N;j~8|klLm3=FfGfTj6mr<>&x1y!NLJ z?hKv&tQ=1be+AFjffE!on$WUtSLj+;vlssM zlhH7sP2u5ib2ydQ9*3yBua}&a$U!k<&qRrd>2Ic?gsr*WRAUB;rcn*Sp?^Dd3+)JS z+mB%DpI1H9q_b7?u;0n4(sX=Y>R%;NZ0(=x-zI*hE}mw7K7EUeN#P@E#QBR#gZ)cd zajD7=Y(6)-kG(&-klb|F?vvX&?uVv{-&tNaPltAM2wndrrS(LWb=%HdH~fpMjiMu;Y2P6Fr|0h1s6N#zmTnisap+9)(@gGfllpY! zZtLxX@41`Lnc@Vaxq)r#F`a+J>ra0#AH-VC{G9HK{`t{WZ8GL#_vOEr9;%JH{T8&y z@arV>7tkpHjtCLOLEo+m&~z3qZyA}(N6}dj=sI%i5&&TNs2vbsVh;NOhWQVW*df5p zATdZGWIYf2M2BzZz+Lc&{X7H&d}F2y#gfIDW}ndJuBfY*p@s~Yr8wD3Af*o>u0y&S z^D!nom}otKsRzg)0z-w71vs@Kbb&tRatG!b4-CK~LwMw5;XRmvSXIR~cVI<0$YXd^ z2_Eoci___%f;qqn54Y!$!zhc!g7ydNxI}j}iiIX{L~iIq)EC4?`Q&fRb!7Y`_(C7~ zJXGuw_^xzrf1~>zf9CiUprpRrPJcw3PvTyXoPV>afgE73xjRb;t>N>j4K=f+IqV*S1%z`B1 z3qXRt-38#~0Do_0LChVz*lv9|jDdM(0MDmMI(}KgPo- zvBX0ky&d2~%ZTDFL@0G#wD=M9IRgloM@Ds^ob|{Xf*qYipljpsH(f=30csB&eo25` zii2-`ys*aGr&%6Hrp?1-1zK8kQ7l!jC{9yv11y9{e4}Z+C6gBmb=Tr_ziw!VUuEj` z80z0DBtIeo?S@*d8+s=3`d{6(#|%{-JTkg04CN>yPV7Hb#2rnAJJhKNBq$f4XSlkd zJ39)0y`dnopoXEEsdJDvhU74Y_WccQqsLm1LNM(SbPs^L1gc;cM7*z>9J=Z%eboRp zXJ8TwaLZ%E7Eqx!GOno8g=iy!p#HS0vtzHR> zTk+&zqaDpx^i>76HeLjpmqqJi3k(#hPa+8DV!!6ZzKv2VH#9w-P?$S8TT6VXE{ilJ zq5m|VoDgsLWrOArZ&hvVC~*~ZO)%Bu*eG?WzW-`Pg4$jy`jc#ImZj&s-$?)3oY)aP zi{`5qZzFY&7a6J;Q)MI_6(pTRi>N0Gef!z+-Cktw6@}F)XuF`jiw+EJlhUuFI)H}G zbif(FO#%{j6cIGD2ubF<3+V2{8@~Y-3d!;$)qALz>{FL=!VK*rK>xr?+(i?~`$*7l zVfe56JRyAdsb#fWeB_t-_dBTj!=HLX1p5q1yj7`Qr2YFerGP*a?=7W7&$p34O+He# z2;9g1gWvD5Q-u8FGxpLPGCKS(5>IkZBueniw$&?=nV>(3gEW8YX};e_)74WG3K7=ib@Bv_l#&dvj*aDGhRyGCNQLvP^t-n;uCuIdt(m=4-z9dsfiz zr-#%Rn0`kSJetIhRwf2Q_<^6VdG8irj~R)3C;7~d9$l3PGatfz0#VkWc&=nf$h8B* zC4NDPL2FKt`=tR5LIjBtp-PQf%RX2u<#j(Vv`0M9rqsu6U-VXpw{H;N{RQO*cRK90 zI3V3|_-3i^(USc|dTv=wKp0!vU7dW1rEm3}iS+6MW!qQNh$?;%%z%`Hp#a(?K!bc@ z7yy)lgy<>LKUY;fWq=*PH!>&QN+!Yn#u7_{(dWI%?~GFq#snB^d)`>nIPi0Hdeey{ zAp#%+j+4Dij=yP7a61lo|4g*}8E<<$;lvGN&vVEFHxeOyVzLzQk@ZJ+XZ)>1GSgWg zKFUWKPJz%HNtr+YY7@u-Q{=82VE4HMm*dhNH^NfuP&~YU{|#_R#$Ol=6#OJF316SV z_GibH%D_*@$wXP}8#3Rj4lwIvsieFohL}ar%ZlAk0k>PGt}l!CZ=AI^$nWxKK9@auRo&z+vy(T<5>LpIj>w+s$H$zTa4i9Z18=6cODy=r4h*{X~8Yg^nG6^c$Yj(i$#OB{$rw!u%ePsER{7gEh zpWGK+^su978?;zQuE^v>35s8Ic?RUnpB!s1*itbs)C(qC7R>{YMa*%cv8ri2P%I9wMm5aF`{{UG+vO4eCSZtt4u! zddSMX3Z3b7Z28i?ewCQu#@oI>tSuTp&y@b|;lJrAk=o2JN|$R1QrH0{n!7Fr$d$~F z;8Fy^oIxlEfj;1if+XEi0ah%D-o~ii(p2R+yiJJ4T?eeYeB=Cf2 zqdeJJ?wq3xv;FNRi8R#yw4&{mU;cNU8WHl@@L!-a>yr2la2-rJNolJ44RRj`5c(u_ zIqhGHI>n{CazR(IbHU zwJl4b3skuLv`4iY-*LdKPU>W5W#7r8Cv73(fJOz#jQE4ZS*n`$UAoMuPnQJ(Ew6VX zvbHL&z4NrbM?_2jM4ySmm5OUD9Pz36G#^Dy zMJ`|VWPatlpRy!-_uoFW%il&;82n$p>_^rvVVEcafxaTv0C~uUU`^+1E!^$%KOWK# zCiCxTlJ7zUw}TWzvtA00dgn(ZWgL8F+Mqz17GP7<4}1}T{J*3W#qet;V|t&lUcF|k zzDuF~_k0({1crYWq@(l0#wt%utX7c|PKNX`|K7U*k66Om$%9gC696vQRUkA#DplLjxo`@L}ZSGu!bIsfLcY9rwS1gf(j z#xF+6R=+;`ckS;SHcSBfD3G$27RP%c$Sl*IIMI(3$+JLkzYatR9T-jAxuE_UyQ79|STm!_ zGW85}x~Yh{^3}QL@|?K!{BBe7t~u=VobA~;F?WYW$20JurnkfMZ>{F|XYor`l%-+o zCCz%#2bSGqM);Hez1QKR_65PWv;mh+#EMbzr-K7adeAl0Uy|5A+J5W3dS{4_Uo$J7 z1ukd~B)sm;?RmXwS^i$4R!8B?vSa1jP3wxY|6ow2m4eD*VxUkB_5RK9Cx400t)Db@ zcR_oTx5rE@kvJ=azcA=zs6V1Am3Q(KC6o%tXDBC<^@f+IYdJA^e(vJo|H` zV-FHh6-hVBQ7n%vrJuD9+rffVrK<6B&qJ3S%}Qc+WbF^i*dO$4&JJPdaHL?5a@LVT zC*83lMXuJEkm7x=jv*!9fzKPUutj#rxxh1yen?m{uoUhWC%04MZ-5aVe6+jPbc;M)?!Y`xB zzmrqW#wsT+ta04S%}{Mvb8P`K=*1N z48=_jE5*Oup| zZC=WU3zp^KUC4H^lOL}PKhH7(0{EG0h~>`lf}Z86666}%)3zMDYf?>2At7;4R}vw-P%{gXdx-0-)}-}6K2AWqf(-DDoP>`?{-0>L}N0y#=qF-t~p@*bjpDsO?kl04>LgRt!o zS=PA+5d%e$(n3g)?sigpBmgo&Kw#)|ikE4l;u9pcq7!&JFAJ(L0ioReMMXPl)DxY6 zTaL0Gn94BfzyIkCm)x@UL@gBl=TJeGjm2xY+d^7>?6$OCQ25IX5n|*G+LBV$@_%;_79n(RT_l_ zdHun7x38&&x$I1!>rNk(tEZ^3;Ifc&Z zG9Wch+UgRS`<$$n>vD;5>H6|hV!>v^enj7G24yxjm`B?nwtx-RViL$w6c=#>Z4|GR z^WcgcxHzAK+(mVX3^pRgI&)=AJ2+{If)pq)=y3h{c#KmcnuH(5FM%bicdmlBaW`|3tO?whIq?NlGO%`z5NI@ilzd(d9rK*=a?pD zD2Swy9l2*7PV|65YL|=4r@x*5udng2hJJ?OFRx}y=Sq+C6eoYj`E$Eu?REQYvIF#o zs~>(u$Q?rgeif-Q*VT|l$1y;BvZ|*;n4PMH&4V=A$8z3@e7lsf>E=B=UC}v!5XuBo z@oAvv|8JHgkrERDy5}4$>&f@_6R)&@7n)FV2k2=+sgwA)QZVqJNk?i3DEVJ@Djx3T zlym!Hpq@S(rpQ8QyRSivg(y?PJY4jZV4M1f;_Nex9holL4$M{4{G^bK;@)|U6*2^_ z2G7wHT4mJuHsl}x!QAqvjpFMp13nmHa+=w;fcF<%v-6GKr9uwCpM>aXgdU%zYZ*^h7{BdPBgIEwWej{s60 z>K0MxH$PW@J`Ll)aa`DlOZ^qn8^#xN9>om)>}NL?hF%;pqv}d7A3CaSaWRFFa5sL# zGUx-lTxGt?@3G%Kw@i7UNioqiW36~6l>Rj18-&{S{%~2U+VD5{d#eKhL5thcmY74^ zO@XZ?%}3!JIvRRBdm?@#DvM>Q-YtX{qjiBDY9mWKe|C1?dVMXPmw#%mh>ONE@^&-r zg#VRao=f9Z32OmhkbG4VyvZ_B?SmCiTW$A9r5d>L1y4#y($t8 z0;5b3Pkd{z+2{*5UU+0~@cX<6^V3SvUbTw*rkhsj)?ewCBvEwO=~dMSAM-WDAwKxw zc28UaFj}?T>WZcm{nt2?s`f#|q~GC!F5y`-AJHbh@ZsQAO2=Miq(sMDy;Xx= z_Lh;Oxn@l5qb9TnkNc{rMb@Qz?&0E2CNNox|9CqXieF6QH05gMoYEWBY7m}RhZZ^Yj)4Yol=Wi-P2 z=%9oUSG#stA~X^c3$@BP*(}2mT1laN7?B5r)1%x9Il5)|SbeyR)G^m7SM$0fL<7#Y zWX|K}G(Xi4WdqxnC?)`>Tbn*fYJ?m==poV#5+1oH=Xthh$4iBMekGpa#M&+_v>Z5m8MrjU%V*X+Dbltg7X#y)C)k!x;zm02XSH_ajLd z5b`-m{=hHEf6w48bP-(^1ydlJ&XWj`4J6i`eYt#A#U{`B%D&ykIj(H1ux{A`;HZ4e z2U&pmu1xQz)S>Q%@OJp#D~p*#vlJ;fP?`~54aSl0I^`s*&bk9S4lz#?T+Thoo;P;o zUQ32Qh1eLUT}wWx!%FM}IJPoT7!Mf69iZ)WmwaBJYy;5)k<*7m2GB$;I&8WKnaB2! z@5$ZWYJ$;EdMjZ^oV0oqA8?R;)-4tr!UW+LIt-~R^1<~8ege;h^d~^tbXiR{WQG#SyuJ)*6P`@>Q^h(Z!k6Unl*17Yu<&|yw9px zX{}iut65vA`HZRkqFMXZvG#j7v-W3J?eEswKV!B3R<>$+uyZOB{4GcRm0_$e2p3A( zUhWjRIwy(XV|Dpn>`80t96|D)we$t`QvKsj`v4a_{G)AP7POA&$5*#7yVQa3=La5& z1E?LSW(Fp>7@t5viCbWD`Cce@I~RW4#*>EKPU?zI$L)hfH1yH-Ud%Ju`vCJDB^ubK zlb%T7eaPj&HbDnQ9*%S4C7AlD`GbuN+4C{fMkgq0msC@@d~~$Hn(e-wJ;@LrFhXYi z&#-kV53hL7T9+q5f6;t+Q!?o|_9O^TXJM5M5a;o5?7h>E=8Bys;Tom*tL|v3JL>9W z9byjpQ={1iKrs)JpyplJT)r*S8+sVO1$URT<2bcsT#&uw*OD1=Ci`AXb#?~8hv?!n zQsjYCn}n?177;9P-5tr!g#Pq_yRk|m?p^ZtM11_p4BQ8W@GylRTubSg5O?HEgz!DW z>cd5q`DW0dJum3^VTO2WHZ&Xwr&3VOlV=0F5}6QpL@A~8Up&;!9rcER>7J|uco-YN z>R)rdIRu_04=i2-K4C9AyQ4B?faMGA_L~<8mF*`x+A&k@pXDzTr{EXpU}Co2n+wA6 zM!Wp|4yF58=}nyTdWJQaH@@R)Km(TWXZtyp@bi(M`ALBvB-xBB!JEy^9_Kzu0;x=4 zzBUKlWh~+bwwlms=4xA_0a$>IhZC+Nwl;AP)=?q2@awB2f*vC*;{EW3TA%NlOl{Th z?!qN>B}`opT)z(RyPQ|MPRIja;2q$}Ivf8RMIXA*cmSg>5`l-48JKJOS95YqoCMZM zzqbd@i6pY1;#vgjN(qW(*CG?!;u>@u3lf|e7|ayhmv5`Jen#UtTm#%4avnoh$Ul}L zBEA<=so$GdfC+Qz^#uv)yxv-c-Wv)n5TF-B>g_w(+p3Uk|jmHjkH z_%?UMIRTo|fsMY`{l?P7R{=0CQIE?!Qzk-uq}9&yYrlMNIMA^wBuV>2l-(Y&{do69Jb05Tv!cs`hq$w!9fazy3qoE|*>c;QN4%TbRya z3>!jS7mHvp8z7B+ft3Pau8(FnxU^$fdGD~vDMv*M*e87R=|2P){OwQ?O2M4i1w4!a z;4Zj#kfZK679k)4xZ{a!iS9_`(D?xbkmx>AuF!>v#jq;w8sM0WQO`gDc9$_`0}DL# z3-!*qw$Xx_lvP;^+)*~b7Le*L z5|@1EVwLd^)w_Z9a5s06<~fmRcXX8(qEa6{v+410vcbmP?yD9du@_-~!~ENotcX!$IlVRMVP!0R7OL|? zzvbk~eQi&-daxHdo*sHtD=FxwyG(~1n?8DWI=pQonCv!6rEw~%%r-^q#v8fJUf%sHj^_hbQH|wi#{*Vd0yo5yu|g`^K)mP zm$&^-VNkvHyjJu@oz9B}mlsXPUNoP5(c1Rn;`ocUwHKE~XFGLfue!`$J2rdc>}*fl zY~T3o&9&KEqAv$^UJkpwynXED-Lo&puKo#Eg)zmQ1l?2!n%)G{MLd>h%BKUbSjJ=) zOl=Zzn*)IgpwlUH@0nYAUs`T_C=}_LRN+AJG5}7^XL8Oa4I`y{WJZ5p6;`O|+UP@| zXu#5BmFMj+LpEHZPM(@CzTr+GrYE8QT?fSghV0ni=>E~u`N(MS9k0?t5QLqk=`vsN z4|4|Pj83^ar??NMHX$YO^E`0J@c9GRbQSNO4YWzVi_S|`cdP7dfIZx<7Ad{v-5vXG zqRIc+r-S_`zJGeBU^2)PRkWaKaQPxx2lr{18Rz=M&JSnF-2W~mxbn_XtSOhUKqewN z=iH4i6_wAW?-(*tmi&@NzA?S~mf6KF{ z=(P7zZidB2DALreb?xA7{4!zC|?0hw{q>goo+x?I7ZSt zqKXzS43Jf2Jw@(-pR)jbK(1kEPL7jSryA|7L8vB74A2#X;QP~5UG?5dKVm7Kl-KZR z|M;U{Lp6hLFlUvz`I1>=*;Z@-6pYCZ(WG-nE72`JVnf`?;su43bl~&jPF<)-ij(f9 zwCwuht)&t3C0V$_hlnb6E+G<(U3A>57>#wmFPj!|)8xSJRH-DN;2e`5K4}d6Tc~Cz zMd%9!_`&Cdp(oIle!lI;3wD>%s9)6lMuW|Y9Y0{sy(!J+!4Vw^ zl14{U7Ih?TZ(zzAf{ybCX6mH@Rvqkl)`ug>7ez|tmLv|+iCK6DGhuZuA3fxAIFD%v zO8c7qwjWT~& zAiEr1dQjR|&c`g)ZXkog9|AYw`hV9GAvDlXlcn6k#gE8R#UNLl=kP>jJ{1OFcfVX8 zsU0F?hzpbP{QE|4s`zlYMljldO6vy+6sEfX)TYrI>^U##HaLYUpJRR;>AC5z504&t zX>j-LzC=!}PvUYJb{o&3iml5_)Q%2({v8y(uF|6QS;chg)VIe6n5Pv@HTb@%3(0H{ z1J_R^{a(4jb!6M3NN-cu0Zh;|#NO35yE-tp`d0cdic8nTkm; zOW*PLS_uZq=fGQSC0Op6v|mWG`UTVNcu0!ccY(8@NtqLq_)LfZZQt`KFkGz~@M!=k~zmW+U zfC1cH9I}#sr7e%A?8-B=de;4%kE5cg7SOZ9W)&E0L$I+LP%)}|54)UcIHfThMhZPAFXMB71YJTlNw{z2H-kXpsgbbt>fsUC3wU)E*0{1qTnaz*?h zd^iaXqP0e$RU2gW^l$a@PE{x!Kp-N=d_9@dvplkkYrq2^)l1l>Wk?s%MB*4?K;Rrg zFO6i+(NC36p=+DqEP3JUsa*!RhOG{`Ns(%|2l)zXo9r`he| zsHN%h^m#9>@0N{STRVBaK?IgI1d9{XV$6wTCu!b*)=M<4i{i){O3{(9~3xwNrBIM>Q1nOxci8T!5PJbbH7H=ZTemz z44$#w6Ob78Iz}DjK$(()kzVp^O0JA9(3lL$PU~mNZKUd^4U#Uz1wiVbT}ZF8SC~UVQjP*CRbK?yM8OVhW*YyShim)d6dr$#L2u4j`N;KL2 zHh22NyZFbUXn6!iX(yCy74575T)BA+mf-IRv^1R}Eo22Js7jyRG}Z22J66r^n^iZk zame$>cQ8-XgVWyav={$AF*E(cuj$-~n`-+s2JfH6#)RC|jQz|8RjpPE#(uUXF`JUTUl=XQ2?W|DS9uSpz)Tl;#+PvQT-_~$JzRCbw`zG{SkGvWSv$q6&*c1 zUxn%c+WdnGJ#IggJSAytBW^f#+?9u#1MXUcGHDRM4)(*9*3rNPX`5mktLmyNV1J0l zMNGD&NzTazSdYI@;Ar_vE#80E$Fo@);Dx_G`1$1flW+e0cU*u9Tu)U$H809c9#Iec zl5_ObTcxe!QHcRPL^4Fgl<~y8j|)8=$n`Yn_R)XU0gFU2k(MA%%liTqg4TJ~FX;!p( z(NNr$oow^|1+fgJkwE+rY*py<|D^9DZOKKsnI zL19aak^Ey&SM^iZA=RFWkYsCMxu@1&RAtms!`R|KcMG6pC_I(g?9XKyGoYCu_J1}e zv_acf4b@ePRtt;ml6_jj#V`PyM8BENV;%mL{gI6d4Cg|5nbse#^ubuYs$7Guw>29< zM)m=Ad!p=ihnHsgk(%Yv6P{ehvadzBTt!_4pWz9=Fqz?phZp5i^ zoHoY|S7pTrD;JtC1NooEqk+o_4NHFnqZiux{j1;Vhf}dp;zi zDrTJB<-bnC9R}UJ)WmSyR`FPvye`+_?v|(Qg|>mORU#6gH&{LE=Gs!qNiJw>IPJ(!)@p9VoOu>gcb`@X3LY zZ`MHaomBn2z`68qw&+MWuw&!Su~W?PLx1iN2X)sfbSMy3B!IH1*D0PE4~y&gVz`}= zoCfbl&M&sVS#)`)h@Lw|Ig8ihwB)U7pl4rpFFkQt+WO}5{>TLKtIk|++rlo_`9;^Y zkK->-O|0--Gw_fjn+-vDo+<;r+34n^59BCvttoI{N*`N)EY}!VC8Nu@%)7b`aM#HO z#bk#pS-1Dj6NPp|>1fCUORm{m3rDt7x*P(TY0h~B!O&R7_|Aj$n?kL@IFuzaK2!|{ zlr%h??53JMx$-RNpP5c&5q2t+rH==!%-N!}9H|-LwTB08+#NqNDOMsv;N82>b&vA5 z%?~0U0FiHd!qRLKj)4h#b=UUk{d=?x2MH}_PY3OdfdG*g5z{Rq(eYqmR zGY~(2le9^e>m*E59udq!j$bheh`;tIYERg%yd$%aK%ZMo&7nI#XYZ)TA@ycRFVqN& zYE5o4X6>Y=lAvPt@_vV3Pc2d!4lz`dCRMr14Z-xx0?f1_dD>>vI`BHu?UvE zzT)hBhr|kSHkhr3FUfs1!=7|(--4Yjw0d4#?UDTo5P`C?oY+eqta>w+J{_X6e=mNS zlSF3Q?C&hGVs$Og2vvXiXGM19?#t}HhbzEinVmdz9jYx|Dwc!4_ztfx>ffm}YqFOm z>Qg`h*stWc3M&P=8tALGeb=iCZiM(N*Uk3m^S4vdw>^iYQU(CDQ2532GeaDrr$x;) zcM>6<^t7h{Qqp|@aRt72G!3Ak_Lf0)e7$;-k@v0zJb3z&{Uu$F%H9DGy?Hr%$C+M- zJkf#rZI7x@o3^)}#tEsXr;ok%6WmcJMXa}`qOkj6E-=+Oa6&=GRhju?DWR+$4 zBCES)FN{5Gg_Qq=V}*Ca%JXBoM_3hy=z||#mHoA=_`4{!90zAF%ek(*z5fSae$~Ey zI_*n!V8K{m5u{3WIk5Ei>w3Z)4#+&TtjPVUvoD>+J#E50)g+h1NP~B^ZGEj^E4g#J zkz0o|6LE;MCk|ze9{L<&la(lxu>sPfJ2-rn3?4S@TlcP$ZNJyjf%>Iaq1Pc0D$9ycXsxKrFFdY#Id%| zyyVcFyXO`?|1R!b_h(w}PX|ZS#Ghv#S60XYz+@T4swe+uUCOJz3lm>?ik(4vrR- zaQ(^A^uVx;=;Zvet~lpTcYZ3+IbP)G0^Q>qazKM>M)dGzCVS zkB(?Q6VbxVi)gKhxX>PPaUkN-L`0hqpZ+A|&m%g-B0H5MujoczwT|p^jl32Zc|AJv z#+k_OyvUxK$lmtIzJbX8iO8F;BL_Z3-uf?6;Jqw6!%`598n%uaagDkiXau_4zI`TY zG%sqbCTfkxk?aV%HxV`dI%?umRC+f{mj;Xb5%oxydF-+EF(FrBMrWJuIri+#v6;NJ zcCl1RAE)O7$6ihxdlmRWZU(sf`q-RU^t^I(iRtXn_W#4o1EZIsqu-y2Ue1eNsfqs3 z9=*CXAVkWe*Iq||`V{^7zvy+bm@mpP8@e%Htz*8q#(WQq`4JuS^GwXIyqMoLF`Ml% ze+FXyPB3Hsy^i_sQ_R+XF@QJ&qQZdcF<`qHa5o0x5Ca**KrtEUdATDjxy8Ue zWQe|Dh<#>=Z!z%Vu>_S^qF$`T?pR5;SgAv?(lN0z%vjm{Sh?C*`OC5YgSsEaD!qwS z{v4~a6$^^TkyPTydU2||ZwjGMw9uvn@XU1vd$NdlEz8t4@D^B}ioX(p#-Oq7) zTXFj0@dhgKhI;WvyW@@B;!O_4o5sZNWX7B2$D7y2TU?H}ycNIeVZ3lcWc@jQ_f|Y* zOFY3wC4s7!V7oiP&Mm?IP{N*=1P5jUEkD7rHo@s~!rog6&JPn@-XyqwPPhr|aoc^2 z=`KTvWZ&!2NCX@b``i;p23QAakQ3hAOR@#N;)&;7q4;j!!j{CgmR*hDg|_uXAPl%^ zX^}JceLNe6?_f*&h$74s#X55E;74{@QmaJi(VdE7T-aDOH%f*T_9h!TlWwMgzV}

    CN5>+qd$$sJ{;CdMO)JGshIz+L7EcE9B#SrBSKV@q=r0elh=h8tty?uJQnV&>EE z$yfgUV93mhpxFn3WH-%%%U8cQNJFGMAVl4)oS#|pGpxv;7Kh!kc(;;7(aVS}5TcF_ z^HjlXs}w@<|5LFZq`|I>E=wo>>Or%OHGZm477Bh!AOJQiDOLFOrqH=LtU!bYd6t%<%+L64r3e(vzNJ>E0AfK!eD?hQr(TeSbo_WV2ClRhAa zJklNV-VP2gLD)c9{yap|uQYdlV0wpifmDgG8u-XuY0*YqQN_Dj@|bWGr}QpXX{Mk$ z?-7*+@aG2qho>3?cw1mN11bh^iz+y(OfU0}xxqAmh}JN)b4GKC5(%Wvy-sYdj$$1D z|ASqfo%P{%*YF?2lVR zq$$JD@hX*MigBK;EmVCFL&w=_MC<6x=x!lVTpi^ zv@Yd6!RPRF^?U57&OgVqV(;uJ2I+$%A_sjWt7$b0Y zih=iN3t8%tQC`DP5i`h;9rw1!2nNIxrr;>yo;4B1G>S=qp<2s1;)98?TO3yf#pEL3 z^nWKnsXkg43rNMlsTFa%CYLH>Cos*Y9fB)b&sWC1Xl<_L$X{q_DD*3U=1D`sD>+09 zIG^wj%z#B$vub1x>rQf#lNL^JYKX5KM{tH|bFUiX9-RocGeiT_Gm7(FPdiJdGfTw{ zDPK5D1;u5&%!La(zE2(;h0LyA1~laFKUOdw)zf2)M1z8b4 zms(?lD>FX4ZI|4As?#oqv3`&p=(U}KlVXmM_COx~_-kY@mLQz_uq3!z9|}X-ifG`B)F*G6mMHMpy5MHQV~J`Y{R+YUVjb{*t2O@m<#tk_7tLdb zO;+0s?kdmTi5p;uJ8fK)n}70QAtUG1jt3VlOuxQ4;gEK90!nLJF|1`_SZYWL6JMbF zkv4)L*(cg!#0js0DcZ`_DcdEl&x3+Yg83X^AK|f-G0VL_e;zQz$L!k3+};}&FueDd z!RLWiFnQQ>OQb_=QUFM!RKFLZ|Ed}9 z`rpP`TZzC^f=tU-5CI)M0|+PreSCHYpmyptW*$0BppvY$KuC!9dZ!rn^S(t-<@k&r zsWMS?BTAa`FQSIkvd^as!v{fk;({fm?b4v)460q@TswC?gQS?uc42mn+5^cRWLkqT zY+{&RPXyr#d_3@A=C&Tk0r(4}%+@@X&cLymIIqK~ndLj@+y0lZa;1y*6xi&6>%g?< zAWder?3cRao~uFV*cMx5i#;iOyB^}lGyAz=^e|fy*WYDH_dLiQM|EC+J1os_*C!8V z17Q$p^Y3ViB8genxoT@y?}ZC_NlpMLcS^P-Vf?%&y7ckGPreBmb#e<)U6%O76tWIv zgnN?Tz=5yidW}8R+GObkHUrMSEx64&U_qvgvJy=RN z%)HCpB>~9p%1UgZ7o^uCL;xCWTe&9*(s9)SWGr_xFJ+C_rC+7&)1X4-XC`ogX{CUy z22I3|B^@Oonc6%s_LM~ux+wLE^qIYfU+~Je->I5dZFT;vQ2;xY+k`;Bw^kL}(ah8k z)*d@NzqCGNxuywmahm*syAn~~8LQUeBL6s*b@iSA84mD##fs=zU4HQ?f7ghH2FgW}mnK+VYmq2zuM2Z?Yo z(E=)qr2yJB(fuO#ykZP-z(K|+4*zVtxiqQL`*w?+*9YIqgzpzypFUB=&CR|c8j+td z;OaO*R-|2{?6{<(vCa;!h#kc#|HiOSnHBQ7tUZlY%W<#!pE%AIy)f!uP|`bbKl1fg z&XMbX&DZQsQOy5%97(n2xBtHYjt6o0(LxJA>7Jwr0_faf@f*>JR5G|pFxYq(JGj})}@FSf6jW=58*h`3|{e7p;!?=$C!^uR&r!9 z^@v~eA=IIM9Yr7j4oa9{nad4Ha|6v?@UAosjy`Ms3QA_|k`qxvHJOM9oY94%H`u}+ zHnEFs>>~v^(kp#0fw3CvStB4mi;!}ERpNj&Tm+((1u$kQP2g)|H%h ze*?RVE=6b>$r(IHrR0WoQJUQ45Z5&S1ly5_iJ5%Bh#(c;Bepld0qySlB(>a*t~IW^ z8wL)9Zr^1+yVftBX#U%2Te1fRM6%ryAJ;2 zrWnA;*4M4bkw3J84Sc7G%X(rQ%6{y}Lq777pS*b$4*+IuM%ill&I|~xcfC;e|x-$1fVcsi=b4 zdQ4u*_NA`~_W=<7aT7rdY`#ehfBGMT7vNC`^j!30p8x$H9v#YeAeGb%0bw}?;_;vV z0ic)>jRugwWJLrKI3NJ1*(m`X?oC7j7M#?G;EYL)0&IYTP(G@!FyH7wg|gL%;JuIgQAX`Ok@8VQ4K~I#>7S=0NhlD4B>Vy*e|!fv7{D^b z0wDmxC*%MCB*~U^$(L-zt&j=-35?0l;FI3P1qsLioWRAMbb!Sq!9Q6bU_i| z00|Juj!e#(s399tULXqMAQECBZpuLPVb;Nltk8;i2n(@<0A&co zA0EKEF-r=pUPT<0 zfhH<|4Pb$DFp^h-r6J1YT+(G-+9hYOrCW;QO$3DvECT;fP*gC*SVqNERE5ZOnN1}wq@kU$4?o=Vc-Gxi&9>LzbC=lH=!?Q=jLPV-xhPA# z0Ogd5g{YuO)F?&h=!~{R+vFmq^k_=JS0MgqOe86(e+X&y6zNGEDUcpwuSsc@TIrQy zX{g|nNnk)NCZro&PyY)HNJ?y}M2KmYjzj~DNm}V+OqA(KNP!I`)a0G%k<@9ZsObW* zsr9^RNyO=#qG?O?X`m8np&II;nhKSc1b%J+3wYqL4Jx8`#0fA&RdgD%DXK{riKK21 zr3!$hfAVRjlEkKRYN?v)siJDCs_Lq;YOA{HtHNrm%Id7rYOUJpt>S8~>gulYYOnh0 zuL5hZ3hS^EYq1*Zu_9}-D(kW`YqL7*vqEdMO6#;zYqeVIwPI_wYU{RgYqxsqw}NZ9 zitD(NYq^^1xuR>js_VM4YrDGZyTWU{%Imz+IcvSz>%HP@zUu3~@@v2P>%RhQzzXcZ l5^TX5?7<>z!Yb?(!ZK{bI_$$jY{W|J#8Pa● codeaf home teams chats sessions spend settings sun 11:54am + >● codeaf home teams chats sessions spend settings sun 1:29pm ◐ Check the review status with the team. × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -16,7 +16,7 @@ › Answer with only the words Still / ready / for / review. joined by spaces. No tools or delegation. - ▸ Working checking · ctrl+e +25 ↑ 5,757 ↓ 37 + ▸ Working checking · ctrl+e +9.4k ↑ 12.3k ↓ 101 Still ready for review ❮ @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────────────────────────────────────── $0.00 5.8k/1M · 1% ⠼ working ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────────────────────────────────── $0.0034 12.3k/1M · 1% ⠇ working · 1s ─ › - esc interrupt project: /tmp/TestCleanManagerReplay454034178/002/manager-replay + esc interrupt project: /tmp/TestCleanManagerReplay471394247/002/manager-replay diff --git a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast index 3051d72ec3..e0c84a715e 100644 --- a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast +++ b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.cast @@ -1,3 +1,3 @@ {"height":42,"title":"07-failure-recovery-active","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;103m✕ printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit\u001b[39m \u001b[38;5;238m+81\u001b[39m \u001b[38;5;238m↑\u001b[38;5;252m 5,667\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 56\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────── \u001b[39m \u001b[38;5;243m$0.00 · ⟲ 95% cached \u001b[38;5;252m5.7k/1M · 1%\u001b[39m \u001b[38;5;252mconnecting\u001b[38;5;243m · \u001b[38;5;146m⠴\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery699826278/002/failure-recovery\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;103m✕ printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit\u001b[39m \u001b[38;5;238m+9.4k\u001b[39m \u001b[38;5;238m↑\u001b[38;5;252m 13.5k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 126\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────────── \u001b[39m \u001b[38;5;252m$0.0039\u001b[38;5;243m · ⟲ 4% cached \u001b[38;5;252m13.5k/1M · 1%\u001b[39m \u001b[38;5;252mconnecting\u001b[38;5;243m · \u001b[38;5;146m⠼\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery1677304148/002/failure-recovery\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.gif b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.gif index 3be80809f19216a652dd1d0a5ea941922207c4d7..4b4c3c51e6dcd2e4660879d79a58365cc7fcaf9e 100644 GIT binary patch delta 39195 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 diff --git a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.txt b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.txt index 7211f54259..6657816345 100644 --- a/docs/design/chat-cleanup/evidence/07-failure-recovery-active.txt +++ b/docs/design/chat-cleanup/evidence/07-failure-recovery-active.txt @@ -1,4 +1,4 @@ - >● codeaf home teams chats sessions spend settings sun 11:54am + >● codeaf home teams chats sessions spend settings sun 1:29pm ◐ Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit 7. This... × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -9,7 +9,7 @@ intentional. Then recover with a second bash call: sleep 3; printf 'recovered\n'. Finally answer only with Recovery / check / passed. joined by spaces. Do not echo stdout, delegate, or write files. - ✕ printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit +81 ↑ 5,667 ↓ 56 + ✕ printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit +9.4k ↑ 14.2k ↓ 132 @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────────── $0.00 · ⟲ 95% cached 5.7k/1M · 1% connecting · ⠴ working ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────── $0.0043 · ⟲ 4% cached 14.2k/1M · 1% connecting · 0.1s · ⠼ working ─ › - esc interrupt project: /tmp/TestCleanChatFailureRecovery699826278/002/failure-recovery + esc interrupt project: /tmp/TestCleanChatFailureRecovery1677304148/002/failure-recovery diff --git a/docs/design/chat-cleanup/evidence/08-recovery-finished.cast b/docs/design/chat-cleanup/evidence/08-recovery-finished.cast index a5e40fc019..a4e4e9c544 100644 --- a/docs/design/chat-cleanup/evidence/08-recovery-finished.cast +++ b/docs/design/chat-cleanup/evidence/08-recovery-finished.cast @@ -1,3 +1,3 @@ {"height":42,"title":"08-recovery-finished","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0035\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m bash error recovery test sequence × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.1s · thought 0.1s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mRecovery check passed\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0042\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0012 · 77% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery699826278/002/failure-recovery\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0049\u001b[39m · \u001b[38;5;243msun 1:29pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m test error recovery with two bash calls × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mTest error recovery with two separate bash calls: first run printf 'CLEAN_%s\\n' FAILURE_TRACE_7319; exit 7. This failure is\u001b[39m\r\n \u001b[38;5;110mintentional. Then recover with a second bash call: sleep 3; printf 'recovered\\n'. Finally answer only with Recovery / check / passed.\u001b[39m\r\n \u001b[38;5;110mjoined by spaces. Do not echo stdout, delegate, or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.6s · thought 0.2s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mRecovery / check / passed\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0059\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0010 · 65% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatFailureRecovery1677304148/002/failure-recovery\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/08-recovery-finished.gif b/docs/design/chat-cleanup/evidence/08-recovery-finished.gif index 615b192cd23c1c16486020dbd455f18dcd263f2f..f2dce8c1238ebb3d4cabd1dc4c7882e35423343d 100644 GIT binary patch delta 39958 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 WmzBoK$vev_XUnN)i$K7D+5Z5ruU*+hMg$ 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● codeaf home teams chats sessions spend settings 1 moving · $0.0035 · sun 11:54am - bash error recovery test sequence × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0049 · sun 1:29pm + test error recovery with two bash calls × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -9,9 +9,9 @@ intentional. Then recover with a second bash call: sleep 3; printf 'recovered\n'. Finally answer only with Recovery / check / passed. joined by spaces. Do not echo stdout, delegate, or write files. - ▸ worked 4.1s · thought 0.1s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e + ▸ worked 4.6s · thought 0.2s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e - Recovery check passed + Recovery / check / passed @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0042 · ⟲ saved $0.0012 · 77% cached 15.1k/1M · 1% idle ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0059 · ⟲ saved $0.0010 · 65% cached 15.1k/1M · 1% idle ─ › - alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatFailureRecovery699826278/002/failure-recovery + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatFailureRecovery1677304148/002/failure-recovery diff --git a/docs/design/chat-cleanup/evidence/09-assistant-update.cast b/docs/design/chat-cleanup/evidence/09-assistant-update.cast index 8ee8a6e5ac..e312b53588 100644 --- a/docs/design/chat-cleanup/evidence/09-assistant-update.cast +++ b/docs/design/chat-cleanup/evidence/09-assistant-update.cast @@ -1,3 +1,3 @@ {"height":42,"title":"09-assistant-update","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0006\u001b[39m · \u001b[38;5;243msun 11:55am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ sequential bash sleep checks with update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;110mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;103m$ ran 1 command\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 515\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────── \u001b[39m \u001b[38;5;110m$0.0007\u001b[38;5;243m · \u001b[38;5;110m⟲ saved $0.0005 · 96% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;146m⠸\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m · \u001b[38;5;146m9s\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering2234450562/002/steering\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0005\u001b[39m · \u001b[38;5;243msun 1:30pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ run two bash sleep checks with update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;110mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;103m$ sleep 3; printf 'second\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 502\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────── \u001b[39m \u001b[38;5;252m$0.0011\u001b[38;5;243m · \u001b[38;5;252m⟲ 89% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;243mrunning bash · \u001b[38;5;146m⠏\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m · \u001b[38;5;146m9s\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mctrl+g\u001b[38;5;243m backgrounds · \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering4204080631/002/steering\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/09-assistant-update.gif b/docs/design/chat-cleanup/evidence/09-assistant-update.gif index f5656fef78b0b9a429ec16bdff4c9fcb75775d36..ece3756d5fda7d415460366c893e4d1e8cca4a1f 100644 GIT binary patch delta 38858 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 diff --git a/docs/design/chat-cleanup/evidence/09-assistant-update.txt b/docs/design/chat-cleanup/evidence/09-assistant-update.txt index c7f0d9d795..5a812d5ce3 100644 --- a/docs/design/chat-cleanup/evidence/09-assistant-update.txt +++ b/docs/design/chat-cleanup/evidence/09-assistant-update.txt @@ -1,5 +1,5 @@ - >● codeaf home teams chats sessions spend settings 1 moving · $0.0006 · sun 11:55am - ◐ sequential bash sleep checks with update × + ▦ All + >● codeaf home teams chats sessions spend settings 1 moving · $0.0005 · sun 1:30pm + ◐ run two bash sleep checks with update × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -12,7 +12,7 @@ └ Also mention that no files were changed in your final answer. First check is complete. - $ ran 1 command ↑ 15k ↓ 515 + $ sleep 3; printf 'second ↑ 15k ↓ 502 @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────── $0.0007 · ⟲ saved $0.0005 · 96% cached 15k/1M · 1% ⠸ working · 9s ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────── $0.0011 · ⟲ 89% cached 15k/1M · 1% running bash · ⠏ working · 9s ─ › - esc interrupt project: /tmp/TestCleanChatSteering2234450562/002/steering + ctrl+g backgrounds · esc interrupt project: /tmp/TestCleanChatSteering4204080631/002/steering diff --git a/docs/design/chat-cleanup/evidence/09-user-steering.cast b/docs/design/chat-cleanup/evidence/09-user-steering.cast index 82cb9b5867..8585f0984c 100644 --- a/docs/design/chat-cleanup/evidence/09-user-steering.cast +++ b/docs/design/chat-cleanup/evidence/09-user-steering.cast @@ -1,3 +1,3 @@ {"height":42,"title":"09-user-steering","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:55am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;252mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252m\u003e\u001b[39m \u001b[38;5;179m•\u001b[39m \u001b[38;5;252m\u003c\u001b[39m \u001b[38;5;243mRefactoring expectations\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.6k/1M · 1%\u001b[39m \u001b[38;5;146m⠹\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering2234450562/002/steering\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 1:30pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;252mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252m\u003e\u001b[39m \u001b[38;5;179m•\u001b[39m \u001b[38;5;252m\u003c\u001b[39m \u001b[38;5;243mResolving loose ends\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[39m \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.6k/1M · 1%\u001b[39m \u001b[38;5;146m⠸\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering4204080631/002/steering\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/09-user-steering.gif b/docs/design/chat-cleanup/evidence/09-user-steering.gif index a4d1a4da82dc039f34c39710a2b6987d05d2b527..ceee701dfd20f44c4380559435019f5ab4da2e96 100644 GIT binary patch delta 34435 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 a>ZgKgsEX>Sl4_}%>Zy~jk5mK(1OPk0@BG;S delta 34511 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 z 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 QGHk;-?88E=qXYy1JNrX`+W-In diff --git a/docs/design/chat-cleanup/evidence/09-user-steering.txt b/docs/design/chat-cleanup/evidence/09-user-steering.txt index 6ca0048278..95e9a9bd6b 100644 --- a/docs/design/chat-cleanup/evidence/09-user-steering.txt +++ b/docs/design/chat-cleanup/evidence/09-user-steering.txt @@ -1,4 +1,4 @@ - >● codeaf home teams chats sessions spend settings sun 11:55am + >● codeaf home teams chats sessions spend settings sun 1:30pm ◐ Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between... × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── @@ -11,7 +11,7 @@ └ Also mention that no files were changed in your final answer. - > • < Refactoring expectations + > • < Resolving loose ends @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.6k/1M · 1% ⠹ working ─ +─ deepseek/deepseek-v4.1-flash:auto · ◇ YOLO ───────────────────────────────────────────────────────── $0.00 5.6k/1M · 1% ⠸ working ─ › - esc interrupt project: /tmp/TestCleanChatSteering2234450562/002/steering + esc interrupt project: /tmp/TestCleanChatSteering4204080631/002/steering diff --git a/docs/design/chat-cleanup/evidence/10-steering-finished.cast b/docs/design/chat-cleanup/evidence/10-steering-finished.cast index c678bf0a71..348e829d90 100644 --- a/docs/design/chat-cleanup/evidence/10-steering-finished.cast +++ b/docs/design/chat-cleanup/evidence/10-steering-finished.cast @@ -1,3 +1,3 @@ {"height":42,"title":"10-steering-finished","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0012\u001b[39m · \u001b[38;5;243msun 11:55am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m sequential bash sleep checks with update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;103mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 13s · thought 0.8s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;243m▸ worked 13s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mchecks finished\u001b[39m\r\n\r\n \u001b[38;5;252mBoth commands ran: the first printed \u001b[48;5;234mfirst check finished\u001b[49m after ~8s, the second printed\u001b[39m \u001b[38;5;252m❮\r\n\u001b[39m \u001b[38;5;252m\u001b[48;5;234msecond check finished\u001b[49m after ~3s. No files were changed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0014\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0016 · 97% cached\u001b[38;5;243m \u001b[38;5;252m15.2k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering2234450562/002/steering\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0016\u001b[39m · \u001b[38;5;243msun 1:30pm\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m run two bash sleep checks with update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;103mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 13s · thought 0.3s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;243m▸ worked 13s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mChecks finished.\u001b[39m\r\n\r\n \u001b[38;5;252mBoth commands ran as given: \u001b[48;5;234msleep 8; printf 'first check finished\\n'\u001b[49m then \u001b[48;5;234msleep 3;\u001b[39m\u001b[49m \u001b[38;5;252m❮\r\n\u001b[39m \u001b[38;5;252m\u001b[48;5;234mprintf 'second check finished\\n'\u001b[49m. No files were changed.\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ─────────────────── \u001b[39m \u001b[38;5;252m$0.0018\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0015 · 94% cached\u001b[38;5;243m \u001b[38;5;252m15.1k/1M · 1%\u001b[39m \u001b[38;5;243midle ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116malt+e\u001b[38;5;243m effort · \u001b[38;5;116malt+a\u001b[38;5;243m approvals · \u001b[38;5;116m/\u001b[38;5;243m commands · \u001b[38;5;116mspace\u001b[38;5;243m \u001b[38;5;116mspace\u001b[38;5;243m home\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering4204080631/002/steering\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/10-steering-finished.gif b/docs/design/chat-cleanup/evidence/10-steering-finished.gif index edcfbb35bf86221432a23e6c43a4c3943d47a85b..304262ccfd662726dfd9f210c02cfe52e402903d 100644 GIT binary patch delta 47842 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 d#-;C?-*JJ(s-QeiEfe;GN{eSE%1_uBD delta 48068 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

  • 3rpg_&T=P(f4VnoYEa$#xfuP7 za=rXu(Tkq_y}x_iljVSxv{%>koh|#f8vQ$w`k^o6?_9!>QTF$zY(r_XN1*2QtsW zCQ1aAY(5bf->70`b^)8-M)vi5iHc++M2`x8)Z0FECPM0$9!5Z~Kn@Q#=~BUvG5)M# zXXdYF-vxL|g2itrjZ6YeevRU^3xw(WAX0^(8Be*CEAQjTdjbIMGBxqWhZk6Gb?&hK(ZQI91>87 zHio=@tv1FYsS7Hd`?Ttg)G7NOWgKvb92{>c9HX7R-+w)A$#(w9uISo3Da`b1ZODGW+435EN`xT1NQNi{0qZbx5)Q885_xg{R8Yj$mY45 zz$wetqO;cf_C=r(y~XMpS!3lE4w<>=UW3t8U36IXYc~k3b60p1#BVg~)p8fFu7CD? zDcV_nSxp`Mf<-dJ`_@_CjIvz5&)WMBIOfm~vp`0BbzC^4ou+NoqcqLn8hX{!uHd?+ zVOLydMom^nvhaha-kpMX{E-D*><+GmPi-n!J#W1mf;=v?dmw8ge+I$}p5l`!$a*@f z^+4!_gKxHyrVT5{b4HwjX)hyyF9!N9iM@^-{BBzm_QK8K9zlXhTB&J_?GnO!`bR;U zjO3*j)BthH&=etRB5H-;Z-;)h9adFf_jWBsk>Fqdb?hO(nMBQQbXZ&g$24Ya{)rdp zq@?h;W|*?xc*ltOSJr)Nz9`~#d7`x@IR010^<7nJP@mGy6)F@nRbDIRNM)GWK|A!gOq9~{3$gG@Tnc-9ANu^EUW67j z3y8Ry>PrUmvSA9Op5osOs;;0!Gn%o>DGTgE-wx0IA4qMwGn5r*Dz6KzK&{W$qEo=U zSiy?6ZIYp!7?f?aELBXntYA^JGUok_^)#-xT!z_A=7A|bd(;^&+sX`9Ye0;JBMOzi zu5|n6(OGeBQPUJ)A8qQQ2f}_EF|pzhwTKquI$xuGujjx8A3OM1_?J{8nd@tY55O$8 z7$~P%U}Kmf>%sXbLssIciGSWIfi<+5B=8ypk5vcH{QCytouHR1q*bG@Bs>Fj_$w6F z_WhZMG_0-`%opz(1ZWcTi)B0dAgicUrS}@vHIJiRznqvY0QS9-iqbqN-Xi^{jF;90CTHVn4C=W1Q9wpe4G z8f^chcIt`aVy)9quwz@-bWQAH-4$4f^U%klhJwZVGXaJnt^t~k?d^*V5viY?7B!u^ zmKGc1EUn!0&k3WUp}rDY`R2k_kO9`={9<7&Kq9P>*+YCfz8yf}0X( zba8d|c3O0$gier|)9T#);pnHTlpw3P)%i#8m}*0vVB7nv3spujwGNbE#}})MO=&Up zemWtp%d1N-hGQCIC?S`Bt}ge&W1CZTLcMv{R$dy#w%ntH{s&!OO{c}SKG6vac3N9q z9*%8qqlAUW;n&tS;c*>9I^kFEuf5(iitAdWgvY*ETaTHdb$ba$yqsH8IW7n*jh%7g z+OL6X?2*Fgtj)kHq`RsK=D*(^G=e8#O9gSs^2}928Vq;~PGAHvAupus9NYpY+Ry;R z)O|T5<{c17n>9KcmFZTjAcX*3=}{s;3GUkorWpLopZ1`!ZTDTs*00O9gk%ncH#6(r z_)Jz(boQgyDrOfo=YF=NiXKXAn|$w_x}HSP@d6lF(AO7#Uj0!Yr@ePKZ(v#mM7R^@ zzJGHRSY|-~c;-fAN>Wc9h|8~fcpLsUNlCr@cSF@B_F9Og6tT1zSJeLH!-4I)n_*+r zYXB5atznKhx$|S=CfZOBFP{Y-g7KFKZJ{B&p!PwRnk-1E_`Ek1j~|S z2s)#gL5GSVNS|R<|2_7VhfKwZI3e5s%F+7a+oByvlA?iNt0Gi?M(dq`2#r~D1-tO& zJs^wwwcvq1zI!%DdHVLhqq<(+!tvsrVuoJ)FV*J196&|#`Lc;qEob_lFYmz;)hS|% zAf7-l_2mC`;OneU7jht67%)<+&Q9a69q`W%IMo8y?FeGkP@G9}&CTw*#~9|pOS8?C z13Lf-Kmk7D!8{l@@|3Nbz(XT;KG)#d8SjMT$e+GfeAqwTv@wDHM|!&N|74+|I*Wk*m$iP*V9F8>g5A@l&+hfV zznODECHu{V8kzk|8VNbf9mvj7l4I4?BWk3vPoaU&teP=1p%YbUP@snbuG)Zey}%kaL&XKPy|VnH8~?eEGt=# z2}92An5wfZuEmCKzTGHf?^EUh%FKT=It+Ce^S#?}o}An!&<(;7sF4JI8p!1}v#c`# zJ_8nb%`8I$QMU%B$63_1k@{SN8wf7Fa?Op5;h_36QN=m-cv<5rv6sqREPC0-^-(YD zMvbW*#+fAJ8=)-nfkf2=X~z|Ks3HqjnU1tN;1g<8$=|_?h9E~kblYeO3vnj}Y@&^12n2~YgC)@#GS!3tOy?Et?5Eqz zECjRTvt|IFA+_18e!;AlY&PpW6o3Y!m@aiznt#7(KG^#}g{G7RZQ02mrsmm_L<)xtyg`gCyz|X29zJ6lP=<;pM8h;0RlJ>qze%Ki-`%+>ack7 zV|~ga_pt#*5X2A%^P2&q#z5-k0LJq6pNUo9(MJM=+YnsVp!L>W>o4v$vmG-K%NbbM z3TVC~?8NYzov2=G?;IBKw*5 z&=}mDp3Z_n8`|E%!BN8GyxhQx?GCm;tF46vXtU9sBI0>x0&>M*tXaP>WJ=_HRxrhp zW{~5s4Z-1Iv!D|UVB*vjx;&_o9ru1bR&HXzV1kC!;YO3V_lJBYoEA?2oU=BSMgnam z$NtC~+s+aV93KlLlAa*xmQU=>{fvAh9H=JAJY-137Fb_#GRStx!Elkzwdj+x0HqP^ z<7w$b&c56%mhbJY9hNETFDW>e0wG%ZZ?K_LMCOQOLfiG&#lgqG;IPgnY70pxO7d15Mjgg%D_-a@>& zmjmE^kY#7-a3{=xYUnacd+jIps^!4FbJ2w-ex+CSb*HLF0hfFKz1I|!+Y<@5QhRsL zMEBeu&g28F1&>bpfmS~?WBmyX7;AGs`Q$b?xw>ZQw%)J^qdD}KXsSfwEFD$`w$>jd zZj?V+FlO$1r7%o(zeEYyeJUxhqhN_p_eS}J`3ZXXap$OfCQm> zV#2*<$(~F}Rz-5Qc&y|$ByF1_wVkE4P2uxW3njq!l0#l^KfFd_ed-IFvf(s(BQN1| zK{&^7_!ZMemMNTI1_$H;SWVHU_?9P|( zppAXu{VY#+0(f>IRDUOG0P3Gz%;%kmr;E5HKMrBQ?s(wJ#yjfxuF+*bajrd^%ldR~ zM<0XOj>IHCopyg+R$x9hS71EVAF8DZ!Oie3_|$BWY#C1Qlr*F?W|P$L%j!Db=lz!{g#B~6IisJweJzZV_SJES zg>lxE1sufUAPY%O7PWW>@dN)?q*S&X=E%Xd8~G3a=r+O$cBmkr8J6=;kAA82;02r@ z*-Y9gzVhtz0XFPo@61BoR50ee?H12x5GrKXYU)j+c8f59LolcRbygGWCqcuIHY)zb zoN&(eaB#!FgRRo=JvhOm`V|sKJb;IMX>@CB52KD8tQ)R;%guT5Bh@KOFVS?hCe z{6Q`2AqZpo?eb@e)ILP&zs3XTs%y}nhF^93LIEPi0uLE(N4nn)q@s;qsC{ls>-}f+ zg-(rxEeA9GH(snnBJM|?d=6)(f5x{pexY z2QoWZEj!HmBSgp$VXAcH^m62v=i#R^hbtS*$HE6c{iB{ae*GJMg;U`weQst>4pHaO z442|#;qoNH5$^IiwBFVpY2kf}=hgPQLCfRRlh-MOkHN?}JwnNDuP3SeMZx$V`+n>~nL-sF3P@9nxGucevLLx8_mi|yPw(;i{<{67elYyc0Cf@P)LM3uT z&o+iSy>PmM{PAKapi>ql3Hj? z@FP94JJM9}9#AA+5+PtVC#m?t*b=*=h%f5y?LFGlpI<@<`pYZ#|3xjH{E%Oa4c}yr z+T?T(_wL30q?kZrMUHx-V=pm8V=wwAN<`mS=DZqkjJufa^9Z7gzeEo)9u8$Yp-92y zMnJF;B5!rd^o97Oxaj%nldS2JoPba3v5tC8#y6}^u2;oU$tPjFN4a>X=t0Ew?B)1e z{Q zj+q9=MRs&4ME4#>G1Kv7p+=~-;N3Gv51PZNS!Fr@0rklNEM*7x}}-4rkl@OFyt zMVWgQCp?etr4F2e;y+F}{y4hLl=W@10oS+f3-es+Cy!0QsSE$Z(kosvC{vVYAAzP*kNCh6E z`%~chW$N*sL@W$q#1*Ri7-W>q3TS7m+lcmyS|VA`kO^l8NgU_JdeG#p^IRkj&#w|v zmP1+m0-;bc-WvlUqkX38uYX5pqL^gtO;&8)8<)c$h$S$2`c0K+b9My)4C&3RRL*n{ogw$gg%_*m6U*J1&;WYaqO)1Ke#`%|S+yG!?O&~Ep^ zA+~(cz?i|Kr}1tZ?-8A4zGGshY8!?IqHnXkSz;wR@cat;>8a0>7HfXT!1SBqzJEUW zb1|}~w*A>^j@Ww`4ugCc_-5593oND6!gYf-luELL`!bZJ-Rgtngxyo-^9QWzTEFhh zB%n+X9{_UX%bS!x$DhMfSqm)xdfw~_B6?s=kMISa;lPKBIi#%-by3kh)JM%hw&TY~@vine~&_ z8IYc=Ybu!$!y_)9$NXWW2ri+04F_}N+lES6o~az719jZd80LVmV~_Zl8eVQx;K;6l z&weNGMyLo#DFrJcPJH)3O4^|G`ks(IlN25?8AL8oXLZGu3$i0HN!?-C-J4&z4IU+7 zemK6r=kj(a0J~cfBL&<7ug~l5+=+i5^DzLMvPBq*Flx_~t}Nfs z5VF4^ZLo9S|1%R%1;jI9&TEu`2t0|%QJM1I-@fM~CUpf4T1n^c;Rq>zU$}Hc=Hi)y zD@Mj@>mTj8%G_b?a^OdTgIg`uOtp$U0A7x-MjIzALeHvLl04JJP~hBduFeEnYYzbFH&_a;lfmr z$9&F(9-)94`M{%S&>2UrJ{Y`8To7NM7-)|h6lCT)>&$G0izJ-MVfk;-BzcS0pM9Mg z3&8Dg7-C2YE)TN6eDv&B0k(P@RqZ{(#(s|u9^yn&a7YeUvX=>* z@i^-ERnmnMy^ZT}Rl{o;Q%FLpbQ@XJB<*aY`a1@^fVWQ}XIE!F^%;T&!}HnOrZ9>E z{SWtB*Qhh^$baPQ_n$8(-Nf?VMQfiK6seRk89v*TK$7ik_n<|WC}$|xA4dIrHH}0u z!0vLhWzG#dB*rYAyLFJyd==Sm_}hm$_n1B>4iirH%w}qet{+~-PetW@gv-w^Ty&fo3<$@B0 z_Y**>DJJNa%;e~s6^j*n3Orq?G-bMlH?KmFG32Ugo{{eZ!Fz?qH7ETt8h<1dlh0dJ za!G>94pUtt2_P)q6J%`(9o3h@q;c5Ot^hN%3#T}+nLC;%{L$2uK6$9zK?FiV>8!W4&NGfl~;t@+<&mDAeqt@@>nhu)XBd;yL}l*JZz1)wVUoOn@t2Ij2+ukh9lw;s-8F-}uek;h)$TXd2==&9n57 zQFnydOcC-RT(aiVnD*VVoEM9j<|nx(m8dIs7+# zc=5fGFHc`9-A7JZRDVx+5lC%=AM;zH-BUS9H*;?tt<)k^BJ1dpCGiGHXj-gG^}qE7x_72Zlc{eAlzBINmuGOTAF~Jz<+&iU4+}6qd5}r}wX9 zPZ9sUKhJa6tAC+u7OU3!_^jLqQ@h_&UiCZ`k*{(EVyE z=|9hM2SIk-t4mb1_U8=;^ssB)Ya9R6ItJuEN9A|F-qF3-HQ(?#=6Uz}z00k6=OfEZ z@Z)RxpO4jgzBEMCY~S4c_wPl09ZL2H!Y-nV%maiK`Wu_edluWqK z|DouX43~P<2K!L*Kzw}wJ>jAwh;)aP9WNiTak0euW~65Cm+^qomlc;f*Rd7xocKpc z7enycRc;X{uhQ2r9`~w8B5@>GD9HHIc|D104D|JYx@95`V9vy%uCslOuCF);zlwJJ zXX6F33_SgK{V`nQP!h(CNfx>B2eoHTZ|>TqjP)x5-;pid zHnfT2CZN7~l7~Igp_gH~Fo;lVY&39YE3;*L>qeASlcymAlL*Qz^`8fR^EJ>3KV5uQe8sF|p?#t_(fD`@r&)5b=~f+s}H$g<7rvU&*? z>Ww&Kz+UYjp_ri><`sLgg=#AkEiJ=g-U3^f*@eBZi1P2RO!#=v4AgQ4@Eh@3WQfvM z>JqK>+6LAR%aQOfjk%5i=3T%=X}rrp78(KB}&aOg}0Z zPv8E%OMfggn*IkwldJ}%Ga9PrS|SSXU_BqJU43_n6~OcKVAv;UJYGInVPBE26$&H< zaf!zlBZ;DwrNi85#NyOd?HtCFzEh1f72C(EzuCDXD~;2}tiMZj?kkQ1R*w zBq)yQy%~Nu`vQlTN#j|#DpKvOfqm?@apPO#j!H#Guo8!aHIuk;^m`K?34P(2%awg# z=TYX+Jd2OwuKnVJ{02rmgU(hGCbjQOSS5dYJh5%5)KhsPXyI#EI(T_bycZ>ArMtb} z3amxaLF_7U%<;DM({0@49gDZA-nssonc`ZPX^wcY6n9}iDQczbusD2M++YVMg7Nn$ zlrXf|!N`k;mijx+iA5Ext@bhGqCvz{1H%%h>b^pQ8m!@a8u5XZgDg{OM;aWJVr)rd z&KSBFJ}lpi(Ir87eK$rzEwWJTwJDgZ93$87WY)BrY!8iuz8Q)ysIoJdpoE^oXb|F# z@hP0z%upL34_S>BClK3rZ~DKiJIpe46*ij7)OkFuJ(kgVGv;~P;dKun&jXo z%6Z%9xA&y0lWyQ19iQ zI;@~fq9!1E7vQ9(HM?#E0GL3o!N%i{y1$s!zF`IT3CY!FNZ{d%{UxyORc z&9IOC$MAk}8GG6T9G@O*p(xy-gz6aT@Rr;=EMg)a+VS?|@MWK?PwKE`Sco9zJQ52& zB<7ZV>}%l#PV3%12{JU`j~?Qrw(pO;9Ur0^4bBaj?u9;QwLjJf>&AOCiyX1f-;imN zmhBZwSZbQXfP|Z?9dxH>X^kNNC z4#R?}pOOX^f*)rxbA*AUCO}4r*(TQ=e=g8isL|r^{IhL2{SvcnX=rLaeLq}1oCfgq zW!`=x77me;zZR;;h(`k4Gub(X@*ivE0i67$60<>4X@s+(C-pOoKj_}8Hyw)D&r`cg zRQM*fabwB)MgM2rUzU54;YHcCjLqR6ZEtN(hI^cRUI&_n;7!x0Hy0R(1Y2n^B>03U zOIP;AapSM{VaR8S4eEG{~j>f;x z=3oC<$+lli_Z1F5f50j>Z@S9^3$MTBhJXJp1bvsb`FFk{SM;c>5r>R`%P8irTEm;< zPf3bEcI|q5_3q}Fbi=B&itu3>U) z_7;ybLa^P%Ix7o*i4u8HFE#y*yGe1qt69<5t&`7S^iZyTHFE2%;<@K3FEi3rK}k7P4x!SR<_E%ly{){nOoPgEVz%_>%E%9wT@D;U=pv~vS@Nh-8J92i+70%4})R-o;uN859_iuiVl{$LTKW2LPoucycTD_M( z{ka~r<@Q_HkaM<@Ig{>M#x*Wzv&Q zE{+qTFKM;f)2?~YChkDTZqih8Jos{qRNT=zszGo?u2z4h4khHciXsIbNHRJ zm68}d{C6>&YVE80V%8uobk`=lE{*`9#TBWhiLALLqOQ07*xXPAws31j`C}P0A~~H9+URGRh0M^Q96U@f7@h z=f$P4oJmwnF(*wRSgsvkws==$Fs(`n6QU6|sebuyhmMfOA6TcVU#I`j{V48~2j@CN zREO`Kn^#tyH;>`HZ=D@;{)Ii4bIjYa8x2NGt@*{%ig$hOB5R`U-3zbFIbFN{iz*4t zf5-D$TZ7-=y72L@>-yh{>NHAv({8qP;(G~vrVNhyx30T+V3+~{v+FYDmz@1VHEX^M zKg`O>_`+GqcU|t920rG7bic-h8YKReW-OyURr^L7Z}+ozsRf3vEmtaM`byhuUOf|V zxhB}rG#lP}MXUY0a|O}8H0)-CdiS_x$qN?O_7~3J?MW_Kz-X8Lu>PoIc(|GA!i1?_>0Jp-4t2aS6Mt+j`o zdWNoO4+r!NM`*u{>v@US9!c*Rxvf2Vzi0H3_E=TVSd;eni=Odb?TME?6Vuw0%RQ5u z+EcqdQ(v^FfA&n%wPzS8Gi*Auyp&nIh|b(O%AA7E{6)(AC7lIh%7V4dq7!BDiq291 zWhp{uIgYZ7*I7xYtlZXlb)WL;k`^V2LX2y(V7`u!a>sVq)mPlilUC3IErHJhN zl38qH3!z8~@kt?TBBikuEkY?|Un)ywP?pgAe1HEx*SXGhuJhdIe%|N(e%<=>@}2Xl z`U_f}3#arK%{mut^}jl^JHK8?Y+I(nDPvYp1i)E)Tf!I=Y)<7SQY9v-**E5MM% zgjE-*=y2l0|I+pa-0>M zx_Ru>H|G}v0s7zL{{>Al#TvSTLa1=#F8QTHpKn(#9ssxeTfOh{BMJId3 z1vzNDnzVVoy#0TU?bk0_-c|OossT6kPDwYm%J;Jm<^`WhZW47^fY?|Iuix@Y=|vlCz(7@ir~l* z`n}OIdkH2U6hUyQ;(_2XBW^9B-`D#%osbr2Viq~e9xH+)Qrt1ufbWAGw?9Ai6G$Rh zxrc9YX*&RJ5GWeAXv-aj7wXFKbQbC>@@k-+pu z|MTtn@Ic)pf&Cw4o%&xOAQ+Yf(goylJ+rZANrO1VsoGUJPKB1-GDx}Z(UxJ0%z7Le z^@TmlNb#T~S+~9ld1v1z5&L7fPm;!Ure7l11;oq{EAG$a)&`ODP9VJQJ+t*1qv`{O z&G=MBG>ghjKLa6gi21~1B`;Rj=9Zm|LC<3({Q9${CdE7zU|87xFD{gR9_Y<25(5Vo z^+9XULHHP4hN2g_>^0$j?Z%s5h`&KPsxdB(lr&u^i#Ti|9;iNKfD(*gW}wS#IRFxa zr%HEIfIO(r?tMVYG?g700#zAPEtF6ze@2xq2n<&o(KfFbYUtcdfb~W2z06!i$Iu$*a?K~a3Tz9iv7CPGnSJi7`^JY*u z6UZbEiAQ?#w7w7{RSgk@f1&5ST=49B3{rjP6(C=i{J*nb$Ur+!dhIMEcC%NpB>HIM289-T<@kspSmWD4eR;B-vV+uf{3A#nD zOBXnOZd1AGd1%MGW&iY#bO|@bw9Vn}z}ApofWir+2599602M?M0PnWXkA$k~4Z=#w zhE^itzP#Xw8S@MiRUgG=(%z3v_u+FqHeM^#Pj2AX2ckKiDR_|&Z@eKXSr&)$;}AoB zF#pXHEq+~^C+R2ew*MgW_@fZNc zpG)l%=x1^?)k$68S}>dJ&qZ$82E&HuLR`>d5T)PzHgEfB3GE41wg}7 zWw4X8!ob#(lNs3|c(XjF)Mv8p$Jfm314qo)kQD{)*j}Es^hMXtKyMPs^ZLmSPSLmD zPkB<113YujM0XKkcYgQhU5oPRPgs$rnoxZ>$FCr?PRI==l>0Imi$^3lwUkhKt1piJ(G8>pi=huGG_ofC7nq^ zU}LPtsd7}1{Rqx812n0439d#5c$&stD1B5dw!Jo&Adh{U9Iz9GM#KQ8VCkeEouAA~ zjJxihQ(FilXW)x1l<%5`E9^r&beg>Vrsnr1b7CbTtrj%P#hpE7=+AN~F&1isEe8acyV}2|h#80K zOkK9M6>}TDcB7^0P(=}%BPgH5U4QN+(2&@lOMJkDMN!`tPZpFvU^Q3=E3RrN@W0_W zkrwXc3NprZ3y8305eZFQkRTrnf=C9_SBjm!$C!>r`@pYh>=gnH)6j*#2i6Zz@Ccwwi^7#jhFXiS+9F$?TebWSVx{|TD0(Aw$ZyAzTkqiPqoYygLz9s-?@;(SJXdVFT-dzoT8)sK%Vq9~ZUu#)t1jJ+3eP8OV;_o0!8!w-1*7ihQy+wSFi1`C94P)$P3* zkYr33?|J!7x&1l5yHRRT>UuUWQxG6Sj}0vf*3X^>q05t{OJxMIZ&JWkGOGC$=$zRN z1XYCpZrrC;F=%YaRiQVtaT3Of8^_wgi_vEQFR0h1Tsn1CZGHDt^PKiRU0gZ1D@OFW zomcJ^xE0?QdtCwmnZhtc_5x*Be}jOg(6D5ci}0fQ?XsY2-qNRrh4%5HVd+GOD~Pc+?~69zqH%-vCC< z3xn|p9~Oqo5FX1yCN%u}oC8JCF)9W~t2x2kwY}Rc3a6RkKC&B8FpH$l2^Ua#kcM29 zOk`sNmvT2sxr^TmFZ61NpGn2F4WSAFu52k_X;yek6=7!!1($J!b@AOGqGUX+J?goH zLXb5qWOD;90S9C;`Oo9|jJt5eA(>emYKe*oo8xB~K%|1vjdrL{4JgiGZs|~drFDJ^ zry<8EO@y?9t48xuLD+X>2`)Z9!92cj0)Xv;Q}KK%c%fi5;pj%p_z<@@iFayF(yRRN zsf!ji7FOos*jY?I=!ztmtOFe?Ip4+iVMw}i4fik)_ehO95(mtBT7z-I0F#HU%J*s= zNu0wO;?bpiVwRy|oM7ZTLny^~R_xO^K7)D5O7cBDJV3{9Eb;-Bd18f3vBqH>TkQba zBygG+NbKU9W=h{_%n8E-&^OpYHAxB3NoWI3tc!nEN`})*#!?;sJQQz)M_KTT-c*yj z_#y0;8U`iB3nnAfJSAB6P;isfW4>)JFZuWl`I&|YL^oH=>=6isbkPfB!77vBo|m}G ziwzA!lmi$#bKNgj^3*&kF%Nfw>{QK?3%`zI@JnX%D|34(9RF$FnNm& z;FO*;t=p}kUjQO{AdL6ADkPi`d*&#lOlpcMf&?EShsoiOsV`T_mGjEeAix{aKdd@I zSnAlhZCF?TH?Vt;bvT`t@`s#-I)}1 z=jP)e0OMt#IUIgZ*-JcaLvMJKyHiF(n63eur6_=Kic@^p%Y(|Q$Ivz(CH$NJcB(7C z%sDmu;p9gQK;6Wdu5l-jkl#K?Ie%2?KmhyAIG_MFy2wWd9-T=uqP*5)&tUXHWL?f~ zwc`SMP7x-N#(Lbp!4QMvbk9LCFmG}bP6ltv*^RpNo7<#W|5lT}^|4c^LwHfX$Rv@n zk(&pHjz|{?;3UszsU9=C*y4L<1P}j!lRhI>_&{3%Bz^okE;j<1$9u$W2(L6^wWt+&)tzp+^sLxB+ z|A{%pxyakh`~y2gOxxzsBqX27qo&aYDLOB4hI1nn>ecAzpx z6F#Ts3VV(u0kFXY;uBZxkf5iUgVtk*JXKyJJntlpr(o8R@yUgq_s7w#&|WrGgiRA6 zU)Nk#vu!-?p5$fg+HCtV_~1*fwgMeuWq=g1)%dCEvAJdjYS377P*gKGM)8htGMGiZ z1Gcow-3F-ZUUSkBBnUir@2nv3;W5M>Le{0hoQNvYE!uotaIX;9X8-wh!Cgn3K$IPF ziR}0i>YYUL*119M`b2)N##xV(K0bmeAPLl3xu4s*i2wDM9Chh(>yl6FrBF@Z=wFv2 zTYax?`O-A~Qlk9QTm7;rTYh<(mkXmV7q?z6-MU<^>0cG)|De^sZp*(>GvIMlKznPz z^R0j`%_}dXuDou&GO%@JSTpcbRN#1P;M7*&oMzD1sG#N6AokC#pmojQKT*NEt-%Ld z!62;=j_451Cn4P1A$(e)g3+O(PeLWOL-AT+ve97*Pr{CFhpB0WAE!iz>x|BGsix>_ z&AMqW7IcH1y&{Amk-9g(6KywzDmF;L$4^ykiqxOJEPTSd0wB)mK!$K`T6#fGPNx~( z5|eI<%aIogh$BfsWV&_A{MCQVf}SludlNutup~Shy`Z%!TaY6EbX2yxS1Oqq?Is1O zh#u^WCKPQK+!;-%dP2cfI|JIM<>#G^SE6MZqf$-Il)F8Nd(Ltngk``*gbiVUReMZo zKsHObNpChL+KZ|*pLmlGc0@ZmI(T!eSvKZ|RH7;`eGSJxv6JLEFHFY?d(=OQ`$50Q zxs&WnKx(U1!iK3}=+j4?lm6a5eb+J2xuVUQ8 z<>+lGWH+k+tW>HnI47+;d$dTJ-xk#Xq;ZtN6}9Eni)1y&q^@Ah++Ad`24=Qic?&LY zVBXgWqVkln?xR6t(y6Jc{UY+XGI$0!TS+Rxo1SwHTsZM6J*giO5t%+0bMy_TEH*=4 zr258N?dpOR#>w^y{n#w8aV0>SGAvaZQCz1tdxNd)s!A`G3W;6gFN3x+r5^?6qIQM( z%lqhLl~Y}OM71N^_3VGV06!7RWb!;sSKAwKcgycsG_6TsJ5 zmL_V*!CFU!2};gY-2RiFC+r1XUz79e(F}p;ia~=%dQPZRntu5qcN=`=QU9re1vzLk zNwXcl^dHbI6+OA4Gqjx7v~XPUmYm@@*gxqcBF)6=9!}lI=ma!Ti+V!l3(h?G_2<*~ zJt!8-07BviytFzgN}HPo?~CJv=H^$u|3&G$b~WP;5GRB0{+0{$=Zjfo{&h z#eswqPlf(!UK71fi>uiFYcQ5d!+w$ad_q5&GJEyp7qFbJA@OIu^n^4|M>*}AI(N}2 z!2QvLTh-N{6%ySLqL}=C+=FaJ-P@-oM>;$Vw_1dIe>#@&Ge|^*id&^gxk^$Z`l_(= zeA$U=M;1bO?1Op#*`0cs%QXJ5lq%pWLz1bdiAo+%7cFnV-6}Z}*=xFvZm;Z{s$BIsUPzi$b26;nL9MZq zJ;GJp_G#`>9ClC>XRDX4+8(g~WSN)0Qu@z4vy#iG^L9F|ynnirqo+?+RZuU-|CzhZ z%dXKXDNQ}Mh8#XGaF3xFqUA5sfo5PM+JQU$IqYk+g>fAN0-!762Ck!f>+)@zb*YLQq z;-daI|2|BNvfmXeybf)01CcNr-YAcPDj$ zvj!3d54M>OiXkl}-NF4h2WFj{DfIuo;NktZW|H!6DW|qcATh|UbLqH*X~Ovc>WU#% zKe}mtuJ7auC~>v!>%=FyAFJQ8MWse&$sFuBYWVxKpE_pqAo$A1|8PG#y|n+E2<8mf z!LFt!;+|rGkn^y%$?Q>HmCM20g?kJ*6V; zm{RIxwO;NSqEe`7CL#uh7MnxeUL&9k6@p9g5hsscRaZMVq&RqHJNrY~XvgX34>>V2 z(%53D>e4&B;GLWqDJ-I(|7J{5dYXCqO!Hf1L-S~L)Zf*&(*J(IY?u_V4;d0Cmw4OP zu5@?r`@ub>iu{uEZ-u?~&ec_nojT-li9pM8lnJI~-Bh4EiAn>T0{}4BWdI04L$qV= zz3)y^L@VlzvF3WSfruCaGqvk_x)R$@Ks(lunw*5zR6Zg{9yEj^w7=YT@g~zsv@QoJ zHyGj!k^mu2mor}}#;GY-gN(%@T32>9SE@m^XId{m0yx9t-d6tVRq~OmLCUdBq&J1| zK(xSN_iR@VNe72m5`T4zN5x$K>XOvunon?2>D9Fh?#&hiy}KG9Od^-$!|$I%k<+tM z_>kDdn$h|0EMQ3JQhdXP=_iz>%A|MO(WUfDI)AHsdb%mEzF_!zrj$axOh)0J_qOVs zkNFN_j*Tthz2+9mt2k@2pBpl>F+x690DCvx=(X9{`H{<5?SWPpJbkyFHUtKf95VD1RxxYb3v88&7Ihm?me zqnY9qy_AY%YiExxdr{Ccgg0?n)bo{LEYywzQ0d;O$U>c#dTC7xa(s0H^%70ZSw6|% zpRN$5v1qKjQC%4;uSX?$AJm2Pg~4`7J&7R=i~OcMpxK@jaMtonq3hpKBLP%8(})ZH zk_3T(YdybHg8Y{yxxiLSk{1%sCFhgHt0=MflI4Tt3zn$UI3_3Dvvrso%f!*3I()JZ zip7o&%bJy|NBkFif~3iJFSs#QvFZl4*S*9A{N+O3t*{k^aA5X<{9Wm$r}l#2m_|Ns zjIk#OoQXpV|EI-1FmaEsd$?RJTpHyz{irnYX>RMp4Y>VY!iq;wbq~ zo||f3@Xt6u;di+TJXCycKCENtL1nu|?!D_%CBG^>g`UWDES!yZkOpVb1M1)htG^6c zUs{Pk!^Mf9SdX~&JTzB-%jkbIai%QNl~?WP(x~o)+;@r7D>JV&U6qfL5swPF}cEkq@)q#kQHcD6D0A-cy7g8v}7mMzQm*c>F($8?<9)|3R2U3~hp8Rjc{c8qZ zWgW*xcwh6YAJ{UsHxykoE)t3TK6apX=x+ACZyh~hp%iWR;;))s4b%4#&ZvVQouL77 zksRq6LK&1Rv|F-K7O`=ucUF&?h6Q#I62ySyBxC%bNJF zlkZ2`L$s&L zv`T^o+69gBVRP?tA^@b1*g)|$a@s2@z$4*ui~C9gnumqE!pF$rTH9$i0QFz}PwcLb z9+S`9;`()qB!E|h6EHC~OU3E+OC&Vp9viZuK6uz=rXou<#U&s9ic2^9B?EY3jSJz$ zKC*lpZ<6}M@b(PK+=qwldG6n?>y&z!Tlj>%yC54brRi=h0EIyCF=U0g62v|aeIT2N z0p45XX!2HAF1>u~v3BgM!dKDPmzqB4b>6nKD2TNM7BTYGP%9&O^}#rvrd%LFQVoP2 zrv1nMR?cNDD^=BQ&h8CY4wz-~S)9nr`+L8PDew)C5j{iMw9+`-W9JECs&$j8C=xku|6@28nUj8;m5Pz!2<_F7VxkF36o?4OL?tn5~5- z2}%JLcXBtpgc_Jgk)d;DT?Xk>7vBcO?@dsu45*-%lrGo_A^j389_&jEls1XXoeJ{; zW2%iL6kR)hCp&OxHuNOF-{YJC-?XyF{feJ@P35!_&N6qePnHI-yB|h70rOvBC3}mtdxXf!E7@HcBLh@Mn zwK$xo|LX(m$D-(kHocz(>amBS73IN(>ww46#}90?R~+}?PY=>bKqmn3KuOJB%@xxz zzbo{@m;z^F^6F0FGn5JCTozwBJwfOvNr3xU?>B_%J646umBsPlvzii3REFx(rrho4 z#~*DX0Dm~?3*fTVkXhRD?-3qJmwLl_g-LzKr^q}<+lC}G{N!+@VglMIcx5NxG;j6T z1JuJ`DYxWLB(|DbBe$nXvjM>gHPMhv5svtu{GB|LWC$0F)<}vRw!~9GylDE|(m+Sr zudTQ>x%OVy4@o8?bMqJlD*7|=klx(?OAqwwI2#qff=&38w^`>djzwWBX2>C!|Q{&ebe;^{77nqnZ6|F%?1`P2xG3hQh^% zrM12NSrHT!KVFIt-hKYZHTrhZ)n9Ho+uTFGm|F2~w32oKUcCn~r5(OM49DY(#fTyQ;1{(Lb8#0vWZ`^86)|0b+ToDvh~s-LMX+a zkm6vT;^dd&%t&#qPC1OloLfq{fJpTuqa_U&w5v;L6a<4tU?iC{Qv4Wc3`Tl2BeS28y~M~tq~{UR^Uc!>{nBqT z(u=FpOZwAGm(uSdGRg@V_slb@{4(w{G9Fa3Giv%X>XtI<5t)sI%x3e<$9|bl7?jNR zw)h85{%v$zXLV*5A*+Xgdq2d*(}H|ID^f!QLqC8XH6XtYgPsqe{(GXapQ5Xm2Z~|= z0+%r6zL<%z><6jYwhq@4v=Y8odqdZc^)6jY7U2a~Sb~RKg_~5D)pF<@*TB`t8LH{f zY!0~rDQSlr^23UjaeZ3S5ZX+n41~gEKTGbl@rkl>88@A{3pBWjb(v{-N4h`;Ti5WM zIqPU%W)vE*Cp1=r9S4@0ie+SHRdkU+^ro=q?Ue-z4N=Ra1MOyM>Isq z&gxs+|40skv^pzJyXWDYXBY%;eHPk!D-yj zhq!<*sDF%`H6i7X%D5nxu{h#6bsXfQAgG}L%`F5`6go+~QOsLbp{(d7U;t6im9(3! zn8)0cqMPaskxzuc!OUA`(iME93b{Atep{TCQEK{b93;ic(|zYH@BMmc}Ae?M3g* z?@BJkqKOSK4si7`B%o+_kM#r!W)4+@g4A)8OMSFd{N+tKF0U`i`7aT2~%E*YOMRPSQoca?=f~CI8#kmM?ZTRNjZWi z{3X=(KCFgxL6pdOD7B&)BKZ9*a-iWRFv}%&qRbI;(=i~lf%bU&me3YW(lK6){jk+dq=B+>N3HoN zW(d;ai{>x1I!v^f1YmNnw+KSzyu#4snR2Teb+>ACYbYhEjq_lyMn)di1!BnF_KIgPc_Hd-~;V-Gx^SQ#k)^aa7+iVP5M08Avm+fA{zjUnS% zX&rp}#jw$kCI#Jc30B+nng^ISMO+c>c;DK)9qrgzUFJvIAA3(n=p|P7T1=Wr#S@-3 z0c`zJLmji-r!tE#tSNsqRG~({)Qm=7^Jyj<@egT&^>n(Fy3S}n>sJEkFF}Df`Cq=l zq_~}ADN)CmWk4=$rU9wy-g*1W!!I3t|2;*1>UfB8>nzCZCO<&R5W$ib&3avqJsOX7 zlwMTw*{Bh1<}tm#UIJz~usj)G(Sfsas&nG7JpHWKI?EnpLa`Nl?6|D^_@oKbCdmiMmj~=QSciOIVWFn%NX84@?q zeToy1%WM+sXv+-9&&%rG{lsz6wLSN5Tq7UZX~IesVsUnh{X0V4YyBcT0b0$awM7w$Nvnz|X$fpD)*a4jA|x`15lx_h{(R z(Qxb0$iUI)?9te|(fEPUt3O96++(z(V@cLyDS=~Y*<?3iJziWlUNSIV`g8m)_m}dcU+!6dsS5mZKl{rAO5K;5fiHDGztnS2G#;I3ww`z# zIPoNVqP=dSV_@R>&xse@lU+wAd#op422S>6Prk03d^<2X@N;sIdusUT)JN;7Pk~dT z*;C_nQxgMIQ$MF>xToiiPA^zbe+``eo;|%>H@!MA{qyJa8u!fl(V0!_nLmLu+u1X_ zb?lkFftdsN&lxuNEJ!8a-oKO*@cvuiA%ubFd#K9yaGURuLEodVeUE+gJ^uaotG~We zc$R1?OG!3MDM3qV*Ot;BEoHu6%Ko*K!?T>HvYcebG7!(MNkaJz_P{CnXQj~J$YF8r8 zlqK~};YZ(L0uc>dO8GJHOHzv;V9oyc7=*pflDca6b6lUV6APG@{haAUuO6;e{N zJqtC+;$CC%@~-o#u45>+>w>}S!a3`r_3Pq;>k@10lDr#u)eULe4cXug`J4@f`VFPQ zjiYNDs=S+Os+-4bH;)HzYUOO|)NkqzZk}A*JjMIlK=rqg?QfId-)1?#PuKsp9QXx_d*2Um0UrNr_<@&9F!L7ix ztzh2mP}S{l+wI8U?dY8C*!u1G!R@PS+Z5g%n(9uH?M_PYPFl`Rdj0>${?~SLcz5$u zck^v`3xjuW=Ij>N@0JYimagsI<^5Z(`uCpg->Trh_jCR}sQ+6t__uEDZ$0l`qv~F> z?cU?yy(c+)?e%*dgOt7JYkMzv_q$a0du;b#2JiRf?7yzxe>=E8u(m(QdoZke@X_|* zQ}DrP&cS&7!NlOf)Y`!e@4q?Ke+#z%z6SsMp7U?H{@?20zn^RW)_B?Ls_ac$_Mc$( zb`G1pThHDbWFM>@_Tp#&$|K`4G;5H|DX8KzHZ*6%;FGnfbjiOQc!cuRvPkXX`%2f3 z->h%zME+VF|M=au%piqF)@@|TzVdXT%Ed1u%MR7{RW?;_pH`e|T^|R1{qkwmxxw@0 zHCgx1KU`Zbe|mIr;`2}Uw$QKdtK3I_oqHDh=hxSX(X|Uq8V9eO#~91AH(gNm(&X5> zcYmI&?SCHQ8yDXd9}oUEIlf8p9V$1;kvsS0_vMiXPW6|jzWfOoYrHu4-?@pcz{&Q= zwQo}s+rhJ4DZKLMCwD>@Ul*$SPEYQJFAZ1O-akL}H8ZVF*4)b+`3uwg zvA>r;)%(s&AH?she;vGkVdme}{oOxn-)Cmn6aXR+LIR^SSR^RMF~k5SPKjU{AfyXI z43SDLEJLniBOyjSy1!XQXd{78V}47Gbz=bs$50a?_lR{95$}RfQ?Y=Sb<-o^BcW#4 z_}}YhxFmrvbE!;?4Re`%$FS3KB@r8^3HJ)ZEEH>6HY}8zN5U*sI(~0h5_<%~t<>LY z9LgUb9mB0PCn7ejwHFG)DK;loTQ+Uh>e#0U2OHf#za8w11S1{KSROxw!a6!QMLL~zkNo50;$0Yd)-B-i zpR*p}pCX;l$N%}`OimJva`DPMzUAVR?-b>FsU&jC)$d+ml$(Fe<1IJJmF7=T?m-=Y zw%kK{1fxB|-X7ofi1_FfeJ*Mua{FA&LSgjzxYfto=My$RMPEqV`?Gz43K5DS(@~l` z~L?q0eb{yEn7PCR96*S9Q5D9*1UQ}eH1W&YW?%m0-`{k>d$??#;e!{{IWhKIN%X(i zrF%CM<5p^({EPelZ2hl}?SJvC9$`wt##=3R!tamHl&f14(d?@jlnCr0SjNutmFjud zqwEL1Y9#D@bs6mN4C1JbqX42m3{3YOxFLeZG|&&Sa;+VQQp9yo&5kNYH$4?3*NBFf z8HsQb88Drtu4`z+qmxh=rO=-i^&PQO_s6v@mlYF9yfh*K?G9Vcap_-En2`HN15}38$R86Nxbt4Q;};Z z^oDqf_Ke2kO6nEXo<-|?7`_I1?JcoJKs!K5xk&;hN4_ta)w@UmUVi;z6Fa8**svU~ zSa3m_rQ0EWWvuu{rTkJq|_A3y;k_wpS<1RLl>wB*?q+|={e(Z}gXh=3u4 zyF3llHf)e`qBrd+(LDa8dtRo63{w8*l9^e>89H%TIs^?|bXd7?qhLX#FGRtpNzDOx z=A8*vfa~|VTnkrjy$^f9N;&3ni((D}cH@nJ2!Lva^TN#{nDU4w${4*ercpU6G{bq) zi)yzTl zmj?S8V4k*8ke4r=08y6=wr?N?%M3wQht_wIXzAQLM|m2Sp*jFlxGORvvg0}^YO+G; zUCbN|MC9}lxhK?&nB|pg3K#5h?Q8D0&%@(Osi5JpR zjyp$W>I-H1J2ig+9-Y^03O|azL=gu%ejPUj0hBAAhpNuhtH({_Q&#{z-7l!&6wnPd zv_+*ePPk$2sjwk$6fm2z9*8h>bwTfm$zbA0W=AXdIB8|^V=q5H2H6e6yqCHrQJze0 zq#>CNO7>XfL-!wQpMb71=oPTjEAg2Mh#*K%h?)-M&`m*1@>s;n>i|V<40|FDNtxgv z4FvOiyN;U0AY6JR;%v}@L;%d;3WfMk4d_-RSin*j@)8eKe9RLkgl0-ac5dDu)%&XS zok2Iq<%Vf3is;r|)`3aQ(ez@l-pcn3SSsk}H&fvTI2r^*P3yX$2k4U#^Ork!dgMEo za_`ETahypdA$r#{d=t!BWJ>D$BoMD_b(29N9|Pwzhpd8=4uyLQEAvLcb*Gzjq6|8K z^vQN5_DGiz(Ka52$p2ze{Djqay6asxub%>a#Wd}{j>i5y?3k3OYPr%-HhIMY!C~-@ zoSb9D+yI#Sw^bX%^vD%_|Ajz~&b8%=co=YAB0!4a^KoOAhxKp$F697Dx0FOAD>ET` z5bD(G^BIW#oV5PJ0wS1j-&|adi@|_HsR$oAUw(#$AMFeQaUAiOR?S2SAfy2BaXTuK z05%xX$VPXKzoE&Q13KC%;bB_W%5W%u#FYjZK%fTN!2onppo{X^>eQfW_{FhD0XrZk zqG3Qt3WY{I4z#5PhQMecDU$t$p*Tix1KhbfEy#t#T@2v_^!PJVB}IB}6X6gv>|}My z#W78wTFaZ1YS{4P&n+WJb&sw`s^0JNi$h87L?D82{|Ng7B(eaY|bCV_E=1Achb@1Wv|Ohl((gr4hd$_Gmv#DGo3(@#%H2 zs&}kS;UzP;#;WN64Z#3Jb7`Sj)EV!jn|sM3V*p+Rp*l+=RD&hjAjKF2KZOiH$$fCL zUZ{*&_>n$nG8JCbCqf2nm}XZO``#;^05#A=s=-heHBJ#B>O!M4+TkwkCTQUB(si5l z{~KEZp;DCl!mUV=lYLPMW;r3cOm=2R%1}oX0xq(r3n27>u?9Nx5a^lB83OHf&2-F=3?SujkTi)dMzuQAm$pnU8E(I*TnH0IROWsvMCn!+T(OzY&A@-ULFmwu4k+7!o1? zQX8=#0~R3B9M}X9oD33LWbioxiie0hM3VIoJ-0|DjhqrxWEfu!19l8)BB?}23dfZO z_=;Qiu`AtyI4CW*JD~wqxe0a-NjX2(P1}Kmx^V0Xz;{NNfn+=1hE$D7PRZ+dzP29j zd6);(G!uj1c}ZYDAV?zHcv$7!hSjFGp_j}-=$}J;98|O*L!_#g*NZ@*Kh@Q13(dp> z{dRV@?RmfA@pZ%e98?U42}O|OiBO@v$bp@_;4rTs;Yc7u7>olLMnVstxDoCf`~asB zOjG-{BtDc|3ov|-ARNupk{0a#x_!79@Bz!M&CM{nnjsIOf|3CuO`8s9KILpP14M9@ z>>7~4ABV~k0BcSHW*umUdiKr<2{cv8aHQ&xnf=ir|D8ip8HkdljNl`8@BkpeL%NFH zNW0i+8cz32m?OY)APJ77kRjqM?Nqyl!lVwE1A;jJ8c{+N96EjBxi0zO_3$iI76Eus z(`ZBs9)wb#9%CuutY4vp|I1`QS;p&@7l&GgYu%^RS*kGt`ZOzrL|{_-=}EazSrLY5 zL-I>HU6;ZS;)~%hE7CF9fF7-}q>-J~nw;H{DatO&r$yc+lg?gDfmg16?l(rHo_m*8 zYH^HdAsv!@c#aW4rvO9FPb!ioGZ}$`2%fT2v>ke@z_rvMxy!4qHQMIkF;1r@ zHuSdl5JZwtH2{#3*7OjDOwe~X8^b;7;S{V3EVtZ#;LjC=>JCWNF6I0ZOfUqt;(z$I zC_Cj&DC~o-pcyD~H#=D#AoU!PK|KFz_<{rQ-JxY%Ne$}nxm0bJKc@5U97FpG#TfIn zC(S=e*9S&pO{O8IuJl%)hn8)*!CZ6U=j?1gaGZmnr^b$-6Mqiyh1t{lpTvtZ2CD4s zYNy6IfH}b_tjQGHz#%?hYE)v%PibmScKUnax#0o%NkP~Y`{K*Nsy5f#PXvfm_oXg_ zh{vkj4wABn$g%Sj2#{2xN|2x+1W75bMFbs>bKjia@AJ29zI3oYjxak15))yZL<5{? zhHM+encor6`~=npfw2f@S@Y}9?r~^3!Bxm<2`{*-X*LHVDFmt@i(0xWlhKRYm~QK8W*ZnKNMwbu2@*AAE4kRazaQJ$6{4 zE>0LJocy+6;3eZO#NZ)4nEWksMB2y5)Q4ubC@yW2Lwt|&1AITzIf&2#FGO`DU`PPz z6Ao7<9VIbVBOb|B+cX3sE&%@pB_I|w@iUOxHPb&etdfW zr^)ciYV}V^^$UIy{O9sh@e4n35^Vlg^ceg?39}!L{j}Yv=Pm8(LYZ^ zJN%n+fMO0m3S^qdtZURUs1O5zc9bN}w+4+gCywN)&t1PA@Gfu_bsk|Gh``f9oVkFJ ztY@S9r|ZeH9WZLk`MIZO8JHLVT15GlOid9NVsN#=ao6M%V$yIz46^LJq(0+?c%YK$~83hhzVE?SZbA<|OA(mT^< z{tR(H?Fm;w96iOj{pt*04p_KoL;Osar#5IyVM$A6q?RXzD7+`jcIG&>IO@E{lW^6w zp%Gbxn*8P^$8Z(47FG9tujYl+L3-l9#Cx)PqO zzPT^EnrsK+ot^!sh!8v<02(^QDa0t+dn%Yq>rRXm$(((rKX;b$r~7>Ei?a;-hEFLC z5Z=R~JER|+rgN`UA^{Qd!2;r4YsbK^A1NYdv0HPVf($=Z?ijl_`wCQm{CPRN^Sifx z|LRt%va2jrEtJB`$xWr#yFXMOvPvFHGDCn>(TFe!L^M&~*Z0t zY8Ooz0g{c*hYe-Uvp(_dB<<+b?|SqQhywF1eHQ58Pgf;u(-6rk-_{C`QgMhB=Ulq1 z9RecHh+_*g;=f;nu}{I%LO8dhslmT8j_jCzMl4W{fOO#0<;pLq)Gx3YkYfKOdNp8V z&Ip!c2&&qMs-_^906P*$ri?DbLL3o5IN7D#ImI}?lN$Rk^-=>I0|yd5f0vy7-g1f& z?Zx3tSW5B>17bFmvNqbC{WNOBO4^3PKibLHRfn3VnJ(Hfh4-&$470%0h@zBwaX17) zX?r2eV5Vtz-%RLvVh@l~`{WUc^RS97dpK*aA5MKOdGO(`gN${;OW%aoGy8Ak58hG^ zJ_r*A(h^dOpb)!W_clpB5^QGssyC5pDvYooK!cbIjsN+ZYXMjZhOm0LwGhmkAP;9V zdbr*8U(F;mex5NiW9WvQPGZnIQYoLR_^Hqz{nBU}CYNUP7*YTRX)|org&%mH0&fc= zcFdl7MEhV#!8C*u6~NieN=QNm5jYSo6^;f6#Pk!`zqFsJ@SOLmLowYj6|Gl}RPXTi)Mi7Q8jNf{IS(LAZ_W_tBUJRka zOiuS&(tC<{{B7i+J4aM0Le}y#&93Uqail$+6NcjJ&}FwJayu1hh^6wKgr z!J+DnFLGEQHHIvSY2{5L1<*114`9m@eUskfKbikW(s}q({r>;|bp{R&&fyptWv`H( z?cm_pd#__8WQQa<2glwcA!ToQ6G^2yhhy(8NoG`t5>4ml`}zF~*X_Dpuj}==o{#&z zIRz9;gW%}&Z7Ty2sSNpsHAq9*IWXU!w>E9dWK$9LpZHq4pqlKoFwHvDP6`CU;1j(tu z*?2U5Jk_Q^Qac(%Qqpc?%~yB_+ZtnOB@j0-AC?qyFKa_-Njc-uVOdJr1gpw?!7Oir zY|NZ>DyRgg$S8<8j||RN&S$&8DOkdihgK@F7W4Aky&?p&$qw1`)3p*blV6MXW0SE%dpMVyY<;PRR*oI_B zFw5az9-|R~vbi*19OHjI$IF+e=)u^E{HF)zbJLIroi#ENStg*T3#5_=Oy#>I5-aEW zyT^I};j+y0k21HBQiGkSIWsnL!ldTgLbeHYNRq-$W%cVqmj6pTNA%d-I;VB|5mby| znrkIS3T%d;u#^5)LGgT?N33XIX#w?P&dy^zZ_d``u9XaER|x_4PQ2S0N%4D_BrKX- zm?2cTwa(0E91A5Nb+F)UWEznU5GCs2?x7xb7nlgfV^N7hb=}`tR&<&Qk7vvVSqm0@ zQZy|WTv(28zq9Oc>q4K`{tYhvw=+G2?!&GpzXLyf7=`t~Z_$#}4$qGmgaJt?Dg3Cq!6vyNL6(4>!v4a102u%uPUFfdfPQ zqHUJL`mf=#Bs$2$^0VLjj1(=f6^J<*eaVC1h3EWK{(EUh3xN9x(h5?!A=Fd!0(2ekBZz3gY8vLx{iuW;qv>0ga7SK9$ zS8=`vyfUM=g!q{-7qoxItCYsqyb}~-r)FI8q^%yd}>8v3Q2m2#zm+cO{+W`&n= za7_w>_vh{;*$Hgzm4Lhq_j8%awo0xgJ@EqmMn0AkPGH6|VbX0oy{dM(4CNSVvQuO2 zFH9C2C_S0Z3Waa-G8q}guOWe$xjuuKZ%u~oL_4+;N;?-V5W~fPugNvJHJY9Ew$E@5 zSOB9qWz~P#+6a0hu=?Wa&lW}F3}-C~60OhFv$S(&-wmuoFBJ#{^T<}vU9DgQD)4P7 z;MgiR$Zb)`#WhG0T)1Quv-JA6NG{%Uv}Ed7ROO+Od7dp9aupaB4>_aEeKyd-#oagE|05A#* zKHqflh)NcL=h6WnkSmzpCqYl>z&~r0<`2CO1EV-u0h``)NgM(Qlcq4OR$0MwdKZqL zS7!Ptjt2X10(eem!8>k#nE1a9E&5<`dcM#5KjuEB6`idYuZ5}q+qg;s%an4)kO}xRAWF~qkTs%GXm?X&l5dd@G!#0J4REGuT+wvc1D2l49j#$6` zD#1aRl<;;k!U0v1d+q5`e`*GB9J85&fgdaT`Q26(w@cpbeZ1PIIuZUz;o+CS>(4yB z(>4eO83%hi+7Pv=go}!mj6u74LTc0L?uyks=TWhq+D!f<#oEh3pG>^fW=mHU>(%!^ zStP2>;j1nxHU2L)SDSBgS88_I|LoAGw(#VU(&HOJUtBiT7GJC?{dZ^oiw8t~srRCC zdq&Wnw~+eV5qIT|2m5>1_0*SV9w|R<4%)xrt^RI#Rr%RVw_Ss1^sUv4SD%jt9o($u z5r-cIym+^NaH~&!b=bWZvMllS&Zau`!|&D81_eA0azVEE1Nf2(nKAfKy_uikJj*5X z92}4$4^+BqHjxxM8Hn~5j1d6VKqHbzz30_hi=8H=Ry|1w?>7hF6a`5ebpTw?-SAYK{`1Iwb=GT}H z>L30boW6l*9VT4TSU;CM^$BSmrF&>>{vRP#PwQKL`FS!M@@v#v>wD=3jUDx`za|s4 zj;k(deliL9JzK5yqsc?_i_6#Fi+x%rPpIXZ`#10*f8K3soxb>>`Ss4%KOZ34KYK4} z9c6_4-4xRPHR7T5{lVA2J9^r`XUesHG>82A;;sE>`GeN!%dh{wCTjoPxTO7SH011i zwf4Wy9@>B2eLXwv(?0uFuKn*z2=&jVHud)h?Q{JTl?uTD3~K-@4#bVCoL>M{xr4nN z&lyRfEBI`P?%IG64yskrd5yrQK^po?f!g*b->v}1ycd@R9f89NW;0o z!vtQJk=v-xXinrjPc0u4UbdOMkOffd70mMRH)U&d?nEeTPB9(>TGBxgpqN7xz%Kw< zBC{S+Q1${ABm$g)#AgcSkX+ZPVWjE_;E8~r0B4LRwr35Et7LytiGIG$W9`Z1PT_9C zurx6yBL%FM)=I9C_?AF@Zcy;lS`xAf7XFZ72+hJq#>I;^B(0C20E00r^A2-DU8^2 zq?2PAngEEoV`NIlAg~g-Y)1JeCWv1Zjbef1XTd8~@c$v42p7^flzgi>)T%`dsvWU{ zGBG4MQEyclA*PQTGEwl6)J@?Nilj68^5;s`w_YNw%hJxpT7q6HN7d20=h5n#cCP`t zbPXbGo^&V#KSWdU9~66Ow1}54GU=&p(JWM19&WOt;6PyIt8KvqHwsfU;T4F)v_v*g z;qNLIHU?*+Nd$~L(V%I(e+A6~@8g)!H(RYyej#j{PSjzh7&Bmui?)oIubF@erZ2X% znV^u%_({R;8l!{V1&z znBD-SLI!cxnLxSVia~%*PyrAN2Dgy;mTJj|wI1L)bnzCt!ba5z&3FD*Ax?3fxrRFt z8b2EKQWjO=Gxa#D^=V>b9}oaq2=HFvtJ@-p`yg<{>{Srp6E1LlVOEnV39eF!ZmWYE z;L%hNjD)0^2<2`J*@}9r`C^AevHZf=+&Xs#3_LS|PSICw-WN_Q3e_N?Bhc)fY_`di zFb>qK79EzoHT2=Ai#*yjVJCtC6Df&_?yY?lR)6co=*~%;rl)(bA^In(zd=1)aFx{!rqlV&(HgG}Dqd(nsWH|add zN0$BeJSI~zOmqufEK$o11^$j+a3qNhq4{DZ>cNsFMYGtNUCdTM>A`0~ z7y!ipucmO71L*q+^_r_DE%wd#8HgRa&7EpXKgDOnNzRnT+S&%Mra!)td=;s>t-w^PDckISg^Q`h?Sq9RLC5itwB>KXM z%JdjJJoD#K9bh4f_!6@}>qRs`XDt}FU__luit_X)LLwiU!N=f_l`ky$V>{r$SkA>Z*!2gXR4;+ z4n95-dkqe>i6OmXAnZlU0EC0v*}*@H4oDl-*m1CYD(UPbko#Y{R0UWG$XAoaf4VKd z#^)u`A}DGd93;{TFjagdE6$Ra#DG8mYki1z4YiU9Rh!?CJ%27%4qaSbp-X8~w>zXw z{Md3pR@ZDrYlK4I%re2gVCFa$ne}O90sLx^3OyljnzVZISTmsw#z+O3D=W- zZQM4@Kw`Be)4RT%j*{ter{GUo+u&lRpcVp^Zirt6wEr+hmgBlV9peCJO8dWT;+r1? z327aA2I80AHeiKBf9@O$Bn=^?=up6MX~v~LG6Pt&0OSIbYz5DQilYf(i&V6L2}wYV zpOwXnpL#@g{>D$2&(w2-vHbRY?hq}!b~4b$_NIXI4v9ObeZJQguRKtJoH^8=nv)ds zJ!}Yrcd;>FVv=mMmeib4;fJUJqbe8^5L>@wpE!5N5#}f0)*FvY-gGxmpevBunc0DU zmZxuam6j9_)sVyf1Q;1f3fJ2)$_kwM3VazDWk{0t4<{DJ0Tu`vVM9Tr>_Wi=^%Uqj zGevcjUv&^*!pjnXmiTTbxuN1CD%!7IdvHx5Ll}+@TT0SO`SZOOn0B!(JKmNC(RL-aDDW$vI=J>VPWCz}z24)*j5@!}QiyrLN+Nj>DT zsrM5bvn#+#CwAw%#h?#&I^{$@;zjOvJ;UREOGOC&4oKJppledlz1(4YQ_<#$!t@xJ z+e+8T1{}zQ0oNqTVPK$U8hHmLi%**jLx8;r@W;GE-R$PPy&|&w5Ozc1+V3A?ao_bd zLeq4&7!&K@OOa-jZ)*4mD}GW-@6E#@14CkHNXNLGooyre~k7iFwCH^w&*Cn193ADo6U)e^q3T{Obwx{ z1nv?^=N0l=N63zn&=nDjP|{5?<(JkcVQdX~($6$lh!KgH>nT3sDNu*hAn|lWTF$bf9kb_oOt>9Oa@t|qD?X= z$%6_A#-rB+>E(fL9Tv*P<8S)p zy9nPie2(VFsPm~(qhkn!CUM?WRbGq^_cDQLO^`+9u_c%Q>4H6YdHcnL$!E`bL&ObVhc*P_Imouf|D3Rg8K8sS+gPtsmMd|@*gOs?R+l! z`Dg3jVTLFBPzlWnUC~_~fj}Z&l?zbc1xt47NEfFR=r$Hw`(vX)m*X}S27kN?%oy@> z=ovG4g}oV-+?^5tzY=Gv`sq_;!cOZK#*~-5Z-oCy8T>>Sj&-YiW;3oK{rznaCsntg zqmyLXQ6AKA2E}kaZrx#ot<_~MDm)o&q9_xuUkUq<1>WZH3;DN+Ndrj4C;b^BZ9qvR zamy3e4RuB10O~7FQ;Ml+Kc!2adWSUW)jC^6vCQo6w0U#onpi;9q3AVk<=&>!D!w@# zGcKXps^^OKdyp~>)PF$j%o;~PPmTnUGlKDjtqwF*cHEFKzNs<#QlqC_edIw8x-ho1 zRbxzBNToy_8*yhS?hgi!=*bbu>|)Ejf2F72Ax63xGdtRvhVAKf(6I5+FmkJvuB;We zn0DwQ3+2^1J$hw96y;pjSx^W)*Iw0^MJjKuNX z6v(-y;T7J?twCZ?+(6lD(|O?!W;(NFKy(AI;Gb#EH*0p@8~A}Ed-R*>syJ-mo0I?8 zPSxN1WW@a8xxUSa*OAr29550(P2$u+m=qo!uAdEp1SkOG0Tes=33_^IY+{elq_ud2 zG83n9EEkf1PM}2^OY!?;0U%cKu83c(zNRG#{tKPA+3GPc&G3`sUu=Gsm3nC$N--#Z z>spf%<;dTt0NX|z?*mgwBCTC9E7XxcU|z)GKj+~hCHx%@!ctwpbXVjbjv&MCo1Ye* z-r)>ccYk%~*NL>`Epa+VWH7AwFp6gKKe(Id$sew7)`MnZhF!5GlDM%4s<%%5UWo9U z4pO3%-qRUapJur5U(`SDsKB=!{)=6Ad2R*2e|h`#q82mm1P z3raHt0Du$I>E?Iq_j(VVc^8s_K}ls=8<$eS18<*1*s_DXAqq{HC8@K-aVGjEr1$4KrsKoV~q^xrLpgGTPcE zFd?BqTU#gPzeO8cCyarahPJhr_ceD9FQ04I)im@Cu@*+gR!+|DGI%*nH#bj5rwB81 zTSq7NtExt_@*0xTs{R4NRaLcPV`Ek}u7+6m*t=EIvg%rBEY`?UUO_`vLD%P6kh4pa zoqdR|p2_{`SJ$X% zfu&`L)+An2sQC`(3_HKgu`EnY&gqd49iAg9%-^P1- z#<_dkx$c(|9bIPW9qW5NSY2J){svJ=%j{-E%zytaMih31D9Z`oT#-Mvwp>5*MRpgED-}j&1 zb12BGu__?c=oXA`sX*9L$OUl_F8t*b0o{?##@TwyYIBOfkBy3Q+vb4xBTt(b|I>?P zf*M!`VmfFcLr<6fOv9;1)UUUmhwg7CaTtfC$J z2ZJuSr*=PifU32=TjgL=Zp}$ayg1JlF2^1*zcYaGG<|q5}Te&fG^p3glENO=BdNAiXe%*Eu8mEsmKCU3D zyG6fC=8f8|w8&Nkkz`%){9aXP7p|Qo={9tcWqNAM(uTErpj_rPfmZ;*H;Ry)o3ogO zA?q2!QTjUUKm`bpMG1p|n*b?6H?7AiH-pB%9wEjT_K6?6=7ypN*pqEPV!V?hGSPnp zFsm>i_q_i%qJc5JG?1%n{DAjiqjj-NyjN~H81w>BiK_C!i|csCd|R*1HIV#dCT~{9 zB`d{hh!8C9{Z^bdeouH=7Yz=jFj^!Nd;Qox6(c~<$5ctZe8&FVA+$MK);nffrHFl{;OXli9e>%vOXZn0=;c?$nRgRK6k=Xl}9SKWK^I~y#JUjv9Y;9u%fS%~BGDN$tYvSp)28f=)5x}UQIySIG%39^Y2N|5TcDbHT2-b&aL2f9-pqdGf@k!qz{1jWp%yC;?Zk4?^F3Ob{bnv z`8A@LA7)4)A0<6Dwz(hZ71ho)9nL#(x%XY}YUO`|&NBg@E;6DZmy{Lf649nWsIuO* zCH!iwZUYNNP3KJtDptSm>YTb>Q%K3wkwB$Dl3xFJ>3_#_bV+@((%IrF3XV}t5<07w z2Rijqp=e|zpa{CJR{)88u4|v(!v`q-VF0=b^H*%YacH_&cEaUy*cKwxfgy=o&}lFm z@bOaJ?thZ|O^={rSTcha(c@KoKL>Fg&ycVr$R#tQ??v0I!$RxLsNx7G+gFvucODv= z-uA#03EsaP33Fmt|A6@$A$R+skJ;-~K0Ruzm3%+1kK8RVfCSB*e>rkRgAukm5i0sQ zmeUE2V^ti@2{30jdS-BZl6U4!#V#%@elJCs6ixu{g8M4eY&=w8z^?QVZy-Zw~WHx#zV0wyyI?ViW-ct7198!|^D~)PEPS zmp%*EgG2yf!V-BP+VR;T>z_JdlfB#dtLNSJwNV?|mACe?+3c_9sg z3;+J`Ftc7`$7nJp8IvUQ;^S%bHR@#C@9*URQv>?3>Qn;vaRtn*L6>u6Dp~Eg5|Pz_ z5i_1ncRsG-8gDSTIx?Ldb6m~O)QB}Sp2;sgt`RqDG$Yavcp5#1|^*t6?Uo#OU_gm|C4Q)zqEYqn0=%GS$Zf$kM+&E z+E&vjpHaBs4dgpf;TLq3pY`ip5ZxE=ONh7W`Ow`KUno88!54g%){QuHPD61DeC`i& z6A*Mq13=^DJn3s9tR9cBMcu5o1wxd1-4l*)34R@i#XYE!WxxXVyIE~S5AP2dvCo97 zG!OOMo7dA_RYaB}hf}UR!6g%a@-vDC{8d5ZvGUZsV(<)$GBibUdq4*e zCuex5as4;AqF3?u6a8KI`K1-Z%tP+fN&UT;?Dv8npB6P#amCATEkJmVA`W zm%r!PFSO{WjpsI`b7nfdYGJ&oiPRtpcU^j}1VjhrTe)melrN^XrI{fvRKy5`!a8&^ zgL3^0qxj{Ep6azQ0Uj2_w{u0Ct@kwd!nL7q!AB=S)=yt&u7&V_O@7+5^9o^i1={*Y z{|Nn!PdhJ^g|f;hcjJ{)?_P%OTY>zGMr7olz$DvWE%daPt52nC4-&T43^`zL6gEN@ zZL?STS#BFGNaFGyxbnMGH43KovI@c=kM*?j$0ai?4=sq{M z6PSMz5M1%BD)A`Cc#i0JuHty^?s(p%_=`W|`MDAVRT6|96GWpE#ETOoyA!0A67VuV z6J*8NS>})ybI3{vQVE6}?lZnjP8^fx(u%g$Q9eAU!Cq_ofgs;pC(3!CAE^1ZnGt6LXsH;l6iEJahpj7w}{o>QQR{DjGz>>&c*CP zL}Yi;cT9>wd~(}BN;K9YfQ$VQKaEz)OQiE+Wnfi?t&2;nYuHfNMY-2gS&xV);bavO zci~S~GZiULft0dtxyQ!{UvWfQG$IowRlJMf{+0$6psBVLsO3Vo3#9Oo)5R(UR7h%0 zo*B@vba-9{l$?CUGlR1?gC3L#K}xkdB3`SALv%72+B2oUBbo{`QFytlk(=r5I_Jm; z2~!^dCeKtlq&|;8ws2(CY+WphtUfj(ijqY>(n~Ii-_?~GdV5BfyVt*up@w^vB7V}6$luK~sb0JfH z6*a3`))=v}8L^hYG}%BVPv5e(`#%`9VU5c#<8n0lAK)9h}>yJgut%4^gg5~(;r+w zW=A~yBQ8z&q_E|W_O~Il}iXn-;d5O{c=+Nd4?~IbUA6PGf~OQs77emHml> z1I<88MS^}Kc;4zU8?)Xw%Dy^Xs3cIusZ_~8uEb-+A6?M7e_UMkw-~`+ioE~n0ZOi# zZ#j`SzG~?<(vBTa1S5|9D=IKc4B;qPA_#=ua zNyy(hWG5?^0ECBg(HktQ({Ds`;k_Tjtc}N2s^khIZr1CiY+8=;X_CjIKqg)VkY>d2<@QbctFt9?4#f6Lh%Y!(d+z+*|1N&5Rw!kU{uquK-5 z-lSI}?V9VCn>(%Y$Ndn(#;D~b#K2OE4Bk^AxBwwCT+b(v#TNeuRL-@V7ZY$ z0ucO8;?~Qp!Om>}siyMzf1FONpLb=>ur2DgYzj?H7d|5(cd8-n?Gn@N?rgPvs`za1 zdMlATPgt&9;z1i{cMEJ3^%$!~+=(1FID=LB*PlOieSnO){gfHQ<{@x;&e@f;DO*{g5LGuO?VnA zzo-u~vW`Bu>%v&e&e|4`j_gTCn*XjjrGD@E3Tx-eYfe;0?A&;<>DW#m|0;>6gU;%e zpnpmp*K4O6NKLh-kE6&>UoyGR=j_&BZ~j4funF8Mem-?SjiT0YS282#a>GJE4ee3= zC_U?qkrxoThKxT%RP2MtWD>_1J07`AM(%YXD#;@69%zM;rAO5Ve)sYvkz_Ucs*L-_ z4SRgV`jmV6G*ZY1Ab)#0X+kOD+9rQ2SRxV!!-sYTnD4@v4hcNgE2jW zu`7c?4&g%6!3cpN2`i9<16#5NGL*W0k6C9(GjB*8G8|VHN#JFjur;jG;XV$(00or1 zlZUJG0{Pc3NP^6`Yc|xN?$DXA;>yHeNQ_FXhwBD*~63 z6k6~G3*gePotuHoN<%~cqmL-6_bFMyaJjA=S^!*Pt$nLK**Du znc?`(3rA%L$%n`c8;~^hAA;f4B ztQDX!xw}YXCZw_19DI6C9XZeFIn6+xbiRvl97ni5M4;W~SUl%7G;Oe&$Q%2JRybr* z^ty!3xphr$o(sesv_H*SIj-%sh|*bPT3-~*Th!`8c-%$0yCD<)jUqsc{`g6n2_bKSea7Zri>#t{?5Rrm%}1w#RcBw zXnL}RLMG-G7BUebn$u}^Y@T;nqk|BJRa$taqh(s1<#AfpJ~Or+x23Ov3xat|dOBmT z%n-7`%CpDL%~U}g!{+R3X@r{m0^IW*{n3h)&bv`Q2S{G{WT5IQ9N2q^Ao5}%m8)o- zckBDYU-yw8_u0JNKD>V)-kATM`*1ke43P~7wA}2%HIW(nhLTpZ`_c&dIK<7ZP`s55 zf`eHPik_jBTL&MlUyA=gc!*GXxK2mjfakr}*;rF@!!m+4!JeBOa5sNKkROGD&)v{l1qI zj6DwFviiakuhh|sXRj0Li9;DjA|np3vC8dTSpV{76+a@wl}6Y@9_?|G_r_o2`ySDR zt+C1&!0f9S0DcB|-u^ptM2;n$2gg3!5$%b=!A;uGh1L~1@)ur&+m6h>8ZGcE4#CU6 zzjzSiWl8fcj(#}F_CA0QWw4_AckK{3rMaJrQ2jwmv_#~JB0$=Qv;AK_*B)evBBVqG zIavUx2Lf(^c=F>2?70tA1i_B>Hp~&+9*9z^J)OKVLc!yEv*@>`kKpT}G(g2SD)XH= zW^T4ONc|kd!#0GG#{q-faji5W2i*ZCA2EZDIq>U-9tit#{5RIhJuB^H2=WJ`?)8wO zAJFxENS^9Bm;&~d)ebmTT|XeKor}MGsR&d2 z2?yxU>no?umyj<1{e6l52LT;SU-`vJZT}07Ke53hJS_hXU5aVVvE4aCc%fai63(pb z5mOcj_Q_xLR$th(f9YR&$II`%!}5c!iwc0yYr^rOG=miJV%bVAAPk5A^EdIIPpNWA zO8unqHb`=XYBg0KG7yYPl?!Bl^Wvf0w!4;9`dJtCOKm?{*O}dS$E1mwuonwmHLhh) z7#xw~u<;!!wHbWS=5FKFuhJ!Dl;ot=KrE#ZTFN56h^fh&k^y=croFZ{ras|%lb9|U zlsO)G4P^0YC-XXe^BK7(?cq+({@r)tp(dV|&-vJIrq-<7;GuJ*>3Fl-n`8u^%Lz4b z`DxIHfrl>7CKp~79KNu_Pc>Q=BE%sE0ErB+_;L$C?iF_f0u_=CKsA^f>z_bZh8qUa z+Op*S;jr??_2SX7J>jQjL7JbF((JmYcSyaYP0I?HHhms()e2Ve+`0o{3$A4b&H!9v* z1IK4!m7en3O>`%un~XI;=;me)L4a0gH)%n}uPIa(&6t1`v!n*vG67?a-wwG(u>IB*inrt{ioQ1D|Ql#j&4iADp#)tY}{-{gQw}@PomMOBJ6Uq4?1WbXwhS zzZ8JbE1H*98$V4o3o*f#ks-4lqRHl7!rI2{iF>T&Uy{ zHeHXqC+`QHZUTIDRh0J?-A8w+m53m@ZHI2}f_dM|+MIR_DiUNCYGu%FLK3SlO2BOa)Q+fTv7I)?GV0tj5YE8f@_(?&Xupr=9 zfi8mS(3la1+ja4Wgalhc(UZUhDI_ZxuqS{%vZabLqK(T+@{3<-)G@lr>Vhh$6-Cbi z(;zLoy{f`nj(!hBfilZ+0ef=+1F0be8ZT2HwdsdnF@>A13HrfIp8)yp3nsfx^|r0w zMBPm3p-liRJ^~#9MvCiza8qezo~%|R0y8Z-d8Bh1pCyYMrdg1sVG$Q(GA@os=TC{m z!%g!Oe>y0a;dmS9%&82{mCdYY6U?4^rRIF6u$y8yT zfp4;ZQZ?QZC5?rs)#taChKqc1iotmSRtKp(+0Z{ls z_w~t8aoNc+5UJ7fpBR(FOuUqMMFpLkpTC6*LX3YM4vFpqR`f3*WGf=2KS6lpeTWy1 zD{}!Ze;vzo>r9Nb7p?3gU0>&RXZkICo${1~g+TIfq4=zY9Sw)|f9ehv%o63tv#qXA zBjyuoB1IT-0Z=%-0}xx$3igXf54}?$#^U@Be~8|heC8(o_Ll#V^bOOgX7{48Q{lv* z7F{o=T*%7(8)r%v2mA0kKTFhCpl-ihCmO&FQhmlIZgCQPF7{)F*-&58_cRm5k}R{zB5e zHV`x?FiJxhiYqnxC(8KJaK9k>`+b1l59nND`fj;XIu{dcCpPH3$MSF37jR{wMRf;0 zV)t^BJ0H-!f9*!X9q`iUC!F~I#GKmDRiSU`=GLB=e*0d2S;OCWbEns4OcsjCP{w<4 z8^QTIN;Fe8ME(KHb!Nj{v~8d5-W1P29)LktD-!3WbQwoY$SC>T*~_O^`9`Zl0!(P1 zZR6+9f#`#X>#|UmVBy@%ZKq)FsM7Rc8^}JEDTu>jo&4ui{Alp`o z^cyn~mPPBhzff2HxrWyvxrgh_k)Tc>677Tun7*ujNJ9PD2#phk;(NGPfLa5@f%5bo z4F@FUt2GQbTqtSMW;dy=57g+Q$p!a7=%5hhTxXeu98E&4P96(Yzti6up(> z`YSneNcZuB|&_KS+ zc@}4R8-Z^+@>u@+j+t<&SQ-5Bfc}TKc5g3FLkWQmczt^G#)G@;`6pRWp!UFb{|;m87E z8L%4=X96Bg|u0#rDQ6Fqf_g41Ou_KFwwN)$55hF;V>jMo&; z;^9J}{D1@=xC{n3XC_K2_9FL_y8aNK8r*WZE>Y^3^a zBPcfKFLUVr2hsgSxPC`es#BnTSzEu06wH35-$@wmPK4u389WR1JxpP^&i>kpe$Tmn zudTFef9d@)>HQ=6eQW5wpg@3Px{t;hxZwlw!7RtYD#U;* zMcY4}dVELUuJr$P2{T1qB1u@D<0JdkXgma{i-vk-faNS}uq^oZ?u zog2DWY*@t0kWDm-J?F4$7{z1`X7&ta^%y1P4*QuJ*G?JXD|UyAB8;wS7}sVFH%1IR z>>R0b9j@&$ZWJD@%Qa{X94Yxb5->+!vNdwO#i(FxB%o!mJz}KG)TEr(B;RMy1*7lY zIhQAeA1TxntsQ}PTYkXt*p@Bjj-64GCwJtd>mo^ zP1t-HWATqTGSXrJHnXT+8Ku#*yxB6bRA@$38~_E4fA6tid}Z0kYYKfj{$^$32XyM^ z@eo|oXpJ~=GG=}h*nhS+1ev#FahqV4w)g^1rwf`s79RUc95XI7FT|M(mY!rMZqtk@lZ0aj~ zM$c|e|M8Tn$c)PTj4a=r@x57gKHHJN89foamG)ih)E3)6b7P7@bI(w7>SoraKQNqj z+;^l^WGd+kU1@%O`ffNx}uGw{_OSl zHd@Q`! zFyFO>HCHQ_ecOdGJ3P~3(zsdJ-4W|?>rZpmhd$OxZnI3%LmH9vL4gbYnhUKFHbCuy z(mz`c_K92l3qFx=ov)dQ(abycn`dM?;SVuZ6Pb&-A`Ug%PE}?`nMupoeW#rsyX$1p4~}yf7#sU?ax>{9-6mLm8MPItP3NT zbb}^d1i6f7j+j4Q=+R#qLcQhPU&u(Zc)p)z^>1>QcO`{=s^RIf>O<3~`Yu$I%S*hH zi-i7s=0BsZap%^5Q|n{n4dc$+D7T!*Y1BREVJ0`+wyS&6`xmvY3rRM2lm=fD9jR}& zU5ljL9?`fOyDnU3nzMCty*ci>QtObg@AxFizRqrb`~BdZBvNB^+K~1aU_qK%j`E#R98;#2!J{R}x znNN4$pY^+(jD47`UA}S6<52TM;M3L7aVLL~chk}ipMMx7U$cgcFKIuuD$;z5k)B*o znrAjx^T;yvvHOsf^)9n;nqzgW`-eS}eR=(#HS?q82TyJ0Yd@SNO+CDaiynW^qKx<8 z4Srkt)G1PbT{zoK^wETf`Qpp>i#7iiUP!&&w_WBw8-%}_?G>@p`?n!^(TjUwSvMz3rqv^mwiO zVyNtH{CdVHYTH6|8~fUm#lUN~%tbkP(=E9k?F)DQxQ*lZ=*i6N;STo}{pe%=@tO>i zkMGCp1@R+I_|Fv_pDQmi2W9yf%x`}+d#5vDnq(UADbly4$Fr&~AgRUpQqVdf_VXaY z=D^N{X?1h!F>X01fRg&zhgNUdg@C2qfOelR|1od8%rA_u04Pp@H5R%B&-1|nS_4_M-HkLGF~F6$mlUJBl8sPkeC zcBuQ|O%@Gec(pK9w8eNbhgDS+pbG;vDk}&(A zlh1v}tL-8oJ5LvA%`Otf>#lig1f%2tr zx|Ev=)T3tn$v&&J&3e#H)`?eVvs3FfMX1@*(7E%C_YE24ZpfZIAhgXt=BBUgudvla@ZFA&_Ojo2t*EL%oK3_8oUC3V(7u zk{b0i`}q2^lgLLW!$T*M=RDTalMuSoP|njZvD5IYqNg_vPa_;oBd?!E-8#LMavFXA z^mhGe%(K%wgQu~Jr+0Tw<4#ZU9b@A%AX~$;Er+x1>t`Qto$aKY?cP88RDbsQ+1Z!# zZLxT^zjJnQdiIr$ddNvV5~F^*O8ss~J$9h}xK2H}MLkWS{=859RZso>jQYpox~`+p z-w%ItcNxwK%qIw2m!J&?tri@+7y?UB=EUYor7^Dw|B;Pg$@3s#q0* z_kPN44dsj3vO?KireNpmp^X8y9kR)$yfq9#;^HP_h?E3EGQVAFFV*Pm8=p6Vh$*E9B9pmS~K*qoSN7tQ)L-qgv<3F=t z>}STlHe=7ehtSLz`@XN)NhN!QWEMjsk}WAqNU|kcLSir>NkqNuSxdH%_ToG5>+|35 zx_DewPJsKgCHJZ7 zv5-dL{OWIV#fw81kLRAIgx{8(w`G@_G60|UT_nm4IC42Z#&wwdmVdeBNnIXJf3_eRa@4K;#FmDG7P;8iuk%tR-h0@@60c0!GAIh50 z$ck8`WX;hr%x(r&loW*OKu2S4XmRmF-=}6zk4V3Kn6Q6xW?V83b+R3Y7mHae;E>^Y zDL{j=GWP);aB!e7%2{b7M;L}Cazuyi;IX#Z=9A_1@TH9!u|A0NiC`3zy~$D%2a0mR zYguZTvwK+3Fbcr9hrs~qX7&lh6?A2&4vuzplN?N*;PkxcgKf&i{1tSJ z5KXvN{k=7F{?1*k?R`hYExZeS&I$S0rF#zptTZYL-6|nd{N<7*IFbAZk?ne)llA40iUPDaQ_SZo(JcOz-7| zFMmm`7m;q29NJ^kjLB5~fPNulF~sTgDXVy1IxylF0Ss^-5==p7-x&H4>-=@NJ0B4# zOp+UR0ujMD9jc)A*tGq%a-pmD%>RqSH}qs16_szmKmW!Z%>Nb<1B88Rxv4V(a7@=c z@p`X>XT9Ga9QCgR1AbQ=P?-1279k|z;!YC;fWA7*d91L1-DeR9MGO#yH$bp6vJ5B> z0oDnBay(TQZW@mxhyYj~DCrXfSiT^J+d|`*ES;Z>^FQ)_szU`wZ(-G;fFAj~{?d9n zqgR9=pvq80!21Ol0z3pE3WF#F#R^Li1fg`n#HBcM~cOXYELw+_#;8}D!+?wB~Mtw zk9Skkxd|gUf%F?x9xg`eMG~UGtx1I-ryPWvTdu*aU{_BQc9$>z#Pi0_c0QV1hR}6& z8TZ~povE?&Y_ZEfqkjNkQtUDP(PRy zR{reZSC|oh3n85{>H}ns;pgVwu*@5GRE#@LnUGdZJXSeSjJPII_nLb+hZWWDfu}IX ztP%bX1^lj;Foc03>=;D*I-W;d2(SpjD@fzHm>pD6vZ_{a-M0*`L~1L$S%LtAn+Lvv zWAG>5$K?mDa1%OfR_tu}alQH|D_l>mg|qg)7bRC6PO83&aW zML_q_rQG0BZdC-sUQ_KO@;w|Q=#r?#F7y?yf{-l}URh!FR>o7i@YE6=0M~4O6MgQ> z{%34DQ@Ivgl}a$q@eg}}jx)WF2ZT&A*9aa0;diNStp1k49@En$cytlYFbHq4g0(o~ z;VbRb3151`awD1{pDcw}hX4vG(0Fg}WJy3Kz+y-iKlOl+UyA)JO;D)B>aChpm*P7K$IRRQ?higDM9%uOb9- z5U%kM(l{7Hp6lkT6EcDDvXXT<4(jz%x#R~`;l60LMbfDpawW2m%mP587UdO%dA9iY zxv)b^q1IVPa3Oe*>0g-$Bmt^<9A->-oH}*Q)Rpa=2i~T}gw{)(x%M!Hn<$8%B~) zCVWN0(*>zD#B*V|)(w*+g#!%XTC#YmfjGXa7F%}C(dIo4{XPj&Ctn+^Ksf_$F>NTB zr;B{FUEs;GVl3O|Bq0!1;&#pzr(OZ@V{vj^fB?34AeB1ts|wFA4FIMWj-Q=nht~)k z!T(D?i&x&%;Bk+{oW&y^w#}T6S~~Bh2)~$2ttYYs;z$oTtl(_4vd*gWc$sh=IfCbN zrLOO{yY9k^FTv$TSW1>ZV1Gh2(DurT5Mugn6M7p>k`92S5zNG3%mXL&0*|K_-hhL2SbZ{UQPfya9RS>K37} z5Yb?_wq44ijFWk2QMQRAg>W>VzAZ;2wBUDEqzId;-gpbuH8)l3;s@sWApvMQcI+Lm z9A?-IUcveW%cTgAdOIFS=hWAlW-8gVtN4T+!y~Ga9M6SM*5GCChS9xRu#xT#U*h7` zOy({OrB+*4p3CCgd>< zlzbCPO@r@56W=Kfe)A@Ndkvz1dy{~lhTxed!AK3E%S}SWJ>ffdenPR9?+7COykE^2 zBIl`Gghp(Av{`Gk1ziL1@DjaEl{gQV;3b?9B^={}!#pa5|7gf@zMypxu%nQjL20SyGlZhRK)h(j-&m=RDRG*S)RfUXwbJDvMq9y4)4}AJA8X``{ zmPO*8$0(nXs5dAaI;#SS(ge1ezv?rtjcO{xNXkF<)$gluau5_B?_+oOf&Ir?m#L5s zd*%v_P8C$0E7VXFW1fS6d%24LtKpH}f>C1V@)C-kXevoFq>dfIALVKRbS8AUIq@AOU|KC;J&5$>I3CWyu2_0&zmn(-sk{t1;P z4%!4ELO?>kMD{*T9CzZ=SNxm^kfdoKPqjEkH7e4!5@V>Rd^FqF)Z!)B-fpqtB?K$R zn1t=yp7OCX`G|8kFp-8^Dp9TF8CWHPqY}Xy29!DysRb9$J?9R)>3G3}4t({RGvlQW z9H;)`Ab4ESN|o%r8=(Ddtu44 zO!rI%Q8&mNUVu^YNvkc^xQB-?*Y&lr%y|A7strE{*IUs6u-~o2Ng=OlYb6Pyn{6iI zI??|TWIj$oBqa7QE?H|AVi>jEmn|aUma`{_rlbR{`;2dv+VG)3l05Zz27%1Skl<~{ zDg5*^Cm3)3Ab7|`U4CSy{s_mFZ>sN^aN?)RQ#i56-dhYF@RVRA{OwT$}+grf){1CE}twv4sYgZ&OP+8I@lzR}rVNh{~RCEm;32 z=!K3tDF*dRM?+t$->1%l`inF%>SINQ<159pUp8=tiKbEC(>YIGBl6?a|6nJdz#HkI zr+U**cGNE@-pdegyH9Gn-2OC0+{{C(cQod){5>s5{Ymp5nkFOzAiurqOMCz^q_dOP z|JfNr^Hq+}@KkImdW;N5wL8+r+|9^c2ClZrlDc z^#vci<^_jGoWXedU zhK!DmVfsiWlw|tI|D%vh`^e;yOd`qjj!YuSw2Mq7$wZS(5P9v|V1(nf-*EmKS~ zy(1GCdU^YKc%EkRM;BKwCVynwN2X46^YCZNKPIL;doG-b9+^IpsS}xok|`#c&{2!1 zbBf6%nck7fCsou8f`UTNhhMO=aq8=5I5~SHB$AlskZB*WI7_BEG(Kgar*9G)8~1-g z)7!_N2_MVLAJFN&Ov=dAnoO0+#F$L=m`qG%^30HsFs9JV&AZLyl_c^tqf?e1Ua?GV z+1JDUC5gf`l?AtptZZCO&FtLVeF6eQ z&YjO-^33R%d{qsjv}>7n?w0xooMoELy84Fe8QBI#woIz&=@s<&aT60$T3I{d3D%b{ z7hSxRbUr+mNjRCj^0aRNlTMyF8^y$zOx(z{oVIo$L?*P<*0G}>35{@d3ukgpChE+;b?0GqEz@Z- z>Eyk#3U?2mj*e$cm1*zb#)O<$oQn%=qd+$rG#6KoPmX$a;J7ed^kv8*=*kvF|MM!Y>L-=((| zR*@s-H|i5Y`bdby-Lre%d9iwj^_(@rEbs?;_;%nCPR}>+7gefFn49SI`(oQ`upxauxSH2_p{ZfTPs{>56K?R3P z&~cKu5x~`+O#`ySmbI;kYozQ9RByG5RF5$Hruhx7d`@W>M=f^^mVmx&ao=CnqKaa2 zp5E7>HD>|;Pea{xyhqe!gyC*p=O@;f<_S_W&E7=0oHe<~ z!wj%4S@<P zc+Q7bIFOL14IE{$uhYjLN;`7qv?^TCPyq0P1VlVE)l$Z6iWx=Fam9+-V6y2pxkGrL zb+CimYu0{DtoeD#tT>hRi4|`P;w&r$dkC$UrE{_bImY{G#+lolxz0|?GvbHitw(^x zMc*;W)h(Pv-lRq<=hgb$qa@?%J@fb_Y1bkbA{e^ODw_easpF-&CuM!0ajm;J; zmXmPaa$l#*p+P$}p~)^0067FWdi!I|WTbDM#mf=@OzPMv@y1zH*j_04Ivw_gr9!tE zbz?ULa(HsA9teM#ttEC`#ia?Be$>dvQx0f46tT*}a;7D3*h~&y%AJhIdB)B=PqF1} zkFWSmXa2G&dbs^7uH|jYT(`N9ORI_L#D&~Upm9{&J`{ZrXG>vQ7&DF(n{0Ubob*k{ zzK4@Y{pr?!(xq!xPQpHC|D?tTr%!PGqhAM<3xmOzVqo;j>q|=y!5wEY*pbJJtZn!DWsg^LiZ__)mR^!~q9Z%dSg$ z3=e+R?yGa0x{ib4#`*)VA$uekDM$zghb5M0OSayW{~Ux^77fWsWM?7jkumm@0ALT$ zV}Oxz9xZ9^l-*2Ev{k^)(LO9!ZSMy942altdi#K1mytrC_w)2DGmd-hU8haoNzLXf z-4$SDu%xHO%&?M59CA^vzqWjC?EO1OJdDnzDI>zcrSBypupM|RT%U8Z1 z>kGQMs?^VGS<`^8=obWpJcp(-?I#o%6SmT1dux*;u7!lnS?J{4$q9jCMTPm_;~MnA zNXi6yFr22}&m?b>!9~DsD1OK@+ncC3fu5+eILQY+dXsACjNTW&zJQ473lKfX{+?u^ zkX_SQfL-BG%`r1!&$Ung>s*u^bp|ivg}Na~y$`gn;|)1TUT*mqnF|ODd(pR<%B@mO zHlIzfceBrY&r|5q>{nooNlEz~mnZek!r+JIcnQ@>+FW4hc%CA%N-(%uo}E~$vmKam z&+FUGW`ebw#J*D|2bCKcaF)>4nd_1K1oJTetj!1q(CAC8_Z<%+=m{g&Pk(FphCCnH zm~Im-lSTp`A^av{2sw=r4|x-$eTAM4_I5w0Qy)KXeLWF5?Dk$RONWyk=TuMD{N8ey zr)V;>i>m%^DwRZ&V4>T- zcJjES=cq_-X2+%JNfISLsoPCLz^{4?_a|nqs;|R zN7huY{Cefj(^5ES^HI~Ti1~Z4Yq|U1$Vc60zm8r%5KZr3C0GkNy#R-TJ)hB)rFs3U{tN|TPE%5C;9Qt_bBMMYpu`a zc5hhB$?soEDVC7+|6(znkb5~-o%r~RGvrEDmt=0Q$?8tTIq?}j=+Ax#Y4=r77uI7v zyDXz}hn<{+tGxZ=xpU>-#Gaw$M?2LgF7IR?+OvOE?*ZRS2k+_PoSglM;9IrTkF7-7 zHm>F^ZTAm0+{eaZ`y{okkg?mC$Ucr2BQ`0

    c;}Xx+xqrg-nx4e#!FpTP~b&uF~w^oH+Tyx-D>-&*{!UmM4u3I6C!f2o83 z#mxXxLZIGeph-fI^=6QrFt*-gxh4dAZw3b?ghXtH#3qC$Z-(*`!g4mliW81s+B{yJ z5MH+#-jop0x*5@(5IMNH6FHi2VtVt$T*6;Vn}4k({QYb5Z)jo^dMipQFm9lqD9BYL=ULz8AK@206y)!JlpiEf zGX34j!txNO1;{+P6Y{ez&8|fvNPuh>uy-yDSsmp{nW3Tp8TFG{?3y3h7G%sqh<(qa z?4hK~IUJN72Q1;B9)dY;xofbF!*OATgyO3e)@(e5$IEj8*@D@@%Nzo7)YbDKngFTg|ExWK z%6>k{K9YQ^f&KFjWUu5`D~>iHqEE>EigWvBx;j_{>(H2}gJ zP5ocLiPW9bH6u%LxDLe>1^Qc#-~<>Yz!@S0suuw)d)uib+4TXrYfZe1#P4c2EPU;~ z8P-{Ct>>#-+K(mY+@%=!M40mj-vy`b`jWPLK~C>G#U?JzoUllr9drFt1DgSr@d61} zo9vh~9Co(dQD}FhB`uS&jRNF4*m*d0{Fn`3`tk{}$JthZ6s|dQvtEr#jK=<=@!F?~ zZP*j8?c=AgMArI&QTk-#pM2OQ12KpY_C+~BYnudTF?HOYX_tD(R?&^ z&@P1n;&V?AAol@Eok$CP2?C-j%S#IR9U>jM zie8a`U56q87zehoWPMkx1Ng3P`7Cz%0K3zp=fe^H1~hpS%K6!f`UM5n_dojK-EsE6 z)VCzao*Qi+KeazZ?*9sf0RU2crZQ;unI;!4ZyqVd??F)&V3MYpjCWm{N}gA`_|7j7tu^*^G2RjIxec!_;Zl}Y~;mB2-z^2q&nyN!GWDwLC zpx=BYy!y7M{5CJYQUrtibF4f6z8*mgrlREFCfAly0XwG~)4=}p)vv-DMy@!Um*&~0 zQ(IG|yT4R2H~bbLoX7B>g{@}|^I!z(H6>W)VGX=uS%Dcd4ZiF8_}{?@g1r+<{ME3VZ|S&)Z>r3M zXYl3HiK8dlOO0W4nTkgGp0Cmz1rG~xj;rFm7-Uc z##8jA@j1|t+T+}+4~_m@yolgk9qG!1duZ1P@E1i4F1Q{pL?s*s?!C)elEK+Ycgi@V zmIQJgr@A7VWXUI@x#|q=O1cXBYMlZ18__I)D~qiVdl3CwX?@sU_44|wL;ICC#uUfO z*ZPz*lsMgT!fI}>T=vi99=K<@ND+M1yW*5aHwUJ0SbwiI_zeJjfS%h6et`LZK7{vq z2b|l}V&NPv zqXDgb(SHG%4i*XQXdr}YM;M>=4gwJEDhAAC4f!ltpDog~=-n8grCiQy5`1}6JU_Z* zPU*Af0qcKpXZ3X6ew!{sRSxkVXRN=^%yMRV=4op+7B%GUU`}F$k zS#%Ohomq9qFuSk-Fzk`V5P%)wXrM?;=a}P*BM_=&5&Qqc$O;J9(~uJ36YN^`u-Eg& zy>k!Ml^l;2+>=P*AdTid9dG#qi(tk7`r@IA1j&gpXBCTisq2X)(HOdi&NVk{*vEM7e=}TkE=bK1QE24b{8r&@n1wh{a*ohdDbFP8{=6G<_O@%7iq{*L^BvOH zjY^NJxH`5M8mkuo6_>I3!F`e`(lsOU?;RCHFTlz*OaF0ES?e-0px-L-qkUy+zSJI2dAx~1t=)uRwz5etS7)Hs28xcHS1HznmoAby-=D(Bu-hOLW&We{B>MWGD$-pzSkOmdUeZ0Sjt@D2D- zDmaXo0trWVKCb`QD{YSi*KzD{{elvHWotbyOy@v^vX8jc_PdrlD?R9g(QL8YfL$}5 z=>1a>&#+i1(v*s{cwyAPK&jtXG1_Y}ahLo+V9PxzTNJXUEGQwT0W5nOl14cc(Fee9p%5r=Jvtv zesRlp=0l_|3qLp?h;$|Pso{NQHdsV)usqTO1h-^Yx4FPoBKhKDHr2Jv_kg4l7qQ!r zBmKo*CJ-#)TM8v{kLqB35;Jz-+-z!J=Sz^40Xe!Ggq?vlaz-WcjRU@PqoD8+Uj6q>H?* z2R8OnVbkOac7?`kA^jAl!ViGEp1aYjO8}@P*Wn~!q%eyu;BDVi0EAW2omIWRiY_UA zIQ-{FziS8f^0ek@n*#^$M(AjGAZ&js#WIO(_#LNBR(e4F$#ao=ijLrQ}%p(5cqC{w{=E1q()`#i9M zE$m~#V}1yZBsz)Aa=v>Qr`5P))|RU0AMBPtHK0|&?g$m-|Ksw#yXkU=5%NXtiK|IK ziW;ciQifb{N-vzBKKLTTW-^QbLfd9$k3KoQ`H=lG>d{Ag*oXZ)q+P1pOo=#y%(%sW zpN3^-o3OycXJIZ58nQPf9&q3yjRy@lBq8oDGkwRgYX?U8;X(w&{DIa*h)I+hu|Qq3 z5yGs3vLtX}65(ymfZ*lE6=%Zxm)pa;mr5cu91Mw$%TKra;h&t}-;&tc_n!%I=Ou#2 zU?VdMkU0g{YY8T|IL(2@k#@$(xH4sq z6v}vy$Q;AT1~Fwr3uPllWdFv=#WLj*3+0kW6Rx4LH}9EGMrK8XB59JsnrtOR#ZtA!Xw9&4@%VWld9g ztgfau{DxB2{3kz3K zJ+Fw>4hjm6FCV}gS*q(>h$&XcXK1^=$gu$R&xqYKck=-5<=1<u(NQBbZ~GnwDHEO;}w;3Gz@Ga?=@1Nj+kGt z)iZaCde|Cz>kXx1=;h04Q&TIPfw@W{Jh5IqHA(WdQHtsD{C(;ZKKrbm;NQ?+zR!Vr{O)JbKg>^z>OkV5)oe?MrFdj?`5AWtU5?*G#o_F4_fpdB?|g zmnJf+Lc{JB$bG-cEVe#VtTc5&`>(>ijzI^TNlc;HK`84C=z>`bV ztL6_2iVhFIt#7O#jsXxt#I&~Ljs;|bd{A%R7&?Q-%bXu+)-+!p$vkxex4N8cp$tbg zezF09i)>1zj&*%L-N%P6->=t@=;X}k#&y2fZ%-yx^sU7rylx-a`%B|J5E@zM z_84W4Il(pDqgtI<=o;4Zwq`Cr&|&z|MpWljJHIF!?|NaRa)eBgOnhxSw<*-dfKA7P zNxl2quXLkyHj8(~NF9a2lT8;s^RC)_dcblk7hm5~Zl1@@yLqqt{w9-cv349Bng!h9 z1Qx1~!>PD6V5QUG)d(BzMMDRTTgMP6ar5wemh-#R&rEQOV zDtFgt>3o0z!@yvMK}C5sLEu53q$Jnyus;6KKkJP}_u{jDxW3| ztuB65U&4@AMwA}fcD)(J@pQc&gl7K@XKMd!u5XdaBrrRGY$}EIbKZ`}<<}O0 zD93g*&X0)&d~eF57m(s&eQ1$dE~8lfzr)v-X%Dl)1|EjgCf|2ZI5&%Kevjn71 z-+i-YOxihDxl3|0CJp@EoXL0!98%JWh670@_C!GK5CoQV0)W~axHFCc^)4r82vM*c z5W$XW1{M%RdnCw|2(ku4lR#b{jWsvZzj3*79?uS>O&ra2Ymf{>9m}l&9-=*?U z1%q=T&<*aaGI{SM(yvbHAtjxNfwXf7+`62ioK-GzlE1Ex+%5l&Sa4};S)gvo+=<^S z)pNr`1++KhaoZ!ICbLZD#%X#?eGdzR;T9U4cdQNgQLndtSwEkAE_a!Vk4eh~xCtcK zy1q4LtjrzkS_?JLdJOf6GW~;iZR5{c0+m_z`vq4{VUOhmkZ2s3pU@@)5XmZn?QmNx z7(&EJlXW+GPS!+%!15%U--JG1_#Pf`UG@ZXbpl~~wvs5EccD|jFhTYtI|>5^KNw*L zNQq}v^)a=AI2gc88TL=r)~aq7=*I%mq6ToxLsz&X}QV8K4plJkQ;^-Wr39bu6doB%;}(#X~4!I?m*Az`HcooF!2^-D7gZ1`F-KzWJF zx-qgxTStp9CowKExtrY6#emiDnHdl&s_Tko<2YEmS&2zGlivC!I;_koYT{ z2IH?STsI1d0h=-4SprZHf+QizXPN;UOU%uf=ms|dFdu9#ID!aM@S|FU%Tr*$63PT% zaC;0`dmGF>^ei~or4BxSv-#o5Z2iE6Gdl)i74eLT6G*n{@?hJ?ax5 zk(SzBWBDAXOZlE}xN$6vJy2hL86JoJ&4C|@P>d*meOoK}s5QeEea%!(Iv2q!|D3v3 zSCq$2@j)i>MhGI1Rjge8;@WeGiu*U>ywJbEjG2ZAl|oQ1EAch9c#WgB)#got7^>5< z=}!@~nMo!lBMO(e6f0|mI#|euo!snZRUEQPpdZnKrI?yxq@IOtN_AAXtk`L2JsP~y zq6!y2W}s8#YtM^cZ)Y<|=`@eQW-6QNgIVpuAUvgOiG@qes%$E3E6uBqLKKHoXGI?V zh}}-yMgRg*R9pqgLfmw7T`qoB~GlA^HAyYpA`@8M92AthDdziI~$$I z5C-h7uT4UJ?pL-cehYsovhmsKD&RCn%$^=8H{Xp0D8j*?QV^?#H>2O^>9rCC?01l1 zhYKat2yFb_iG|!ZZb~Kx)1@BN$4NI{F zuqa?JfW?Egfy5E3Y9{b1Q8(Wn+m`^RChHx>>KrETUUThJPk;~-T4m5L$R=p_G_I@p zDHYQZX0^$FCQ8*msf+x^wtwhwc1)r_fE5`*$` z;^AmuC-jj0s zvgn;kIbqh^2Ibpce7VinU1RNYw8B#{ez!%FAc;JKkMT9VYaAZJPeCG`p%3owXd#U$gxJ2u%iZH3n!8fO7$d zc59Nme46ZmoaRDOAP^-GcrP9x*uGDI2-k{Kq=kw$#KS>h3Mpt&X-{q<+81{P94c|R z9@bcydFmY-C=Gq4LsGE=&B?3JV+VzTfm0VD&U@hzO#KXm0RqVW;A2pr34~(hY{0b)_YMkGR%fty^R$mq8waS;!U8n081?M$B;n_3}2&+OT6K%-vOv(MEA zc<^wII~PqqD4Kp-(9$IG-M?r?Q|^!RBib@#6$-6UJ^eZw^47l~^JEU@@X=p0E;2{J zqr!6*-4PZ&4<4mz>Y`4?uc;rCq1d;NRv@7m$1J9pfjW zM!1t-c}wjdl-+v;{>9*M3%lpuVdbHGY7d7-@3Hfgsu*OP!fT;_5joZ{63>YoFUPnX zYC)_egiA}{2a^!#S{T(6(88jxlUV_-I&^$3fF!bjajeL_cz;^O)!!9RB`|miEW!6Q zXtQGXy1WtwL^%VRKj|r03#5_Yb@}8!d6_E5Admu6U#>Q8$rFObDT2+6KP#(T-d99m zAQmJ$zxyC(jEWiB`Vj-J@V#oGFQTT(5H)aXSyG8NEhjitqY$fjk&M2<^$`eK^4pw( zHnz*;lSMN0kA>Q&RYpRE@r~)J5h#^h^SXtiuG=WrCR%0!ZIu z*}+OVAi wH+erqY&3{40u%Ng%3}4lNNec=%ruOOXisuF7=w4zp$I0=a6g#;Kwh& znRCJAUa*nCtQW}|sgUZ%St;dBx2luy>ayqTw`%1KUruyAZ_Tjh8-G3vdi^&;SyS_s z%O0466axEF{pVR3_QHu@OQ5){O^eTDBcw0TL`8JTd$%sOyMzE1!kOC*Q7&eZ{E$Q8MGh93(r5l~rz zrf1|I3B1vAi3xB2f65hw6*Szj0qU>(&ujsj0JMEpOnlyuqAeKlg`a)N+>QbyMK$IQ z3dRXH-5orUKF9A`BB~4^F55K~|7j`_rj=^b$}iC>ZqON#4?A6o4fGzd$7 zdx=i2zd>&-pws@B20{b0F`$;I z8!a;hEwl8N`MH*bKP^kgfh`l-t)GMiKHg~EC}`cJw{Fd~?mTZ@6>j^M$-jH4?che+ zVL{t(dfT9O+rK|;m%lbg;(+TV%@9|{Y$gl2o`{SpX=WQ@%m)I{C3wpp276(Pe=W!t z1MB(20o`kd;t>5e7=xK$iJ`Wc!1l(1cH#L}La4s=G-b9O)E%j;iehLS(ZCiA_)zC; zAVNF{F@WrXV!Gz!+IffQ_@J(tOYjT^8^WSFCKr5~fRxEt}Tkj&H%r0f>b?I;rcy}R#bZ&4tS4+Yf+FHC5T2W{Rx9S)PkdzSd2t$4OcY}ycOWbvzk72$H=2f{ z|E)&6{qwGlIQoV@^s9MPV1D4G$l!zsz`;K9{%B-AmWe53zWp=SCNhS!9B)Cw{0ZX{ zMP#~wKIj~bTLKN{#ZD=r!HPIgS}mFb2eH9H4>iztgV3Q@`y&)+^a6JAYN$7X&4e^T z(`ICpK(F9{>OJ_kqxR_%1QZLmCk>nLaTH_O%4!EFFQ5*t$n5O?=)VJLn66IOArNV( zKZwn|1RCu&+wb~5ahUBUVYozLmTc-a`}760znPvynaLQQ5fYurD|#QZ*RDlCW)yWb zU6`$~1fE#Vy+OjnMIae35C+Xd83bgf1yF$*gOZ?$y70uS@HfYSY<5FzP+*dN^*xmG z{>_a!XzomA(R&c)9peUzcorgKm`%j>eM`&y@ZWg@`9&yhF=@L$#T7<&s2*(ivIqn( zzM-=g{9QE2T3r7y6GiMU&YFHvvIt$8hXNno>wK7u`|#KjxGDPnPTb6wqPgs=^Kabd zmWsg3mJ2Aw<-)67=$r+*1#mhSUVvp2siC|5ofOvxIWPdNTtF7b>WGG3d4~3$04}3D z!AjG2 zLQjeB$NVfxwJ*sqem4F#VB^P{M!W8j>KZ=8SJwR zJ$gs+a52YbsTk0?wMGhF^Hcnitw&F{qCdByzth`rbltwzO83Vyo(_%Z1#`KJa$gn# z`!dNe={@Min@_A?Kb2hRv9Vf3hOBasSBW*NZ@+-|~~T-2@HMo--CAE^1Fbo_&S?A}#Z&^>6qGZnj$xBIts?q~?LuP6V#KpZgL>dhAi z5?>6{T8H}1uiK)B?8O1cM?c6~Zge0t8}|}`eL*)~Bmf{?*d;EC;5*B9z!8Bi&9^ye zBnl;5)yc;)I#NJA_^duTT<=X`n-cj~Hm5E;ka@!U)(Gcqnv6mUc^WO*oCd#_Eyh== z0FO$~Ke>Ba)`-S7GNI5Z2Sv>(o~*WqWIfoBZZv%lubq%t^wfOD)-YlH!_w(fvA}i6h4zHub3JhfkjBhY(^;M-rXb~ zR(j)(--Vlro20O^cVfVJvLIu>R1HESNhHaQ>@Q_?1A|0Ba}{6mdT?g|bx!x^r#IH; zkD;mreHQ7r1jA!aqY0HdgS5(qg!>f9#zcw=z9fD~cr_as!%4LUp#*Jj!mGNl+A4^A zDT?`7G8@1+K)tsr2ety=8JNSkSKD@pEwvaI{VuzUR{bkV6zRSTD^eR1ztzfQoY-+U zgO23F+HF`VgbtZbNxl~;3G76t4Ruo_-q@avGG7!^_w7CBlOMbD2@?t%(gu5IMB~yY z%ZBQU7v1>EJRy_>iV8v_p($Zr0kQDp;p_%^oFEK!bj^5Z&ow}{=iBI{w!}bhrH@q_ zUaqq!10XZ9f*!1*Seyq{t|#jIS$WEygs(Cj^SH*2xc6lppL&YsS9a4_%l}E956xe9 zvg3)u!ZF+Os*sM9G>%K!%F}54igQ!Sz3sPWsDS9gdyMR|-a!CQT7*UdfTwN3O38s% zuVtBwYFSWfpQ|30q_pyvd-rYYT35$AWJ*j*{ zY5FX0ib&O8Tw^ARLp>fZzfN~S6HzgZJ=|iqiV|@itYu89=>P@nFww!kn`SMvKn}faQ~fet znQAbTvy|X+)gVpG$-}t37FP9DUn42X1Eu1LcMt)k3pso8B&u`@E#x|FnIpwqY>*C7 zq0RyQlK4U=v_Th$0moHNY!e7hZ-C|Df|J^ z>%ujbn-;iqT&E%RGszT>w6Ah~k&sr+`>RKT-z(?DI|= zX}Zfty{^eJ_}X|uBdZnPel0a9$TM#p@2fRg#f5n>UbLI!tFubhw2qk?FaFu(t2eEw zs@=tSbiDtRr&W`Xz&}yKV&rGQ`OG>+omaOd%nvWEWs~7BQ7X_*B*HUUh|Tf2&B^#o~jBr=Q>Y6Oy&;O8F-% z7mxgH@6qfk)F-Ph?CJ#AJ<+m%<}mrJK03gmj%HtT?MJyIEYPW2%i*=v)nCwKWL7v2a_+!uplB#+o^;9&N(pyo~fz&hVHAuk@QOo z2U87glV9AE?qrGSL!KgC?=Z#o$$7IAPmLp=*|!8ZG|W!EOo^=a)(v!-o}FswiL8li z33UHCJKYAqR-3FFvMC9 z@av7;MLvkEg05A5d75rn@OV!ZYp8d7AqA6yZ8Qc&nh&=a@g&P0R>5R)sbtn;z0Tdy zLmbKo$B>M|32@ai&T8h57b+9-*igV?czXvR!a+go1*yPI8aqCBfVr436yy-vtzeZ0 z$H!U;5iJJY^nm=)RhT-^!CJdSq0Q^8Yx^Gd=&pnpeHU4gDY?*n<5YNFrzKQ4S#Tc`fA3Njy>}vQju?N~e`S(u_bRA3k&If>2zFt+ zs!4|^Ir^@1u>bSD%k07%7)O3yi3A(L4pwH(!*_WV2Ziq#dE7^P^h#iSP53|sjC_BCIy@g(@ zPfIjddeafe)-txyvay0Xebh2OW6;KEPx9>eNtWvzVfIN!%tNu;wjYdJ%^?8!rn zmxJAGl}MIDkg#lb(;*m|2BaBk3)g~ZQJwvn*-CFamu?u~`g!!Kv}V!9o_0e1uIyIT zoh1XEO$d`SsMau7p%5>j$Z}+asw}CwV;lqdA9N`V=2Ze8B~k|xK`@39Aj`NhN7YyY zluGn_8XMRI6B2YxfszDqCo)~Cve!Bbax4UZohln-L`+jAP%ICd(hD-x8BIKmN$>w; zCW(MCOiE%b6%>UN6a?pH@o1jb9GEjrEJWUn(9DIR%vBklS@lDKivm?oQGj|a%}S*cm3BRr-FU1l^y zQnFW~EWv=m>`#OA_k8MW@&gwd0`juP*%3o2P?Tb2U*=Gs?`C_`h6UzuhzX@k#af2p zfn+S-gub5}J{E)mw}zT-muKFO?a$xJYCRep!CGc^_0e)InetZbvS6uW^uM z1xgA7udPSL{ zf&i?KB6|qB3pjn97e93(3Q61>6@_Jo=BJKjM_I(Q=xu{0A^Gt;2Ory{(#Ql z00ar2lx1@Jq{BdSmvK?M*S5L)Jj!|~$*hP8%EbX2Q?F2tZ;vuV-3CcdE>M!pqslY+ z1i_q1Mr>~{giq=TX(Z7O6F_}QB)%@*!c3l}fgZ;6FxC!lZ+H1Ec~Ym_p0)=PB0{j3 z#AA81bsN*(a&^MOd+1Wj|7ZaYN-`ialUz4p4?~&!Uo&+)^uw9l7j4w5&bOpZ?ARyt zKV*#wQ`#W*HmhJ;g%J?R-f1-}ZrgDL_ull!RDRt1rbDP+Hu#KSf&{=U5}mYtVwbW# zlbSt~{$i-ip8S3sFv)SVe{v60BlSK-Z3cv!F_JcU1sexN*_9VD2lqe)AE;*1bJVMo zj%rMaw-&UzORw%uvXxBI8lBuHXX?9M?$ph=4Le!4%-;6a%)R&CAbIX?_oV?hmmV~j zu{};NLO$Dee*WRo<4KqFCr(29E+H_Kc$A)4HS*mLXEGo--*Kx+>&)f+a2i&) zH0lRtFM4*h65ckM6*oVOCqjf8yCT_5^$IhKSUZKQL1)VoKugU?bmNEe1R*TVP!@cD zkRoUYkbl8|-`xgu4d@AgFtBg`r~C3>X{JWuI35Z-k}`oh5NU!Yet$EGkxf43nO@m< zwmQLDr2n1y1Yf=uzoMo9wU5^(r?%^m5r3yh-5xAwriI{HqHss;CmsWHmSRyfQS@@m z4-f7a)D%|;uChlAzB<)jz3r!l(hp@8RM;*;PFH@ zAA60$OypXYOwRIf?aI8ulJ2!Dxcirt5k^xYfCTmm3*5`}{>rZ>SCrvQm5O!?^1+Oy zIy(uqqO{`$AiS`}E5BQiiU*#>7gnJaR{+W?T$U)tT$IgEkaPkm%TAu}@rDMQA@6%J za6V!LAD?S$G$xU=qKCLc92PVoiTU`AczcQwEpzn4jhEUQ*MfrAY$HEiTx<3(_A>MF zR;d~Cyzf22T#4@SHmxzIJtunuMBkA?Ur*yJ38y|a?Sb+NGmnj&TC}Xzo!}$-#hFKL z8ket8j@7gX>a?%YtBL9>8R|YdJ}%pJAFs*#CAO}HFJxWF1>IGD#;*atLK$vr)YiNO zDo(n5^Nl@?kPIq$C*0ha(}`m-1q-HWOs-Dj{J_8yyT_+CVKtdj`Q%gJA}w?=vV1Cl zhNIXmt-0I-JyRUzjQ@zP@kk5wz^gBam!NnA0XUdG34z*@KHkZilEi&N2tvOWARB|T znnoO$OAaBcADe(>v42_JR?8j1y=jS5t+=fQD7zMMf<^(F1xzwqYv*Y4ZTtiY0(sjnXbjwj*3)D+5a7+QHhVDfF|+{iX) zCSYa3@aA5Tsu(o#f$OknZyh*OA+0KFnf2=^ZI#BF1sPMj| z?D3E__mEotz#be4=DTOVwbpdF^si=9NT>JD&K`?+NMKP24IR4mFO%)^9^86&^WSC@ zGx)Hkt0r!9_a92PVn;yS@3YF6BaYp_VxcEewrt^I97Ob5sZ8;X02aaunSFj4Cad}W$=+Y| z4WG7~5gK*oENNh&@`yGHLF?VVwD`3qfnQC;SfTxXo0~`XI)6wz1kwqEAx0k^&R-xi z+cMw%jJOi}hod1#vjN#~9A=MVx6SvbHG+<})a`^|*I;MBP8%rt&E2@CdJ^X~C9fZZ zSRG0oQd^C^$_!&im^WIVR!n-uuipg9=<(|;YvrlI!?`<04!iexk2*MSe7OF1I6uB& z?qBO#)3<+_A~(I-f8JOzS^2RWQQdY7o@)ZOyz0 z8lAvvrkv1!k4Mg3)m*vCI!{P52KpdbVnAKy;%h0R)W`Zs=BHhadq8{yCsgbEW@WLk0@dDB*-1lt1!)zAeCY0xMN# z%r1cDT~3n@YZS_W-tv!1P^BhhP5IPl_LA2pR#o5KN}A)@dN6rsw%f zhN5|Hl3et!6Z!teKdPU;Yt@p;qSb547x_s139LOIthEvK`Bl=B`%HgfZ%;qifPYg+ z+zAoXahPxXiv1lGxAXwu4Sjjt%C4jr>T490;@$ z4|}Rt2_VWG?oB#FoWU3ti^x;}EOuVG`p)SLOb>e?2I!kWkVN;HYc-z?VSMsn{Okj; zfQzgBWwM)tol6=H&uiCp3kLlS3i~k`{IkJu*8h$P%gpt$S~$SMVbqzR_ddH}Ayx(H z7{RNU*I1ru!u!dm6ft!c|8=gY_BK?qtKyOot&^T}>8TXbiE@BKZ{M&#%h@x-&v%u!6+Eg3Q zB)~$U=y!95?*BbFzM-e^VSgOU9kD3kAK2acXG!LK0*%2iLw^h5YT)`&3M2?X%brV;U~Ev`{yYrVfa`s|W$mvE)9gD1XsN$ z=hp!Q97vK7;N#JLkbCX9h!2(w%;8;$>bZb&QZ@nkVQn!mP5B<6AB!Z$i8S zj!88C4NcWP7GC9<^Si$=gZ8d(mR1ZuA;DCoz!Mo6>>8wmvxWVse++Q&WdO>q`VE|i z1JD&{#6~sFLUjq?npc)<)u6CrOFllHMGx_~Cfpm*Z0ES!Kcpp=A(2@^me64VDzAb| z3Krj%ImZH-k{BXa9Jjs>3*-Jjs4C?4Gkp%p+ptdryv7-_L#uS3HiYeYOiXxnk!6-s(`(Bm^>6jL zPl7!&K{-d3cFD%zeGb^)BOt2s%^U$}*wj5cSdfBf;R)ulAoOHrj(ZV7iF6lghC ztWxwtIxXncz!L$o-NEYz+4Ans>6hn~y;yLE`eud#6Q9l1YxPcmO(Uy5vWGWziv7d( zM;t?!xgHIH2-#=SEm4ynqn)}z-b(2gSC*qXGCT=o@d{U9{)38QyHFmi3C0|aa&EE z;_Kqt35P0Zj-EORVK-MNsXvj` z2kqUKDD*P1{{7H?=V7rukwu=Oe=E2-TrK3Ums?2s#O3cly7rIOPo6cHd|4bReA7+M z!#ABNhuh~QH@I!hn|as`aO@jS>#oO(UtcUcGMU26Uw-lNZNS5S4?9$JTA$xS^7s)) z*jbKS`|n-0TwPpvIM^oq?e_HV4;Ob1@1u%43r*}c7JW9yk6V6BwQ}0A|HcXfAdnM< z%RHFDDu~iQIMu_AIfH>n3a-zqb`?Gy>jx=O_~NlRGLHMmK4y|hWq%e;g=b(A`p@8h z4PEx%4!L=6E2QmK1`CDL5BF-=ZZQ^7$w2=bM6VkzUUp4`uu}k}(&G8!KP+wApRF+{ z5KApJO2aiE=#B=6>XDrNlR61j$87QOUjDSO^Fs{Cc=VL<=;#6eHjId8UfzG-o8B*W zdH)gl-~SH^J$G0+h#;|&GNwDk1yPOeX6v}a`a9_>JMb;?vWUDm*cgvY!+l5NLA=N9 z&+;=+VN=BRY}hws|2fk$KIJBJ;z#*BqktAx!ko)21Q65iX`)V$?GR8NV z3#?P(qwv^l9>Z?**t+q5F^t7L`=c{&5m_(+V>pj<3^gFz@pZ`B|Gh=rQo@V<_OR>w z2=ux0#s7cdV7_rd`R_llzU#rESPD;J0lfx=r5W+~u*j5-N$*&*(u&W76|lMva~=Up z6D)ri37^X+9cCCp8)7K0`{|Y-J|+dk-!AdL6jwehX;%vFqX=ZEB3uhbp ze>Q5-$CXX=cbANm%|aG4L~2D@{mT0+ZiO(a0+^wm!W~s8&c)PEdH_>@czhG#H>P5| zqN=wdu*G0M!trb~fKMxW>Rg&rp5Z0p*qoaQP>&gGS6pAx)DcPmL;3MFOIf*0Wq=EX zE61B>$aO4F3W{AQfhuk;Q^~`U`dYm@2Db0>%Qg8wap{+-{sYwNJ>kus@~2YHgQd=g zd0EDI!6!_9zakib8HNu>jK@mqnB|u7QkQwlX7`Ck87n?S{mSM~CcNHwE3cIaj9Z$Q z;?4rKiOXW)iUEGrsI}b6HU(Xt%qh?0Q02N%Tt>>4aw?WMqa}s%BbPg*+;Yx2=@49Q z`&-KNHJ%{($-V2z1@5kWiHh$`U^=%Q?Kg5^w#?$&C)e;?zC3trACD@IzY zN;P<^%@r$$C4jlA=(A?Ve}TP`^8{+u!3BAR8}ASQR1{I}TO%3bGdB~>l7$DwAsh|3 zRsgBH=_hzau{naD$c{;v6%rUnz1t0QO2XUdv*VK0PW4FlF|>`1GV}Q>r0@||Pb<=J zBo5ywgQ0XO*Q^Pg|5u~y@lRt#Ejj>P16*K33$}h4`pb(MX@tV zmU4e0#6dby%pmFZg}5xwPqoFyCoJOfWiB5wfO#NH0+H=`yb-iBl){Zq<$vm2vJwAG zHgvx-S#g8BNuYegh2h(IdE41?+wtJ1>A|qnn2ia|%5L7O>~9vy_hAoHSYpsgIcH=O z6a1s_PsyI&B#PL4<3zwLj6Rh8y*uC5Gm0;yPkm1Mhu<{%oNn=XwK^%&<#e1e{aQ@xPW z2N+g%0I?4sQti6$2q&*Tbr$(J8~PNdbvHozN)37EjA_X;eAOAi!WfUE1eiVjBn?LM ze)K^Hf)i4%Anv{Fx#M(rm7lC0EdewD@l`6ioBuj3!I z7~e`+zW7`{@Y(Dw*Vr#r@amZT&6i>6ITc@;Bm*4Lu1->YEx`eQ(>B9=okOTaHX!6=@mR(EwN7UhP`l*@@~ny-*Kb8mL+PM;>Vy zQPgS5URDlq?#3s_u+(udcqO1)^i-_Hb*H|_U)(q1S@1ZOn||9A)kZtOu$u8u_2O5Y}Jxx8HH z*;}Ys@Y8|)sp)#&vspcLM%kR*t4q!h@!VhV_(80g+(L^jdmjF+kdh(B6}knWKA}p{ zO2X>!&tL|pw!#H@BZbgV8`qRMgRPCoK#uGnhoQg|oZA4-p{<_BQ0gn$t(m=DE1COB zXngxs2t7prx!Y-+(p3-Bj|Ej@6j0;FoI-a7_UkTBZF?4yLz=+=@=rBgf*uuyn zR>>cKYwSs=X!q0I7-h`&R{_o2?hGX#3kA{M&^OgoFDqr1H_$U=QfUfF+PF*Xxk8lx zYxaWIPCCl(gWt=`rLdEot5M?NFKsULc4egVhH&uIe0;bat}qm?I#y6^+}FJ4qmdQm zGf-`cI``&joy#(SbN2N5-uZsL!1fKT`gpO57X_GR6>eU5CiT%kd2qe^O-bYFXuGd+ z*~s%MNy-H<-~uXohc!k}Rr}l+P9;OzdIvYEVgN)u?LvekJ;sqacLzk3g}%WU2$Ufq zqIt{MdA}zFA7&@NAI>+_Ae-69V0(oR)4ijlCzEXY^Sjb2)6(~CbpM9CV8l&^*>y%l z!{JGuJsi&w#p{`BY`GYrpc^;Nv)u7Uk^WWLnyq3j(<%3@XUb#!i;*8+Z&;jEafTEK zM%ze!AmMesbCi)EDf!%*8)B0Q<;>f=dHinu72;)Xs(3$=}jP_N}g*!Vn;#Fs~& zsw(G+W*!aI$!MnfUm*x}=LVHoJKG(&XQ{6bSq#r-@h*}N1Xsr|3ELk2?vm1ng)DLm z&!9#~-+UO?ehsmCwY}qJEe|mHhEm!j1=Y_+*JD1YfX_CNZgA0GHkI&{sKi`%up_Uca?`v$0YTZKnPa)@>V?{jspymKFd ze){LBCHK0JBSbT9Xuet6Bz>%~3hU;%u}Yx4<98aicaw&v)WNCF{66jc2`&8IucDla z#sByP+La%6{DvN@y~QK7H(&+#=xjdC>pK{a?)7E>VM~tNfmF#29wt@a=D+ zHckHQ(K#E3S}jqeuNrx-jqxpfWV2toqHK=sc}^NlAzZ&{}jv;^f@BeI)EOn^+mUX)qbf?XuI8_}i=TVNFEC}g& zAkgI0=%_X}3Cv7Bmivs~Cp2(4M|0lb_`lW>d3!HBrXp1myWRAU z^t<{}%mcEF)@{eeT28vN&V$D%w0G7-mX$8u=K7Pf4L>tEyRD^N=lCb>mveX1iTd*k zW0CF+7lezQ|D>tmW(gp$pK7%wz47I-HXS+l`uZGQM!3S?g&r;_z+`%h22@wwX!%KR zJJx2fG&4AL+69{1#dSJlnmf+wbe?POJg?Jb(%eP1*6DU^?!K(kQ<#x&M*Qz|-b|mpX$D&4X<^L%q#IqdLRW&BKd2BkRp0yE>ykn@5jzm@F+! zPTh9`E$_s2$7EW@&gzbzYZ*VUJ7Ll?VXZsq*fM!pcgnYADnxhsddoCfcP6!E=BDoZ zyq5Qm$hxynTV`MC&NZ~mwdv0Hw#<*}ewc3gu&BGR-mrFDr@@1sEL zNAdqSI`eR--v1Au*%$^h_FXg9K^Xh4v6F2S*=y`ema!9=#Wo~{B1L_MD3wBsNXrl< zS(8%4SSl^{U1@&4zkkmk=Q`(H=enMAUeEi!Uly|}&u6tP<_w?D9kH0Ve?ISK@%1>z z4;77nbC?2n1HHK{p@vtGXeua&B0H`@H>L_V+JFfF{ce^A^IufXzlC4;hxWO@FFgN2 zmXL>&DZqS|6YKdKMPM000g)*q9Q8EK}nqLe9q2mZ*H?ru4v2U zJ6w1i5ugw)v$+Mu{-Q0d_#iwOyP~${8M1Y@i0sk#ZKc=o#Q@ItuTfcu;{_G>8y@Xt zp-z{y0$*J;z7Xb8Wf=eMefx!QxBre%x%lr}eg%WXjIzclfpr3Iu)8vwKSnr2Ft71l zyShGiM>rgMK5KkI!SSL3)OHgJmG8@Dd6k03TT-{C?IiZxM(+s`!^X+BBR1K^pkN`Lgrllp= z;E}Z9`s3Wpr@Lz-LYL~Wyu+ZQGR&cz}5K{P^kRXJgH}aLWOKzH`^j zuVFiLC2vEBP!TgGAh6Dt(EPG3j7G5H%s}s8sd?8><-QP)H#7U!l zW6hdQG+XFDIVN)KOY*0fk6%(}&U;Oz3%|3Z@P{>rDD2@$oFFd93Ha<$K7a2oe_&jjP+gRUw`r#zZu6Xs$e;`G)xm$4_2XxD=@Q=0h>p zPeM4tbYSQ7wL7w^aHPSnqCv2UcTKLC=G5VcCygq(p_cJ@e}LzI)kHgniMK+eC?ifs zo_$B%wvXKjdujLZ&-010&je5P-tVUV8QfXJ$Y7kV__!myP==HhKAXb#bBPaiJ+*|j!Bo|93{OO z9`{Ns(Fy{$H1?f+KaQs4Kmj4rXu@zEh&_mv6v2A;PasJ5+fFRkq96qsjMHgO;=^Fl z$iCbr44bk#7LbAKm3Tq~Kxst2LznS9*YKSsy}#AU?_U#m@ZI`9AGMI9&{HFQJG#qQ z7xfoMr|laedT2!VbN(Ch5(tL_7arofKT6Kt*g)g=CkWv>L-goPlC!xeSH)3O*|kEn(F*W)*bemw z#O700fXmN@c+ugl$|+;g)9|hjFWN`ZIkxl}@1Msiqb}YrfAl+4yUM520qr47qDrU3 zcu)Nht$CryTs26%VGyvOYBq_lqEWzC?7B+{xz{Xfg&=u2sOpJvG9JA35GMXULYW80 zf`fA(G=^-t^P%q60mIos(VZ^$Gv*VHG7hGk$Ibva%>;4EKmlFF#m}f060Z(?S!#X! zf`5q=KAVsKWC>jK27DFPzRYvLPDh9KJtOQ-qrMU;m?Hg4AVz(o`qQv532#8&=xYZ^ z+?xePH$(ZJ3X!8#E8C{bm$KZ>FnEH;(F`SeR4L1M;9g~qM#}2Bz#;|`j@J=Kv6@jK z+|MM9oB<>y)})13$B4%J7kZ)c^E45&hd>IG0t&;w^O>cLfJsRKru#oG;eD+xSU6Pi$j+|k zol&qj zT)umZ405Jh54UbTYPlK{6IV6yWozqkr)+F|N!8?6gYEW_tFg&VRbLiUwmW8IKXpjotGH7_yV`;S<%NkJ=)je z&&O5I$!_nwwvT%4gY)^xt8*%>FQz(C-u+7j9hB_(AA~n$A7-8UQ2zpe0BNkwyA5verhN3~%l0 z0{X(f=Fqd%mjCwqx-yJB)!oi3FRSwn) zA(jj|C>|Au%axg83nZy-2rLUeS^m=%w?P0z-!b`=1A};HcaI)SpR)P;So}LTR#Ak% zQg{9imfXV*gSDH{oCYMo1RKmmZ=eZhZm6v+3#n)+L;#6C zCkUZecpo$ix03$tF@=8)p%y|olk9_2!|&ix9~3tyS-@2kZ#{z-5yS;XBNaOZ34y|V zR$zND|7|8xW`<9yMzHofnddr*_YMQyPe8Pj%*9#+55;F4U~{CvT9lR0cQmw*E$|PA z;%-4DVu7?ku5W;-6h`!vwpjRxPzy?!XBKK3C=ga7&LHvR#!DQ(#ls_yM1#QL7=U4o z;>dxjWH6G(wYvgck~Qv9*=V4zR|w2@+|uHZX4K$;LISm9(Tx>}dO@H<&=`+De1^$g z+wvK;su0$RlH=tD6U8O8WIvXo8{OgcEpp4+hj?gvCLp2rLoAA zg_J{u0P=n9BzP@f80HC>6>?_A@l}h=khT&cNa-vJs@#bZLbiM>RoG#R@zeq*zVcis zQ{tIbp4L{m`3~K9AHB-t_F(evP!uZM_`$5rzDCvmgaDuv`3>Mk!!;pzP0o*Z%BSwD zL(rIAK%Cb~%Rmnnx2p`|YDZ)i)0ze8`iVGGJ+_`75} zwA96gfuo%$ES~>8Q<|o&W;m;EFSrHZwIxTjH%s*egCqr)_t5ehAIs2o5A@uGc}!;n zZli&BOyMMgQNgHD@C6+Z9tm7PHxA+I6HO*y+5y4_AfnJxr(XMdjb5!X!pgLrJgWDi zTSrh{7evH@m{`+wtgtR%b)45o7=Q|^)wrqMTGQnLoAxA{y~r^@cCEiBa=l|87Ja8b zCL{&7vVbJwG^pZyoojrvmI_Jgk4KMy*jmyehPNJAn{U`P3hQz9-FbPtkSUf=6=^7W zU9jUtw6jQf|2lg3xcR3CXfyICPm{0(4_I8Mbd}a3=V*ogRfwL})q~a8g4niWBXap3 zhsIXdBXGbx9)q#GG|0lFKD1va?u1}q`5u-(MxAQZ0M>?s(}oQQP_#|h@L(d-W~^uQ zTpoeM;1=)~LH%Q7s0iAElgbZ$15N>vX3_Vhn6Z?YPpvUuwqj-sV!x)u{%DQmEN;cF8pLg;#O=1m?Qg|_3`ww5(t(eI zf15-WG>jKbjhB2JFS{L&F-%ZOO;CNDps}5xZJ4N^nrQqu(R@2mL372`A!(C8%ydMfkkr7rDzuB|)U6jo(^4#yY)gKkh#4&O^ zDkvk$WeEA)5bs5C<*4N?6xi(eY&b{3YI~ltEnt=7*rsICiMog0%q&D3jGH=>jZ&#y zWd7@r>TfD0Os7_6x@0iKj)Hl*u04o`ep6ATfGO$V0;SnZzuD@bu7UxsOa(C1fTH0E z2IsYD4&1ty+2xw$4W>z)EAYlh$SY)a(ciSm@1?dD7b*@{qNggAnBy1P(((qZR4Z66 zM~U8quDtyp=)dEdKhxy<#>uqBV&3Nz1rIf-j)aPtgc9Cc!9y1uDxs7Hak_q6;YUEvl%%xJ5EWUF!vt>9}KBQ&V^MXEwx(24&fDw4Y{x_x4N?eZlU z%NrSEyp81xzh0UEU*hMz%t@V1d(-9q$%tYhi7}JBm~2%c*j4%C9vO77k7;1_8A>VD zuN5YM0AChrP>5#*edd14za=dWKmj0Z?8hPPFHQF-xc!J^h#=yhMYEK;B%thburl)2 zQIIqv%n7#aF8;)Hye@ket13xbZdVQpHi)`zB4!gi9BiT%V&{Kd`C^vWcAY36QPWDNhTH31PlMUDqAGl%n4_8tuh-*y!=jTIqyXb5(+CgKs*iygM0l zeau?n%x^u~Po0R6hU6~k?JvRMI2-G*^145BfzA+p6c|=PERlieC|awc z(YE-PH!s0Ec&+Ym{OX6j=dLebzmt2We)?5?pvgTL@di24*N!RGq;F-D(~qWnzQf(o zB3jp6aHlqM?($G}!|3(vn28pi{ATTJOGVnfX$6=+P*rOM#{aQoNIfv^pnmZ(Q0_2U z$wp^cCm*(Hx-)P?D+pqqfN;{pAx+C7({oBOyT`bHf5dJW&ZUR!R5G1aL zly zQ!s3Nv!Q7yXE=oKosx1R4TPP6SIoz;>YbjGyM3527=zzk1lDP8*7>l96>R2FDHZgp z&e`?%OKUUGQM|izwPTyD*FQxeH2soH+GoM zhgzN~T)jGhv1(lD0u1cb;ID{X`C%+*B)cz2BwS%UK;f_@aF5NqC1K3I9krMAWjQa) zV=rALk_*eO4CCo-y6n4T9;QR7&ks)_I-C3*8Yv zWo?D!>kWupDpOV>;bE@1(XDNYnp0VAJ9E>@^W}x?>;6V3PhNSU{N!lgDZq}{tVogw zBXL!}+{ z<%B4a!{JAMcLDGZ0MG?+dE*t(_}0Udg~GMG@6pIGOI{BOvTT`T zQ!v-3;jVKaS$>z==$f*6k1L3nS^r*&Wq-bw>b=m)4;Vs?^*JFuI$@^kj?ZI@9D-GW zHROd58y;wB4+c!q_oCrzf&Td?kKYSv3vB>Y5Z|L(5oq!{VUW)>i%+#IQtuUX6_<82jVVl+{P$?Gpvc*XTioYWI4B&S^e}2NxZ- zVsr!kzp&-R`KHMF>^mv}&7BFJ_@eEEqbq2qF)I7NGa z3E=C?J%ipb(2?FDH>_hPJ5hQdhU9V8V|u&uWa~%+ksFnyRy|7|H;1+pd@Kz`89=wP zQ%=gR6h=wN+rv_7<2HA{`(X}u5|GkGEyEH45@-r{b%lc}GcK@h&hLhgh)ko1BYGey$Q8SiD}f zl9DcLpqE-j<5G7F>S(~VN?zbGqLh4C+gijhDWX>IQW2Y(I>L?T<*FX@V6nx@@7t7} zyz=7)Kzzoyas6I>jI(t~s&4Qzok>)K1uxfw5uNA!sgnsqE~#Hqn!FYGEiR5*mRN%% zFUZ|>pmJ$_aR|&UbM~EAym-t+?~QqsvqihOPi#Bk(kVOF^soG!FOlCb^SgABzgfj< z%6+dc`uGF2fQX-J{~CYXKY|YUKmO(Iq4CkS8(FuP!gFplhi;8V-|y^9xE>YM^|rPm z(D9i)UuIGNl^*p1zt=33kc959h{tXk8TTKE1#GgwawPpP8~Z=g_FXsJ)y0`%QpzCKmu_5)pE6@F!Q1uB|ab^ilPT z!)EweK`@@YzsfAm`FP+{Ll$;l@I%FHp}20m!t5tl^5rO*awcYqvqH#+uS*WmU+LYa zi{u-*a}Tauf1H$!@&s6--vZ&Xut3M8+i;BBw(%Hgja}k|X z?xZ>)(S^bC6Q5XCuh2mJlf#z*?;Gyd+EJ0mgaM~C@cz#qjMHJl!OueIM@b3gi8mf# zP6odfatO*5iN<4mGpDRqBxO^cJW$&6ryFd)77SA3^i%oBt6?^wj&Cc|gsUMiye)|2 zeo1DuvKJbuVgKX4m|9U)bJDG&>a!yY%mmEsoC84lwk0wXfLO)A3DO%bCkxgu-trH1 zChk=uOpcrFcHgjdQ5|9Aaa}@;gwDoZejCsiQ+G79*Zslc(rSwwFy-yID`@z*eqZvv zq`P+l{2qeI&ng$r$DDt|H#K}Phg-vUp4cnro+@bE+sW@q_(# zeVBmgvEe(msLRH-Ck-A{Ek;|X2m+Sa)}{u}yE2p{AFKWv;m}I^0)rnYb!3fsd)rkSw**kAO+dpq%H#=I;4qOgUkt#mRaWsb5QPdkY+k9B zE-oQ7NHMw-)}K>#NURw!g;RtOz&AS`IN;=f2a|BDtngee5Rv#IsPkS*ySgC*M-j4T z;`?v6H}VsSAUY+ur7b-GQrXF)(AFgy#bdGVsmKJpJI^MC5EY{zcbxMDXUp`on}-;hs9qT{e8vsPC8~Vm(01BbnCRbOt`U%^a>AjkjRA(Fn+C_uA6V}|JKev z^~veo2ML#d1%tYYFaBtJDDL#XXr(*fp$cD4)3-Y9cfl+6T5)2Ap?M_S&t_yW@Q$_3 z{z8XZ#;5++)(7hErXC$W$bA6TL6YRxV;&+Dbh`|FSEEqRgD2T&+(uMxhKros3VjF+ z`x_3Nk4@IClMZb-rX^z)my!Aa>B#^e!ubkL7T=oy?HB-SvXl&K=+uuJRl@h!R3&1! zrtmloWJS#P$ZfkXYDhtZ0VD}W7M~mzB*Sb6d&lBmem++!gobf@Mkbjst{4ko(Sl%| zSF?wZ>F2`k18x!&5R*zyIKXW1AV@#HT)Z{b^%?;zUWZSS)>5%(sR2d#n_^aKN-jad|4a?)YVM>cSRSv7`m-8 zWcj?}k^0piI$8zn09qmlMfgSMmVRHaX$oMUFFJRm4`MjG#Xtax>sCWjSI#`FUw^u>a1G=8N5-l7Aa_$omJgtbeA5vcft!8tt_| z|1OvOzaQZ5GWi9EgXB;^SPH~}0`vA-6Q^k761jRQ{0kH$oGOT=3Oi6mBdFpF2b?8U zx|b@uKs^MfVX!m>2bxj@O@&TVZJ??5(li!mTJUUbY__gLwthsmAwAo;A=|V!+k7GW z2t3CUn`7;eV;hlUPtS2|$Z_h;aaqW5gXg-FvAM?`ay=t*z390<4Y_{3xd98gr{H;k z*t}qeywHfeaC%;3L*D7$yqJZ&ICy?MHb2oJKRF^lm7bs8ke|_;e|90Cd~j)4dbR^S zH-er|rx!HP&-K#JFVIWi1*O=63l0V45e1j%1(zENs(K5qE)@I+FRZ~9UUw+0k02M` zq!-?5;1u5JExfx>*aSb+uovqg`y$&`4Q~-QHS$m5$8YB&wpw-Khb;s%fk6-c<~Ijc+R2to0orTkFI7} z@z>ts#f4&Qt-vh9noL0+S>;x2mjAIr=GJfrYEZoEiiWO4nXyno)PZu1Eq3CuAXfon zK$(%c&dA=%68scuJ)*NrFTL9a?rScVu5sz=M%l9!jtUDO;xSA5PHPz!*d60jkK`c} z!MklGh)84&`*^~fu2e7Tk{FohlMr@SJbd`VK%O<}!iA!)EZbewq2^QCq*AgZPx;NZ z(mocaG;Rds)(pA~GPB2rW_%Fxx?GNK7q{7>Jx3ilf%q3m6_dk!higlclP_w6FaElD zQAg;~lGh~_k@Aeog~uJsJ=(?SDDVrG8D{sQoN;BYaRoZ9Si=(WX94kkm`{U**kYj~ zKk?Pz`C|pS$Rxz*Fy9s)LFQYnK$ODC3<1PyC3%HA{0-_miuWNAIe-@M9Y&RZ;u~cn zaG!)gT&jp>tPncMi6{=k2+HUScSQo-?Un8o8L9Er**B{DFCPhKgWS+%fTY6n9}28D znHVO7l@0w+a21Sqk+laMWjRmYlAO9+{n95%?9#QxdLf4us2rKZH6>}7K}s)w&ADa` zs@_chZ`auR^q5z_;eVO8n8ilrSv-{*RA^&eCBQ1j3e^C(nxt@^p-5^93R3<^>}Djm zg(0xTfd9bpyW3SgCRVJ$fvcYcp08XUU_lV>SAb!GEvC2_9`TTZyw{FuRuwob#j759 zg^a6H>Z_6_kAPNk!C2rF0&uaP2?}lwL4d%2VBEbwz@BI7ty@v*!!RsU+^6r9|Id2u z2Q^LruO(prnMc9p3E(DG-}pYlfe}6U=0w)J)bY>t7m4-S*#Tq| zE^42;AC8MjDZi|u@GJ!u&O{{~y_p+jz)-s-jVIsIdMSMNQ3Itg6;a5!o$pZY4yu&) zkrzG#owmu+D6O$kz7bMLH9-T?ILPJqLK>u!9TH*|k9f}%KnNmgSk8}ExNS!+KW|2f zt#A+X0`=`xlPjn4heUMPq1nc4<^57BW6(u1QltwS4*aF?p`gpixA|!<#U%z0+|i- zy(b8M-n)X|tNgDS^`3Yc(b=foE@oUHGXSnV)>;3dN8A^KX9zx?@3z|S6BC-ba5_Ub zC`UGZ;?UC?+k@@Le^gm9Fd%VXOyItlWr&)RI$#=)c^+bw(20?I2j-==k;Awj{5O%0 zjFK1r4B6KKV}@b+9S>9rM3df9O`1W6eC4-@6=EpFchq%P#G{+WkB<2X?)6?F6RSS) z)&W2j-)bd4p*0)(!*!*|2aXB_uUqqzN6ucVGGNF{eC^O--g!}Thr@@}sSzmEG|3P&JN?Y2lPZK} z@nZzO4_7>1x$gPrA)nP-{K( zyR(G|QUqQpJ{1htcU3WaX6`S#>U%8Z&TD6Pl*BMZco=rp#4xoYm|?wM+4RbZ3U<|3|UG50%Q zr8w0}froF($Sh}n)4DL95|O_hy6xam6t77c+`JGuFnoRdbLYUXSD|mO)Zp(W^{bU_ zX?fa*c_^!T+6O6%flU$y!ctz(D4YVL&GM>=@A-gUyQt?0)jY%GoAWenSfLiKLmgaqiWX?OKjJ&&AJzv8$ZvQmxGZ{V-SgCIFgK;|&6n=S{58XCwx_~d z2JBjC{XZX}hOh8rUSDp%jEH|FW_AH!!ld|s9n{m#jEc9_Px%8uf%wZ`KMOrn5%c8c zF1a}nQjm;j8MUx-CVS@BXAFa)SD2qhvcd9Z8{`^SZ)jt^HxJ|u0AMzvMh-XX6^ z#q@pq7_Kp%9aG>td_C-PEf4|vqYoBAjifvp7aATfaTza<`9v;ktGZi&kg z^geR_6Z7n+`k2o*&wsvk_w${B&vzF;H}OxjXiPkCnRpa4@%a2i``w9-fr)2}6EFBD zJ2fU>x=i-OOujxp`R4BA+kwe}#mOQ5FC!XXMqR#)#eDgA{>!JkUnT~=d|CW5%|A7x zF*WBh^)+Vd`}wIKcc*@l2c{MmrBU8Xle@80E1{~4IxU!3Ofvq73{ zh$|Zw%jPa-^W0-22HE^eY^1=9pyrIQ>x^jZjCk>kc`!5P`5nL`4z7|mG)*IA|5 z*#iZI>b+U@!C8%^SuKG%ZOu7d*E#*zIm6;P<9l*u{^@~DEG^}+^&`j)ORWuSw+-944f~P}$EFRZp$(U1&W0Ou(_L%xxZ9>@+@@E_ zrccwR-_T~j^5!YzR-hJnE7)x-G;S-rWGk|1>-5l8%<@(oaywpYJJD@BIc__(WIMfS zJ7Z}3?D94lxkJ_3$#&bxjoZmD*(vy+3}EN{@=ghIw^VEQg4=F+-0r24-OEk8RYSX1 zmv{d|?$v1RU3c57kK4OhvUjU#@6OQP-Q~R|GroL?(gf8zi*oUz8(5Iu>5xjxj&+{KkBwW7PtSgWdBps{>0G!m*xFw z%2#1ZHpxJW9P?5=Ij|5+hRqZck_-HRXy*8e0ulQ zsZu+1u+C@nn@hEE^3wdL(eG|d%Ul5^-}ejdb&lnlp`YLXINso1?^^FW_S3V`=TYp} z&tt#5nge@^mHa;Z_IVgNb}w||!=hhX{MW&HzmH1+Pt!M-zD|5x#+_nOVMt~F@s+^t z0#U87$??_T-clvE8~&fxLi;c4$9rZOV_Tve@OdNh{jCeASTuPje*R6lR`}H9 zZsNj7z1z)`U-ptYzdt>S`#$yMPwL7{Pl?K@slVwPKgOEEr>FKac2>U*-8?n@@9f{* z&E@aY(;PAY5h3Bh2)z|NRM>-L$t9h%VhLBcNV4Kpf4E}Br~CeZ{5IWKu|`>o#M=lt z>8;v`9QTN~74u74wUr&|+k9*Hgn6G`hXMspVvT}^&H zTz55Ff1l`P@n>V*4G$4bB3L2xHwZSuo=NU@(#ad{4hrQ-$BwE$B5xdX)*VYa?rOTZ zahzZ+n(T4RNq^IW<8j7@}{SEaC!0x-_wsaPxvQ}C3~IB*xd9YW{akH2c6U3 z@(#J+nc@>xmAvH>alJgnH|ox#E#K$|V<~>I9h+Nzq?e+p{t0jOxBZhwJyQcxCX%-U z(&oxjPoDYpX!~U5`dBLYRMwx(?NbzpSQ?RrFxVmH2%ks`%#%*p38X7jq#f|Otvf+Q zx*yVli%qw7f*ICg=^2_kDo{nt?)}Zn9&KYNDsSmx^*|KI`Kn#__d6!-Ed~M z*qMmha|U}6br(*YiM&yjvKQHKz2Z#N?K`b|QH>8ioH>23V{7kpGx?=hM)du+27jU- zj-JSfX`M*<6VoEEhS|D`Wnzm#?6=bgv@&isDxF)L%KWBXsm z%1d!_=Gt3BPUgm_7y0bgL@MX(&fFz(*50qjoUFg=AIao@f3^=^LoNaZqDTbsr{ST> z1S%qg2$9{v!|ez(;ktt&mo!VhFhaKUJdxXc#}buC$Wc%XI@eUMT)mrd}Ov(1-VbT$%kARCb8PWw}sVL}g~n zz4hkO7Exs!lef88r}s6I)XZb;(aCQlLYLYjz*JXeAObB)n#snDliw09fdy@WqV#^3 z_iGhh8-e)z~`0tZ`1&Ah#-;0qXEx>!r4@NtH7MFW*gaFf&+r(em?eS=y|e< zpn{}mLLnq)4sAN%=w>Q!m!PM}SGhAMd+1m(1a2+svXA= zs-1tlZ~i|%%f=wdU*qqyDjx8@X^iE5H!&a(0?k8r%Y?0Rxx;M)7${h1J*DvV8Jmao z`WjK(UFY;1i0IgbYz0Cm0>CrH!|^;v_II62D)A7#W{@3s8AQMX|C}sJ2dv+}J-N-R zSc@3xvgb~i-YOOWtb1t^0D~_77pRj3k+N>$bFhEeh?xPfD0uH(<-L#_ys8v!mZ0lx zl&FfGCtXv3F-D{BC@X&GRTCi45qfoUmZH~>%j!6!OV|`)@AaNgx}WptKp3hJuWl*- zLr@Qn?}(Arae7!vE(+-_$BeVo0Xpa?HDXTk=KBN?!LcYi;_};}6`ja1PHCRl4uKy8 z2LoxC+=V`Qz=7CXHD?xX_|gZRa6=cc8F2-AF+f7^`qe*tLZ}rCP!a)EtYhX~?oYvl zyFO6(Fd1gLEIGvcMi1CI%y1=30htV|%hr@Biw(;*GH9nJ38WEWH9d-=p&bsHfB?%4 z2=Ij-p8m&2&@plTpzsZ_g7Hn$`8vjTVXQ1sp^*w+n@_I>v0}twu;$?)I6};z<(39Y zngjy!i4cG*ka#n?O&x{J*URbTGoc9rrF1*ZoYg`uRL<1at8F|Ksj)yaJY0NI#H)QwjyXj6k;Ra_||68e%G z>|@*|y0k3(OP=i?>cE3?XDA}@zsbR;D0t;&7$gVJJt7Jh8e~&dWGn%5iQZ5Ac#u+> z@$X>qj87nxBTrfv-~?y`zl*nZq)!44X*BLZb}Frr3FX1|g87DXHHAW;*cAZA#-{>U z3=~pI0aDsipIc8YMTKYBUz-F)+q7fe;2L4qYR*&r)6pJwuP^Z*BLiO$IotII%AdnH zTL2~B9)@J`N!0#*Vt8ctt>M!HgE}}On&ZU_rdq6DJtSmxapn&aZ6hiWz;JZ{Aw4Nw zyY7_21lQRzjRq@Ku45GY@l)ugMk~pqAR3jFW9I;ICqXx^=*?OGuh?SQi4Lm@nA2}oY1e&hXn_a@PSiJMdF2dZZ5-N&;jg0U@COTr7^P; zq~X|$T^J(RqygY>qYATI&o6ZS70OnO01VLN-14K>OL}WHqTo?Du7m%ckZ~@601BaN z`WkVi0{Jn3xi5~E!~txA9rCFJLx9Z{!s4bna4S@HN1^GF4P2)H?$n)Z8#Fx$m*--} zt$;JGZq9>{V9t!Zpq;jK)1C-y4g{MgaoW}^t;f5%$5M^UnbPAQp?ah%C%%Eq?M2GH zb=}tQqHS=FZAf*yK?22m_Fyr&9WMbtZe!~i(i8HuC))p&|6~tj!IrwyLzH=S>m1a} za9Llb=7ToA@~gixcJ-L z2=5*%rfIy0U62UfQZ2`$NR2E^gu{1k(-saAWk3W^E%pb14KR`jC`v$h9jMgi9DZ*w z0Z!B9RGLzo0SNAmHVO27&Y=YQrdY8HN}?(;bF{G_-O4vt%p9v5O+n){Z6H@=9MHnS zMd(yoGZ=)We((c82a)yoQxz0^M8SL%0$lyu%TTl`d-#TY@h|@9ksKZk> zgfau6u+->Jp1vI+fz1fdPYA=YxLoQ=Ho$=9N%VJ_IRgY|D$cq4F#JfRey3vp>yZB9 z9pE@VJ3vD3cyp&13ub6UmxKc+E2+l#TssN+yMBn{%Dt2;P*vic!JLQY&X6%F7l6WL z7IDvqyZ}>lhQEM1(@4$$r9T(vIv?%)*37lv=7?FFqU!L#TsOp5xZurGSAc`30^_+f zMz$WDV#uPJqP6ny*=h^-bR%-?Dtiu0sU8t38y;?3)jeiuIkP`=3<-}W`Uj|NmuaZ0 zqD&f3~d+j(9oE!qT+fg`n)h;{dJ=GhQz*f^7XtBNe*v`Bi zf_{SVw*Bw6D#!?&gC*-wS%7%&Q$dC!zycsxT|U$aJ}gy7n#zy10@$8Z2MRy%42=S8 zkA4V^Iq~4FCv^b;HG{Jkz(zQ_T!gvJBIRJuLyY+0HLnvD`>dMwA#i^zL+C^93Qc3j zBri<|e%@TwntqVme)i*<6o#{3-WP3q`}FAxw$pg{!ZY$aQjQ^i4+g_&9X|>HuIFqCUASud@O0BY2o9hv9Omywj(FmW|3Wlz@veau&eUfS*)3 z64Zfd8r}t>Vsmwf>XvCa$HAYSqH@*fnwIdv9ENw{qw&7}amHEK93!9p`Om$I@FQ5r z+kObyp)!}dndSlqYU}S>09pkH?86=)Ap*DXcA@S75ewAVaSdqEQGi8V5`kaaAN`Nt z7rl8 z!W8f~t<3T}^ua&&-LHUwC=L$ni=#U|?EWqaPsY*CL4kNuzK=-0nm*5Szv*1>o*;h( z@5Y>4G}|x~edp>lq~Vm0tWieew4^#$_zqWkr7h5QDu6i+ZZ-NlHhqo!j;5P%oF*|A zgoba|ACJ}}LSM1}mOC)-yyoYk{4djKJq5F1BR{bBV%Xfu^!Uo#w|oy;m)gYBT1?*` zqpo-m9$lwJ1d0oo01hUy)}B;vs%Kj6tvzELZ{UH6R7RLi=6~wXD~?Tq$RJn9}VSYTu9|-caRdi0E!ol z;ic9(s}ly7;h;>xT;m~F?{g;eXV2z^(lyjy>U3m!A8=gHF3#t8pK=}yahVEnT?%pg z7eWvSb)O132Y^PpAYVM36?cG(=5WujuO&+Tp0T0+pX304hdGG91l(Afkc$iT$A9gEQhYx6 zdR2sa7x()ad>31Qs5W;ZNDv1&MGX%83!%s2Zd51GedXX54PfcU30pOY9$YIAweTlc zog5nW?LcRmW8mHT#4Wx{H>x!(`o=`e2fesK|FAhKd?!K;PdQ9f&jSLu9iZsm9NK{= znZp9-taR}>fqBn=$&-N6q)x#?4a%)3dVL3&YQA43S2B=qGoBZTq7z8R0BpBL&`)Z^ z!NF4@0M&-XZ9aceQIx)P&;^PElPRC`Bw&E!#w3kBe}U4o9ct^XI3^tS3%R8YESxF} zx_zVzI_!7)*xgf4|0!@OkDWaXH+gqT$n|vk#4nR~ryqYf)mHJVUD>n4mDu{>)XOQN z_TKduubvzMw}Vk!UTjd95v5KCB=vj-vg6@27D$t*>pv)2J86P>e*7`l^?Gtb^lJZzrqQlE2BWJy$QLDt`&Kj zOfOZQ0y>7P|$(;%GO%ZDhlz9reJ6H0XCf{A^r`Is*lo<>)O_ z1-x72V>p^^wKCl22wl1Ow7e9ZiwM1Gz38h&Kb0C2P}K85SHTP2<28MYc!(bQ+T`Cr za=`cG8&9r>sm%Bs84J|nN_3%Xt!a;>oE{CMPlVAwDATiLW_5$0a`LwWmXmMZk9mKB zE;=G)KX^1R3Gr_7y{)2R(1|2SgjQF!M=QB;7T$P_9(qh>qvL zZQNk|SU`$M#Zo|+6}WLxw>Md0GaH^83FLD{aK{7OvAr8qZ1-YvRCeVpzZKXW3;Ho` z$}#)ol3f69OrHh)ErPdjm{6s%%XDW|ANfk+wdzUq``*o7}X|vEL_T3Y06rC zJZdcqX9}s&h*{EdWS}`~JD=>MKWf=``yf*FInPX<+LBr-@IFx~ z21bz^k+bMeM)O&w=XM2P;jB-f(^5wSx|7iV*%eR2TS?_k2!Ojspc;%{@nuBwyypSB^~xNo{Tl zDN8Dq+##iuBh|1}uI8#7Wyq2H?4tJb{rw)lf8qUjKOXPL`*l2D=_3Bd--8aXbY&)_ z!#x0epfxhVWWT=1IjQ@uWzI8JcSclh?2qH9N_s_~r9#5qkH$q;9rvGk54HB^J3olq zH~*o=r!9M-?643qI~+dS>2T2-cnr-{t|$_FnE3o0U-W_(H6l^DlBL=(dSK<#6?5a8 z^?G*o#<${RS&YFjWm*vQbfa9p789MYyE3Xx`h20X4(!i@?r5bwowRVWKX4bVX|>(! z3{2$MDA>Ob2_zw*IcX{pOcqk{sE6!OH)#Ao2HloykhHk8{9PFJ0pbZSf_*{T4ejH;kaeFfZReEL#P?Bt7WEnriW|>?FR`RVu;St*ayO$L z+snTD1QXB=siCSmso){u;x*4@t{#3^?+2}ZWG;PV0n++tqXUwkIhlz^zV#QcZ5Q2| zhqR!jx*%6}o=Lr$oSpR;WVLI~gNC_|kY^nc^Lov16mu48y3k+s>-t=`44(a^-MUiG zyXasLD2tlxfJ`#gyUB3V&VKMKm67UAAGV#LKrc^GaztP*dFn>qKHQ*{EmH4 zp#4@Efd?dolmFXf7Z-qPCRDQ#S}T3ZLBQ)oyVW!jP8Ap?iMm7 zG84p6vK1sqp-US2;-1RWnGWu4SlGd2^S?Qw!EUh2`F$*kNy=+~W}Cz4O3EIqaZ&r= z4mU=X{UG?v7p~^!FJJ3fct+Vp^c1QXHyM6Ry=X_bX--syoto0~H_f?CwvugRle^;Z z*;W;BNy8hZdcHcH-qQVfpMU3p{QTAG(&TZVQTzkwn6a}aBy{5`L34N3*-rYmtJh(x z8u%Df$FR8E{1GqB27u@2sE#m_xO9VpV?=j(3#!TgTlEI=``dfJ&`@=yU+pz{8aW8~ z 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 b-)C08v&A2&0T&yEYXh!M7W+Dw0AT(● codeaf home teams chats sessions spend settings $0.01 · sun 11:12am - ◐ bash output and terminal check conversation × + ▦ All + >● codeaf home teams chats sessions spend settings $0.01 · sun 11:54am + ◐ terminal check passed after clean output × + ▦ All ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + · esc interrupts · ctrl+c quits · ? for help + › Run bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The / terminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request. - ▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e + ▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e The terminal check passed. - ✓ ◆ write hello file · done · 6s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-d2ae66 · ctrl+o - - ▸ Working thinking · together · ctrl+e ↑ 15.1k - + ✓ ◆ write hello file · done · 8s · 1 file · branch kept · task/write-a-file-called-hello-txt-co-b2ad8a · ctrl+o + ▸ Working thinking · together · ctrl+e ↑ 15k ↓ 507 @@ -35,8 +35,8 @@ -─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────────── $0.0070 · ⟲ saved $0.0029 · 74% cached 15.1k/1M · 1% ⠧ working ─ +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ──────────────── $0.01 · ⟲ saved $0.0029 · 72% cached 15k/1M · 1% ⠹ working ─ › - esc interrupt project: /tmp/TestCleanChat2460052115/002/clean-chat + esc interrupt project: /tmp/TestCleanChat412404832/002/clean-chat diff --git a/docs/design/chat-cleanup/evidence/03-dismissed.cast b/docs/design/chat-cleanup/evidence/03-dismissed.cast index 78f4ea542a..b6079d6ba1 100644 --- a/docs/design/chat-cleanup/evidence/03-dismissed.cast +++ b/docs/design/chat-cleanup/evidence/03-dismissed.cast @@ -1,3 +1,3 @@ {"height":42,"title":"03-dismissed","version":2,"width":140} -[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:12am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ bash output and terminal check conversation × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 4.2s · thought 0.2s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 449\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 74% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M · 1%\u001b[39m \u001b[38;5;146m⠋\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat2460052115/002/clean-chat\u001b[39m"] +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;115m$0.01\u001b[39m · \u001b[38;5;243msun 11:54am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ terminal check passed after clean output × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;243m· \u001b[38;5;116mesc\u001b[38;5;243m interrupts · \u001b[38;5;116mctrl+c\u001b[38;5;243m quits · \u001b[38;5;116m?\u001b[38;5;243m for help\u001b[39m\r\n\r\n \u001b[38;5;146m› \u001b[38;5;110mRun bash to print CLEAN_CHAT_TOOL_OUTPUT_7319 and then sleep for 3 seconds. Then answer with these words joined by spaces: The /\u001b[39m\r\n \u001b[38;5;110mterminal / check / passed. Do not repeat stdout in your answer. Do not delegate this request.\u001b[39m\r\n\r\n \u001b[38;5;243m▸ worked 3.9s · thought 0.1s · 1 tool call · ctrl+e\u001b[39m\r\n\r\n \u001b[38;5;252mThe terminal check passed.\u001b[39m\r\n \u001b[38;5;243m▸ \u001b[38;5;103mWorking\u001b[38;5;243m thinking · together · ctrl+e\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 544\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ──────────────── \u001b[39m \u001b[38;5;252m$0.01\u001b[38;5;243m · \u001b[38;5;252m⟲ saved $0.0029 · 72% cached\u001b[38;5;243m \u001b[38;5;110m15k/1M · 1%\u001b[39m \u001b[38;5;146m⠸\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChat412404832/002/clean-chat\u001b[39m"] [2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/03-dismissed.gif b/docs/design/chat-cleanup/evidence/03-dismissed.gif index 6874224d38f6ee5178aae9748ac402eeedc3a0db..f9467d8ee5e5e56623773a2f918c880ab41e1d9c 100644 GIT binary patch delta 36281 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 z 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 delta 34399 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Ξ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 oB2!iV● codeaf home teams chats sessions spend settings 1 moving · $0.0032 · sun 11:12am + intentional bash failure recovery test × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Test error recovery with two separate bash calls: first run printf 'CLEAN_%s\n' FAILURE_TRACE_7319; exit 7. This failure is + intentional. Then recover with a second bash call: sleep 3; printf 'recovered\n'. Finally answer only with Recovery / check / passed. + joined by spaces. Do not echo stdout, delegate, or write files. + + ▸ worked 4.8s · thought 0.1s · 2 steps · 2 tool calls · ✕ 1 failed · ctrl+e + + Recovery / check / passed + + + + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ─────────────────── $0.0043 · ⟲ saved $0.0012 · 78% cached 15.2k/1M · 1% idle ─ + › + + + alt+e effort · alt+a approvals · / commands · space space home project: /tmp/TestCleanChatFailureRecovery1487267512/002/failure-recovery diff --git a/docs/design/chat-cleanup/evidence/09-assistant-update.cast b/docs/design/chat-cleanup/evidence/09-assistant-update.cast new file mode 100644 index 0000000000..fdfcffeb63 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/09-assistant-update.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"09-assistant-update","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;146m1 moving\u001b[39m · \u001b[38;5;115m$0.0005\u001b[39m · \u001b[38;5;243msun 11:13am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ sequential bash sleep checks with interim update × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;110mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252mFirst check is complete.\u001b[39m\r\n \u001b[38;5;103m$ sleep 3; printf 'second\u001b[39m \u001b[38;5;235m↑\u001b[38;5;243m 15.1k\u001b[39m \u001b[38;5;238m↓\u001b[38;5;252m 968\u001b[39m\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m (together):auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ────────── \u001b[39m \u001b[38;5;110m$0.0015\u001b[38;5;243m · \u001b[38;5;252m⟲ 96% cached\u001b[38;5;243m \u001b[38;5;110m15.1k/1M · 1%\u001b[39m \u001b[38;5;243mrunning bash · \u001b[38;5;146m⠇\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m · \u001b[38;5;146m9s\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mctrl+g\u001b[38;5;243m backgrounds · \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering3496973854/002/steering\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/09-assistant-update.gif b/docs/design/chat-cleanup/evidence/09-assistant-update.gif new file mode 100644 index 0000000000000000000000000000000000000000..a9ff76dea7bba0ec2c04fe18183372299e04b95b GIT binary patch literal 38214 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● codeaf home teams chats sessions spend settings 1 moving · $0.0005 · sun 11:13am + ◐ sequential bash sleep checks with interim update × + ▦ All +──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── + + + › Run bash sleep 8; printf 'first check finished\n'. Then run bash sleep 3; printf 'second check finished\n'. Between the two calls + emit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do + not delegate or write files. + + └ Also mention that no files were changed in your final answer. + + First check is complete. + $ sleep 3; printf 'second +70 ↑ 15.2k ↓ 998 + + + + + + + + ❮ + + + + + + + + + + + + + + + + +─ deepseek/deepseek-v4.1-flash (together):auto · ◇ YOLO ────────── $0.0017 · ⟲ 96% cached 15.2k/1M · 1% running bash · ⠇ working · 9s ─ + › + + + ctrl+g backgrounds · esc interrupt project: /tmp/TestCleanChatSteering3496973854/002/steering diff --git a/docs/design/chat-cleanup/evidence/09-user-steering.cast b/docs/design/chat-cleanup/evidence/09-user-steering.cast new file mode 100644 index 0000000000..12748afa31 --- /dev/null +++ b/docs/design/chat-cleanup/evidence/09-user-steering.cast @@ -0,0 +1,3 @@ +{"height":42,"title":"09-user-steering","version":2,"width":140} +[0,"o","\u001b[?25l\u001b[2J\u001b[H \u001b[38;5;252m\u003e\u001b[38;5;179m●\u001b[39m \u001b[1m\u001b[38;5;110mcodeaf\u001b[0m \u001b[38;5;110m home teams \u001b[1m\u001b[38;5;146m chats \u001b[0m\u001b[38;5;110m sessions spend settings \u001b[39m \u001b[38;5;243msun 11:13am\u001b[39m\r\n \u001b[38;5;243m \u001b[1m\u001b[38;5;237m\u001b[48;5;252m ◐ Run bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between... × \u001b[0m\u001b[38;5;243m + ▦\u001b[38;5;110m All \u001b[39m\r\n\u001b[38;5;243m────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\r\n\r\n\r\n\u001b[39m \u001b[38;5;146m› \u001b[38;5;110mRun bash sleep 8; printf 'first check finished\\n'. Then run bash sleep 3; printf 'second check finished\\n'. Between the two calls\u001b[39m\r\n \u001b[38;5;110memit this exact user-facing update using the update protocol: [update] First check is complete. At the end say checks finished. Do\u001b[39m\r\n \u001b[38;5;110mnot delegate or write files.\u001b[39m\r\n\r\n \u001b[38;5;243m└ \u001b[38;5;252mAlso mention that no files were changed in your final answer.\u001b[39m\r\n\r\n \u001b[38;5;252m\u003e\u001b[39m \u001b[38;5;179m•\u001b[39m \u001b[38;5;243mLinting common sense\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[39m \u001b[38;5;252m❮\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\u001b[38;5;243m─ \u001b[1m\u001b[38;5;116mdeepseek/deepseek-v4.1-flash\u001b[0m\u001b[38;5;243m:auto · \u001b[38;5;173m◇ YOLO\u001b[38;5;243m ───────────────────────────────────────────────────────── \u001b[39m \u001b[38;5;243m$0.00 5.7k/1M · 1%\u001b[39m \u001b[38;5;146m⠸\u001b[39m \u001b[38;5;146mworking\u001b[38;5;243m ─\r\n\u001b[39m \u001b[38;5;243m› \u001b[39m\r\n\r\n\r\n \u001b[38;5;116mesc\u001b[38;5;243m interrupt\u001b[39m \u001b[38;5;243mproject: /tmp/TestCleanChatSteering3496973854/002/steering\u001b[39m"] +[2,"o",""] diff --git a/docs/design/chat-cleanup/evidence/09-user-steering.gif b/docs/design/chat-cleanup/evidence/09-user-steering.gif new file mode 100644 index 0000000000000000000000000000000000000000..ec520e0a392d3075be57a96656a42bd79323af22 GIT binary patch literal 35093 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