docs: design autonomous fiscal completion v1
This commit is contained in:
@@ -0,0 +1,71 @@
|
|||||||
|
# Autonomous Fiscal Completion V1 Design
|
||||||
|
|
||||||
|
## Goal
|
||||||
|
|
||||||
|
Reduce deterministic fiscal gaps across the five explicitly allowlisted local
|
||||||
|
Firebird databases without calling an AI provider, answering human decisions,
|
||||||
|
or treating a populated ERP field as mandatory by default.
|
||||||
|
|
||||||
|
## Safety Boundary
|
||||||
|
|
||||||
|
All discovery and evidence extraction is read-only. Deterministic writes are
|
||||||
|
permitted only through the existing guarded executor, only for exact allowlisted
|
||||||
|
paths and proven write targets. A write requires provenance, `CHANGE_REQUIRED`,
|
||||||
|
`write_eligible=true`, path/company/schema/type guards, compare-before-write,
|
||||||
|
exact rowcount, post-write equality, and a no-unplanned-columns audit. If any
|
||||||
|
guard fails, the result remains pending. AI flags remain
|
||||||
|
`AI_WRITE_ALLOWED=false` and `FIREBIRD_AI_WRITES=0`.
|
||||||
|
|
||||||
|
## Workstreams
|
||||||
|
|
||||||
|
### 1. Requiredness and completeness
|
||||||
|
|
||||||
|
Create a versioned requiredness matrix for the 23 existing fiscal contracts.
|
||||||
|
Rules are keyed by company regime/UF and product/operation facts, and produce
|
||||||
|
one of `REQUIRED`, `CONDITIONAL`, `OPTIONAL_REFERENCE`, `NOT_APPLICABLE`, or
|
||||||
|
`ERP_NOT_USED`. Implement `FiscalCompletenessEvaluator` to return a status per
|
||||||
|
field and aggregate product metrics without requiring empty `NOT_APPLICABLE`
|
||||||
|
fields to be filled.
|
||||||
|
|
||||||
|
### 2. Inbound evidence
|
||||||
|
|
||||||
|
Perform schema discovery across all five databases without assuming table
|
||||||
|
names. Identify headers, items, suppliers, keys, XML/BLOB/text evidence, and
|
||||||
|
relationships. Produce a sanitized evidence map and read-only analysis counts.
|
||||||
|
Supplier observations remain observational until conservative deterministic
|
||||||
|
rules prove they are reusable.
|
||||||
|
|
||||||
|
### 3. Deterministic resolution
|
||||||
|
|
||||||
|
Build provenance-aware evidence aggregation for origin, product role, ST/CEST,
|
||||||
|
and dynamic CFOP entry scope. Use supplier/document agreement metrics rather
|
||||||
|
than majority alone. Keep conflicts, missing evidence, company/group/product
|
||||||
|
questions, and `ST_WITHHELD` uncertainty pending. Reuse only compatible global
|
||||||
|
KB facts; tenant-specific policy fields are never copied cross-tenant.
|
||||||
|
|
||||||
|
Run dry-run and completeness metrics for all five databases. Execute only
|
||||||
|
eligible deterministic writes, then reprocess and require zero second-pass
|
||||||
|
writes. Preserve all current NCM conflicts.
|
||||||
|
|
||||||
|
### 4. Providers and AI controls
|
||||||
|
|
||||||
|
Document external product-data provider candidates without purchasing or
|
||||||
|
querying them. Add an abstract provider contract and permanent-cache schema for
|
||||||
|
GTIN/provider/version/hash/normalized data. Add persistent central AI usage
|
||||||
|
ledger and atomic pre-call limits for run, daily, monthly, requests, and new
|
||||||
|
products. Prove idempotent cache behavior with offline tests; no provider or AI
|
||||||
|
network call is made.
|
||||||
|
|
||||||
|
## Artifacts
|
||||||
|
|
||||||
|
The implementation must produce the requiredness matrix, inbound evidence map,
|
||||||
|
provider evaluation, consolidated JSON/Markdown autonomy reports, and updated
|
||||||
|
`AI_PROJECT_STATE.md`. Artifacts must report measured values and explicit
|
||||||
|
unknowns rather than inferred fiscal answers.
|
||||||
|
|
||||||
|
## Verification
|
||||||
|
|
||||||
|
Each workstream adds focused tests. The final gate runs the complete `tests` and
|
||||||
|
`central/tests` suites, `git diff --check`, read-only invariant checks, dry-run
|
||||||
|
and second-pass metrics, and confirms no external AI calls, no non-allowlisted
|
||||||
|
database access, and no semantic Firebird writes.
|
||||||
Reference in New Issue
Block a user