Skip to content

ci: standard validation pipeline (shellcheck/json + security scanners + dependabot)#5

Merged
josephismikhail merged 2 commits into
mainfrom
ci/standard-pipeline
Jun 9, 2026
Merged

ci: standard validation pipeline (shellcheck/json + security scanners + dependabot)#5
josephismikhail merged 2 commits into
mainfrom
ci/standard-pipeline

Conversation

@josephismikhail

Copy link
Copy Markdown
Contributor

Standardized validation CI for this config/manifest plugin repo (no build system: markdown + JSON manifests + shell install scripts). Mirrors the shared security workflows from the Ix repo.

Added

  • .github/workflows/ci.ymlvalidate job: shellcheck (--severity=error) on all *.sh, JSON.parse on every committed *.json (excludes node_modules/dist/.git); CI Passed aggregator job for a stable required-status-check context. concurrency + top-level permissions: contents: read + persist-credentials: false.
  • .github/workflows/secret-scan.yml — gitleaks binary (free MIT build, not the licensed org action), full-history scan.
  • .github/workflows/actions-lint.yml + .github/zizmor.yml — zizmor workflow security audit (path-filtered to workflow changes).
  • .github/dependabot.ymlgithub-actions ecosystem only (weekly); no package manager in this repo.

Notes

  • Every action is SHA-pinned; least-privilege permissions; persist-credentials: false on all checkouts.
  • shellcheck scoped to error severity to catch real bugs without failing on stylistic notes.
  • mcp/node_modules is gitignored (untracked) and explicitly excluded from JSON validation anyway.

🤖 Generated with Claude Code

josephismikhail and others added 2 commits June 8, 2026 15:57
… + dependabot)

This repo has no build system (markdown + JSON manifests + shell install
scripts), so CI validates what exists:
- ci.yml `validate`: shellcheck (severity=error) on all *.sh, JSON.parse on
  every committed *.json (node_modules/dist/.git excluded), plus a `CI Passed`
  aggregator for a stable required-status-check context.
- secret-scan.yml: gitleaks binary (free MIT build, not the licensed action).
- actions-lint.yml + zizmor.yml: workflow security audit (path-filtered).
- dependabot.yml: github-actions ecosystem only (weekly).

All actions are SHA-pinned; every checkout sets persist-credentials: false and
jobs use least-privilege permissions.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The MCP secret-redaction unit test (mcp/tests/unit/llm.test.ts and its compiled
dist/ copy) deliberately embeds fake secret-shaped strings to prove the redactor
strips them. gitleaks flagged the fake gcp-api-key as a leak. Add a path-scoped
.gitleaks.toml allowlist (extends the default ruleset) and point the scan at it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@josephismikhail josephismikhail merged commit 348822d into main Jun 9, 2026
6 checks passed
@josephismikhail josephismikhail deleted the ci/standard-pipeline branch June 9, 2026 00:34
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.

1 participant