# CI Enforcement Examples

These examples are provider-neutral. Adapt paths and command names to the repository, shell, or hosted CI provider while preserving the same evidence gates.

The examples call reusable Day Shift validation and review commands directly. They do not require a hosted-provider event model, provider-specific environment variable, or provider-specific status API.

## Minimal Shell Gate

```sh
set -eu

pnpm run build
node --test tests_v2/init/policy-pack-contract.test.js
node dist/cli/index.js validation smoke --scope planning --format json
```

## Artifact-Specific Gate

```sh
set -eu

TASK_DEFINITION="${TASK_DEFINITION:?set TASK_DEFINITION to a task-definition path}"

node dist/cli/index.js task readiness-review --task-definition "$TASK_DEFINITION" --format json
node dist/cli/index.js implementation-summary review --task-definition "$TASK_DEFINITION" --format json
node dist/cli/index.js validation links-check --artifact "$TASK_DEFINITION" --format json
```

Use the same artifact-specific pattern for milestone reconciliation when a milestone is ready for closeout:

```sh
set -eu

MILESTONE_OVERVIEW="${MILESTONE_OVERVIEW:?set MILESTONE_OVERVIEW to a milestone-overview path}"

node dist/cli/index.js reconciliation review --milestone-overview "$MILESTONE_OVERVIEW" --format json
node dist/cli/index.js validation links-check --artifact "$MILESTONE_OVERVIEW" --format json
```

## Enforcement Notes

- Run commands in a clean checkout when possible.
- Treat review and validation output as read-only evidence.
- Route repairs through explicit write-capable commands selected by an operator.
- Do not make provider-specific environment variables part of the policy contract.
- Keep runtime and hybrid tasks blocked until Runtime Delta targets, runtime changed paths, and executable validation evidence or a structured validation exception are present.
