feat: July 2026 enterprise-grade expansion (language + quality + security + testing packs) - #2
Merged
Merged
Conversation
…ble CI The terraform_version input still defaults to 'latest' for a caller-overridable reusable workflow, but the description now steers callers toward an exact version or range for reproducible builds — closing the one floating-version gap flagged in the standards audit. Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
…I packs
Three new dual-tier reusable workflows following the established pack pattern (permissions {}, SHA-pinned actions with version comments, env-indirected caller commands, harden-runner gating, timeouts). dart-flutter-ci pins subosito/flutter-action; web-ci and sql-ci reuse the pinned setup-node/setup-python. Each ships a catalog capability entry, an examples/languages/ caller, and regenerated capability-matrix + workflow-inventory. validate_all + actionlint + zizmor all green.
Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
cpp-ci: CMake configure/build/test with opt-in clang-format + cppcheck static gates and optional ccache. qt-ci: pinned install-qt-action (aqtinstall) with cache over the same CMake pattern. Both dual-tier, permissions {}, SHA-pinned (install-qt-action, ccache-action verified against their action.yml input contracts), env-indirected commands, harden-runner gated. Catalog + examples + tools + regenerated docs. validate_all + actionlint + zizmor green.
Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
kotlin-android-ci: pinned setup-java + setup-gradle (Gradle cache) with optional Android SDK; ktlint/detekt via caller lint_command. swift-ci: macOS-default (10x minutes) with optional swift-actions setup for Linux, SwiftLint + swift-format gates; harden-runner Linux-only. r-ci: pinned r-lib setup-r (public RSPM) + caller install/lint/test. All action input contracts verified against action.yml. Catalog + examples + tools + regenerated docs. validate_all + actionlint + zizmor green. Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
…able workflows coverage-gate: Codecov (+ optional Coveralls) upload behind a caller coverage command, codecov_token secret. docs-quality: lychee link-check + typos spell-check + markdownlint, free on every tier. pr-hygiene: multi-job bundle (commitlint, PR-title Conventional-Commits check, opt-in labeler + stale) with per-job least-privilege permissions. All action input contracts verified. Catalog + examples/quality + 9 tools entries + regenerated docs. validate_all + actionlint + zizmor green. Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
…ov security packs Free SAST/SCA/IaC coverage on every tier — including private-free, where CodeQL and dependency review are paid GHAS. semgrep-ci (pip, gate-only, metrics off), osv-scan (checksum-pinned binary), grype-scan (anchore/scan-action), hadolint-ci, iac-scan (Checkov). All gate-only (no security-events permission needed). osv-scanner v2 CLI (scan source) and every action input contract verified. Catalog + examples/security + 5 tools entries + regenerated docs. validate_all + actionlint + zizmor green. Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
…e workflows mutation-testing: language-dispatched toolchain (mutmut/cargo-mutants/Stryker) via caller commands. fuzzing: Rust cargo-fuzz on nightly with a bounded time budget, scheduled. benchmark: language-dispatched toolchain + github-action-benchmark regression alert (contents: write for gh-pages history). Catalog + examples/testing + github-action-benchmark tool entry + regenerated docs. validate_all + actionlint + zizmor green. Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
… with Level-3 examples Two opt-in Level-3 patterns delivered as self-contained caller examples (workflow: null capabilities), matching the trusted-publishing example convention. examples/level3/ai-review.yml (Claude Code Action; CodeRabbit/Qodo noted as alternatives, human review stays the gate) and examples/level3/release-please.yml (complements the tag-driven attested release; changesets noted for monorepos). Catalog + regenerated capability-matrix. validate_all green. Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
New docs/15-language-and-quality-packs.md consolidates every added pack (languages, quality gates, free SAST/SCA/IaC, advanced testing, Level-3 opt-in) with tier notes and example links. Overview inventory + document index extended and re-dated; README gains an Extended-packs section and refreshed repository map. validate_all (docs-links) green. Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
Bump VERSION to 0.3.0 and add the CHANGELOG entry for the July 2026 expansion (language/quality/security/testing packs + Level-3 examples). Re-date generated docs to 2026-07-08 and drop an unused import in generate_docs.py. Full gate stack green: validate_all (9/9), actionlint, and zizmor across all 42 workflows. Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
Uniformity pass: the six pre-existing language packs (Python, Node, Go, Rust, Java, .NET) and the infra/tool packs (container, terraform, docs, monorepo changed-paths, cross-platform smoke) now each ship a dedicated examples/ caller and a catalog example reference. Every reusable product workflow is now example-covered (or aggregate-security-covered); no capability with a workflow is left example: null unintentionally. validate_all green. Signed-off-by: Danil Silantyev <danilsilantyevwork@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The July 2026 enterprise-grade expansion. Grows the reusable library from 23 to
42 workflows and the catalog from 46 to 67 capabilities (38 pinned tools),
holding the existing three-tier model and every convention. Ten atomic commits;
validate_all(9/9),actionlint, andzizmorare green across all 42workflows after each.
HTML/CSS, SQL — joining Python, Node, Go, Rust, Java, .NET, container, Terraform.
coverage-gate,docs-quality,pr-hygiene.free on every tier including private-free, where CodeQL and dependency
review are paid. All gate-only (no
security-events).mutation-testing,fuzzing,benchmark.Every new third-party action was SHA-pinned with a version comment, resolved live
via
gh, and verified against itsaction.ymlinput contract. New docs pagedocs/15-language-and-quality-packs.md;examples/gainslanguages/ quality/ security/ testing/ level3/. VERSION → 0.3.0.Type of change
Threat-model note
New attack surface = the newly pinned third-party actions and a few write scopes.
Containment:
against its
action.yml; CLIs are checksum-verified (OSV-Scanner) orversion-pinnable (Semgrep, sqlfluff).
permissions: {}; each job requests the minimum. Write scopes areisolated to the jobs that need them and documented so callers grant only those.
security-events: write) — they addno code-scanning permission on any tier.
${{ inputs.* }}/${{ github.event.* }}inrun:(env-indirection);persist-credentials: false; harden-runner egress audit; nopull_request_target.Permissions diff
Most jobs are
contents: read. Escalations, per job, justified:Checklist
# vX.Y.Zcomment.permissions(top-level{}, per-job minimal scopes).timeout-minuteson every job;concurrencyin the caller examples.persist-credentials: falseon everyactions/checkout.${{ inputs.* }}/${{ github.event.* }}insiderun:(env-indirection).enable_harden_runner) preserved; new scanners gate-only.actionlintpasses locally (all 42 workflows).zizmorpasses locally (all 42 workflows; only auto-suppressed notes).docs/+catalog/updated; each new workflow has a catalog entry + example.CHANGELOG.mdupdated under[0.3.0]; VERSION bumped.-s) + Conventional Commits. Not GPG/SSH-signed locally (signing unset);required_signaturesonmainis satisfied by a signed squash-merge.Tier impact
Verification ceiling
GitHub Actions runtime is not executed in this environment, so new reusable
workflows are held to the repo's existing static bar (validate_all + actionlint +
zizmor + catalog + example) — identical to the pre-existing packs. Runtime proof
happens when a downstream repo (or a sandbox) calls them.