P180 — AIEP — Evidence Change Notification and Watch Protocol
Publication Date: 2026-03-27 Status: Open Source Prior Art Disclosure Licence: Apache License 2.0 Author/Organisation: Phatfella Ltd Schema: AIEP_OS_SPEC_TEMPLATE v1.0.1 — https://aiep.dev/schemas/aiep-os-spec-template/v1.0.1
Framework Context
[0001] This disclosure operates within an Architected Instruction and Evidence Protocol (AIEP) environment as defined in United Kingdom patent application number GB2519711.2, filed 20 November 2025, the entire contents of which are incorporated herein by reference.
[0002] The present disclosure defines a protocol for targeted, subscription-based notification of changes to specific evidence artefacts or taxonomy domain scopes within an AIEP evidence corpus — enabling reasoning chains, governance agents, and downstream systems to receive ChangeNotifications when specific DEIDs, taxonomy domains, or trust-tier thresholds are affected, without requiring continuous corpus polling.
Field of the Disclosure
[0003] This disclosure relates to event-driven notification protocols for evidence corpora in governed artificial intelligence systems.
[0004] More particularly, the disclosure concerns: a WatchSubscription schema; a ChangeNotification schema; a WatchRegistry managing active subscriptions; a ChangeEvent classification taxonomy; delivery mechanisms for ChangeNotifications; subscription lifecycle management; and the relationship between this Protocol and the evidence streaming protocol (P158), the annotation protocol (P176), and the conflict record protocol (P161).
Background
[0005] The evidence streaming protocol (P158) provides a broadcast stream of all evidence events across the corpus — appropriate for mirror nodes and corpus-wide monitoring. However, a reasoning chain that cares only about a specific DEID or a small taxonomy domain does not benefit from receiving all events and must filter the stream itself.
[0006] The Watch Protocol provides targeted, pull or push notifications for specific DEIDs, taxonomy scopes, or event types, with a subscription model that scales independently of corpus-wide event volume. A reasoning chain watching 10 DEIDs receives only events affecting those 10 DEIDs — not the thousands of events per day the corpus generates globally.
[0007] Targeted change notification is particularly valuable for long-lived reasoning processes that must detect when key evidence artefacts they have incorporated into earlier reasoning steps are updated, challenged, or annotated with governance warnings, enabling them to re-evaluate conclusions based on changed evidence.
Summary of the Disclosure
[0008] WatchSubscription Schema:
subscription_id— SHA-256 of canonical serialisation of all other fieldssubscriber_id— node fingerprint (P46) or callback identifier of the subscribing entitywatch_scope— one of:DEID_LIST(list of specific DEIDs),TAXONOMY_SCOPE(TaxonomyQuery per P160),TRUST_TIER_THRESHOLD(notify on any artefact dropping below a specified trust score)watch_scope_value— the specific DEIDs, TaxonomyQuery, or trust score threshold corresponding towatch_scopeevent_types— list of ChangeEvent types to receive (see [0009]); empty list = all event typesdelivery_mechanism— one of:WEBHOOK(HTTP POST to subscriber URL),AIEP_PUSH(push via AIEP node-to-node protocol P46),POLL(subscriber polls the notification queue)delivery_endpoint— URL or node fingerprint forWEBHOOKandAIEP_PUSHdelivery; null forPOLLactive— boolean; set to false to pause notifications without deleting the subscriptionexpires_at— optional subscription expiry time; expired subscriptions are auto-deletedcreated_at— ISO 8601 timestampcreated_by— node fingerprint (P46)
[0009] ChangeEvent Taxonomy: The event types that can be watched:
ARTEFACT_UPDATED— a new version of the artefact has been admitted to the corpusARTEFACT_QUARANTINED— the artefact has been quarantined (P155)ARTEFACT_RELEASED_FROM_QUARANTINE— the artefact has been released from quarantineARTEFACT_DEPRECATED— the artefact has been deprecatedTRUST_SCORE_CHANGED— the artefact’s trust score (P124) has changed by more than a configurable threshold (default: 0.1)FRESHNESS_BELOW_THRESHOLD— the artefact’s freshness score (P147) has fallen below the subscriber’s configured thresholdCONFLICT_OPENED— a ConflictRecord (P161) has been opened against the artefactCONFLICT_RESOLVED— a ConflictRecord against the artefact has been resolvedANNOTATION_ADDED— a new annotation (P176) has been attached to the artefactANNOTATION_GOVERNANCE_WARNING— specifically aGOVERNANCE_WARNINGannotation has been addedPROVENANCE_CHALLENGE_OPENED— a ProvenanceChallenge (P178) has been opened against the artefactPROVENANCE_CHALLENGE_VERDICT— a ChallengeVerdict (P178) has been issued
[0010] ChangeNotification Schema: A notification delivered to a subscriber:
notification_id— SHA-256 of canonical serialisationsubscription_id— the subscription that triggered this notificationevent_type— the ChangeEvent type that occurredaffected_deid— the DEID of the affected artefactevent_at— ISO 8601 timestamp of the eventevent_summary— brief description of what changed (e.g. forTRUST_SCORE_CHANGED:"trust_score changed from 0.82 to 0.71")event_payload_ref— optional reference to a more detailed event record (e.g. conflict_id, challenge_id, annotation_id)delivered_at— ISO 8601 timestamp of delivery
[0011] WatchRegistry: The WatchRegistry maintains all active WatchSubscriptions indexed by watch_scope_value and event_types. On each ChangeEvent published to the evidence corpus event bus, the WatchRegistry evaluates which subscriptions match the event’s DEID and event type, and enqueues a ChangeNotification for each matching subscription.
[0012] Delivery Reliability: ChangeNotifications are delivered with at-least-once semantics. For WEBHOOK and AIEP_PUSH delivery, failed deliveries are retried with exponential backoff up to a configurable maximum retry count (default: 5). After maximum retries, the notification is marked DELIVERY_FAILED and retained in the subscriber’s notification queue for manual retrieval via POLL. Subscribers receive a DELIVERY_FAILURE_ALERT via whichever delivery mechanism they have configured as a fallback.
[0013] Subscription Lifecycle: Subscribers may create, update, pause, and delete subscriptions via the Watch API:
POST /evidence/watch— create a new WatchSubscriptionPATCH /evidence/watch/{subscription_id}— update scope, event types, or delivery parametersDELETE /evidence/watch/{subscription_id}— delete subscriptionGET /evidence/watch/{subscription_id}/notifications— retrieve queued notifications (POLL mode)GET /evidence/watch/{subscription_id}/notifications/{notification_id}/ack— acknowledge a notification and remove from queue
ASCII Architecture
Evidence Corpus Event Bus
(ARTEFACT_UPDATED, TRUST_SCORE_CHANGED, etc.)
│
▼
┌─────────────────────┐
│ WatchRegistry │
│ subscription_id │
│ watch_scope │◀── WatchSubscription CRUD
│ event_types filter │ (POST/PATCH/DELETE /evidence/watch)
└──────────┬──────────┘
│ matching subscriptions
▼
┌─────────────────────┐
│ ChangeNotification │
│ (notification_id, │
│ event_type, DEID, │
│ event_summary) │
└──────────┬──────────┘
│
┌────────┼──────────────────┐
│ │ │
▼ ▼ ▼
WEBHOOK AIEP_PUSH POLL queue
(HTTP POST) (P46 push) GET /notifications
│ │ │
└────────┴──────────────────┘
│ on failure: retry (exp backoff, max 5)
▼ on max retries: POLL fallback + DELIVERY_FAILURE_ALERT
Operational Detail
[0014] Taxonomy-Scope Subscription Scale: A WatchSubscription with watch_scope: TAXONOMY_SCOPE covering a high-volume taxonomy domain may produce very large numbers of ChangeNotifications. Subscribers using this scope type are encouraged to configure specific event_types to limit notification volume. The WatchRegistry enforces a rate limit (default: 1,000 notifications per hour per subscription) and sets the subscription to RATE_LIMITED status — pausing delivery — if the rate is exceeded; the subscriber is alerted and may update their event_types filter to reduce volume.
[0015] Trust Score Watch Debounce: TRUST_SCORE_CHANGED events are debounced: a ChangeNotification is triggered only when the trust score change exceeds the configured threshold (default: 0.1) from the score at the time of the last TRUST_SCORE_CHANGED notification for that artefact to that subscriber. This prevents high-frequency micro-updates in trust scores from flooding subscribers.
[0016] Relationship to Streaming (P158): The streaming protocol (P158) is a broadcast channel of all corpus events, designed for high-throughput consumers that process all events. The Watch Protocol is a targeted subscription mechanism designed for consumers that care about specific artefacts or small scopes. The two may coexist; a corpus operator may use streaming for mirror synchronisation and the Watch Protocol for reasoning chain evidence staleness monitoring.
Claims-Exclusion Notice
This specification is published as open-source prior art. No patent claims are asserted by the author in respect of the mechanisms described. Any third party seeking to patent mechanisms substantially equivalent to those described herein is placed on notice of this prior art disclosure.