rail-kubernetes/workplans/RAIL-K8S-WP-0001-bootstrap-and-wave1-import.md

143 lines
4.6 KiB
Markdown

---
id: RAIL-K8S-WP-0001
type: workplan
title: "Bootstrap rail-kubernetes and import the wave-1 contract"
domain: financials
repo: rail-kubernetes
status: active
owner: codex
topic_slug: railiance
created: "2026-07-25"
updated: "2026-07-26"
state_hub_workstream_id: "1f2254f5-a873-46fc-a77c-bc725eeaaeb8"
---
# RAIL-K8S-WP-0001 - Bootstrap rail-kubernetes and import the wave-1 contract
## Goal
Turn `rail-kubernetes` into the concrete home of the default Railiance
execution rail.
## Boundaries
This workplan may bootstrap the repo, publish the initial declaration, and
import the generic wave-1 contract.
It must not:
- absorb S2 substrate ownership from `railiance-cluster`
- normalize workload-specific helper commands into the rail
- pretend the migration is complete before compatibility shims exist
## T01 - Establish the repo baseline and rail declaration
```task
id: RAIL-K8S-WP-0001-T01
status: done
priority: high
state_hub_task_id: "9bab36db-e094-4e41-af76-b6bf5e73be78"
```
Create the baseline repo files, the initial rail declaration, and the first
wave-1 contract summary.
Acceptance:
- baseline repo files exist
- `declarations/rail.yaml` exists
- the repo states its boundary with `railiance-cluster`
2026-07-25: Created the initial repo baseline, declaration, and wave-1
contract summary.
## T02 - Import the reviewed generic contract material
```task
id: RAIL-K8S-WP-0001-T02
status: done
priority: high
state_hub_task_id: "148276a2-2e40-4d56-89dd-2930c5e4309c"
```
Bring the reviewed generic lifecycle docs, schema, examples, and helper
surfaces into this repo in a migration-safe sequence.
Acceptance:
- the import sequence is anchored in the reviewed extraction map
- imported material stays generic to the Kubernetes rail
- the repo becomes a real home for the default rail rather than only a shell
2026-07-25: Established the repo-local contract summary and explicit source
import plan. Full import of docs, schema, examples, and helper surfaces is
still pending.
2026-07-25: Imported the first core generic contract artifacts from
`railiance-cluster`: `docs/deployment-lifecycle.md`,
`docs/app-toml-contract.md`, `schemas/railiance-app.schema.json`, and
`examples/railiance/app.toml`. Helper command surfaces and the remaining
supporting docs are still pending.
2026-07-25: Imported the remaining generic supporting docs from
`railiance-cluster`: `docs/overlay-repo-pattern.md`,
`docs/canary-helm-template.md`, `docs/stage2-deploy-observe.md`,
`docs/promote-rollback-onboarding.md`, and
`docs/railiance-run-command.md`. Helper scripts and command implementations
remain pending.
2026-07-26: Imported the remaining reviewed helper surfaces from
`railiance-cluster`: `tools/create_railiance_overlay_repo.sh`,
`tools/cmd/railiance-run`, `tools/cmd/railiance-stage2`, and
`tools/cmd/railiance-stage3`. Added a rail-local `bin/railiance` dispatcher
limited to `create-overlay`, `run`, `deploy`, `observe`, `promote`, and
`rollback`, documented `create-overlay`, refreshed the source import plan, and
verified the imported surface with `bash -n`, `python3 -m py_compile`, and
`bin/railiance help`.
## T03 - Prepare the compatibility handoff from `railiance-cluster`
```task
id: RAIL-K8S-WP-0001-T03
status: wait
priority: medium
state_hub_task_id: "18140d90-d10e-47fe-b7da-d454550466b1"
```
Define the thin compatibility path that keeps current operators functional
while the extraction proceeds.
Acceptance:
- the compatibility path is explicit
- current operators do not need a flag day
- the retained S2 surface stays narrow and temporary
## T04 - Register `rail-kubernetes` in State Hub and Fabric
```task
id: RAIL-K8S-WP-0001-T04
status: done
priority: medium
state_hub_task_id: "d78b5712-f305-4967-9034-9b9471633755"
```
Register the repo from classification and add it to the Fabric repository
registry with rail-family metadata.
Acceptance:
- State Hub recognizes the repo and its workplan
- Fabric recognizes the repo as `repo_family: rail`
- ownership and primary contract metadata are visible
2026-07-25: Registered `rail-kubernetes` in State Hub and generated
`WORK-RECORDS.md` plus `.custodian-brief.md`. Added `rail-kubernetes` to
`railiance-fabric/registry/railiance-repos.yaml` as `repo_family: rail` with
`ownership_repo: railiance-cluster`. The local repo history is now reconciled
with the remote bootstrap commit and pushed to
`forgejo-remote:coulomb/rail-kubernetes.git`. A targeted live Fabric registry
sync initially failed because `http://127.0.0.1:8765` was down, but after
starting the local registry service the targeted sync succeeded. Fabric now
stores `rail-kubernetes` as a live registered repo with snapshot `id: 96` at
commit `4c2b76e3ecc082bc310523bdcd6c660716e4248b`.