CRITICAL ASSESSOR NOTICE: SWT3 witness anchors are evidence artifacts, not compliance determinations. Each anchor records that a governance-relevant event occurred and preserves its cryptographic fingerprint. The assessor determines whether the evidence satisfies a given control requirement. The protocol does not make pass/fail compliance decisions on behalf of any regulatory body. SWT3 does not control grid operations, measure power, dispatch curtailment, or settle markets. It is a passive witness that records reported values. Substance verification remains the assessor's responsibility.

1. The Problem

Automated Demand Response is a $2.3 billion market growing at 14% annually. ISO/RTO operators, aggregators, and grid participants exchange curtailment commitments, baseline calculations, and settlement payments across a complex chain of trust. Three systemic problems persist:

Settlement disputes. When an aggregator claims 500 kW of curtailment but the ISO calculates 420 kW, there is no independent record of what was committed, when the curtailment began, or what baseline methodology was applied. Disputes escalate to manual reconciliation that can take months.

Baseline gaming. Baseline consumption is the reference point for measuring demand reduction. A participant who inflates baseline consumption can claim higher curtailment without reducing actual load. Current M&V methodologies rely on self-reported data with limited independent verification.

Carbon credit provenance gaps. Renewable Energy Certificates (RECs), carbon offsets, and Guarantees of Origin are issued based on curtailment data. If the curtailment evidence is disputed, the carbon credits derived from that curtailment have no independently verifiable foundation.

The gap: DR participants, aggregators, and ISO/RTO operators lack an independent, tamper-evident audit trail that records exactly what was committed, what was reported, and when each event occurred. Settlement systems, SCADA platforms, and carbon registries each hold fragments. No single evidence chain connects signal receipt to curtailment to settlement to carbon credit issuance.

2. What SWT3 ADR Witnessing Is

SWT3 ADR witnessing creates an independent audit trail alongside existing ISO/RTO settlement infrastructure. It does not replace SCADA, meter data management, or settlement engines. It records that specific events were reported at specific times with specific values, and preserves a cryptographic fingerprint for each record.

SWT3 is a passive witness. It does not control grid operations, measure power, dispatch curtailment signals, or calculate settlement amounts. It records reported values. The grid operator's systems remain the source of truth for operations. SWT3 provides an independent evidence layer that an auditor, regulator, or counterparty can verify without relying on the participant's own records.

Each DR event produces a sequence of witness anchors -- one per phase -- linked by a shared event identifier. The anchors form a lifecycle chain: signal received, baseline recorded, curtailment started, curtailment ended, restoration confirmed, settlement attested, carbon credit linked.

Any party with the anchor fingerprint can verify the record independently. The participant cannot retroactively modify a committed value without the modification producing a different fingerprint.

3. Six Procedures

ProcedureTitleWhat It WitnessesWhen to Call
ADR-EVENT.1 DR Event Lifecycle Phase transitions of a demand response event: signal receipt, curtailment start/end, restoration Each phase transition in a DR event
ADR-BASE.1 Baseline Consumption Reported baseline value, measurement methodology, and confidence level When baseline is established before curtailment
ADR-CURT.1 Curtailment Verification Actual reduction vs committed reduction and the resulting compliance ratio After curtailment measurement is finalized
ADR-SETTLE.1 Settlement Attestation Settlement quantity (kWh), price, and event count for a billing period When settlement data is submitted or received
ADR-CARBON.1 Carbon Credit Provenance Credit type (REC, offset, EAC, GoO), quantity, and registry identifier When carbon credits are issued or transferred
ADR-GRID.1 Grid Signal Correlation Signal type, response latency, and grid operator identity When a grid signal is received and response timing is measured

4. DR Event Lifecycle

A typical demand response event progresses through a well-defined sequence. SWT3 witnesses each phase transition, creating a chain of anchors linked by the event's signal source identifier.

DR Event Lifecycle (SWT3 Witness Chain) Grid Signal Baseline Curtailment Settlement Carbon Received Recorded Executed Attested Credited | | | | | v v v v v ADR-GRID.1 ADR-BASE.1 ADR-CURT.1 ADR-SETTLE.1 ADR-CARBON.1 | | | | | v v v v v [fingerprint] [fingerprint] [fingerprint] [fingerprint] [fingerprint] | | | | | +--------------------+------------------+------------------+----------------+ | Linked by signal source ID (e.g., "PJM-ERCOT-Signal-2847") ADR-EVENT.1 witnesses each phase transition: signal_received --> curtailment_start --> curtailment_end --> restoration

ADR-EVENT.1 tracks the macro lifecycle -- each call records a phase transition (signal received, curtailment start, curtailment end, restoration). The other five procedures record the detailed data at each stage. Together they form a complete evidence chain from grid signal to carbon credit.

Lifecycle linking. All anchors in a single DR event share the same signal source identifier (e.g., PJM-ERCOT-Signal-2847). An auditor can query by signal source to retrieve the complete evidence chain for any event, across all six procedures.

5. Quick Start (Python)

from swt3_ai import Witness

witness = Witness(
    tenant_id="grid-participant",
    api_key="axm_...",
    endpoint="https://sovereign.tenova.io/api/v1/witness"
)

signal_id = "PJM-ERCOT-Signal-2847"

# 1. Grid signal received -- record response latency
witness.witness_grid_signal(
    signal_type="economic",
    response_latency_ms=4200,
    grid_operator="PJM Interconnection"
)

# 2. Record the event phase transition
witness.witness_demand_response(
    event_phase="signal_received",
    committed_kw=500.0,
    signal_source=signal_id
)

# 3. Establish baseline before curtailment
witness.witness_baseline_consumption(
    baseline_kw=2400.0,
    measurement_method="metered_10day_avg",
    confidence_x1000=950
)

# 4. Execute curtailment, then witness the result
witness.witness_demand_response(
    event_phase="curtailment_start",
    committed_kw=500.0,
    signal_source=signal_id
)
# ... curtailment period ...
witness.witness_demand_response(
    event_phase="curtailment_end",
    committed_kw=500.0,
    signal_source=signal_id
)

# 5. Record actual vs committed reduction
witness.witness_curtailment(
    actual_reduction_kw=520.0,
    committed_kw=500.0,
    compliance_ratio_x1000=1040
)

# 6. Attest settlement data
witness.witness_settlement(
    settlement_kwh=1560.0,
    price_usd_per_mwh=45.25,
    event_count=3
)

# 7. Link carbon credits to witnessed curtailment
witness.witness_carbon_credit(
    credit_type="rec",
    quantity_mwh=1.56,
    registry_id="M-RETS-12345"
)

# 8. Restoration
witness.witness_demand_response(
    event_phase="restoration",
    committed_kw=500.0,
    signal_source=signal_id
)
What the assessor sees:

Eight witness anchors with sequential timestamps, all linked by the signal source PJM-ERCOT-Signal-2847. The chain proves: (1) a grid signal was received and response latency was recorded, (2) a 2,400 kW baseline was established using 10-day metered average, (3) 520 kW of curtailment was reported against a 500 kW commitment (104% compliance ratio), (4) settlement was attested at 1,560 kWh, and (5) 1.56 MWh of RECs were linked to the curtailment with a specific registry identifier. Each anchor can be verified independently.

6. Quick Start (TypeScript)

import { Witness } from "@tenova/swt3-ai";

const witness = new Witness({
  tenantId: "grid-participant",
  apiKey: "axm_...",
  endpoint: "https://sovereign.tenova.io/api/v1/witness"
});

const signalId = "PJM-ERCOT-Signal-2847";

// 1. Grid signal received
witness.witnessAdrGridSignal({
  signalType: "economic",
  responseLatencyMs: 4200,
  gridOperator: "PJM Interconnection"
});

// 2. Event phase: signal received
witness.witnessAdrEvent({
  eventPhase: "signal_received",
  committedKw: 500.0,
  signalSource: signalId
});

// 3. Establish baseline
witness.witnessAdrBaseline({
  baselineKw: 2400.0,
  measurementMethod: "metered_10day_avg",
  confidenceX1000: 950
});

// 4. Curtailment lifecycle
witness.witnessAdrEvent({
  eventPhase: "curtailment_start",
  committedKw: 500.0,
  signalSource: signalId
});
// ... curtailment period ...
witness.witnessAdrEvent({
  eventPhase: "curtailment_end",
  committedKw: 500.0,
  signalSource: signalId
});

// 5. Record actual reduction
witness.witnessAdrCurtailment({
  actualReductionKw: 520.0,
  committedKw: 500.0,
  complianceRatioX1000: 1040
});

// 6. Settlement attestation
witness.witnessAdrSettlement({
  settlementKwh: 1560.0,
  priceUsdPerMwh: 45.25,
  eventCount: 3
});

// 7. Carbon credit provenance
witness.witnessAdrCarbon({
  creditType: "rec",
  quantityMwh: 1.56,
  registryId: "M-RETS-12345"
});

// 8. Restoration
witness.witnessAdrEvent({
  eventPhase: "restoration",
  committedKw: 500.0,
  signalSource: signalId
});

7. Baseline Transparency

Baseline consumption is the single most disputed value in demand response settlement. The baseline determines how much load reduction is credited -- a higher baseline means a larger claimed reduction from the same actual consumption. Every DR market has experienced baseline gaming allegations.

ADR-BASE.1 witnesses the baseline value, the measurement methodology used, and a confidence indicator. It does not calculate the baseline. The participant's meter data management system or M&V platform determines the value. SWT3 records what was reported and when.

Measurement Methods

MethodDescriptionCommon Usage
metered_10day_avg Average of the 10 highest-consumption days from the prior billing period PJM CBL (Customer Baseline Load), most ISO markets
regression Statistical regression model (weather-normalized, occupancy-adjusted) IPMVP Option C, large commercial/industrial
real_time_meter Live interval meter data (AMI/SCADA) at time of event Real-time pricing programs, fast-response DR
deemed_savings Pre-determined savings values from technical reference manuals Prescriptive EE/DR programs, residential

The confidence_x1000 parameter records a confidence indicator as an integer (950 = 95.0%). This allows the auditor to understand the precision of the baseline claim without floating-point ambiguity.

Methodology attestation, not methodology validation. SWT3 records which methodology was reported. It does not validate whether the methodology was correctly applied. The assessor reviews the methodology choice in context -- a "deemed_savings" baseline for a 10 MW industrial load would raise questions regardless of the witness anchor.

8. Curtailment Verification

ADR-CURT.1 records three values: actual reduction (kW), committed reduction (kW), and the compliance ratio. The ratio is expressed as an integer multiplied by 1,000 to avoid floating-point representation issues (1040 = 104.0%).

Reading the Compliance Ratio

Ratio (x1000)MeaningAssessment Implication
1000Exact match -- actual equals committedCommitment met precisely
1040Over-delivery -- 104% of commitmentParticipant exceeded commitment by 4%
840Under-delivery -- 84% of commitmentShortfall of 16%, potential penalty exposure
0No reduction deliveredComplete non-performance

Over-delivery and under-delivery both produce valid witness anchors. SWT3 records the reported values without judgment. In many DR programs, over-delivery is compensated at marginal rates while under-delivery triggers penalties. The witness anchor preserves the exact values at the time of reporting, regardless of subsequent settlement adjustments.

What the assessor sees:

An ADR-CURT.1 anchor with committed = 500 kW, actual = 520 kW, ratio = 1040. The assessor can compare this to the ISO/RTO settlement statement. If the settlement credits 520 kW but the witness anchor shows 480 kW, there is a discrepancy that warrants investigation. The anchor timestamp proves when the curtailment values were first reported.

9. Settlement and Carbon Credits

Settlement Attestation

ADR-SETTLE.1 records the settlement quantity (kWh), price (USD per MWh), and the number of DR events included in the settlement period. This creates an auditable record that links financial settlement to the witnessed curtailment events.

Settlement anchors are typically produced at the end of a billing cycle, after curtailment events have been measured and verified by the ISO/RTO. The witness anchor does not replace the ISO's settlement statement. It records the participant's reported settlement data at the time of submission, creating an independent timestamp that an auditor can cross-reference.

Carbon Credit Provenance

ADR-CARBON.1 connects carbon credits to their underlying curtailment evidence. When a curtailment event generates a Renewable Energy Certificate, carbon offset, Energy Attribute Certificate, or Guarantee of Origin, the witness anchor records the credit type, quantity (MWh), and registry identifier.

Credit TypeDescriptionCommon Registry
recRenewable Energy CertificateM-RETS, WREGIS, NEPOOL-GIS, PJM-GATS, NAR
carbon_offsetVerified carbon offset creditVerra (VCS), Gold Standard, ACR, CAR
eacEnergy Attribute CertificateI-REC, TIGR
guarantee_of_originEU Guarantee of OriginAIB, national issuing bodies

The registry_id field records the unique identifier assigned by the carbon registry. An auditor can trace from the SWT3 witness anchor to the registry record to the underlying curtailment anchor, establishing a provenance chain from physical demand reduction to environmental credit.

Provenance, not validation. SWT3 does not verify that the carbon credit was legitimately issued or that the curtailment event qualifies for credit issuance. It records the link between a credit and the curtailment evidence. If the curtailment is later disputed, the carbon credit's provenance chain includes a timestamp-locked reference to the original curtailment data.

10. Grid Signal Correlation

ADR-GRID.1 records the type of grid signal received, the response latency (milliseconds from signal receipt to response initiation), and the identity of the grid operator. Response latency is critical for frequency regulation and emergency dispatch programs where seconds matter.

Signal Types

Signal TypeDescriptionTypical Latency Requirement
emergencyGrid emergency dispatch (reliability event)< 10 minutes
economicPrice-based curtailment signal< 1 hour
capacityCapacity market obligation activation< 30 minutes
frequency_regulationAGC frequency regulation signal< 4 seconds (NERC BAL-001)
voltage_supportReactive power / voltage regulation< 30 seconds

NERC BAL-001-2 requires Balancing Authorities to maintain frequency within defined limits. Resources providing frequency regulation must respond within seconds, not minutes. The witness anchor records the reported latency -- the grid operator's telemetry remains the authoritative measurement. The anchor provides an independent record that can corroborate or highlight discrepancies in the operator's data.

What the assessor sees:

An ADR-GRID.1 anchor showing signal_type = "economic", response_latency_ms = 4200 (4.2 seconds), grid_operator = "PJM Interconnection". The assessor can compare this to PJM's recorded response time. If PJM's records show a 15-second response but the participant's witness anchor shows 4.2 seconds, the discrepancy is flagged for investigation. The anchor timestamp proves when the latency was first reported.

11. What the Assessor Sees

Each ADR procedure produces a witness anchor with a standard format. Here is how an assessor reads the evidence for a complete DR event:

Sample Anchor

SWT3-S-CLOUD-AI-ADRCURT1-PASS-1788321600-7f3a2b9c1d4e

Decomposed: SWT3 (protocol) -- S (SaaS tier) -- CLOUD (cloud provider) -- AI (domain) -- ADRCURT1 (procedure: curtailment verification) -- PASS (anchor minted) -- 1788321600 (epoch timestamp) -- 7f3a2b9c1d4e (fingerprint).

Evidence Interpretation by Procedure

ProcedureReported Event Phase / TypePrimary MeasurementContext Value
ADR-EVENT.1 Phase transition (e.g., signal_received) Committed kW Signal source identifier
ADR-BASE.1 Baseline established Baseline kW Measurement method + confidence
ADR-CURT.1 Curtailment measured Actual reduction kW Committed kW + compliance ratio
ADR-SETTLE.1 Settlement submitted Settlement kWh Price (USD/MWh) + event count
ADR-CARBON.1 Credit issued/transferred Quantity (MWh) Credit type + registry ID
ADR-GRID.1 Signal type classification Response latency (ms) Grid operator identity
What the assessor sees:

A complete DR event produces 6-8 anchors (depending on phase transitions). The assessor queries by signal source identifier to retrieve the full chain. Sequential timestamps prove the order of operations. The fingerprints are independently verifiable. If any anchor is missing from the expected sequence, there is a gap in the evidence chain. Anchors cannot be retroactively modified -- a changed value produces a different fingerprint.

12. Regulatory Mapping

ADR governance intersects multiple regulatory frameworks. The following matrix maps each SWT3 ADR procedure to the frameworks it supports:

Procedure FERC Order 2222 EU Clean Energy Package NERC Standards EU CBAM EU RED III SEC Climate
ADR-EVENT.1 DER aggregation metering Art. 17 -- active customer DR -- -- -- --
ADR-BASE.1 Baseline methodology transparency Art. 17 -- measurement methodology -- -- -- Scope 2 baseline methodology
ADR-CURT.1 Performance verification Art. 17 -- load reduction verification BAL-002 (disturbance recovery) Emissions reduction evidence -- Scope 2 reduction claims
ADR-SETTLE.1 Settlement data integrity Art. 18 -- DR compensation -- Embedded emissions reporting -- Climate-related financial data
ADR-CARBON.1 -- Art. 19 -- Guarantees of Origin -- Carbon credit provenance Art. 19 -- GoO traceability Carbon offset disclosure
ADR-GRID.1 DER response verification Art. 17 -- response capability BAL-001 (frequency response) -- -- --

FERC Order 2222

FERC Order 2222 requires ISOs and RTOs to establish rules allowing DER aggregations to participate in wholesale markets. Aggregators must demonstrate that individual resources perform as committed. ADR-EVENT.1 through ADR-CURT.1 provide per-resource evidence that can be aggregated for portfolio-level compliance reporting.

EU Clean Energy Package (Directive 2019/944)

Article 17 establishes active customer rights to participate in demand response, including the right to transparent and non-discriminatory measurement. ADR-BASE.1's methodology attestation directly supports Article 17's measurement transparency requirements. Article 19 requires Guarantees of Origin to be traceable to the underlying generation or reduction event -- ADR-CARBON.1 provides this provenance link.

NERC Reliability Standards

BAL-001-2 (Real Power Balancing Control Performance) requires frequency response within defined time limits. ADR-GRID.1's response latency attestation provides independent evidence of response timing. BAL-002 (Disturbance Control) requires recovery from contingency events -- ADR-CURT.1 provides curtailment evidence during disturbance recovery periods.

SEC Climate Disclosure (Final Rule, 2024)

Registrants disclosing Scope 2 emissions must document the methodology for calculating avoided emissions from demand response participation. ADR-BASE.1 and ADR-CURT.1 provide independently verifiable records of baseline methodology and actual curtailment values that support the registrant's disclosure.

13. Getting Started

Install

# Python
pip install swt3-ai

# TypeScript
npm install @tenova/swt3-ai

Both SDKs include all six ADR witness methods. No additional packages or plugins required.

Demo Mode

Run without an API key to see witness anchors locally. No network calls, no account required:

# Python
python -m swt3_ai.demo

# TypeScript
npx swt3-demo

Connected Mode

Create a free account to persist anchors to the SWT3 ledger. You will receive a tenant ID and API key immediately. Anchors become independently verifiable at the public verification endpoint.

Related Guides

This guide is provided for informational purposes only and does not constitute legal, regulatory, or compliance advice. Regulatory mappings and crosswalk interpretations reflect the publisher's analysis and may not address all obligations applicable to your organization. Consult qualified legal counsel before making compliance decisions based on this content.