ci: enforce three mandatory package quality gates by kwakayama · Pull Request #4126 · veryfront/veryfront-code · GitHub
Skip to content

ci: enforce three mandatory package quality gates - #4126

Merged
kwakayama merged 48 commits into
mainfrom
codex/mandatory-quality-gates
Aug 25, 2026
Merged

kwakayama merged 48 commits into
mainfrom
codex/mandatory-quality-gates

Conversation

@kwakayama

@kwakayama kwakayama commented Aug 25, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Add stable merge and packed-artifact aggregate quality gates.
  • Build one SHA-addressed npm artifact and reuse it for npm smoke plus Deno, Node, and Bun critical-flow checks.
  • Add exact-version registry metadata, provenance, install, API, page, and workflow smoke before downstream deployment dispatches.
  • Preserve all eight coverage shards, the unit sentinel, the 80% coverage floor, and existing source/runtime checks.
  • Add .github/QUALITY_GATES.md as the concise gate contract.

Verification

  • Real deno task build:npm completed and produced 31 verified packages.
  • Canonical artifact manifest verified with SHA-256.
  • Exact-artifact npm install smoke passed.
  • Canonical Node, Bun, and Deno runtime flows passed.
  • Registry, artifact, merge, and release workflow contracts passed: 6 suites, 31 steps, 0 failures.
  • Repository-wide lint passed.
  • Pinned Deno typecheck passed.

Release behavior

The published npm version is immutable. If registry smoke fails, the release fails and downstream dispatches remain blocked; the recovery path is a corrected new version.

Reference

Implementation plan and triage brief: https://github.com/veryfront/veryfront-issue-inbox/issues/790

Known validation limitation: repository-wide deno task fmt:check has a pre-existing formatting failure in untouched scripts/test/run-suite.test.ts:102; the local pre-push suite also completed all tests with zero failures but exited on an existing pending-promise condition.

Summary by CodeRabbit

  • New Features

    • Added automated quality gates for merge validation, artifact compatibility, and release integrity.
    • Releases now reuse the exact npm packages tested in CI, reducing redundant builds.
    • Added exact-version release smoke tests for installation, scaffolding, and runtime workflows.
    • Deployment dispatches now validate released versions before downstream deployment.
  • Bug Fixes

    • Improved release failure classification, retry handling, and sensitive-output sanitization.
  • Documentation

    • Documented mandatory quality gates, release checks, and failure behavior.

@coderabbitai

coderabbitai Bot commented Aug 25, 2026 •

Copy link
Copy Markdown

@greptile-apps

greptile-apps Bot commented Aug 25, 2026 •

Copy link
Copy Markdown

Greptile Summary

The PR establishes three aggregate CI quality gates and reuses a single SHA-addressed npm artifact across compatibility and release validation.

  • Adds fail-closed merge, artifact, and registry quality gates.
  • Packs and verifies one canonical npm artifact across npm, Deno, Node, and Bun checks.
  • Blocks downstream release dispatches until exact registry-release validation succeeds.
  • Adds workflow contracts, artifact-integrity tests, runtime-flow tests, and quality-gate documentation.

Confidence Score: 5/5

The PR appears safe to merge.

No blocking failure remains.

Important Files Changed

Filename Overview
.github/workflows/cicd.yml Defines the three aggregate quality gates, canonical-artifact reuse, registry validation, and gated downstream dispatch flow.
scripts/ci/npm-compatibility-artifact.ts Implements packing, manifest hashing, verification, and materialization of the canonical npm artifact.
scripts/ci/registry-release-integrity.ts Implements exact-version registry metadata, provenance, package, API, and page integrity checks.
scripts/test/runtime-inference-critical-flow.ts Runs critical runtime flows against the packed canonical artifact across supported runtimes.
tests/integration/ci/merge-quality-gate-workflow.test.ts Verifies the merge gate dependency and fail-closed workflow contract; its testing helpers now use the required facades.
tests/integration/ci/npm-compatibility-artifact-workflow.test.ts Verifies canonical-artifact production, reuse, and aggregate artifact-gate behavior.
tests/integration/ci/registry-release-workflow.test.ts Verifies registry-gate selection and downstream deployment ordering.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
  S[Source and test jobs] --> M[quality gate merge]
  B[Build and pack canonical npm artifact] --> N[npm install smoke]
  B --> R[Deno Node and Bun critical flows]
  N --> A[quality gate artifact]
  R --> A
  A --> P[Publish selected release]
  P --> V[Exact registry validation]
  V --> G[quality gate registry]
  G --> D[Downstream deployment dispatches]
Loading

Reviews (10): Last reviewed commit: "Keep release hardening checks aligned wi..." | Re-trigger Greptile

Comment thread scripts/ci/merge-quality-gate-workflow.test.ts Outdated

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 38a52df210

ℹ️ 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".

Comment thread scripts/ci/registry-release-integrity.ts Outdated
Comment thread deno.json Outdated
@github-actions

github-actions Bot commented Aug 25, 2026 •

Copy link
Copy Markdown

📦 Client bundle boundary

Entrypoint Modules Source size Server leaks
src/index.client.ts 328 1965 KiB ✅ 0

A server module in a client graph aborts hydration in the browser. New leaks fail CI; known leaks are tracked in scripts/lint/client-bundle-baseline.json to burn down.

@codecov

codecov Bot commented Aug 25, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

@kwakayama

Copy link
Copy Markdown
Contributor Author

Addressed the three review findings in 4725b6623: absent version/gitHead/provenance metadata now retries during registry propagation while nonempty mismatches still fail immediately; all registry suites are in test:scripts with the required PATH permission; and all six new CI tests now use the repository assertion/BDD facades (plus shared temp-dir helpers exposed by the front-door lint). Verification: 29 focused steps passed across five locally runnable suites, format/lint/diff and lint:testing-front-door passed. The npm-packing suite could not run locally because this host has no Node/npm; CI covers it.

@kwakayama
kwakayama enabled auto-merge August 25, 2026 00:56
@github-actions

Copy link
Copy Markdown

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Keep them coming!

Reviewed commit: 4725b6623c

ℹ️ About Codex in GitHub

Codex has been enabled to automatically 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 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

@kwakayama kwakayama 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.

Codex scored review

Reviewed SHA: 87cb2196026a4d4f14b278a47d2f1bf8f25b3bd3

No actionable findings. The quality-gate changes fix the reproducible npm pack destination failure by resolving the artifact path before package-local execution, and eliminate Sonar tainted-log findings by logging classification-only failure data. Focused CI/artifact suites (14 steps), touched-file format/lint/checks, and baseline audits pass; no unresolved review threads remain.

Score: 93/100
Verdict: APPROVE

Review-Gate:
Reviewer: Codex
Reviewed-SHA: 87cb219
Score: 93/100
Actionable-Findings: 0
Verdict: APPROVE

@kwakayama kwakayama 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.

Codex scored review

Reviewed SHA: 098c0dd0e4a4946365d26969db178b03cacb25af

No actionable findings. This follow-up tightens the registry quality-gate regressions by validating the package-local artifact, workflow-shape, registry-release, and merge-quality suites with direct test commands while preserving the production fixes from the prior commit. The exact head has zero unresolved threads; fresh CI is pending.

Score: 94/100
Verdict: APPROVE

Review-Gate:
Reviewer: Codex
Reviewed-SHA: 098c0dd
Score: 94/100
Actionable-Findings: 0
Verdict: APPROVE

@kojiwakayama

Copy link
Copy Markdown
Contributor

@codex review

@kojiwakayama

Copy link
Copy Markdown
Contributor

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 5804977525

ℹ️ 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".

Comment thread .github/workflows/cicd.yml
Comment thread scripts/ci/registry-release-integrity.ts Outdated
@kwakayama
kwakayama added this pull request to the merge queue Aug 25, 2026
@kojiwakayama
kojiwakayama removed this pull request from the merge queue due to a manual request Aug 25, 2026
@kojiwakayama

Copy link
Copy Markdown
Contributor

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Delightful!

Reviewed commit: 7fb3189c0a

ℹ️ 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".

@kwakayama

Copy link
Copy Markdown
Contributor Author

Exact head 7fb3189 reviewed. The RC compatibility artifact applies the same run-number version mutation before its gate, and registry failures preserve only sanitized package/version context. Focused workflow/registry suites pass (21 steps); CI TypeScript, format, and lint contracts pass. The local npm-pack test cannot run on this host because npm is unavailable; the GitHub Node jobs are running. @kojiwakayama please provide the required non-author approval on this exact head.

@kojiwakayama

Copy link
Copy Markdown
Contributor

@codex review

@github-actions

Copy link
Copy Markdown

@codex review

@kojiwakayama

Copy link
Copy Markdown
Contributor

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Already looking forward to the next diff.

Reviewed commit: 7358e14e3e

ℹ️ 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".

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

kwakayama has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@github-actions

Copy link
Copy Markdown

@codex review

@kojiwakayama

Copy link
Copy Markdown
Contributor

@codex review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 523ff780a5

ℹ️ 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".

Comment thread .github/workflows/cicd.yml

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

kwakayama has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@kojiwakayama
kojiwakayama force-pushed the codex/mandatory-quality-gates branch from 4a7dba7 to 3f0ca33 Compare August 25, 2026 09:57

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

kwakayama has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review: Didn't find any major issues. Nice work!

Reviewed commit: 4a7dba7128

ℹ️ About Codex in GitHub

Codex has been enabled to automatically 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 👍.

When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

kwakayama has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

kwakayama has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

Use [[ ]] in the new bash paths, add the explicit default case and
function returns SonarCloud asks for, extract the nested ternaries and
nested template literal, and split pollRegistryPackage's per-attempt
lookup into a helper so its cognitive complexity drops under the limit.

Also typecheck scripts/ci/publish-npm-packages.test.ts in
lint:ci-typescript, which ran the suite but never type-checked it.

No behaviour change.

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

kwakayama has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: a766ad2687

ℹ️ 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".

Comment thread .github/workflows/cicd.yml
@kwakayama

Copy link
Copy Markdown
Contributor Author

Fresh independent review of PR #4126 at exact head a766ad2.

Code review: all three gates, artifact name/version/gitHead binding, RC lookup diagnostics, Sonar cleanup, coverage preservation, and release ordering verified. No actionable code findings. External GitHub branch-protection and production-environment approval settings remain unconfigured.

Review-Gate:
Reviewer: Claude
Reviewed-SHA: a766ad2
Score: 94/100
Actionable-Findings: 0
Verdict: APPROVE

@kwakayama

Copy link
Copy Markdown
Contributor Author

Fresh independent review of PR #4126 at exact head a766ad2.

Code review found no actionable release-gate code defects. The score is held below the merge threshold only because the live GitHub settings do not yet require quality gate (merge) and quality gate (artifact), and production has no required reviewer approval.

Review-Gate:
Reviewer: Codex
Reviewed-SHA: a766ad2
Score: 69/100
Actionable-Findings: 2
Verdict: REQUEST_CHANGES

@greptile-apps greptile-apps Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

kwakayama has reached the 50-credit limit for trial accounts. To continue receiving code reviews, upgrade your plan.

@sonarqubecloud

Copy link
Copy Markdown

@github-actions

Copy link
Copy Markdown

@codex review

@kwakayama

Copy link
Copy Markdown
Contributor Author

Fresh independent review of PR #4126 at exact head dcf2657.

The full Node and Bun suites are now part of the merge gate. Registry/package identity, RC lookup diagnostics, Sonar cleanup, coverage, and dispatch ordering are sound. No blocking code findings. External branch protection and production environment approval settings remain unconfigured.

Review-Gate:
Reviewer: Claude
Reviewed-SHA: dcf2657
Score: 88/100
Actionable-Findings: 2
Verdict: APPROVE

@kwakayama

Copy link
Copy Markdown
Contributor Author

Fresh independent review of PR #4126 at exact head dcf2657.

No actionable code defects remain. The only actionables are external: GitHub does not require quality gate (merge) or quality gate (artifact), and production has no required reviewer approval.

Review-Gate:
Reviewer: Codex
Reviewed-SHA: dcf2657
Score: 69/100
Actionable-Findings: 2
Verdict: REQUEST_CHANGES

@chatgpt-codex-connector

Copy link
Copy Markdown

@kwakayama
kwakayama added this pull request to the merge queue Aug 25, 2026
Merged via the queue into main with commit ed62b9d Aug 25, 2026
61 checks passed
@kwakayama
kwakayama deleted the codex/mandatory-quality-gates branch August 25, 2026 10:52
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.

2 participants