summaryrefslogtreecommitdiff
path: root/internal/executor/container_test.go
diff options
context:
space:
mode:
authorClaude <noreply@anthropic.com>2026-05-27 05:42:31 +0000
committerClaude <noreply@anthropic.com>2026-05-27 05:42:31 +0000
commit1deee869e5cd0895e45016192dd70c0ed6c68cf3 (patch)
tree1f83ebf537ac1ac7f0937f9e906b3f0dd617377a /internal/executor/container_test.go
parentb9d73497efe7c28800040b3e421bfb4cb6af6092 (diff)
refactor(executor): retire the file-based question/summary fallback (Phase 8)
With the MCP agent channel validated (the spike confirmed real claude calls ask_user/report_summary through it), the container runner no longer needs the pre-MCP file fallback that read question.json/summary.txt after the agent exited. Removes that block and the now-orphaned isCompletionReport/ extractQuestionText helpers and their test. The MCP path (channelPendingQuestion) is now the sole question/summary transport. https://claude.ai/code/session_01SESwn7kQ7oP62trWw6pc39
Diffstat (limited to 'internal/executor/container_test.go')
-rw-r--r--internal/executor/container_test.go42
1 files changed, 0 insertions, 42 deletions
diff --git a/internal/executor/container_test.go b/internal/executor/container_test.go
index 5c3fd2e..26e67bc 100644
--- a/internal/executor/container_test.go
+++ b/internal/executor/container_test.go
@@ -269,48 +269,6 @@ func TestBlockedError_IncludesSandboxDir(t *testing.T) {
}
}
-func TestIsCompletionReport(t *testing.T) {
- tests := []struct {
- name string
- json string
- expected bool
- }{
- {
- name: "real question with options",
- json: `{"text": "Should I proceed with implementation?", "options": ["Yes", "No"]}`,
- expected: false,
- },
- {
- name: "real question no options",
- json: `{"text": "Which approach do you prefer?"}`,
- expected: false,
- },
- {
- name: "completion report no options no question mark",
- json: `{"text": "All tests pass. Implementation complete. Summary written to CLAUDOMATOR_SUMMARY_FILE."}`,
- expected: true,
- },
- {
- name: "completion report with empty options",
- json: `{"text": "Feature implemented and committed.", "options": []}`,
- expected: true,
- },
- {
- name: "invalid json treated as not a report",
- json: `not json`,
- expected: false,
- },
- }
- for _, tt := range tests {
- t.Run(tt.name, func(t *testing.T) {
- got := isCompletionReport(tt.json)
- if got != tt.expected {
- t.Errorf("isCompletionReport(%q) = %v, want %v", tt.json, got, tt.expected)
- }
- })
- }
-}
-
func TestTailFile_ReturnsLastNLines(t *testing.T) {
f, err := os.CreateTemp("", "tailfile-*")
if err != nil {