﻿LOGIC OR NOT P078 — MONITOR RUNTIME
Version: v0.1.1-CANDIDATE
Status: CONFIGURED_NOT_ACTIVE / TEST-READY / UNPROVEN
Governed object: supplier-entity dossier baseline + source/evidence lifecycle + material supplier-risk deltas.


PRIMARY TEMPORAL FRAME
Trigger/preflight -> verify supplier/source/state access -> load supplier dossier/baseline -> acquire current evidence -> normalize supplier/evidence identity -> classify source/relationship/risk delta -> materiality -> alert or silence -> human procurement routing -> transactional runtime/owner-state writeback -> continue/stop.


RUN RULES
1. Read MONITOR_CONFIG and MONITOR_STATE. Missing trigger, supplier registry, source binding, state binding, delivery route or expected revision is NOT_CONFIGURED / SOURCE_FAILURE / BLOCKED; never NO_CHANGE.
2. Resolve the strongest stable supplier identity before comparison: supplier_id/legal_entity_id plus facility/site/product scope when material. Brand/name similarity alone must not merge distinct entities.
3. Preserve source_id, evidence_item_id, source_revision/version, observed_at, validity_from/to or expiry when material, authority_role and provenance. An expired certificate, corrected record or withdrawn evidence is a lifecycle event, not automatically a new adverse fact.
4. Version monitored_dimensions and their definitions. Unbridged dimension/scoring changes are DOSSIER_DEFINITION_CHANGE / COMPARABILITY_FAILURE, not supplier deterioration/improvement.
5. Separate external supplier facts from internal relationship/procurement state. Supported delta classes include SUPPLIER_FACT_CHANGE, CERTIFICATION_STATUS_CHANGE, DELIVERY_PERFORMANCE_CHANGE, COMMERCIAL_TERMS_CHANGE, INTERNAL_RELATIONSHIP_CHANGE, SOURCE_COVERAGE_CHANGE, DOSSIER_DEFINITION_CHANGE and DATA_QUALITY_CHANGE.
6. Use configured severity/threshold/scoring only when explicitly defined. Do not invent risk scores, probability, materiality thresholds or approval criteria.
7. Distinguish evidence state from conclusion state. Preserve VERIFIED / REPORTED / DISPUTED / UNKNOWN or the configured equivalent; unresolved allegations/conflicts must not be strengthened.
8. Maintain baseline_current, baseline_history and baseline_candidate separately. Successful observation may create a candidate; adoption requires configured authority.
9. Commit a run ledger entry atomically: run_id, supplier_set_version, source_registry_version, monitored_dimensions_version, source coverage/freshness, evidence revisions, baseline version read, expected state revision, delta classes, materiality, notification, human-review/procurement routing, owner/runtime writeback and resulting revision.
10. Build change_fingerprint from stable supplier/scope/evidence/lifecycle identity plus normalized material delta. Suppress only an unchanged already-notified fingerprint.
11. Runtime state is not the authoritative supplier dossier or procurement decision record. Direct owner-state writeback requires an authorized route; otherwise emit SUPPLIER_STATE_DELTA_TO_APPLY with expected owner revision.
12. Never approve, reject, suspend, purchase, renew, terminate or alter commercial terms automatically unless a separate authorized execution boundary explicitly governs that action.
13. Silence is valid only after required-source coverage/freshness and valid comparability show no material delta. Partial source failure or unresolved identity/comparability forbids no-change.
14. Consequential procurement action remains HUMAN_REVIEW_REQUIRED or separately authorized.


OUTPUT ON MATERIAL CHANGE
Supplier identity/scope; evidence/source and revision; prior/current state; delta class; evidence status; material impact; confidence/unknowns/conflicts; required review/action if supported; fingerprint; runtime/owner-state writeback result.


OUTPUT ON FAILURE
Name failed supplier/source/binding/comparability condition, last successful run if known, and what cannot be concluded. Never translate failure into no change.
