enigma-memory 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/LICENSE +55 -0
  2. package/README.md +379 -0
  3. package/apps/cli/bin/enigma.mjs +1117 -0
  4. package/apps/desktop/src/app.js +1327 -0
  5. package/apps/desktop/src/index.html +1373 -0
  6. package/apps/desktop/src/styles.css +386 -0
  7. package/apps/gateway/bin/enigma-gateway.mjs +52 -0
  8. package/apps/gateway/src/server.mjs +1403 -0
  9. package/apps/native-host/README.md +265 -0
  10. package/apps/native-host/bin/enigma-native-host.mjs +499 -0
  11. package/apps/native-host/manifests/com.enigma.native_host.chrome.json +9 -0
  12. package/apps/native-host/manifests/com.enigma.native_host.edge.json +9 -0
  13. package/apps/native-host/manifests/com.enigma.native_host.firefox.json +9 -0
  14. package/apps/relay/bin/enigma-relay.mjs +52 -0
  15. package/apps/relay/src/server.mjs +1571 -0
  16. package/apps/verifier/bin/enigma-verify.mjs +240 -0
  17. package/deploy/docker-compose.production.example.yml +150 -0
  18. package/deploy/kubernetes/enigma-backend.example.yaml +580 -0
  19. package/package.json +196 -0
  20. package/packages/adapters/PACKAGE_CONTRACT.md +47 -0
  21. package/packages/adapters/src/index.js +183 -0
  22. package/packages/boundary/src/index.js +468 -0
  23. package/packages/connectors/src/index.js +533 -0
  24. package/packages/core/src/index.js +766 -0
  25. package/packages/enterprise/src/index.js +505 -0
  26. package/packages/importers/src/index.js +1083 -0
  27. package/packages/mcp-server/bin/enigma-mcp.mjs +19 -0
  28. package/packages/mcp-server/src/index.js +1185 -0
  29. package/packages/mesh/src/index.js +531 -0
  30. package/packages/metering/PACKAGE_CONTRACT.md +20 -0
  31. package/packages/metering/src/index.js +246 -0
  32. package/packages/optimizer/src/index.js +707 -0
  33. package/packages/passport/src/index.js +651 -0
  34. package/packages/settlement/PACKAGE_CONTRACT.md +28 -0
  35. package/packages/settlement/src/index.js +369 -0
  36. package/packages/storage/PACKAGE_CONTRACT.md +23 -0
  37. package/packages/storage/src/index.js +392 -0
  38. package/packages/vault/src/index.js +904 -0
  39. package/scripts/build-ai-orchestration-plan.mjs +248 -0
  40. package/scripts/build-cloudflare-pages-release-packet.mjs +287 -0
  41. package/scripts/build-cloudflare-token-policy.mjs +239 -0
  42. package/scripts/build-cloudflare-token-request.mjs +314 -0
  43. package/scripts/build-demo-assets.mjs +263 -0
  44. package/scripts/build-edge-backend-workers.mjs +353 -0
  45. package/scripts/build-goal-completion-audit.mjs +398 -0
  46. package/scripts/build-hosted-probe-worker.mjs +191 -0
  47. package/scripts/build-operator-acceptance-packet.mjs +254 -0
  48. package/scripts/build-operator-evidence-starter.mjs +525 -0
  49. package/scripts/build-production-backend-env-kit.mjs +384 -0
  50. package/scripts/build-production-dependency-report.mjs +369 -0
  51. package/scripts/build-production-handoff-packet.mjs +475 -0
  52. package/scripts/build-production-readiness-manifest.mjs +209 -0
  53. package/scripts/build-production-status-board.mjs +297 -0
  54. package/scripts/build-production-storage-migration.mjs +86 -0
  55. package/scripts/build-production-workplan.mjs +371 -0
  56. package/scripts/build-review-packet.mjs +594 -0
  57. package/scripts/check.mjs +419 -0
  58. package/scripts/cloudflare-ops.mjs +1672 -0
  59. package/scripts/cloudflare-secret-env.mjs +128 -0
  60. package/scripts/collect-hosted-backend-live-evidence.mjs +263 -0
  61. package/scripts/infrastructure-readiness.mjs +944 -0
  62. package/scripts/install-enigma-local.mjs +270 -0
  63. package/scripts/memory-optimization-benchmark.mjs +242 -0
  64. package/scripts/monitor-live-endpoints.mjs +358 -0
  65. package/scripts/release-audit.mjs +5588 -0
  66. package/scripts/release-provenance.mjs +250 -0
  67. package/scripts/run-backend-readiness-smoke.mjs +220 -0
  68. package/scripts/validate-backup-restore-drill.mjs +166 -0
  69. package/scripts/validate-cloudflare-credentials.mjs +112 -0
  70. package/scripts/validate-cloudflare-worker-inspect.mjs +179 -0
  71. package/scripts/validate-domain-tls.mjs +248 -0
  72. package/scripts/validate-hosted-backend-live.mjs +319 -0
  73. package/scripts/validate-incident-drill.mjs +221 -0
  74. package/scripts/validate-kms-custody.mjs +235 -0
  75. package/scripts/validate-legal-compliance-approval.mjs +274 -0
  76. package/scripts/validate-monitoring-alerting.mjs +263 -0
  77. package/scripts/validate-network-access-policy.mjs +285 -0
  78. package/scripts/validate-operator-acceptance.mjs +298 -0
  79. package/scripts/validate-production-manifests.mjs +325 -0
  80. package/scripts/validate-public-site-security.mjs +252 -0
  81. package/scripts/validate-security-threat-model.mjs +285 -0
  82. package/scripts/validate-service-settlement.mjs +256 -0
  83. package/scripts/validate-support-sla.mjs +190 -0
  84. package/scripts/validate-tenant-policy-approval.mjs +228 -0
  85. package/scripts/validate-usage-metering.mjs +224 -0
  86. package/scripts/validate-whitepaper-claims.mjs +166 -0
  87. package/specs/boundary-manifest-v1.schema.json +35 -0
  88. package/specs/capsule-v1.schema.json +55 -0
  89. package/specs/claim-boundary-manifest-v1.schema.json +22 -0
  90. package/specs/connector-profile-v1.schema.json +62 -0
  91. package/specs/deletion-tombstone-v1.schema.json +26 -0
  92. package/specs/enterprise-policy-v1.schema.json +59 -0
  93. package/specs/gateway-request-v1.schema.json +32 -0
  94. package/specs/goal-completion-audit-v1.schema.json +70 -0
  95. package/specs/hosted-backend-live-evidence-v1.schema.json +147 -0
  96. package/specs/import-report-v1.schema.json +214 -0
  97. package/specs/infrastructure-readiness-manifest-v1.schema.json +130 -0
  98. package/specs/memory-event-v1.schema.json +42 -0
  99. package/specs/mesh-node-v1.schema.json +126 -0
  100. package/specs/passport-v1.schema.json +50 -0
  101. package/specs/production-handoff-packet-v1.schema.json +149 -0
  102. package/specs/receipt-v1.schema.json +61 -0
  103. package/specs/relay-record-v1.schema.json +43 -0
  104. package/specs/state-checkpoint-v1.schema.json +37 -0
  105. package/specs/trust-bundle-v1.schema.json +56 -0
@@ -0,0 +1,55 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.enigma.ai/capsule-v1.schema.json",
4
+ "title": "Enigma Capsule v1",
5
+ "type": "object",
6
+ "required": ["schema", "capsule_id", "capsule_type", "issuer", "created_at", "expires_at", "scope", "payload", "proofs"],
7
+ "additionalProperties": false,
8
+ "properties": {
9
+ "schema": { "const": "enigma.capsule.v1" },
10
+ "capsule_id": { "type": "string", "minLength": 8 },
11
+ "capsule_type": { "type": "string", "enum": ["personal_passport", "project", "session", "audit", "migration"] },
12
+ "issuer": { "type": "string", "minLength": 1 },
13
+ "holder": { "type": "string" },
14
+ "created_at": { "type": "string", "format": "date-time" },
15
+ "expires_at": { "type": "string", "format": "date-time" },
16
+ "scope": {
17
+ "type": "object",
18
+ "required": ["subjects", "operations"],
19
+ "additionalProperties": false,
20
+ "properties": {
21
+ "subjects": { "type": "array", "items": { "type": "string" } },
22
+ "memory_addrs": { "type": "array", "items": { "type": "string" } },
23
+ "operations": { "type": "array", "items": { "type": "string" } },
24
+ "purpose": { "type": "string" }
25
+ }
26
+ },
27
+ "payload": {
28
+ "type": "object",
29
+ "required": ["encryption", "objects_ref"],
30
+ "additionalProperties": false,
31
+ "properties": {
32
+ "encryption": { "type": "string", "enum": ["encrypted", "receipt_only", "plaintext_user_requested"] },
33
+ "objects_ref": { "type": "string" }
34
+ }
35
+ },
36
+ "proofs": {
37
+ "type": "object",
38
+ "required": ["receipt_log_root", "active_set_root"],
39
+ "additionalProperties": false,
40
+ "properties": {
41
+ "receipt_log_root": {
42
+ "type": "string",
43
+ "pattern": "^sha256:[a-f0-9]{64}$",
44
+ "description": "Canonical custody roots must be derived from receipt objects that are available for verification; receipt-hash-only claims are candidate evidence."
45
+ },
46
+ "active_set_root": {
47
+ "type": "string",
48
+ "pattern": "^sha256:[a-f0-9]{64}$",
49
+ "description": "Canonical custody roots must commit only memory addresses backed by matching receipt objects, not arbitrary receipt hashes."
50
+ },
51
+ "receipt_bundle_ref": { "type": "string" }
52
+ }
53
+ }
54
+ }
55
+ }
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.enigma.ai/claim-boundary-manifest-v1.schema.json",
4
+ "title": "Enigma Claim Boundary Manifest v1",
5
+ "type": "object",
6
+ "required": ["schema", "claim_id", "claim_text", "allowed_scope", "forbidden_interpretations", "required_artifact_types", "truth_boundary", "not_proven", "release_status", "owner", "review_epoch"],
7
+ "additionalProperties": false,
8
+ "properties": {
9
+ "schema": { "const": "enigma.claim_boundary_manifest.v1" },
10
+ "claim_id": { "type": "string", "minLength": 8 },
11
+ "claim_text": { "type": "string", "minLength": 1 },
12
+ "allowed_scope": { "type": "string", "minLength": 1 },
13
+ "forbidden_interpretations": { "type": "array", "minItems": 1, "items": { "type": "string" } },
14
+ "required_artifact_types": { "type": "array", "minItems": 1, "items": { "type": "string" } },
15
+ "required_tests": { "type": "array", "items": { "type": "string" } },
16
+ "truth_boundary": { "type": "string", "minLength": 1 },
17
+ "not_proven": { "type": "array", "minItems": 1, "items": { "type": "string" } },
18
+ "release_status": { "type": "string", "enum": ["draft", "internal", "public", "withdrawn"] },
19
+ "owner": { "type": "string", "minLength": 1 },
20
+ "review_epoch": { "type": "integer", "minimum": 0 }
21
+ }
22
+ }
@@ -0,0 +1,62 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.enigma.ai/connector-profile-v1.schema.json",
4
+ "title": "Enigma Connector Profile v1",
5
+ "type": "object",
6
+ "required": [
7
+ "schema",
8
+ "client_id",
9
+ "display_name",
10
+ "platforms",
11
+ "default_config_path",
12
+ "default_config_paths",
13
+ "config_format",
14
+ "server_container_path",
15
+ "server_name",
16
+ "command",
17
+ "required_env"
18
+ ],
19
+ "additionalProperties": false,
20
+ "properties": {
21
+ "schema": { "const": "enigma.connector_profile.v1" },
22
+ "client_id": {
23
+ "type": "string",
24
+ "enum": ["claude-desktop", "cursor", "kimi-code", "vscode-cline", "roo", "opencode", "generic-mcp"]
25
+ },
26
+ "display_name": { "type": "string", "minLength": 1 },
27
+ "description": { "type": "string", "minLength": 1 },
28
+ "platforms": {
29
+ "type": "array",
30
+ "minItems": 3,
31
+ "maxItems": 3,
32
+ "items": { "type": "string", "enum": ["win32", "darwin", "linux"] },
33
+ "uniqueItems": true
34
+ },
35
+ "default_config_path": { "type": "string", "minLength": 1 },
36
+ "default_config_paths": {
37
+ "type": "object",
38
+ "required": ["win32", "darwin", "linux"],
39
+ "additionalProperties": false,
40
+ "properties": {
41
+ "win32": { "type": "string", "minLength": 1 },
42
+ "darwin": { "type": "string", "minLength": 1 },
43
+ "linux": { "type": "string", "minLength": 1 }
44
+ }
45
+ },
46
+ "config_format": { "const": "json" },
47
+ "server_container_path": {
48
+ "type": "array",
49
+ "minItems": 1,
50
+ "items": { "type": "string", "minLength": 1 }
51
+ },
52
+ "server_name": { "type": "string", "minLength": 1 },
53
+ "command": { "const": "enigma-mcp" },
54
+ "required_env": {
55
+ "type": "array",
56
+ "contains": { "const": "ENIGMA_BUNDLE" },
57
+ "items": { "type": "string", "minLength": 1 },
58
+ "uniqueItems": true
59
+ },
60
+ "platform": { "type": "string", "enum": ["win32", "darwin", "linux"] }
61
+ }
62
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.enigma.ai/deletion-tombstone-v1.schema.json",
4
+ "title": "Enigma Deletion Tombstone v1",
5
+ "type": "object",
6
+ "required": ["schema", "tombstone_id", "delete_receipt_hash", "target_memory_addrs", "effective_epoch", "active_memory_root_after", "deleted_memory_root_after", "erasure_scope", "not_proven", "issued_at"],
7
+ "additionalProperties": false,
8
+ "properties": {
9
+ "schema": { "const": "enigma.deletion_tombstone.v1" },
10
+ "tombstone_id": { "type": "string", "minLength": 8 },
11
+ "delete_receipt_hash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
12
+ "target_memory_addrs": { "type": "array", "minItems": 1, "items": { "type": "string", "minLength": 1 } },
13
+ "effective_epoch": { "type": "integer", "minimum": 0 },
14
+ "active_memory_root_after": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
15
+ "deleted_memory_root_after": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
16
+ "erasure_scope": {
17
+ "type": "array",
18
+ "items": { "type": "string", "enum": ["active_store", "local_cache", "device_sync_peer", "encrypted_backup", "enterprise_tenant_store", "user_export_bundle"] }
19
+ },
20
+ "key_refs_destroyed": { "type": "array", "items": { "type": "string" } },
21
+ "downstream_delete_request_hashes": { "type": "array", "items": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" } },
22
+ "backup_treatment": { "type": "string", "enum": ["not_applicable", "purged", "tombstoned_unreadable_by_destroyed_key", "legal_hold_retained", "outside_scope"] },
23
+ "not_proven": { "type": "array", "minItems": 1, "items": { "type": "string" } },
24
+ "issued_at": { "type": "string", "format": "date-time" }
25
+ }
26
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.enigma.ai/enterprise-policy-v1.schema.json",
4
+ "title": "Enigma Enterprise Policy v1",
5
+ "type": "object",
6
+ "required": ["schema", "policy_id", "tenant_id", "mode", "created_at", "updated_at", "default_action", "allowed_providers", "allowed_models", "allowed_regions", "denied_sensitivities", "allowed_purposes", "legal_holds", "retention_days", "kms", "provider_native_memory", "policy_hash"],
7
+ "additionalProperties": false,
8
+ "properties": {
9
+ "schema": { "const": "enigma.enterprise_policy.v1" },
10
+ "policy_id": { "type": "string", "minLength": 1 },
11
+ "tenant_id": { "type": "string", "minLength": 1 },
12
+ "mode": { "type": "string", "enum": ["hosted", "byoc", "on_prem"] },
13
+ "created_at": { "type": "string", "format": "date-time" },
14
+ "updated_at": { "type": "string", "format": "date-time" },
15
+ "default_action": { "const": "deny_unknown" },
16
+ "allowed_providers": { "type": "array", "items": { "type": "string", "minLength": 1 }, "uniqueItems": true },
17
+ "allowed_models": { "type": "array", "items": { "type": "string", "minLength": 1 }, "uniqueItems": true },
18
+ "allowed_regions": { "type": "array", "items": { "type": "string", "minLength": 1 }, "uniqueItems": true },
19
+ "denied_sensitivities": { "type": "array", "items": { "type": "string", "minLength": 1 }, "uniqueItems": true },
20
+ "allowed_purposes": { "type": "array", "items": { "type": "string", "minLength": 1 }, "uniqueItems": true },
21
+ "legal_holds": {
22
+ "type": "array",
23
+ "items": {
24
+ "type": "object",
25
+ "required": ["hold_id", "status"],
26
+ "additionalProperties": false,
27
+ "properties": {
28
+ "hold_id": { "type": "string", "minLength": 1 },
29
+ "memory_addr": { "type": "string", "minLength": 1 },
30
+ "memory_id": { "type": "string", "minLength": 1 },
31
+ "subject_id": { "type": "string", "minLength": 1 },
32
+ "scope_hash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
33
+ "reason_code": { "type": "string", "minLength": 1 },
34
+ "status": { "type": "string", "enum": ["active", "released"] }
35
+ },
36
+ "anyOf": [
37
+ { "required": ["memory_addr"] },
38
+ { "required": ["memory_id"] },
39
+ { "required": ["subject_id"] },
40
+ { "required": ["scope_hash"] }
41
+ ]
42
+ }
43
+ },
44
+ "retention_days": { "type": "integer", "minimum": 0 },
45
+ "kms": {
46
+ "type": "object",
47
+ "additionalProperties": false,
48
+ "properties": {
49
+ "provider": { "type": "string", "minLength": 1 },
50
+ "key_id": { "type": "string", "minLength": 1 },
51
+ "key_version": { "type": "string", "minLength": 1 },
52
+ "region": { "type": "string", "minLength": 1 },
53
+ "evidence_hash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" }
54
+ }
55
+ },
56
+ "provider_native_memory": { "const": "cache_only" },
57
+ "policy_hash": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" }
58
+ }
59
+ }
@@ -0,0 +1,32 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.enigma.ai/gateway-request-v1.schema.json",
4
+ "title": "Enigma Gateway Request v1",
5
+ "type": "object",
6
+ "required": ["schema", "operation", "provider", "model", "region", "purpose", "sensitivity"],
7
+ "additionalProperties": false,
8
+ "properties": {
9
+ "schema": { "const": "enigma.gateway_request.v1" },
10
+ "operation": { "type": "string", "enum": ["retrieve", "write", "delete", "compile_context", "search"] },
11
+ "provider": { "type": "string", "minLength": 1 },
12
+ "model": { "type": "string", "minLength": 1 },
13
+ "region": { "type": "string", "minLength": 1 },
14
+ "purpose": { "type": "string", "minLength": 1 },
15
+ "sensitivity": { "type": "string", "minLength": 1 },
16
+ "memory_addr": { "type": "string", "minLength": 1 },
17
+ "memory_id": { "type": "string", "minLength": 1 },
18
+ "subject_id": { "type": "string", "minLength": 1 },
19
+ "legal_hold_delete": { "type": "boolean" }
20
+ },
21
+ "not": {
22
+ "anyOf": [
23
+ { "required": ["memory"] },
24
+ { "required": ["memory_text"] },
25
+ { "required": ["memory_plaintext"] },
26
+ { "required": ["plaintext"] },
27
+ { "required": ["raw_memory"] },
28
+ { "required": ["content"] },
29
+ { "required": ["value"] }
30
+ ]
31
+ }
32
+ }
@@ -0,0 +1,70 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://enigma.memory/specs/goal-completion-audit-v1.schema.json",
4
+ "title": "Enigma Goal Completion Audit v1",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schema",
9
+ "generated_at",
10
+ "objective",
11
+ "complete",
12
+ "release_posture",
13
+ "go_live_ready",
14
+ "local_static_artifact_ready",
15
+ "deliverables",
16
+ "backend_readiness_smoke",
17
+ "blockers",
18
+ "next_actions",
19
+ "claim_boundary"
20
+ ],
21
+ "properties": {
22
+ "schema": { "const": "enigma.goal_completion_audit.v1" },
23
+ "generated_at": { "type": "string", "format": "date-time" },
24
+ "objective": { "type": "string", "minLength": 1 },
25
+ "complete": { "type": "boolean" },
26
+ "release_posture": { "type": "string", "minLength": 1 },
27
+ "go_live_ready": { "type": "boolean" },
28
+ "local_static_artifact_ready": { "type": "boolean" },
29
+ "deliverables": { "type": "array", "items": { "$ref": "#/$defs/deliverable" } },
30
+ "backend_readiness_smoke": { "$ref": "#/$defs/backendReadinessSmoke" },
31
+ "blockers": { "type": "array", "items": { "type": "string" } },
32
+ "next_actions": { "type": "array", "items": { "$ref": "#/$defs/action" } },
33
+ "claim_boundary": { "type": "array", "items": { "type": "string" } }
34
+ },
35
+ "$defs": {
36
+ "deliverable": {
37
+ "type": "object",
38
+ "additionalProperties": false,
39
+ "required": ["id", "requirement", "ok", "evidence", "blockers"],
40
+ "properties": {
41
+ "id": { "type": "string", "minLength": 1 },
42
+ "requirement": { "type": "string", "minLength": 1 },
43
+ "ok": { "type": "boolean" },
44
+ "evidence": { "type": "array", "items": { "type": "string" } },
45
+ "blockers": { "type": "array", "items": { "type": "string" } }
46
+ }
47
+ },
48
+ "backendReadinessSmoke": {
49
+ "type": "object",
50
+ "additionalProperties": false,
51
+ "required": ["ok", "check_count", "loopback_only"],
52
+ "properties": {
53
+ "ok": { "type": "boolean" },
54
+ "check_count": { "type": "integer", "minimum": 0 },
55
+ "loopback_only": { "type": "boolean" }
56
+ }
57
+ },
58
+ "action": {
59
+ "type": "object",
60
+ "additionalProperties": false,
61
+ "required": ["id", "owner", "command", "evidence"],
62
+ "properties": {
63
+ "id": { "type": "string", "minLength": 1 },
64
+ "owner": { "type": "string", "minLength": 1 },
65
+ "command": { "type": "string", "minLength": 1 },
66
+ "evidence": { "type": "string", "minLength": 1 }
67
+ }
68
+ }
69
+ }
70
+ }
@@ -0,0 +1,147 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://enigma.memory/specs/hosted-backend-live-evidence-v1.schema.json",
4
+ "title": "Enigma Hosted Backend Live Evidence v1",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schema",
9
+ "observed_at",
10
+ "environment",
11
+ "refs",
12
+ "probes",
13
+ "operator_acceptance",
14
+ "claim_boundary"
15
+ ],
16
+ "properties": {
17
+ "schema": { "const": "enigma.hosted_backend_live_evidence.v1" },
18
+ "observed_at": { "type": "string", "format": "date-time" },
19
+ "environment": {
20
+ "type": "object",
21
+ "additionalProperties": false,
22
+ "required": ["environment_id", "domain", "cloud_provider", "region", "owner", "status"],
23
+ "properties": {
24
+ "environment_id": { "type": "string", "minLength": 1 },
25
+ "domain": { "type": "string", "minLength": 1 },
26
+ "cloud_provider": { "type": "string", "minLength": 1 },
27
+ "region": { "type": "string", "minLength": 1 },
28
+ "owner": { "type": "string", "minLength": 1 },
29
+ "status": { "enum": ["observed", "verified", "go", "accepted"] }
30
+ }
31
+ },
32
+ "refs": {
33
+ "type": "object",
34
+ "required": [
35
+ "backend_host",
36
+ "dns_tls",
37
+ "durable_storage",
38
+ "kms_or_secret_custody",
39
+ "backup_restore",
40
+ "monitoring",
41
+ "siem_or_log_sink",
42
+ "operator_acceptance",
43
+ "runtime_auth",
44
+ "admin_auth",
45
+ "data_plane_auth",
46
+ "network_access_policy",
47
+ "kms_custody",
48
+ "tenant_policy_approval",
49
+ "usage_metering",
50
+ "service_settlement",
51
+ "monitoring_alerting",
52
+ "public_site_security",
53
+ "security_threat_model",
54
+ "legal_compliance_approval",
55
+ "support_sla",
56
+ "incident_drill",
57
+ "backup_restore_drill",
58
+ "relay_deployment",
59
+ "gateway_deployment"
60
+ ],
61
+ "additionalProperties": false,
62
+ "properties": {
63
+ "backend_host": { "type": "string", "minLength": 1 },
64
+ "dns_tls": { "type": "string", "minLength": 1 },
65
+ "durable_storage": { "type": "string", "minLength": 1 },
66
+ "kms_or_secret_custody": { "type": "string", "minLength": 1 },
67
+ "backup_restore": { "type": "string", "minLength": 1 },
68
+ "monitoring": { "type": "string", "minLength": 1 },
69
+ "siem_or_log_sink": { "type": "string", "minLength": 1 },
70
+ "operator_acceptance": { "type": "string", "minLength": 1 },
71
+ "runtime_auth": { "type": "string", "minLength": 1 },
72
+ "admin_auth": { "type": "string", "minLength": 1 },
73
+ "data_plane_auth": { "type": "string", "minLength": 1 },
74
+ "network_access_policy": { "type": "string", "minLength": 1 },
75
+ "kms_custody": { "type": "string", "minLength": 1 },
76
+ "tenant_policy_approval": { "type": "string", "minLength": 1 },
77
+ "usage_metering": { "type": "string", "minLength": 1 },
78
+ "service_settlement": { "type": "string", "minLength": 1 },
79
+ "monitoring_alerting": { "type": "string", "minLength": 1 },
80
+ "public_site_security": { "type": "string", "minLength": 1 },
81
+ "security_threat_model": { "type": "string", "minLength": 1 },
82
+ "legal_compliance_approval": { "type": "string", "minLength": 1 },
83
+ "support_sla": { "type": "string", "minLength": 1 },
84
+ "incident_drill": { "type": "string", "minLength": 1 },
85
+ "backup_restore_drill": { "type": "string", "minLength": 1 },
86
+ "relay_deployment": { "type": "string", "minLength": 1 },
87
+ "gateway_deployment": { "type": "string", "minLength": 1 }
88
+ }
89
+ },
90
+ "probes": {
91
+ "type": "object",
92
+ "additionalProperties": false,
93
+ "required": ["relay_livez", "relay_readyz", "gateway_livez", "gateway_readyz"],
94
+ "properties": {
95
+ "relay_livez": { "$ref": "#/$defs/probe" },
96
+ "relay_readyz": { "$ref": "#/$defs/probe" },
97
+ "gateway_livez": { "$ref": "#/$defs/probe" },
98
+ "gateway_readyz": { "$ref": "#/$defs/probe" }
99
+ }
100
+ },
101
+ "operator_acceptance": {
102
+ "type": "object",
103
+ "additionalProperties": false,
104
+ "required": ["decision", "packet_ref", "approved_at", "approved_by"],
105
+ "properties": {
106
+ "decision": { "const": "go" },
107
+ "packet_ref": { "type": "string", "minLength": 1 },
108
+ "approved_at": { "type": "string", "format": "date-time" },
109
+ "approved_by": { "type": "string", "minLength": 1 }
110
+ }
111
+ },
112
+ "claim_boundary": {
113
+ "type": "object",
114
+ "additionalProperties": false,
115
+ "required": [
116
+ "hosted_backend_live",
117
+ "public_site_live",
118
+ "cloudflare_credentials_claim",
119
+ "token_roi_claim",
120
+ "provider_deletion_claim",
121
+ "model_forgetting_claim"
122
+ ],
123
+ "properties": {
124
+ "hosted_backend_live": { "const": true },
125
+ "public_site_live": { "const": false },
126
+ "cloudflare_credentials_claim": { "const": false },
127
+ "token_roi_claim": { "const": false },
128
+ "provider_deletion_claim": { "const": false },
129
+ "model_forgetting_claim": { "const": false }
130
+ }
131
+ }
132
+ },
133
+ "$defs": {
134
+ "probe": {
135
+ "type": "object",
136
+ "additionalProperties": false,
137
+ "required": ["url", "status_code", "body", "observed_at", "response_hash"],
138
+ "properties": {
139
+ "url": { "type": "string", "format": "uri" },
140
+ "status_code": { "const": 200 },
141
+ "body": { "type": "object" },
142
+ "observed_at": { "type": "string", "format": "date-time" },
143
+ "response_hash": { "type": "string", "pattern": "^sha256:[a-fA-F0-9]{64}$" }
144
+ }
145
+ }
146
+ }
147
+ }