/**
 * OODA Orchestration — Public Types (sprint-525:quick-1 foundation).
 *
 * The OODA primitive is the single, opinionated agent lifecycle for CC v2:
 *   observe → orient → decide → act → feedback
 *
 * 10 anti-patterns are enforced **by-design** through the API surface and
 * runtime validation in `OODAAgentImpl`:
 *
 *   1. Sequential `while + sleep` cycle loop — never `setInterval`.
 *   2. Each phase persists `pending` → `done` via `insertStep` + `completeStep`.
 *   3. Optional `hitlGate` on `act` — gates execution until human approval.
 *   4. Risk guards have NO TTL bypass — each cycle re-checks.
 *   5. Session guards checked once per cycle; cycle SKIPPED if any false.
 *   6. `executionMode` is REQUIRED at construction — no implicit default.
 *   7. `observe` and `orient` MUST be `readOnly: true`.
 *   8. On any guard tripped, the cycle aborts cleanly — no LLM/skill calls.
 *   9. Resource limits (`phaseTimeoutMs`, `maxStepsPerCycle`, `maxHeapMb`)
 *      are configurable with sane defaults (60s / 200 / 256MB).
 *  10. Heap & step usage are monitored and exceeding limits is logged + aborted.
 *
 * Replay safety: every `OODAContext` carries `isReplay`. Skills and phase
 * functions MUST honor it (no observable side effects when true).
 *
 * Type-safe phase chaining: each phase's `TOutput` becomes the next phase's
 * `TInput`, providing compile-time guarantees on the data flow.
 *
 * @public
 */
/**
 * Default resource limits — exported for tests and host wiring.
 */
export const DEFAULT_RESOURCE_LIMITS = {
    phaseTimeoutMs: 60_000,
    maxStepsPerCycle: 200,
    maxHeapMb: 256,
};
//# sourceMappingURL=types.js.map