[deep-report] Secret-redaction directory scan crashes with stack overflow, likely largest driver_exit failure source
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 2/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 86/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- javascript
Hướng nghiên cứu
Bắt đầu với actions/setup/js/redact_secrets.cjs, đặc biệt là findFiles() và nhánh đệ quy thư mục của nó. Đọc redact_secrets_test.go và thêm một trường hợp hồi quy cho việc lồng sâu, sau đó xác minh rằng quá trình duyệt hoàn tất mà không xảy ra tràn ngăn xếp, đồng thời giữ nguyên hành vi quét hiện có.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Description
actions/setup/js/redact_secrets.cjs's findFiles() (lines 19-46) recursively walks /tmp/gh-aw and ${RUNNER_TEMP}/gh-aw before every artifact upload, using plain JS recursion with no depth limit:
function findFiles(dir, extensions) {
...
} else if (entry.isDirectory()) {
results.push(...findFiles(fullPath, extensions)); // unbounded recursion depth
}
...
} catch (error) {
throw new Error(`${ERR_VALIDATION}: Failed to scan directory ${dir}: ${getErrorMessage(error)}`, { cause: error });
}
}
This crashed with Maximum call stack size exceeded while scanning /tmp/gh-aw/aw-mcp in two independent production runs on two different engines, both times after the agent itself had already completed its task successfully:
- run 36395018370 — "Daily Storify" (Codex engine)
- run 36377939174 — "Safe Output Health Monitor" (Claude engine)
Because this redaction step runs on every workflow before artifact upload, a Weekly Workflow Analysis fleet sample (100 runs, 2026-09-28) attributes this as likely the single largest contributor to driver_exit failures — 65% of the 31 failures in the sample were driver_exit (infra/CLI crash) rather than genuine agent errors, spread thin across ~30 different workflows (consistent with one shared infra bug, not per-workflow logic errors).
Expected Impact
Fixing this converts a meaningful share of fleet-wide driver_exit failures into successes — these are runs where the agent's actual work already succeeded but the run is marked failure purely because of this post-processing crash, wasting the failure-triage attention of every downstream analytics/audit workflow that reads run status.
Suggested Fix
Convert findFiles() from recursive to iterative (explicit stack/queue-based) directory traversal so scan depth is no longer bounded by the JS call stack. aw-mcp's internal cache/log structure likely produces enough directory nesting to exceed V8's default stack size; an iterative version has no such limit (or add an explicit max-depth cutoff with a warning if that's preferred over full traversal).
Suggested Agent
Any Go/JS-capable coding agent — this is a self-contained, single-file refactor with a clear existing unit-test file (redact_secrets_test.go) to extend with a deep-nesting regression case.
Estimated Effort
Medium (1-4 hours) — includes adding a regression test that reproduces stack overflow at depth (e.g. 10,000+ nested dirs) before the fix and passes after.
Data Source
DeepReport Intelligence Briefing 2026-09-28 (~18:00Z incremental cycle), sourced from discussion #63984 ("Weekly Workflow Analysis: 2026-09-28 sample"). Root cause independently verified by reading actions/setup/js/redact_secrets.cjs on main before filing.
Generated by 🔬 Deep Report · claude · agent · 198.5 AIC · ⌖ 8.81 AIC · ⊞ 13K · ◷
- expires on Sep 30, 2026, 10:48 AM UTC-08:00
- Ngôn ngữ chính
- Go
- Star
- 5.2k
- Fork
- 547
- Merge trung bình
- 5 giờ 46 phút
- Pull request đã merge (30 ngày)
- 658
Chuẩn bị môi trường
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của github/gh-aw
-
agentic-workflows
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
agentic-workflows
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
agentic-workflows
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
automation code-quality cookie improvement quick-win task-mining
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
Maintainer thường phản hồi trong vòng 1 ngày
-
[deep-report] Fix stale pkg/workflow/js/ references in 4 skill files (3rd recurrence, count growing)Đang mởautomation code-quality cookie improvement quick-win task-mining
Độ khó 2/5 Dưới một giờ Mức phù hợp với người mới 84/100
Maintainer thường phản hồi trong vòng 1 ngày
Issue tương tự
-
bug
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 92/100
open-telemetry/opentelemetry-go-compile-instrumentation#1417 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
agent-research-finding agent-research-recommend chore ready-for-agent
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
jordansmall/spindrift#4068 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Type/Task
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
OpenNSW/nsw-srilanka#537 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
security
Độ khó 2/5 1-2 ngày Mức phù hợp với người mới 62/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 90/100
Maintainer thường phản hồi trong vòng 1 ngày