RFC-012: Artifact Lifecycle Protocol (ALP) — 3. Artifact Types
AIGP Specification › RFC-012: Artifact Lifecycle Protocol (ALP) › 3. Artifact Types
← 2. Core Principles · Section index · 4. Lifecycle States →
3. Artifact Types
Every artifact produced by an agent MUST declare its type. The type determines approval rules, execution semantics, and compensation requirements.
| Type | Extension | Description | Executable | Compensation Required |
|---|---|---|---|---|
PYTHON_SCRIPT |
.py |
Python remediation, automation, or analysis script | YES | YES |
SHELL_SCRIPT |
.sh |
Bash/shell automation script | YES | YES |
IAC_TEMPLATE |
.yaml, .json, .tf |
CloudFormation, Terraform, or CDK template | YES | YES |
JSON_CONFIG |
.json |
Application or service configuration | YES | YES |
YAML_CONFIG |
.yaml |
Application or service configuration | YES | YES |
POLICY_DOCUMENT |
.json |
IAM policy, SCP, permission boundary | YES | YES |
REPORT |
.md, .json |
Analysis report, audit summary, gap analysis | NO | NO |
MANIFEST |
.json |
Execution plan, dependency declaration | NO | NO |
3.1 Artifact Schema
Every artifact MUST conform to the following metadata schema:
{ "artifact_id": "art-20260504-001", "artifact_type": "PYTHON_SCRIPT", "name": "remediate-prisma-gaps.py", "version": "1", "state": "DRAFT", "producer": { "agent_id": "agent-remediation-v1", "app_id": "runbook-service", "aigp_request_id": "req-1714800000000", "acp_context_id": "ctx-1714800000000" }, "content_ref": { "s3_bucket": "run-prj-artifacts", "s3_key": "artifacts/art-20260504-001/v1/remediate-prisma-gaps.py", "content_hash": "sha256:a1b2c3d4e5f6..." }, "compensation_ref": { "artifact_id": "art-20260504-001-rollback", "s3_key": "artifacts/art-20260504-001/v1/rollback-remediate-prisma-gaps.py" }, "blast_radius": { "scope": "ACCOUNT", "affected_resources": ["iam:policy", "iam:role"], "estimated_count": 12 }, "created_at": "2026-05-04T10:00:00Z", "updated_at": "2026-05-04T10:00:00Z"}← 2. Core Principles · Section index · 4. Lifecycle States →