Files
weichenandCursor da0b3d812b feat(intentflow): persist plans with CAS lease and fencing
Own plan/step/decision writes behind UoW so two workers cannot both execute the same step.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-15 23:43:46 +00:00

15 lines
751 B
Go

// Package intentflow owns the multi-intent plan lifecycle.
//
// It is the only application entry for proposing, confirming, recovering, and
// advancing persistent plans. Callers (chat/server) must depend on the Service
// interface and PlanView projection, not on the store, pool, or action-owner
// engines.
//
// Hard rules:
// - Confirmation is not authorization; each step re-checks the current principal.
// - PostgreSQL plan/step/decision rows are authoritative; cards and SSE are projections.
// - internal/intent stays a pure rule module (intent -> maturity).
// - This package must not import docgov, taskrun, coordinator, or server.
// - Only the owner repository unwraps pgx via app/uow (see unwrap_owners).
package intentflow