Skip to content

Enforce npm audit coverage and compatible security repairs - #23

Merged
omry merged 1 commit into
pr22from
pr23
Oct 18, 2026
Merged

omry merged 1 commit into
pr22from
pr23

Conversation

@omry

@omry omry commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Explicitly disable force during npm security repairs and include production, development, optional and peer dependencies during audits and repairs. Inherited project, user and environment settings can no longer authorize breaking security upgrades or hide development findings.

Add offline command regressions and real npm 11.9.0 CI fixtures that repair vulnerable minimist while retaining the incompatible lodash major version. Document the command policy and project validation boundary.


Explicitly disable force during npm security repairs and include production, development, optional and peer dependencies during audits and repairs. Inherited project, user and environment settings can no longer authorize breaking security upgrades or hide development findings.

Add offline command regressions and real npm 11.9.0 CI fixtures that repair vulnerable minimist while retaining the incompatible lodash major version. Document the command policy and project validation boundary.
@omry
omry changed the base branch from main to pr22 October 18, 2026 18:16
@omry
omry added this pull request to stack #24 October 18, 2026 18:16
@omry

omry commented Oct 18, 2026 •

Copy link
Copy Markdown
Contributor Author

PR-cycle state — maintained automatically. Do not edit by hand.

Mechanical PR-cycle state (JSON)
{
  "approval": {
    "candidate_revision_fingerprint": "sha256:cd285c7f6927099bb9aecdab81f54f8ad749b8d1241a33d91425c5f449b78083",
    "evidence": {
      "attestations": [],
      "candidate_revision_fingerprint": "sha256:cd285c7f6927099bb9aecdab81f54f8ad749b8d1241a33d91425c5f449b78083",
      "check_conclusions": [
        {
          "conclusion": "SUCCESS",
          "name": "test",
          "run_id": 117751498390
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (22, npm, 11.9.0)",
          "run_id": 117751498571
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (22, pnpm, 11.20.0)",
          "run_id": 117751498597
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (22, pnpm, 11.21.0)",
          "run_id": 117751498519
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (24, npm, 11.9.0)",
          "run_id": 117751498594
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (24, pnpm, 11.20.0)",
          "run_id": 117751498521
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (24, pnpm, 11.21.0)",
          "run_id": 117751498525
        }
      ],
      "delivery_deferral_ledger_digest": "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
      "finding_dispositions_digest": "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
      "operation_identity": "sha256:ce186a9bc451442c74ecda0bbec4ec93ba4fbce161f8523bf0d3e59c3e614601",
      "review_request": {
        "body_digest": "sha256:e0095214a9468cbdf6776b7bf175c93e7f1eab12053e96ecd3ac1bc1a1dc3a79",
        "id": 6253450523
      },
      "review_result": {
        "body_digest": "sha256:08c839c7cba456a1d941ba3f7018701a2a1566e440c93cf98fff39e619f23681",
        "id": 6253467960
      }
    },
    "evidence_fingerprint": "sha256:4380041deb0bef9c5eff968b8e935deb3d0120f19a767055e2f6ce992fd88f0f",
    "head_sha": "b5b34b902f9e652997112905f77f062293fd8d28",
    "operation_identity": "sha256:ce186a9bc451442c74ecda0bbec4ec93ba4fbce161f8523bf0d3e59c3e614601",
    "review_request_id": 6253450523,
    "review_result_id": 6253467960,
    "status": "approved-evidence-recorded"
  },
  "candidate_revision_fingerprint": "sha256:cd285c7f6927099bb9aecdab81f54f8ad749b8d1241a33d91425c5f449b78083",
  "check_conclusions": [
    {
      "conclusion": "SUCCESS",
      "name": "test",
      "run_id": 117751498390
    },
    {
      "conclusion": "SUCCESS",
      "name": "toolchain (22, npm, 11.9.0)",
      "run_id": 117751498571
    },
    {
      "conclusion": "SUCCESS",
      "name": "toolchain (22, pnpm, 11.20.0)",
      "run_id": 117751498597
    },
    {
      "conclusion": "SUCCESS",
      "name": "toolchain (22, pnpm, 11.21.0)",
      "run_id": 117751498519
    },
    {
      "conclusion": "SUCCESS",
      "name": "toolchain (24, npm, 11.9.0)",
      "run_id": 117751498594
    },
    {
      "conclusion": "SUCCESS",
      "name": "toolchain (24, pnpm, 11.20.0)",
      "run_id": 117751498521
    },
    {
      "conclusion": "SUCCESS",
      "name": "toolchain (24, pnpm, 11.21.0)",
      "run_id": 117751498525
    }
  ],
  "check_observations": [
    {
      "checks": [
        {
          "conclusion": "SUCCESS",
          "name": "test",
          "run_id": 117751498390,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/hydra-ecosystem/github-actions/actions/runs/39153394227/job/117751498390"
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (22, npm, 11.9.0)",
          "run_id": 117751498571,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/hydra-ecosystem/github-actions/actions/runs/39153394227/job/117751498571"
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (22, pnpm, 11.20.0)",
          "run_id": 117751498597,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/hydra-ecosystem/github-actions/actions/runs/39153394227/job/117751498597"
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (22, pnpm, 11.21.0)",
          "run_id": 117751498519,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/hydra-ecosystem/github-actions/actions/runs/39153394227/job/117751498519"
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (24, npm, 11.9.0)",
          "run_id": 117751498594,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/hydra-ecosystem/github-actions/actions/runs/39153394227/job/117751498594"
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (24, pnpm, 11.20.0)",
          "run_id": 117751498521,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/hydra-ecosystem/github-actions/actions/runs/39153394227/job/117751498521"
        },
        {
          "conclusion": "SUCCESS",
          "name": "toolchain (24, pnpm, 11.21.0)",
          "run_id": 117751498525,
          "run_status": "completed",
          "status": "success",
          "url": "https://github.com/hydra-ecosystem/github-actions/actions/runs/39153394227/job/117751498525"
        }
      ],
      "head_sha": "b5b34b902f9e652997112905f77f062293fd8d28",
      "id": "sha256:fe8a84bfe4eb95758cdc0c2bec90ed8e4027f8288a04c999efd2c2e90c257de1",
      "required_checks": [
        "test",
        "toolchain (22, npm, 11.9.0)",
        "toolchain (22, pnpm, 11.20.0)",
        "toolchain (22, pnpm, 11.21.0)",
        "toolchain (24, npm, 11.9.0)",
        "toolchain (24, pnpm, 11.20.0)",
        "toolchain (24, pnpm, 11.21.0)"
      ],
      "status": "success"
    }
  ],
  "delivery_deferral_ledger_digest": "sha256:4f53cda18c2baa0c0354bb5f9a3ecbe5ed12ab4d8e11ba873c2f11161202b945",
  "delivery_deferrals": [],
  "findings": [],
  "pr": {
    "base_ref": "pr22",
    "base_sha": "e3c4a6cdccffa1370e9ed95545a91f27f97d41ee",
    "body_digest": "sha256:9d0b7c45f1d28eafa718f3aafca9df4ee16b4097305a0927388a295bb395f178",
    "diff_digest": "sha256:8411dbfff1a69d4f3471350c03041c439e32fb0bbfcae0a4f12cddabc7abb4f6",
    "head_ref": "pr23",
    "head_sha": "b5b34b902f9e652997112905f77f062293fd8d28",
    "pr": 23,
    "repository": "hydra-ecosystem/github-actions",
    "scope_authority": [],
    "title_digest": "sha256:9566da6f1ede4e8f36b7d0be9c7926693d019599cac8c6afc6842eb7ceff9cc0"
  },
  "record_version": 4,
  "review_observations": [],
  "review_requests": [
    {
      "base_established_at": "2026-10-18T18:16:19Z",
      "base_ref": "pr22",
      "base_sha": "e3c4a6cdccffa1370e9ed95545a91f27f97d41ee",
      "body_digest": "sha256:e0095214a9468cbdf6776b7bf175c93e7f1eab12053e96ecd3ac1bc1a1dc3a79",
      "created_at": "2026-10-18T18:20:07Z",
      "head_sha": "b5b34b902f9e652997112905f77f062293fd8d28",
      "id": 6253450523,
      "kind": "regular-review"
    }
  ],
  "review_results": [
    {
      "base_ref": "pr22",
      "base_sha": "e3c4a6cdccffa1370e9ed95545a91f27f97d41ee",
      "body_digest": "sha256:08c839c7cba456a1d941ba3f7018701a2a1566e440c93cf98fff39e619f23681",
      "commit_id": "b5b34b902f9e652997112905f77f062293fd8d28",
      "id": 6253467960,
      "inline_message_ids": [],
      "request_comment_id": 6253450523,
      "result_kind": "clean",
      "status": "result",
      "submitted_at": "2026-10-18T18:21:53Z",
      "unresolved_thread_ids": []
    }
  ],
  "revision_fingerprint": "sha256:cd285c7f6927099bb9aecdab81f54f8ad749b8d1241a33d91425c5f449b78083",
  "rounds": [
    {
      "applied_fix_paths": [],
      "disposition_changes": [],
      "effective_diff_digest": "sha256:8411dbfff1a69d4f3471350c03041c439e32fb0bbfcae0a4f12cddabc7abb4f6",
      "finding_ids": [],
      "invariants": [
        "npm security repairs cannot inherit force=true to cross manifest ranges",
        "npm audit and repair evidence covers production, development, optional and peer dependencies despite inherited omission settings"
      ],
      "outcome": "clean",
      "proposed_fix_paths": [],
      "resulting_head": "b5b34b902f9e652997112905f77f062293fd8d28",
      "review_observation_id": null,
      "review_request_id": 6253450523,
      "review_result_id": 6253467960,
      "reviewed_head": "b5b34b902f9e652997112905f77f062293fd8d28",
      "root_cause": null,
      "round": 1,
      "unresolved_current_slice_findings": 0,
      "unresolved_design_blockers": 0
    }
  ],
  "schema": "awd:swe:pr-cycle-state",
  "version": 2
}

@omry
omry marked this pull request as ready for review October 18, 2026 18:19
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 18, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-10-18T18:21:55.033561Z b5b34b9 Manual request
🔒 Security Review ✅ Completed 2026-10-18T18:21:47.915331Z b5b34b9 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@omry

omry commented Oct 18, 2026

Copy link
Copy Markdown
Contributor Author

@codex, regular review b5b34b9

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. 🚀

Reviewed commit: b5b34b902f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

@omry omry added the approved label Oct 18, 2026
@omry
omry merged commit 7422616 into main Oct 18, 2026
7 checks passed
@omry
omry deleted the pr23 branch October 18, 2026 19:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant