# GCS-DEPLOY-001 - Runtime and Deployment Contract

Spec ID      : GCS-DEPLOY-001
Title        : Runtime and Deployment
Version      : v1.0
Status       : Settled
Owner        : Phil
Approver     : Phil
Settled      : 2026-07-08
Depends on   : GCS-NAME-001, GCS-STACK-001, GCS-SEC-001, GCS-TEST-001
Supersedes   : -

## 1. Current Runtime

The current managed runtime for this repository is not an application service.
It is a static artifact set: HTML, JavaScript, SVG assets, Markdown contracts,
and validator tooling.

No production database, API service, worker, scheduler, broker, or container
deployment is active under this contract.

## 2. Deployment Rule

Any future managed runtime must follow:

```text
local contract check
  -> commit
  -> CI contract check
  -> build
  -> health/readiness proof
  -> active deployment
```

A deployment is invalid if it bypasses `python3 -m tools.check_contracts
--check`.

## 3. Environment Variables

All environment variables use the `GCS_` prefix and must be documented in
`ops/local_variables.example`.

Current documented examples are inactive and for future local development only.
Secrets must never be committed.

## 4. Managed Runtime Amendment Requirement

Introducing a managed runtime requires amending this contract with:

- Runtime provider.
- Environment name.
- Service list.
- Production branch or release source.
- Secret variable inventory.
- Healthcheck path.
- Rollback procedure.
- Conformance report requirement.

## 5. Validation

Positive verification: `python3 -m tools.check_contracts --check` passes when
no unmanaged runtime files exist and every `GCS_*` variable is documented.

Negative verification: adding undocumented `GCS_*` env vars, active deployment
config, or service identity files without contract amendment fails the gate.
