From 9d35c0756c82d233ed24e391bee21246f516d715 Mon Sep 17 00:00:00 2001 From: Jon Chery Date: Tue, 21 Jul 2026 13:12:45 +0000 Subject: [PATCH] =?UTF-8?q?decision(P02):=20clarification=20=E2=80=94=20L1?= =?UTF-8?q?=20manifest=20schema,=20mock=5Fapply=20behavior,=20names?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ---ci--- phase: 2 milestone: v1.0 status: clarify decisions: - id: D-017 decision: L1 manifest.yaml declares a flat inputs: map of named string keys + descriptions; no nested types rationale: REQ-02/03 say 'declared inputs'; spec forbids composition and cloud-specific types confidence: 0.90 alternatives: [JSON-schema-validated nested types, omit inputs entirely] - id: D-018 decision: L1 mock_apply.sh reads its own manifest.yaml for self-identification but ignores the input values rationale: D-007 mandates uniform echo + 1s sleep + exit 0; inputs are declared for traceability not consumed confidence: 0.85 alternatives: [have mock_apply echo the input values back, parameterize sleep duration] - id: D-019 decision: 8 L1 names fixed per REQ-02 literal rationale: REQ-02 enumerates them; no naming freedom confidence: 0.99 alternatives: [] ---/ci--- Phase 02 ambiguities are minor (the spec is explicit). Three clarifications logged: D-017 manifest schema (flat string map), D-018 mock_apply ignores inputs (uniform stub), D-019 fixed L1 names. --- .ciagent/PROJECT.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.ciagent/PROJECT.md b/.ciagent/PROJECT.md index 3ce13be..17057a4 100644 --- a/.ciagent/PROJECT.md +++ b/.ciagent/PROJECT.md @@ -75,4 +75,7 @@ Build a runnable demo (Linux + GitHub/Gitea Actions) that walks executives throu | D-013 | Gitea has no environments API and ignores `jobs..environment` — model QA/Prod gates as `workflow_dispatch` approval inputs (D-004 fallback) | Research confirms `environment:` blocks are ignored by act_runner | Approval gates become dispatch inputs; "environments" become workflow job names + optional branch protection on `qa`/`prod` branches | | D-014 | Cross-repo triggering uses the `workflow_dispatch` Gitea API (POST `/actions/workflows/{id}/dispatches`) from inside a step instead of `repository_dispatch` | Gitea Actions does not support `repository_dispatch` | Issue-trigger workflow calls the main pipeline via authenticated dispatch from a step | | D-015 | New repos `acdl-contracts` and `acdl-evidence` use `default_branch: "main"` with `auto_init: true` | Matches Gitea `DEFAULT_BRANCH=main`; required for the default branch to exist before any push | Reusable-workflow `uses:` references still pin `acdl` workflows to `@milestone/v1.0-initial` | -| D-016 | Pages placeholder for Phase 01 is a minimal HTML stub (`ACDL Evidence` + "evidence stream coming soon"); full UI deferred to Phase 05 | Phase 01 success criterion is "Pages returns 200 with placeholder index.html" but Gitea has no Pages | Raw-URL HTTP 200 against `index.html` substitutes for the Pages check; full timeline UI built in Phase 05 | \ No newline at end of file +| D-016 | Pages placeholder for Phase 01 is a minimal HTML stub (`ACDL Evidence` + "evidence stream coming soon"); full UI deferred to Phase 05 | Phase 01 success criterion is "Pages returns 200 with placeholder index.html" but Gitea has no Pages | Raw-URL HTTP 200 against `index.html` substitutes for the Pages check; full timeline UI built in Phase 05 | +| D-017 | Each L1 `manifest.yaml` declares a single `inputs:` map of named string keys with descriptions; no nested types (substrate-agnostic, max-depth-1) | REQ-02/03 say "declared inputs"; spec forbids composition and cloud-specific types | Uniform, parseable schema that Phase 03's `mock_executor.sh` can read with python+yaml | +| D-018 | L1 `mock_apply.sh` reads its own `manifest.yaml` for self-identification but ignores the input values (uniform stub per D-007) | D-007 mandates a literal echo + 1s sleep + exit 0; inputs are declared for traceability, not consumed | Predictable evidence events + clean separation from Phase 03 where L2s pass inputs to L1s | +| D-019 | The 8 L1 names are fixed per REQ-02: `l1-eks-fargate`, `l1-iam-role`, `l1-lambda`, `l1-api-gateway`, `l1-eventbridge`, `l1-sqs`, `l1-s3`, `l1-cloudwatch` | REQ-02 literal | Phase 02 enumerates them exactly; no naming freedom | \ No newline at end of file