feat: close autonomous operations for blocked products
This commit is contained in:
@@ -0,0 +1,62 @@
|
||||
# Autonomous Operation Policy V1
|
||||
|
||||
## Operational Contract
|
||||
|
||||
Each product ends in exactly one state:
|
||||
|
||||
- `COMPLETE`
|
||||
- `CORRECTED`
|
||||
- `BLOCKED_MISSING_EVIDENCE`
|
||||
- `BLOCKED_CONFLICT`
|
||||
- `BLOCKED_COMPANY_CONTEXT`
|
||||
- `BLOCKED_SCHEMA`
|
||||
- `FAILED_TECHNICAL`
|
||||
|
||||
`COMPLETE` and `CORRECTED` products continue normally. Blocked products never
|
||||
receive uncertain writes. `FAILED_TECHNICAL` is retried by the job system and
|
||||
does not stop processing of other products.
|
||||
|
||||
## Partial Processing
|
||||
|
||||
The Agent processes every product independently and reports per-product state
|
||||
counts. Safe blocked products do not stop processing, heartbeat, new jobs, or
|
||||
reconnection. `AGENT_HEALTH=HEALTHY` is valid when `SAFE_BLOCKED > 0` and
|
||||
`FAILED_TECHNICAL=0`.
|
||||
|
||||
## Go-Live Gate
|
||||
|
||||
`GO_LIVE_ALLOWED=true` only when all are true:
|
||||
|
||||
- preflight passes;
|
||||
- company context is resolved;
|
||||
- mandatory infrastructure is healthy;
|
||||
- no unsafe write path is available;
|
||||
- blockers are explicitly registered as safe blocked states;
|
||||
- technical failures are below the configured threshold.
|
||||
|
||||
One hundred percent product completeness is not required to start an Agent.
|
||||
This policy authorizes no deployment by itself.
|
||||
|
||||
## Blocker Registry And Retry
|
||||
|
||||
The Hub stores one blocker per stable fingerprint with tenant/company/product,
|
||||
field, evidence, timestamps, retry count, next retry, and resolution source.
|
||||
Identical input fingerprints are `BLOCK_CACHE_HIT` and do not create duplicate
|
||||
rows, notifications, AI work items, or external calls. Reprocessing occurs when
|
||||
product/context/dataset/KB/engine input changes or a retry schedule is due.
|
||||
|
||||
The exception API supports listing/filtering, CSV export, reprocess job creation,
|
||||
and explicit resolution. A successful later evaluation automatically closes all
|
||||
unresolved blockers for that product.
|
||||
|
||||
## Current Policy Facts
|
||||
|
||||
```text
|
||||
AI_REQUIRED_FOR_MANDATORY_COMPLETENESS=0
|
||||
EXTERNAL_PRODUCT_PROVIDER_REQUIRED_FOR_MANDATORY_COMPLETENESS=0
|
||||
AI_WRITE_ALLOWED=false
|
||||
FIREBIRD_AI_WRITES=0
|
||||
```
|
||||
|
||||
The 511 AI work items are optional enrichment. No provider purchase, AI call,
|
||||
or fiscal inference is needed for operational start under this policy.
|
||||
Reference in New Issue
Block a user