production environment
b7270b25-8992-4b89-b34d-a88fe40d1a9e. Browser smoke uses
https://frontend-production-0ca5.up.railway.app.
demo-staging is a separate environment. It is not a promotion source, rollback
target, or operational alias for this rollout.
Trust contract
Every new analysis uses the canonical v2 contract. A field result has one ofFOUND, NOT_FOUND, CONFLICT, or UNCERTAIN, together with its value,
normalized value, confidence, reason codes, and document evidence.
Every analysis and Decision Pack stores an immutable AnalysisProvenance
snapshot containing:
- Analysis contract version.
- Workflow ID, active version ID, and content hash.
- Model provider, name, and profile.
- Prompt and rules versions.
- Partner policy ID, version, and source hash.
- Regulatory corpus version and manifest hash.
- OCR service version and engine.
- RegDocs service version.
versionMetadata is a temporary projection of this snapshot. The regulatory
corpus has a single version source; there is no separate evaluation-corpus
version.
analysisDisposition is one of VALID, PARTIAL,
HUMAN_REVIEW_REQUIRED, TECHNICAL_FAILURE, or POLICY_NOT_CONFIGURED.
Technical failures, partial extraction, abstention, conflicts, and human
decisions remain separate. A dependency failure never changes the commercial
risk score.
Fail-closed activation
The worker may invoke n8n only when all of these controls agree:- The integration is in the emergency allowlist.
- An approved analysis activation set is active for the integration.
- The partner policy has an approved source file and SHA-256, named external approval, human review, and source-referenced rules.
- Contract, workflow, model, prompt, rules, policy, regulatory corpus, OCR, and RegDocs versions match the activation set.
system-default-document-policy version 1
(97ff1b55faa3209c1908cdb5b08c55f26f26236b58182fc481e01d6c32fe40c8),
marks fallbackUsed=true, uses disposition HUMAN_REVIEW_REQUIRED, and keeps
the operation processable. The fallback can never produce an autonomous ready
result or external authorization. A malformed custom policy falls back only in
INTERNAL_SUPERVISED_ONLY; in authorized evaluation it fails closed with
PARTNER_POLICY_NOT_CONFIGURED and retains
DOCUMENT_REQUIREMENT_POLICY_NOT_CONFIGURED as the legacy alias.
A generic baseline is allowed only in INTERNAL_SUPERVISED_ONLY. It records
fallbackUsed=true, cannot have disposition VALID, and requires human review.
Generative models cannot produce a ready state or resolve a material conflict.
Production rollout
- Record application deployments, commits, additive migrations, non-secret configuration, and the four active workflow versions. Back up the database and export each active workflow before any publication.
- Complete CI for API, worker, frontend, n8n, OCR, RegDocs, and docs.
- Configure non-secret v2 settings with rollout disabled. Deploy the API and additive migrations, then prove compatibility with the previous worker and existing integrations.
- Deploy RegDocs, digest-pinned ClamAV, OCR, worker, and frontend. Validate health metadata, private networking, tenant isolation, and logs.
- Publish compatible versions of the existing production workflow IDs and
record their
activeVersionIdand content hash:
- Provision a partner integration only after its supplied IDs pass collision
checks. It starts in
INTERNAL_SUPERVISED_ONLY, without an active external user. - Import, review, and activate the formal partner policy, then create the complete analysis activation set.
Gate 1: one real canary
Ground truth is locked before processing. Run one authorized real operation and reconcile every field, conflict, requirement, score factor, evidence reference, audit event, and raw-file deletion. Stop on any divergence. The canary must include illegible, truncated, wrong-document, malware, dependency failure, incompatible provenance, duplicate/concurrent upload, replay, callback, retry, and cross-tenant negative cases.Gate 2: supervised partner evaluation
Run 20 authorized real operations, complete every structured review, and observe logs and metrics for two hours. During the window the release manifest remainsPENDING_OBSERVATION.
Only after the run, the observation window, and named approvals pass may the
integration enter AUTHORIZED_PARTNER_EVALUATION and the external user be
enabled.
The remote Playwright smoke is pinned to the production environment ID,
production URL, and integration ID. It covers login/password change, customer,
operation, real upload, processing, evidence, structured review, cross-tenant
404, logout, and rejected session. Traces, screenshots, and videos are
disabled.
Gate 3: release comparison
Gate 3 requires 100 labeled real operations, a version-to-version replay comparison, and formal approval. Replays use approved activation sets, are idempotent, never change the original operation, never trigger callbacks, and never extend retention. Weight fine-tuning is evaluated only after Gate 3 and separate authorization.Raw-file retention
Raw operation files are deleted immediately after successful processing or a terminal failure. An eligible retry may retain the raw object for at most 24 hours. The reconciler deletes expired objects, records success or failure, and emits a redacted event for alerting. If no authorized snapshot remains after raw deletion, replay returnsREPLAY_INPUT_UNAVAILABLE.
Rollback
Rollback is scoped to the affected integration:- Remove the integration from the emergency allowlist.
- Deactivate its analysis activation set and external access.
- Restore the recorded application deployment or workflow
activeVersionIdonly when contract-compatible. - Preserve analyses, review labels, release manifests, and additive schema.
Release blockers
The final state remainsBLOCKED_EXTERNAL_INPUT or
INTERNAL_SUPERVISED_ONLY until the approved partner policy and approval
reference, real canary, 20-operation labeled set, qualified ground truth,
retention/training authorization, external-user secret, and two-hour monitored
observation are complete.
Do not publish reliability, productivity, or error-rate claims without a
reproducible corpus, labels, method, and formal approval.