Jon Chery f8ddd8b182 phase: 8, status: plan-as-execute, persona: security-engineer+platform-engineer, task: T-8.1..T-8.4
---ci---
project: acdl
phase: 8
milestone: v1.1
status: plan-as-execute
persona: security-engineer+platform-engineer
task: [T-8.1, T-8.2, T-8.3, T-8.4]
requirements.covered: [REQ-23]
---/ci---

Waves 1+2: IAM policy + state backend + IAM user creation scripts.

- T-8.1 (security): terraform/bootstrap/spike_runner_policy.json —
  least-privilege IAM policy: Allow S3 r/w on the state bucket, DynamoDB
  r/w on the outbox table, sts:GetCallerIdentity; final Deny statement
  (Action *, NotResource = the above ARNs) enforcing least privilege. No
  terraform apply permission (plan-only spike).

- T-8.2/T-8.3 (platform): terraform/bootstrap/create_state_backend.py —
  boto3, idempotent: creates S3 bucket acdl-tfstate-581513795199-us-east-1
  (versioning enabled) + DynamoDB table acdl-outbox (PAY_PER_REQUEST, PK
  contractId, SK eventType#eventTs per D-P08-1 one table for both lock
  + outbox). Writes .bootstrap_state.json marker.

- T-8.4 (platform + security review): terraform/bootstrap/create_iam_user.py
  — boto3, idempotent: creates IAM user acdl-spike-runner, attaches the
  inline policy from spike_runner_policy.json, creates an initial access
  key if none active exists (prints to stdout for the orchestrator to
  capture; NEVER committed).

py_compile + policy JSON valid.
2026-07-21 18:58:29 +00:00

ACDL — Agentic Cloud Delivery Platform

Consumers declare intent; the platform delivers safe production deployment through an agentic stack — automatically, safely, and with a complete audit trail. A merged change progresses through lower environments end-to-end without a platform engineer joining a thread; a non-technical consumer ships a production deployment by declaring intent, without authoring a workflow, a configuration file, or a Terraform module.

Status

  • v1.1 (active): architecture finalization + v1 spike. Finalize the architecture to v1.0 (resolve the 11 open design decisions) and prove the locked commitments with one end-to-end implementation spike (l1-s3 + l2-static-asset + Terraform adapter → real terraform plan against AWS).
  • v1.0 demo (complete, archived): tag v1.1.0. The 30-minute stub-driven executive demo is preserved under demo/ as the intent reference; it is not the platform.

Repository layout

Path Purpose Populated
acdl_platform/ Platform code: confidence signal, contract resolver, outbox, HITL/ledger designs (renamed from platform/ in Phase 08 to avoid shadowing the stdlib platform module) Phase 07+
schemas/ JSON Schemas: IR, PolicyCheckResult, contract Phase 07
adapters/ Substrate adapters (Terraform adapter in v1; the only substrate-specific code per §12) Phase 09
terraform/ State backend + provider config (S3 state + DynamoDB lock) Phase 08+
modules-ir/ IR-typed L1/L2 modules (l1-s3, l2-static-asset) Phase 0910
scripts/ v1.1 verify scripts (verify_phaseNN.sh) Phase 06+
demo/ Archived v1.0 executive demo (tag v1.1.0); runs locally via demo/scripts/run_demo.sh --no-upload complete
.ciagent/ CIAgent metadata (plans, decisions, personas, roadmap, research) active
docs/ Upstream vision + architecture sources active

Running the archived demo

The v1.0 demo is an archived artifact. To re-run it locally:

bash demo/scripts/run_demo.sh --no-upload

The demo deck is at demo/ACDL_DEMO.md. The demo runs entirely on local stubs — no AWS, no AI — and shows intent and safety behavior rather than provisioning real cloud resources. It is the reference of intent for the real platform; it is not the platform itself.

S
Description
Nova — The New Dawn of DevSecOps. Autonomous infrastructure delivery: consumers declare intent, the platform ships safely with an immutable audit trail.
Readme 69 MiB
Languages
Python 87.2%
Shell 8.6%
HCL 4.2%