Skip to content

docs(#346): add secure HTTP client guidance to Go section - #383

Closed
fullsend-ai-coder[bot] wants to merge 1 commit into
mainfrom
agent/346-secure-http-client-guidance
Closed

docs(#346): add secure HTTP client guidance to Go section#383
fullsend-ai-coder[bot] wants to merge 1 commit into
mainfrom
agent/346-secure-http-client-guidance

Conversation

@fullsend-ai-coder

Copy link
Copy Markdown

Add a "Secure HTTP clients" subsection under "Go code" in AGENTS.md documenting five required security properties for any new HTTP client that fetches external URLs: SSRF-safe dialer using netutil.CheckIP, HTTPS-only with redirect validation, no proxy, explicit timeout, and bounded reads via io.LimitReader. These patterns prevent the class of review-round fixes seen in PR fullsend-ai#3002.


Closes #346

Post-script verification

  • Branch is not main/master (agent/346-secure-http-client-guidance)
  • Secret scan passed (gitleaks — a2afa8b179a351845733c680b839a39a82304db6..HEAD)
  • Pre-commit hooks passed (authoritative run on runner)
  • Tests ran inside sandbox

Add a "Secure HTTP clients" subsection under "Go code" in AGENTS.md
documenting five required security properties for any new HTTP
client that fetches external URLs: SSRF-safe dialer using
netutil.CheckIP, HTTPS-only with redirect validation, no proxy,
explicit timeout, and bounded reads via io.LimitReader. These
patterns prevent the class of review-round fixes seen in PR fullsend-ai#3002.

Closes #346
@fullsend-ai-review

fullsend-ai-review Bot commented Jul 12, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 6:48 AM UTC · Completed 6:54 AM UTC
Commit: a2afa8b · View workflow run →

@fullsend-ai-review

Copy link
Copy Markdown

Review — PR #383

Verdict: Approve

Summary

This PR adds a well-crafted "Secure HTTP clients" subsection under "Go code" in AGENTS.md, documenting five required security properties for any new HTTP client that fetches external URLs. The change delivers exactly what issue #346 authorized with no scope creep.

Dimension results

Dimension Result
Correctness ✅ All five technical claims verified against Go stdlib behavior and the existing codebase. netutil.CheckIP exists at internal/netutil/ip.go and covers loopback, private, link-local, multicast, unspecified, and additional reserved CIDRs — matching the doc's description. http.DefaultClient has no timeout (correct). Transport.Proxy = nil disables env-var proxy routing (correct). io.LimitReader is the standard bounded-read pattern (correct). CheckRedirect is a real http.Client field (correct).
Security ✅ Clean. No secrets, no injection patterns, no Unicode steganography, no permission changes. Pure documentation addition.
Intent & coherence ✅ Scope matches issue #346 exactly — five properties, same defaults, same file, same section. No scope creep. Architecturally coherent: the subsection sits naturally as a level-3 heading under "## Go code", parallel to "### Running e2e tests".
Style & conventions ✅ Formatting is fully consistent: heading level, bold labels with em-dashes, numbered list structure, backtick usage for code elements, and bold must for policy statements all match existing AGENTS.md patterns.
Documentation currency ✅ Referenced identifier netutil.CheckIP verified at internal/netutil/ip.go. Existing implementation in internal/fetch/fetch.go validates all five documented properties. No stale references introduced.
Cross-repo contracts ⏭ Skipped — no exported interfaces, schemas, or public APIs modified.

Protected paths detected — this PR modifies files under one or more
protected paths. The review agent cannot approve PRs that touch these paths.
A human reviewer must approve this PR.

Protected files in this PR:

  • AGENTS.md

Labels: PR adds security-related documentation guidance to AGENTS.md

@fullsend-ai-review fullsend-ai-review Bot added requires-manual-review Review requires human judgment documentation Improvements or additions to documentation security labels Jul 12, 2026
@guyoron1

Copy link
Copy Markdown
Owner

/fs-fix

@fullsend-ai-coder

fullsend-ai-coder Bot commented Jul 12, 2026

Copy link
Copy Markdown
Author

🤖 Finished Fix · ✅ Success · Started 7:58 AM UTC · Completed 8:03 AM UTC
Commit: a2afa8b · View workflow run →

@fullsend-ai-coder

Copy link
Copy Markdown
Author

🔧 Fix agent — iteration 1 (human-triggered)

No changes made. The review agent approved this PR with no findings. The human /fs-fix command included no specific instruction. There are no actionable items to fix.

Disagreed (1):

  1. no actionable findings: The automated review agent approved PR docs(#346): add secure HTTP client guidance to Go section #383 with no changes requested — all dimensions (correctness, security, intent & coherence, style & conventions, documentation currency) passed. The human triggered /fs-fix without a specific instruction. There are no review findings to address and no human-directed changes to make.

Tests: passed

Updated by fullsend fix agent

@guyoron1 guyoron1 closed this Jul 14, 2026
@fullsend-ai-coder
fullsend-ai-coder Bot deleted the agent/346-secure-http-client-guidance branch July 14, 2026 15:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation requires-manual-review Review requires human judgment security

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ARCHIVED] Benchmark issue 346

1 participant