chore: freeze IC-1..IC-4 interface contracts
Resolved OQ-1 (drop tree event), OQ-2 (defer resize), OQ-3 (per-session control-mode, T-1.1 to decide final), OQ-4 (sonnet-4-5 for T-1.0). IC-3: clarified deviceToken/environment optional pre-Phase-2, mandatory from Phase 2 onward.
This commit is contained in:
parent
aa8aa42655
commit
7c40c49b1a
|
|
@ -127,7 +127,8 @@ type ClientToServer =
|
|||
|
||||
type ServerToClient =
|
||||
| { type: "state"; value: "thinking" | "tool" | "idle" | "awaiting-input"; tool?: string; ts: number }
|
||||
| { type: "tree"; nodes: TreeNode[]; current: string } // optional, read-only
|
||||
// tree event dropped — out of iOS scope. Revisit if a dashboard wants it.
|
||||
// resize ClientToServer deferred — fixed 120×40 for v1.
|
||||
| { type: "snapshot"; seq: number; data: string } // base64 ANSI snapshot
|
||||
| { type: "session-meta"; name: string; description?: string; createdAt: string }
|
||||
| { type: "error"; code: string; message: string };
|
||||
|
|
@ -159,7 +160,9 @@ QR encodes a `pi-remote://` URL:
|
|||
pi-remote://<host>:<port>?pair=<pairing-token>&fp=<sha256-hex>&name=<sidecar-name>
|
||||
```
|
||||
|
||||
Pairing exchange: client `POST /pair` with `{ pairingToken, deviceToken?, environment?, deviceName? }` → server replies `{ bearerToken, sidecarId }`. Owner: T-1.3.
|
||||
Pairing exchange: client `POST /pair` with `{ pairingToken, deviceToken?, environment?, deviceName? }` → server replies `{ bearerToken, sidecarId }`.
|
||||
|
||||
`deviceToken` and `environment` are **optional** pre-Phase-2, **mandatory** from Phase 2 onward. Owner: T-1.3.
|
||||
|
||||
### IC-4 — Config schema (TOML)
|
||||
|
||||
|
|
|
|||
|
|
@ -99,10 +99,10 @@ Phase 2 kicks off.
|
|||
|
||||
| ID | Defined in | Status | Frozen at | Owner of changes |
|
||||
|---|---|---|---|---|
|
||||
| IC-1 — WebSocket frame protocol | `PHASE-1-sidecar.md` §Interface Contracts | **draft** — needs orchestrator sign-off before T-1.5 starts | — | T-1.5 lead, with sign-off from any active T-2.x owner |
|
||||
| IC-2 — HTTP REST shape | `PHASE-1-sidecar.md` §Interface Contracts | **draft** | — | T-1.5..T-1.7 leads |
|
||||
| IC-3 — Pairing payload | `PHASE-1-sidecar.md` §Interface Contracts | **draft** | — | T-1.3 lead |
|
||||
| IC-4 — Config TOML schema | `PHASE-1-sidecar.md` §Interface Contracts | **draft** | — | T-1.7 lead |
|
||||
| IC-1 — WebSocket frame protocol | `PHASE-1-sidecar.md` §Interface Contracts | **frozen** | 2026-05-15 | T-1.5 lead, with sign-off from any active T-2.x owner |
|
||||
| IC-2 — HTTP REST shape | `PHASE-1-sidecar.md` §Interface Contracts | **frozen** | 2026-05-15 | T-1.5..T-1.7 leads |
|
||||
| IC-3 — Pairing payload | `PHASE-1-sidecar.md` §Interface Contracts | **frozen** | 2026-05-15 | T-1.3 lead |
|
||||
| IC-4 — Config TOML schema | `PHASE-1-sidecar.md` §Interface Contracts | **frozen** | 2026-05-15 | T-1.7 lead |
|
||||
| IC-2.1 — `SessionConnection` Swift surface | `PHASE-2-ios-mvp.md` §Interface Contracts | **draft** — freeze at Phase 2 kickoff | — | T-2.5 lead |
|
||||
|
||||
**Freeze protocol:** when the orchestrator is ready to fan out work that
|
||||
|
|
|
|||
Loading…
Reference in New Issue