OPERATOR-BACKUP.md markdown
48 lines 2.3 KB
Raw
sha256:87f84653ce4706be8c65b0c4494ed6fb891213cca82db2b1824772cddc41a752 feat(auth): durable MCP OAuth refresh via shared strong sto… Agent minor 57 days ago

Operator backup (two pillars)

Knowtation hosted operators use two complementary mechanisms. Both are part of the supported runbook; neither replaces the other.

Pillar 1 — ICP canister snapshots (maintenance / upgrades)

Purpose: Roll the hub or attestation canister back to a saved point after a bad upgrade or break-glass event.

How: Controller identity, dfx canister stopsnapshot createstart (brief downtime). Optional snapshot download for an off-chain copy.

Docs & tooling:

When: Planned windows before risky deploys, not as a substitute for daily data continuity.


Pillar 2 — Daily logical export (all tenants, canister stays up)

Purpose: Scheduled copy of vault notes + proposals for every user id stored in the hub canister, without stopping the canister.

How:

  1. Configure the hub canister with a shared secret (controllers only), after deploying WASM that includes operator_export_secret in stable storage:

    cd hub/icp && dfx canister call hub admin_set_operator_export_secret '("YOUR_LONG_RANDOM_SECRET")' --network ic
    

    See HUB-API.md §5.1 (operator export).

  2. Run npm run canister:operator-full-export (or GitHub Actions workflow) with KNOWTATION_OPERATOR_EXPORT_URL, KNOWTATION_OPERATOR_EXPORT_KEY, and optional encrypt/S3 env vars (see script headers and .env.example).

Scripts & CI:

Legacy (single partition): scripts/canister-export-backup.mjs remains available for smoke tests or one X-User-Id only.


  • HUB-API.md § operator export
  • hub/icp/README.md — canister deploy and stable memory
File History 5 commits
sha256:87f84653ce4706be8c65b0c4494ed6fb891213cca82db2b1824772cddc41a752 feat(auth): durable MCP OAuth refresh via shared strong sto… Agent minor 57 days ago
sha256:873e30b7fafe601346295f8f4289f388f21d8f715f28584d5481899ba2b714fc Merge pull request #249 from aaronrene/muse-mirror Agent 74 days ago
sha256:d8c648b20a4d53b2673c5c082ee7edfa7b2fc9b11080832da1f38807b6bf940b fix(7C-L1b): route hosted delegation proposals through cani… Human minor 76 days ago
sha256:2827ba9e7632a4b141c50caf1e8f7d77abbc3515be20e7465f2bccb0ac4edf91 fix: repair endpoint now sets has_active_subscription when … Human minor 96 days ago