Forge Intelligence

Artifact envelope extensions (FI Phase 1)

Backward-compatible optional fields for cross-node handoffs. Base validation still uses the immutable bundle schema (bundles/.../artifact-envelope.schema.json). When any extension key is present, FI also validates…

Updated

Optional extension keys

Key Purpose
uncertainty Stated confidence / interval for downstream gating
blockers Unresolved issues that must propagate through fan-in
consent Subject consent basis and scope
retention TTL, policy id, legal hold
validity_interval valid_from / valid_until for time-bound artifacts
supersession Lineage when an artifact replaces another

Validation

from forge_intelligence.artifacts.validate import validate_envelope, validate_envelope_extensions

ok, errors = validate_envelope(envelope)
ok_ext, ext_errors = validate_envelope_extensions(envelope)

validate_envelope — required bundle fields only (unchanged).

validate_envelope_extensions — no-op pass when no extension keys present; otherwise validates only the extension subset.

Construction

create_envelope(..., uncertainty=..., blockers=..., consent=..., retention=..., validity_interval=..., supersession=...)

Omitted parameters are not emitted (backward compatible).