Skip to content

docs(config): document pipeline.config.json schema + wire CI validation#93

Merged
PAMulligan merged 1 commit into
mainfrom
84-document-pipeline-config-schema
May 25, 2026
Merged

docs(config): document pipeline.config.json schema + wire CI validation#93
PAMulligan merged 1 commit into
mainfrom
84-document-pipeline-config-schema

Conversation

@PAMulligan
Copy link
Copy Markdown
Collaborator

Summary

Documents the JSON Schema for pipeline.config.json (added in 9c93b99) and wires schema validation into CI. Resolves all four acceptance criteria from #84.

Acceptance criteria

Criterion Status
New section in docs/onboarding/pipeline-configuration.md linking to the schema file ## Schema & Validation links to .claude/pipeline.config.schema.json
Every field documented with type, default, and example ✅ All 224 schema property/type names; Field / Type / Default / Description tables + a JSON example per section
Editor setup notes (VS Code json.schemas mapping) ### Editor Setup with .vscode/settings.json snippet + $schema auto-pickup note
Validation runs in CI on every change to pipeline.config.json script-tests job runs node scripts/validate-pipeline-config.js on every push/PR

Doc changes

  • Schema & Validation section: schema link, how $schema drives editor autocomplete, local validation (./scripts/validate-pipeline-config.sh, --json/--config/--schema), exit codes (0/1/2), and CI enforcement.
  • Shared Types section documenting all 9 $defs.
  • Filled in previously-undocumented sections: reporting, the security subsections (snyk/csp/inputSanitization/headers), top-level mutationTesting, deadCode, caching, profiling, incrementalBuild, dashboard.
  • Types pulled from the schema; defaults pulled from the live config.

Verification

  • Mechanical coverage check: extracted all 224 property/type names from the schema → 0 missing from the doc.
  • node scripts/validate-pipeline-config.js passes against the live config (so the new CI step is green).
  • pnpm prettier --check passes; pre-commit doc-count guard passes.
  • CI YAML step indentation verified.

Milestone: v1.1.0 (only v1.0.0 is tagged, so v1.1.0 has not been cut yet).

Closes #84.

🤖 Generated with Claude Code

Expand docs/onboarding/pipeline-configuration.md to cover the JSON Schema
added in 9c93b99:
- New 'Schema & Validation' section linking to the schema file, explaining
  the $schema autocomplete behavior, local validation commands, exit codes,
  and CI enforcement
- 'Editor Setup' subsection with the VS Code json.schemas mapping
- 'Shared Types' section documenting all 9 $defs
- Every schema field (224 property/type names) documented with type,
  default (from the live config), and a JSON example
- Added previously-undocumented sections: reporting, security subsections
  (snyk/csp/inputSanitization/headers), top-level mutationTesting, deadCode,
  caching, profiling, incrementalBuild, dashboard

Wire schema validation into CI: the script-tests job now runs
'node scripts/validate-pipeline-config.js' on every push/PR, so any change
to pipeline.config.json is validated against the schema before merge.

Closes #84.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@PAMulligan PAMulligan added this to the v1.1.0 milestone May 25, 2026
@PAMulligan PAMulligan merged commit 8744403 into main May 25, 2026
6 checks passed
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.

Document the new pipeline.config.json JSON schema

1 participant