Repository navigation
Apply lean security audit remediations - #45
Conversation
9476433 to
d3467b5
Compare
|
Smithers verifier approved this PR for merge. Independently verified PR #45 (codex/audit-remediation) and approve it as ready. Worktree is clean with local HEAD == origin/codex/audit-remediation == PR head d3467b5, exactly one commit ahead of origin/main with a clean git merge-tree (no conflicts). Fresh gh query confirms the PR is OPEN, MERGEABLE, mergeStateStatus CLEAN, with all 9 status checks SUCCESS on this exact head (release-gates x2, Ultrafuzz target E2E for Aave v4 / Very Liquid Vaults / StableSwapNG Vyper, Greptile, Socket x2, semgrep) — the UNSTABLE state in the task prompt is stale. Re-checked approved-author feedback fresh: zero aviggiano PR comments, reviews, or inline comments, matching the provided 0/0/0 context; the only review activity is a greptile-apps[bot] comment, which is outside the approved-author set and ignored per the security policy. The 37-file diff matches the PR body's stated scope (workflows, docs, artifacts, config, dashboard, evals, runtime). Deterministic validation all passed (git diff --check, format:check, prompts tests 24/24, docs:check), and my independent spot-check of the two most-touched packages passed: evals 51/51 and artifacts suites green with full dependency-chain builds succeeding. Heavy repo-wide validation is already green on GitHub Actions for this head, so nothing further is left for local CI. No changes were needed; nothing new to push. GitHub checks passed for PR #45; merge state is CLEAN. |
What changed
Deliberate non-goals
This supersedes the overlapping draft implementations in #37 through #43. The independently correct path-validation change is already merged in #36, and the workspace build race that affected some draft checks is already fixed in #44.
Compatibility
Existing generated
.smithers/package.jsonfiles using the previous exact legacy caret triplet are migrated in place while preserving custom fields and packages. Other modified core runner versions fail closed.Validation
pnpm install --frozen-lockfilepnpm run cigit diff --checkGreptile Summary
This PR applies security hardening across workflow execution, eval reporting, durable artifacts, and the dashboard. The main changes are:
Confidence Score: 4/5
The unbounded body-drain path and uncapped heartbeat timeout need fixes before merging.
packages/dashboard/src/index.ts; packages/runtime/src/smithers.ts
Security Review
The credential, file-validation, redaction, CSP, and audit-path changes strengthen the security boundaries. The dashboard body limiter still permits an oversized chunked request to consume unbounded input before rejection, leaving a loopback denial-of-service path.
Important Files Changed
Comments Outside Diff (1)
packages/runtime/src/smithers.ts, line 776 (link)For a task with a long execution timeout, the heartbeat timeout now grows to the same value instead of remaining capped at ten minutes. If its worker stops sending heartbeats, the run can remain falsely active for hours rather than detecting the stalled worker after the previous ten-minute limit.
Prompt To Fix With AI
Prompt To Fix All With AI
Reviews (1): Last reviewed commit: "Apply lean security audit remediations" | Re-trigger Greptile