chore: establish phase 0 baseline
baseline / verify (push) Has been cancelled

This commit is contained in:
2026-07-18 18:20:34 -04:00
commit b38da7d53f
42 changed files with 2618 additions and 0 deletions
+64
View File
@@ -0,0 +1,64 @@
# Codex instructions
## Authority and scope
- Start with `docs/spec/00_SPEC_INDEX.md`. The numbered files under `docs/spec/` are the
complete active specification; `99_FULL_SPEC_ARCHIVE.md` is historical and is not in
this repository.
- Required and Confirmed items are binding. Proposed, Deferred, Open, Optional, and
Post-v1 items must not silently become implementation requirements.
- Before changing scope, architecture, compatibility, release timing, schemas, commands,
or user-visible behavior, read `docs/spec/01_PROJECT_FOUNDATION.md` and
`docs/spec/07_RISKS_DECISIONS_AND_HISTORY.md` and apply the cross-spec integrity rules.
- Ask the project owner when multiple plausible resolutions materially differ. Do not
invent a decision merely to keep moving.
## Current state
- Phase 0 is complete. Phase 1 contracts are next.
- `Project Kiln`, `kiln`, and every `kiln-*` name are private placeholders. Do not publish,
globally install, register, or expose them as stable compatibility promises.
- The workspace is private, AGPL-3.0-or-later, Rust 2024, MSRV 1.85, with the reviewed
development toolchain pinned to Rust 1.97.1.
- No real provider implementation starts until the relevant Phase 1 contracts and mock
adapter tests pass.
## Required workflow
1. Define one narrow task with exclusions, affected components, acceptance criteria, and
exact verification commands.
2. Implement one vertical capability at a time. Do not spread incomplete work across
providers or system layers.
3. Treat provider files, manifests, artwork, frontend descriptors, paths, and strings as
hostile input. Never interpolate them into a shell command.
4. Keep ordinary discovery and launch unprivileged. Preserve per-user XDG state and do
not hard-code usernames, UIDs, home directories, mounts, or the reference hardware.
5. Use exact versions for local path dependencies as well as their paths. Update and
commit `Cargo.lock` for every dependency change.
6. Add dependency licenses only after review; do not broaden `deny.toml` speculatively.
7. Update ADRs, evidence, traceability, source inventory, changelog, and active spec files
whenever a change materially affects them.
## Verification
Run before handing work back:
```sh
make verify
make audit
```
Also run focused tests for the changed capability. Do not report a gate as passed unless
it actually ran. Record blocked hardware/VM/provider checks explicitly for later local
execution rather than fabricating evidence.
## Repository map
- `crates/kiln-core/`: provider-independent contracts and logic
- `crates/kiln-cli/`: the single human and machine-facing CLI
- `docs/spec/`: active specification
- `docs/adr/`: architecture decisions
- `docs/phase-0/`: completed baseline policies and evidence
- `docs/handoff/`: bounded Codex CLI task briefs
- `scripts/`: repository, toolchain, licensing, and placeholder gates