This is an automated email from the ASF dual-hosted git repository.

potiuk pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/airflow-steward.git


The following commit(s) were added to refs/heads/main by this push:
     new f269e86  feat(sandbox): allow cveawg.mitre.org for cve.org publication 
checks (#256)
f269e86 is described below

commit f269e8687edbffaafd9c8e824de7f36598eec065
Author: Jarek Potiuk <[email protected]>
AuthorDate: Mon May 25 00:47:17 2026 +0200

    feat(sandbox): allow cveawg.mitre.org for cve.org publication checks (#256)
    
    `security-issue-sync` Step 1g checks the cve.org publication state
    of recently-closed `announced` trackers via the MITRE CVE Services
    API at `https://cveawg.mitre.org/api/cve/<CVE-ID>`. The host was
    not in the sandbox `allowedDomains` baseline, so every sync run
    that touched closed-announced trackers tripped the macOS sandbox
    TLS interaction (`OSStatus -26276` on cert verification) and
    required per-call `dangerouslyDisableSandbox: true` bypasses,
    producing a prompt storm for subagent fanouts on large sweeps.
    
    Adding `cveawg.mitre.org` to:
    
    - `tools/sandbox-lint/expected.json` — the baseline every adopter's
      `.claude/settings.json` is linted against.
    - `.claude/settings.json` — the steward repo's own live settings,
      kept in lockstep with `expected.json` by the sandbox-lint
      invariant.
    
    Verified locally:
    
        uv run --directory tools/sandbox-lint --group dev sandbox-lint
        → sandbox-lint: OK
    
    The domain is generic — every adopter that uses the CVE-tracking
    skills hits the same API for the post-publication propagation
    check. Adopter-specific paths (sibling repos, scratch dirs) stay
    out of the baseline and live in user-level `~/.claude/settings.json`
    only.
    
    Co-authored-by: Claude Opus 4.7 (1M context) <[email protected]>
---
 .claude/settings.json            | 5 ++++-
 tools/sandbox-lint/expected.json | 5 ++++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/.claude/settings.json b/.claude/settings.json
index 9ce1e85..bf81703 100644
--- a/.claude/settings.json
+++ b/.claude/settings.json
@@ -3,7 +3,9 @@
   "sandbox": {
     "enabled": true,
     "filesystem": {
-      "denyRead": ["~/"],
+      "denyRead": [
+        "~/"
+      ],
       "allowRead": [
         ".",
         "~/.gitconfig",
@@ -35,6 +37,7 @@
         "cveprocess.apache.org",
         "cve.org",
         "www.cve.org",
+        "cveawg.mitre.org",
         "oauth2.googleapis.com",
         "gmail.googleapis.com"
       ]
diff --git a/tools/sandbox-lint/expected.json b/tools/sandbox-lint/expected.json
index 9ce1e85..bf81703 100644
--- a/tools/sandbox-lint/expected.json
+++ b/tools/sandbox-lint/expected.json
@@ -3,7 +3,9 @@
   "sandbox": {
     "enabled": true,
     "filesystem": {
-      "denyRead": ["~/"],
+      "denyRead": [
+        "~/"
+      ],
       "allowRead": [
         ".",
         "~/.gitconfig",
@@ -35,6 +37,7 @@
         "cveprocess.apache.org",
         "cve.org",
         "www.cve.org",
+        "cveawg.mitre.org",
         "oauth2.googleapis.com",
         "gmail.googleapis.com"
       ]

Reply via email to