Skip to content

fix(security): treat curl 000 as unavailable dependency-review evidence - #1044

Open
cursor[bot] wants to merge 5 commits into
mainfrom
cursor/bc-632d7f25-00cc-48dc-9e53-18518531b5d7-935c
Open

fix(security): treat curl 000 as unavailable dependency-review evidence#1044
cursor[bot] wants to merge 5 commits into
mainfrom
cursor/bc-632d7f25-00cc-48dc-9e53-18518531b5d7-935c

Conversation

@cursor

@cursor cursor Bot commented Aug 16, 2026

Copy link
Copy Markdown
Contributor

Purpose

Continue #1033 on the current fail-closed probe and close the remaining evidence-classification gap: curl's %{http_code} 000 sentinel is not a completed HTTP exchange and must not be logged as a three-digit status.

Prefer this branch over #897, #1033, #1041, and #1042 for integration. Those PRs remain historical or incomplete evidence. Keep #821 draft. Do not close #810 until a protected-main public consumer run proves a non-200 or failed-transfer comparison cannot produce a green Dependency Review gate.

What changed

  • The support probe classifies curl 000 and an empty status as unavailable before any three-digit HTTP status is accepted.
  • Executable regressions cover private and internal visibility labels, raw untrusted visibility non-leakage, and curl exit 6 with printed 000.
  • Doctoring now cites curl write-out semantics (Stenberg, n.d.) and GitHub's documented 403 meaning (private without Advanced Security, or a fork comparison) so operators verify entitlement instead of inferring not-applicable.

Acceptance

Merge only after exact-current-head deterministic, security, dependency, and required workflows are terminal and clean, current automated review has no valid unresolved finding, and a qualifying counted non-author formal approval exists.

Automated review is not qualifying approval or merge authority.

Operator next step

  1. Mark this pull request ready if it opens as draft, then wait for exact-current-head required checks.
  2. Leave a counted non-author formal approval on this head only.
  3. After merge, run a public consumer proof on security: fail closed when dependency review is unavailable EgressWeave#76 before closing security: make central dependency-review unavailability fail closed #810.
Open in Web View Automation 

seonghobae and others added 5 commits August 17, 2026 00:19
Replay unique #897 source onto current origin/main. Skip shared
ARCHITECTURE/CLAUDE trees. Treat non-200 or failed transport as
unavailable evidence rather than a clean skip.
Close the remaining #810 diagnostic gap:
allowlist public/private/internal/unknown visibility in probe
diagnostics, execute 403/404/empty/malformed regressions, and stop
making the pinned action independently skippable after a successful
probe.

Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
Add executable regressions for the EgressWeave #66 canary (HTTP 403
skip-was-success), a bare transport failure, and curl exit 18 with a
printed 200. Record exact SHAs and allowlisted visibility without
leaking the probe token.

Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
…arness

Invoke the extracted support probe with an absolute bash path and keep
the fake curl first on PATH so isolated executable regressions can run
without calling the real binary.

Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
Classify curl's no-status 000 write-out as unavailable instead of a
three-digit HTTP code, and lock private/internal visibility plus raw
visibility non-leakage with executable regressions.

Co-authored-by: Seongho Bae <seonghobae@users.noreply.github.com>
@cursor

cursor Bot commented Aug 16, 2026

Copy link
Copy Markdown
Contributor Author

Bugbot is not enabled for your account, so this pull request was not reviewed.

Enable Bugbot in the Cursor dashboard to get automatic reviews on future PRs.

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale comment

Verdict

COMMENT on exact head 37167995.

This successor classifies curl 000 as unavailable dependency-review evidence, keeps private/internal visibility labels, and proves raw visibility strings cannot leak into diagnostics. Local contract: tests/test_required_workflow_queue_contract.py 62 passed.

Operator next step

  1. Mark this pull request ready for review if it is still a draft, so CodeRabbit and the merge scheduler can see the head.
  2. Wait only for exact-current-head required checks and a counted non-author formal approval.
  3. Prefer this branch over #897, #1033, #1041, and #1042.
  4. After merge, run the ContextualWisdomLab/EgressWeave#76 public consumer proof before closing #810.

Automated review is not qualifying approval or merge authority.

View PR

Open in Web View Automation 

Sent by Cursor Automation: Fix Issues

@cursor cursor Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remaining gap on 37167995

The 000 classification is correct. A named revision still goes green.

GitHub's dependency-graph compare API resolves {base}...{head} named revisions to the current HEAD of that name. On this head, HEAD_SHA=main plus a synthetic HTTP 200 writes supported=true and would reach the pinned action against a moving revision. Empty base SHAs and owner/../ repository values have the same path.

Operator next step

  1. Prefer #1048 83e7cd38 over this pull request, #897, #1033, #1041, and #1042.
  2. Leave a counted non-author formal approval only on the #1048 head after its exact-current-head checks are terminal and clean.
  3. Keep #821 draft. After that merge, run the ContextualWisdomLab/EgressWeave#76 public consumer proof before closing #810.

Automated review is not qualifying approval or merge authority.

View PR

Open in Web View Automation 

Sent by Cursor Automation: Fix Issues

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

security: make central dependency-review unavailability fail closed

2 participants