Problem Statement
IdLE produces plans that may be executed later. Operators and automated hosts need plan artifacts to be auditable and safe to store/share.
With the introduction of Request.Intent and Request.Context, we must define a deterministic plan snapshot/export contract:
- What request data is captured in the exported plan
- How secrets are prevented from leaking into artifacts
- How size and serialization stability are enforced
Without explicit rules, plan artifacts become:
- non-reproducible (planning depended on data not captured),
- unsafe (secrets included),
- unbounded in size,
- inconsistent across hosts.
Proposed Solution
1) Define a deterministic RequestSnapshot contract
Plan export MUST include a RequestSnapshot containing at minimum:
CorrelationId
Actor
IdentityKeys
LifecycleEvent
Request.Intent (canonical intent/action inputs)
Request.Context (canonical associated context)
2) Enforce safety rules
The snapshot/export pipeline MUST enforce:
- Secret prevention (reject or redact; decision must be explicit and documented):
- passwords, tokens, refresh tokens, client secrets, session keys, private keys, etc.
- Executable / unsafe type prevention:
- reject ScriptBlocks, delegates, non-serializable objects, provider runtime handles
- Size limits:
- define a maximum total snapshot size and/or per-field limits
- define deterministic truncation/redaction behavior
3) Stable serialization requirements
- Exported snapshot must be stable and predictable (order-insensitive where possible).
- Use safe serialization; avoid embedding raw .NET object graphs.
Alternatives Considered
- Export only minimal metadata (no intent/context)
- Hurts auditability and troubleshooting.
- Export the full original request object
- Too risky (secrets, non-serializable objects, host-specific payloads).
Impact
- Plan artifacts become more informative but may increase in size (bounded by limits).
- Hosts/tools consuming plan exports may need to tolerate the updated snapshot structure.
Dependencies
- Requires Issue 1 (schema:
Request.Intent and Request.Context).
Definition of Done (Step-0-Ready / Agent-Safe)
Design / Contracts
Implementation
Tests (Pester)
Docs / Examples
Non-Goals
- No planning-time context resolver feature in this issue.
- No runtime execution guard feature in this issue.
Problem Statement
IdLE produces plans that may be executed later. Operators and automated hosts need plan artifacts to be auditable and safe to store/share.
With the introduction of
Request.IntentandRequest.Context, we must define a deterministic plan snapshot/export contract:Without explicit rules, plan artifacts become:
Proposed Solution
1) Define a deterministic
RequestSnapshotcontractPlan export MUST include a
RequestSnapshotcontaining at minimum:CorrelationIdActorIdentityKeysLifecycleEventRequest.Intent(canonical intent/action inputs)Request.Context(canonical associated context)2) Enforce safety rules
The snapshot/export pipeline MUST enforce:
3) Stable serialization requirements
Alternatives Considered
Impact
Dependencies
Request.IntentandRequest.Context).Definition of Done (Step-0-Ready / Agent-Safe)
Design / Contracts
RequestSnapshotshape (fields, nesting, naming).Implementation
RequestSnapshotgeneration includingRequest.IntentandRequest.Context.Tests (Pester)
Request.IntentandRequest.Context.Docs / Examples
Non-Goals