Human-governed AI¶
Status: Available in ETLantic 0.53.0 (Beta release candidate). Budget ~15 minutes after Quickstart. PyPI only — no MCP extra and no clone.
Treat every proposal as untrusted. This tutorial validates a proposal; it
does not apply files, submit runs, or call /v1/approvals*.
1. Start from the init project¶
Reuse the Quickstart directory. Confirm the sample still validates:
2. Assemble a context bundle¶
Expected: JSON with "schema": "etlantic.context_bundle/1" and "ok": true.
The bundle is redacted (no secret values, no source rows). Overflow or
redaction failures emit PMCTX* and a non-zero exit.
3. Generate agent instruction files¶
Expected: AGENTS.md, .codex/skills/etlantic/SKILL.md, CLAUDE.md, and a
Cursor rule under .cursor/. Marked user regions are preserved. Replacing
unmarked files requires --overwrite.
4. Validate a read-only proposal¶
Write proposal.json (inspect/validate only — never run.submit):
{
"schema": "etlantic.proposal/1",
"task_id": "scaffold_model",
"kind": "files",
"files": [
{
"path": "notes.md",
"content": "# Review notes\nNo execution.\n"
}
],
"requested_actions": ["inspect", "validate"]
}
python -m etlantic proposal validate proposal.json --target pipeline.py:SamplePipeline --format json
Expected: "ok": true and "applied": false. Apply stays a current 0.42
approval on the control plane. The CLI never writes the proposed files.
5. See fail-closed behavior¶
Change requested_actions to ["run.submit"] and re-run validate. Expected:
non-zero exit and PMPROP* (untrusted / forbidden action).
What this is not¶
- Experimental
etlantic-mcpis optional and fake-first — skip it here. - Write MCP tools, vendor AI SDKs, and autonomous submit remain outside the 0.50 core contract.
- See What's new in 0.50 and Agents API.