Developer Docs

Guardian Node — Developer Guide

Operate city or institutional Guardian nodes, publish alerts, and enforce Accord violations.

City / Institutional Guardian Node — Developer Quickstart

Guardian Nodes mirror the Sovereign ledger, evaluate Accord violations, and publish alerts for cities, ministries, and institutional guardians.

Use this if you are…

  • A city archive, ministry of culture, or regulator that needs to enforce provenance policy inside its jurisdiction.
  • An institutional guardian operating mirrors, anomaly detectors, and dispute workflows.

What you get

  • Guardian node orchestration + health APIs.
  • Accord enforcement, dispute adjudication, and quarantine workflows.
  • Reporting + alert distribution to labs, platforms, and agencies.
  • Entitlements: Guardian + Auditor access, runtime integrity feeds, report publishing.

Core APIs

CapabilityEndpoint
Check node healthGET /api/v1/guardian/status
Enforce Accord policyPOST /api/v1/guardian/enforce
Publish alert/reportPOST /api/v1/guardian/reports
Fetch recent reportsGET /api/v1/guardian/reports

SDK quickstart

import { createSovProvClient } from '@sovprovenance/sdk-js'

const client = createSovProvClient({
  baseUrl: process.env.SOVEREIGN_API_URL!,
  apiKey: process.env.SOVEREIGN_GUARDIAN_KEY!,
})

// 1. Poll Guardian node health
const status = await client.request('GET', '/guardian/status')
if (!status?.mirrors?.ledger?.healthy) {
  console.warn('Ledger mirror lag detected', status.mirrors.ledger.lagSeconds)
}

// 2. Enforce a suspected violation
const enforcement = await client.request('POST', '/guardian/enforce', {
  identityId: 'guardian-city-berlin',
  passportId: 'passport-dataset-alpha',
  violation: 'unauthorized_ai_training',
  evidence: {
    platformId: 'platform-market',
    referenceHash: 'hash-offending-upload',
  },
  requestedAction: 'quarantine',
})

console.log('Guardian decision', enforcement.decision, enforcement.caseId)

// 3. Publish an alert so labs + agencies can respond
await client.request('POST', '/guardian/reports', {
  type: 'integrity_alert',
  audience: ['labs', 'agencies', 'platforms'],
  severity: 'high',
  summary: 'Dataset alpha requested by unapproved lab',
  passportId: 'passport-dataset-alpha',
})

// 4. Allow subscribers to fetch the alert
const reports = await client.request('GET', '/guardian/reports')
console.log('Latest Guardian advisories', reports.items.length)

Implementation notes

  • Guardian-only features require the guardian_node_city product (or an enterprise vault with Guardian toggled on). Ensure API keys are seeded accordingly.
  • Pair Guardian actions with Auditor exports for evidence bundles: once enforcement triggers, call /ai/audit/export to attach documentation.
  • Nodes can be deployed centrally or on-prem—use /guardian/status in monitoring to ensure ledger mirrors, runtime watchers, and anomaly handlers stay healthy.