enigma-memory 0.1.18 → 0.1.22
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.
- package/README.md +76 -24
- package/apps/cli/bin/enigma-desktop.mjs +140 -0
- package/apps/cli/bin/enigma-terminal.mjs +78 -0
- package/apps/cli/bin/enigma.mjs +1923 -285
- package/apps/desktop/electron-main.cjs +217 -0
- package/apps/desktop/package.json +12 -0
- package/apps/desktop/src/app.js +264 -7
- package/apps/desktop/src/index.html +3514 -1373
- package/apps/desktop/src/launch-electron.mjs +51 -0
- package/apps/desktop/src/server.mjs +2914 -0
- package/apps/desktop/src/styles.css +2972 -260
- package/apps/desktop/src/zk-browser-prove.mjs +53 -0
- package/apps/desktop/src/zk-state.mjs +1789 -0
- package/apps/gateway/bin/enigma-gateway.mjs +102 -5
- package/apps/gateway/src/server.mjs +271 -8
- package/apps/ios/EnigmaCore/Package.swift +12 -0
- package/apps/ios/EnigmaCore/Sources/EnigmaCore/EnigmaAPIClient.swift +227 -0
- package/apps/ios/EnigmaCore/Sources/EnigmaCore/Models.swift +278 -0
- package/apps/ios/EnigmaCore/Sources/EnigmaCore/PKCE.swift +96 -0
- package/apps/ios/EnigmaCore/Sources/EnigmaCore/PrivacyMinimizer.swift +187 -0
- package/apps/ios/EnigmaCore/Sources/EnigmaCore/ToolModels.swift +129 -0
- package/apps/ios/EnigmaCore/Tests/EnigmaCoreTests/EnigmaCoreTests.swift +42 -0
- package/apps/ios/EnigmaIOS/Enigma/AppModel.swift +346 -0
- package/apps/ios/EnigmaIOS/Enigma/Assets.xcassets/AccentColor.colorset/Contents.json +12 -0
- package/apps/ios/EnigmaIOS/Enigma/Assets.xcassets/AppIcon.appiconset/Contents.json +11 -0
- package/apps/ios/EnigmaIOS/Enigma/Assets.xcassets/AppIcon.appiconset/EnigmaAppIcon.png +0 -0
- package/apps/ios/EnigmaIOS/Enigma/Assets.xcassets/Contents.json +3 -0
- package/apps/ios/EnigmaIOS/Enigma/Assets.xcassets/LaunchBackground.colorset/Contents.json +12 -0
- package/apps/ios/EnigmaIOS/Enigma/ChatView.swift +181 -0
- package/apps/ios/EnigmaIOS/Enigma/CouncilView.swift +78 -0
- package/apps/ios/EnigmaIOS/Enigma/CreateView.swift +152 -0
- package/apps/ios/EnigmaIOS/Enigma/EnigmaApp.swift +52 -0
- package/apps/ios/EnigmaIOS/Enigma/Info.plist +52 -0
- package/apps/ios/EnigmaIOS/Enigma/NaturalLanguagePrivacyTagger.swift +26 -0
- package/apps/ios/EnigmaIOS/Enigma/OAuthClient.swift +321 -0
- package/apps/ios/EnigmaIOS/Enigma/OnboardingView.swift +105 -0
- package/apps/ios/EnigmaIOS/Enigma/PrivateVaultView.swift +275 -0
- package/apps/ios/EnigmaIOS/Enigma/SecureStore.swift +76 -0
- package/apps/ios/EnigmaIOS/Enigma/SettingsView.swift +60 -0
- package/apps/ios/EnigmaIOS/Enigma/Theme.swift +80 -0
- package/apps/ios/EnigmaIOS/EnigmaIOS.xcodeproj/project.pbxproj +211 -0
- package/apps/ios/EnigmaIOS/EnigmaIOS.xcodeproj/xcshareddata/xcschemes/Enigma.xcscheme +23 -0
- package/apps/native-host/README.md +19 -8
- package/apps/native-host/bin/enigma-native-host.mjs +229 -13
- package/apps/relay/bin/enigma-relay.mjs +103 -5
- package/apps/relay/src/federation-runtime.mjs +618 -0
- package/apps/relay/src/server.mjs +310 -9
- package/apps/verifier/bin/enigma-verify.mjs +327 -11
- package/cortex-v3/circuits/build/intent_vk_bytes.json +35 -0
- package/cortex-v3/circuits/build/sale_vk_bytes.json +35 -0
- package/cortex-v3/circuits/build/vk_bytes.json +32 -0
- package/cortex-v3/proving-assets.json +64 -0
- package/cortex-v3/zk/BUILD-CONTRACT.md +87 -0
- package/cortex-v3/zk/action-transition-vk.json +119 -0
- package/cortex-v3/zk/alias-adversarial.test.mjs +220 -0
- package/cortex-v3/zk/groth16-verify-child.mjs +17 -0
- package/cortex-v3/zk/intent-witness.mjs +365 -0
- package/cortex-v3/zk/intent-witness.test.mjs +485 -0
- package/cortex-v3/zk/proving-assets.mjs +203 -0
- package/cortex-v3/zk/sale-witness.mjs +783 -0
- package/cortex-v3/zk/sale-witness.test.mjs +784 -0
- package/cortex-v3/zk/sealed-sale-release-vk.json +119 -0
- package/cortex-v3/zk/settlement-evidence.mjs +722 -0
- package/cortex-v3/zk/setup-intent.mjs +688 -0
- package/cortex-v3/zk/setup-sale.mjs +666 -0
- package/cortex-v3/zk/setup.mjs +594 -0
- package/cortex-v3/zk/witness.mjs +184 -0
- package/cortex-v3/zk/zk-codec.mjs +232 -0
- package/cortex-v3/zk/zk-codec.test.mjs +293 -0
- package/cortex-v3/zk/zk-settle.mjs +370 -0
- package/cortex-v3/zk/zk-tree.mjs +256 -0
- package/cortex-v3/zk/zk-tree.test.mjs +419 -0
- package/deploy/docker-compose.local-production-simulation.yml +36 -0
- package/docs/browser-extension-install.md +8 -6
- package/docs/client-connectors.md +15 -11
- package/docs/developer-ecosystem.md +15 -13
- package/docs/enigma-memory-ready-conformance.md +11 -9
- package/docs/install-anywhere.md +61 -28
- package/docs/installers-and-desktop.md +8 -7
- package/docs/novelty-invention-candidates.md +161 -161
- package/docs/proof-network-claim-boundaries.md +320 -318
- package/examples/01-quickstart-agent/index.mjs +49 -0
- package/examples/01_agent_memory_quickstart.mjs +57 -0
- package/examples/02-multi-agent-swarm/index.mjs +57 -0
- package/examples/02_cross_model_passport.mjs +64 -0
- package/examples/03-langchain-memory/index.mjs +41 -0
- package/examples/03_poseidon_commitment_verification.mjs +71 -0
- package/examples/04-python-trading-agent/trader.py +49 -0
- package/examples/README.md +27 -0
- package/examples/ci/github-actions.yml +7 -2
- package/package.json +142 -11
- package/packages/adapters/PACKAGE_CONTRACT.md +1 -1
- package/packages/connectors/src/index.js +196 -4
- package/packages/connectors/swarm-router.mjs +168 -0
- package/packages/core/src/index.js +248 -1
- package/packages/core/src/version.mjs +7 -0
- package/packages/dev-tools/package.json +19 -0
- package/packages/dev-tools/src/index.js +4 -0
- package/packages/dev-tools/src/memory-benchmark-suite.js +112 -0
- package/packages/dev-tools/src/swarm-simulator.js +101 -0
- package/packages/dev-tools/src/vault-inspector.js +114 -0
- package/packages/dev-tools/src/vector-benchmark.js +100 -0
- package/packages/developer-platform/src/access-credentials.js +341 -0
- package/packages/developer-platform/src/http.js +132 -0
- package/packages/developer-platform/src/index.js +4 -0
- package/packages/developer-platform/src/usage-http.js +60 -0
- package/packages/developer-platform/src/usage.js +295 -0
- package/packages/enclave-runtime/attestation.mjs +159 -0
- package/packages/enclave-runtime/index.mjs +47 -0
- package/packages/enclave-runtime/session-manager.mjs +253 -0
- package/packages/enclave-runtime/zeroization-proof.mjs +227 -0
- package/packages/enigma-reflex/package.json +14 -0
- package/packages/enigma-reflex/src/index.js +204 -0
- package/packages/enigma-reflex/training/generate-dataset.mjs +40 -0
- package/packages/enigma-reflex/training/requirements.txt +8 -0
- package/packages/enigma-reflex/training/train.py +314 -0
- package/packages/enigma-weave/LICENSE +22 -0
- package/packages/enigma-weave/UPSTREAM.json +21 -0
- package/packages/enigma-weave/package.json +14 -0
- package/packages/enigma-weave/src/index.js +286 -0
- package/packages/hosted-cloud/src/index.js +80 -5
- package/packages/importers/src/index.js +432 -0
- package/packages/inference-runtime/src/browser.js +401 -0
- package/packages/inference-runtime/src/chat.js +265 -0
- package/packages/inference-runtime/src/code.js +407 -0
- package/packages/inference-runtime/src/contracts.js +162 -0
- package/packages/inference-runtime/src/http.js +232 -0
- package/packages/inference-runtime/src/image.js +186 -0
- package/packages/inference-runtime/src/index.js +10 -0
- package/packages/inference-runtime/src/model-router.js +320 -0
- package/packages/inference-runtime/src/platform.js +125 -0
- package/packages/inference-runtime/src/privacy.js +400 -0
- package/packages/inference-runtime/src/video.js +253 -0
- package/packages/mcp-server/README.md +22 -6
- package/packages/mcp-server/bin/enigma-mcp.mjs +2 -1
- package/packages/mcp-server/src/index.js +1418 -105
- package/packages/mcp-server/src/oauth.js +561 -0
- package/packages/mcp-server/src/private-handoff.js +84 -0
- package/packages/mcp-server/src/remote-http.js +273 -0
- package/packages/mcp-server/src/remote-policy.js +72 -0
- package/packages/mcp-server/swarm-bridge.mjs +361 -0
- package/packages/mesh/index.d.ts +283 -0
- package/packages/mesh/package.json +23 -0
- package/packages/mesh/src/crypto.js +189 -0
- package/packages/mesh/src/federation-packets.js +353 -0
- package/packages/mesh/src/gossip.js +311 -0
- package/packages/mesh/src/index.js +6 -0
- package/packages/mesh/src/protocol.js +255 -0
- package/packages/mesh/src/router.js +279 -0
- package/packages/mesh/src/transport.js +306 -0
- package/packages/passport/src/index.js +426 -1
- package/packages/private-economy/src/credits-http.js +100 -0
- package/packages/private-economy/src/credits.js +447 -0
- package/packages/private-economy/src/index.js +5 -0
- package/packages/private-economy/src/payments-http.js +120 -0
- package/packages/private-economy/src/payments.js +509 -0
- package/packages/private-economy/src/x402.js +346 -0
- package/packages/proof-network/PACKAGE_CONTRACT.md +21 -0
- package/packages/rag/index.d.ts +182 -0
- package/packages/rag/models/Xenova/all-MiniLM-L6-v2/THIRD_PARTY_LICENSES.txt +207 -0
- package/packages/rag/models/Xenova/all-MiniLM-L6-v2/config.json +25 -0
- package/packages/rag/models/Xenova/all-MiniLM-L6-v2/onnx/model_quantized.onnx +0 -0
- package/packages/rag/models/Xenova/all-MiniLM-L6-v2/sha256-manifest.json +28 -0
- package/packages/rag/models/Xenova/all-MiniLM-L6-v2/tokenizer.json +30686 -0
- package/packages/rag/models/Xenova/all-MiniLM-L6-v2/tokenizer_config.json +15 -0
- package/packages/rag/package.json +27 -0
- package/packages/rag/src/blinded-search.js +109 -0
- package/packages/rag/src/bm25.js +169 -0
- package/packages/rag/src/embeddings.js +459 -0
- package/packages/rag/src/hybrid.js +76 -0
- package/packages/rag/src/index.js +38 -0
- package/packages/rag/src/reranker.js +61 -0
- package/packages/rag/src/research.js +107 -0
- package/packages/rag/src/vector-store.js +430 -0
- package/packages/rag/src/verify-model-artifacts.mjs +4 -0
- package/packages/sdk/index.d.ts +760 -0
- package/packages/sdk/package.json +33 -0
- package/packages/sdk/python/README.md +24 -0
- package/packages/sdk/python/enigma_sdk.py +250 -0
- package/packages/sdk/python/pyproject.toml +34 -0
- package/packages/sdk/python/requirements.txt +1 -0
- package/packages/sdk/python/setup.py +20 -0
- package/packages/sdk/src/federation/capability-grant.js +389 -0
- package/packages/sdk/src/federation/federation-router.js +360 -0
- package/packages/sdk/src/federation/ghostmesh-bridge.js +497 -0
- package/packages/sdk/src/federation/index.js +3 -0
- package/packages/sdk/src/index.js +1796 -0
- package/packages/sdk/src/intelligence/contradiction.js +337 -0
- package/packages/sdk/src/intelligence/decision-engine.js +155 -0
- package/packages/sdk/src/intelligence/index.js +4 -0
- package/packages/sdk/src/intelligence/ontology.js +122 -0
- package/packages/sdk/src/intelligence/temporal.js +123 -0
- package/packages/sdk/src/market-client.js +142 -0
- package/packages/sdk/src/mesh-client.js +110 -0
- package/packages/sdk/src/middleware/index.js +3 -0
- package/packages/sdk/src/middleware/langchain.js +159 -0
- package/packages/sdk/src/middleware/llamaindex.js +101 -0
- package/packages/sdk/src/middleware/vercel-ai.js +112 -0
- package/packages/sdk/src/rag-client.js +85 -0
- package/packages/sdk/src/swarm-orchestrator.js +260 -0
- package/packages/settlement/PACKAGE_CONTRACT.md +1 -1
- package/packages/snapcompact/THIRD_PARTY_LICENSES.txt +40 -0
- package/packages/snapcompact/assets/8x13-latin1.bdf +3837 -0
- package/packages/snapcompact/index.d.ts +284 -0
- package/packages/snapcompact/package.json +25 -0
- package/packages/snapcompact/src/index.js +716 -0
- package/packages/storage/PACKAGE_CONTRACT.md +1 -1
- package/packages/terminal-console/animations.mjs +240 -0
- package/packages/terminal-console/auto-anchor.mjs +220 -0
- package/packages/terminal-console/banner.mjs +91 -0
- package/packages/terminal-console/commands.mjs +459 -0
- package/packages/terminal-console/delegation.mjs +152 -0
- package/packages/terminal-console/index.mjs +5 -0
- package/packages/terminal-console/outbox.mjs +143 -0
- package/packages/terminal-console/phantom-bridge.mjs +637 -0
- package/packages/terminal-console/repl.mjs +136 -0
- package/packages/terminal-console/signer-store.mjs +130 -0
- package/packages/terminal-console/solana-rpc.mjs +214 -0
- package/packages/terminal-console/solana-transport.mjs +189 -0
- package/packages/terminal-tui/dashboard.mjs +214 -0
- package/packages/terminal-tui/index.mjs +28 -0
- package/packages/terminal-tui/merkle-tree-renderer.mjs +268 -0
- package/packages/terminal-tui/telemetry-hud.mjs +137 -0
- package/packages/vault/index.d.ts +449 -0
- package/packages/vault/package.json +27 -0
- package/packages/vault/src/e2ee.mjs +393 -0
- package/packages/vault/src/enclave.js +481 -0
- package/packages/vault/src/erasure.js +207 -0
- package/packages/vault/src/index.js +1018 -155
- package/packages/vault/src/persistence.js +307 -0
- package/packages/vault/src/poseidon.js +354 -0
- package/packages/vault/src/receipt.js +459 -0
- package/scripts/benchmark-optical-context.mjs +166 -0
- package/scripts/bootstrap-enigma.mjs +502 -0
- package/scripts/build-edge-backend-workers.mjs +20 -5
- package/scripts/build-goal-completion-audit.mjs +72 -25
- package/scripts/build-hosted-api-key-lifecycle.mjs +26 -8
- package/scripts/build-hosted-customer-lifecycle.mjs +20 -3
- package/scripts/build-hosted-probe-worker.mjs +19 -4
- package/scripts/build-installer-assets.mjs +41 -21
- package/scripts/build-operator-evidence-starter.mjs +59 -1
- package/scripts/build-production-backend-env-kit.mjs +2 -0
- package/scripts/build-production-unblocker.mjs +3 -0
- package/scripts/check.mjs +17 -3
- package/scripts/collect-hosted-backend-live-evidence.mjs +49 -12
- package/scripts/install-enigma-local.mjs +18 -5
- package/scripts/release-audit.mjs +65 -109
- package/scripts/release-provenance.mjs +6 -0
- package/scripts/run-backend-readiness-smoke.mjs +112 -10
- package/scripts/scan-secrets.mjs +1 -0
- package/scripts/simulate-production-env.mjs +7 -2
- package/scripts/validate-hosted-backend-live.mjs +112 -1
- package/specs/antibody-pack-v1.schema.json +95 -0
- package/specs/antigen-envelope-v1.schema.json +81 -0
- package/specs/boundary-manifest-v1.schema.json +35 -35
- package/specs/capsule-v1.schema.json +55 -55
- package/specs/claim-boundary-manifest-v1.schema.json +22 -22
- package/specs/claim-ledger-v1.schema.json +291 -0
- package/specs/context-passport-v1.schema.json +59 -0
- package/specs/deletion-tombstone-v1.schema.json +26 -26
- package/specs/evidence-packet-v1.schema.json +177 -0
- package/specs/hosted-backend-live-evidence-v1.schema.json +72 -3
- package/specs/immune-scan-report-v1.schema.json +112 -0
- package/specs/lifecycle-receipt-log-v1.schema.json +67 -0
- package/specs/memory-atom-v1.schema.json +59 -0
- package/specs/memory-event-v1.schema.json +42 -42
- package/specs/passport-v1.schema.json +50 -50
- package/specs/proof-of-non-use-v1.schema.json +65 -0
- package/specs/quarantine-record-v1.schema.json +126 -0
- package/specs/receipt-v1.schema.json +61 -61
- package/specs/state-checkpoint-v1.schema.json +37 -37
- package/specs/trust-bundle-v1.schema.json +56 -56
- package/specs/trust-card-v1.schema.json +119 -0
- package/docs/proof-network-launch-plan.md +0 -421
- package/packages/metering/PACKAGE_CONTRACT.md +0 -20
- package/scripts/build-ai-orchestration-plan.mjs +0 -248
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.enigma.ai/evidence-packet-v1.schema.json",
|
|
4
|
+
"title": "Enigma Evidence Packet v1",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": [
|
|
7
|
+
"schema",
|
|
8
|
+
"packet_id",
|
|
9
|
+
"generated_at",
|
|
10
|
+
"packet_root",
|
|
11
|
+
"issuer_ref",
|
|
12
|
+
"subject_refs",
|
|
13
|
+
"claim_ids",
|
|
14
|
+
"evidence_refs",
|
|
15
|
+
"artifact_refs",
|
|
16
|
+
"trust_card_refs",
|
|
17
|
+
"posture_summaries",
|
|
18
|
+
"roots",
|
|
19
|
+
"signatures",
|
|
20
|
+
"boundary"
|
|
21
|
+
],
|
|
22
|
+
"additionalProperties": false,
|
|
23
|
+
"properties": {
|
|
24
|
+
"schema": { "const": "enigma.evidence_packet.v1" },
|
|
25
|
+
"packet_id": { "$ref": "#/$defs/publicId" },
|
|
26
|
+
"generated_at": { "type": "string", "format": "date-time" },
|
|
27
|
+
"packet_root": { "$ref": "#/$defs/sha256Digest" },
|
|
28
|
+
"issuer_ref": { "$ref": "#/$defs/publicRef" },
|
|
29
|
+
"subject_refs": {
|
|
30
|
+
"type": "array",
|
|
31
|
+
"minItems": 1,
|
|
32
|
+
"items": { "$ref": "#/$defs/publicRef" },
|
|
33
|
+
"uniqueItems": true
|
|
34
|
+
},
|
|
35
|
+
"claim_ids": {
|
|
36
|
+
"type": "array",
|
|
37
|
+
"minItems": 1,
|
|
38
|
+
"items": { "$ref": "#/$defs/claimId" },
|
|
39
|
+
"uniqueItems": true
|
|
40
|
+
},
|
|
41
|
+
"evidence_refs": {
|
|
42
|
+
"type": "array",
|
|
43
|
+
"items": { "$ref": "#/$defs/publicRef" },
|
|
44
|
+
"uniqueItems": true
|
|
45
|
+
},
|
|
46
|
+
"artifact_refs": {
|
|
47
|
+
"type": "array",
|
|
48
|
+
"items": { "$ref": "#/$defs/artifactRef" }
|
|
49
|
+
},
|
|
50
|
+
"trust_card_refs": {
|
|
51
|
+
"type": "array",
|
|
52
|
+
"items": { "$ref": "#/$defs/publicRef" },
|
|
53
|
+
"uniqueItems": true
|
|
54
|
+
},
|
|
55
|
+
"posture_summaries": {
|
|
56
|
+
"type": "array",
|
|
57
|
+
"minItems": 1,
|
|
58
|
+
"items": { "$ref": "#/$defs/postureSummary" }
|
|
59
|
+
},
|
|
60
|
+
"roots": { "$ref": "#/$defs/evidenceRoots" },
|
|
61
|
+
"signatures": {
|
|
62
|
+
"type": "array",
|
|
63
|
+
"items": { "$ref": "#/$defs/signatureRef" }
|
|
64
|
+
},
|
|
65
|
+
"boundary": { "$ref": "#/$defs/evidenceBoundary" }
|
|
66
|
+
},
|
|
67
|
+
"$defs": {
|
|
68
|
+
"sha256Digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
|
|
69
|
+
"publicId": { "type": "string", "pattern": "^[a-z0-9][a-z0-9._:-]{7,127}$" },
|
|
70
|
+
"publicRef": { "type": "string", "pattern": "^ref:[A-Za-z0-9][A-Za-z0-9._~:@#?=&%+-]{0,255}$" },
|
|
71
|
+
"claimId": { "type": "string", "pattern": "^claim:[a-z0-9][a-z0-9._:-]{2,127}$" },
|
|
72
|
+
"schemaId": { "type": "string", "pattern": "^enigma\\.[a-z0-9_]+\\.v1$" },
|
|
73
|
+
"signerRef": { "type": "string", "pattern": "^signer:[A-Za-z0-9][A-Za-z0-9._~:@#?=&%+-]{0,191}$" },
|
|
74
|
+
"signaturePublicRef": { "type": "string", "pattern": "^sigref:[A-Za-z0-9][A-Za-z0-9._~:@#?=&%+-]{0,191}$" },
|
|
75
|
+
"postureSummary": {
|
|
76
|
+
"type": "object",
|
|
77
|
+
"required": ["subject_type", "subject_ref", "posture", "claim_ids", "evidence_refs", "boundary"],
|
|
78
|
+
"additionalProperties": false,
|
|
79
|
+
"properties": {
|
|
80
|
+
"subject_type": { "type": "string", "enum": ["connector", "package"] },
|
|
81
|
+
"subject_ref": { "$ref": "#/$defs/publicRef" },
|
|
82
|
+
"posture": { "type": "string", "enum": ["unknown", "reviewed", "trusted", "quarantined", "blocked"] },
|
|
83
|
+
"claim_ids": {
|
|
84
|
+
"type": "array",
|
|
85
|
+
"minItems": 1,
|
|
86
|
+
"items": { "$ref": "#/$defs/claimId" },
|
|
87
|
+
"uniqueItems": true
|
|
88
|
+
},
|
|
89
|
+
"evidence_refs": {
|
|
90
|
+
"type": "array",
|
|
91
|
+
"minItems": 1,
|
|
92
|
+
"items": { "$ref": "#/$defs/publicRef" },
|
|
93
|
+
"uniqueItems": true
|
|
94
|
+
},
|
|
95
|
+
"boundary": { "$ref": "#/$defs/evidenceBoundary" }
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
"artifactRef": {
|
|
99
|
+
"type": "object",
|
|
100
|
+
"required": ["schema_id", "artifact_ref", "artifact_hash", "root", "claim_ids"],
|
|
101
|
+
"additionalProperties": false,
|
|
102
|
+
"properties": {
|
|
103
|
+
"schema_id": { "$ref": "#/$defs/schemaId" },
|
|
104
|
+
"artifact_ref": { "$ref": "#/$defs/publicRef" },
|
|
105
|
+
"artifact_hash": { "$ref": "#/$defs/sha256Digest" },
|
|
106
|
+
"root": { "$ref": "#/$defs/sha256Digest" },
|
|
107
|
+
"claim_ids": {
|
|
108
|
+
"type": "array",
|
|
109
|
+
"items": { "$ref": "#/$defs/claimId" },
|
|
110
|
+
"uniqueItems": true
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
},
|
|
114
|
+
"evidenceRoots": {
|
|
115
|
+
"type": "object",
|
|
116
|
+
"required": ["claim_root", "evidence_ref_root", "artifact_root", "receipt_chain_root"],
|
|
117
|
+
"additionalProperties": false,
|
|
118
|
+
"properties": {
|
|
119
|
+
"claim_root": { "$ref": "#/$defs/sha256Digest" },
|
|
120
|
+
"evidence_ref_root": { "$ref": "#/$defs/sha256Digest" },
|
|
121
|
+
"artifact_root": { "$ref": "#/$defs/sha256Digest" },
|
|
122
|
+
"receipt_chain_root": { "$ref": "#/$defs/sha256Digest" }
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
"signatureRef": {
|
|
126
|
+
"type": "object",
|
|
127
|
+
"required": ["signer_ref", "signature_ref", "signature_hash", "alg"],
|
|
128
|
+
"additionalProperties": false,
|
|
129
|
+
"properties": {
|
|
130
|
+
"signer_ref": { "$ref": "#/$defs/signerRef" },
|
|
131
|
+
"signature_ref": { "$ref": "#/$defs/signaturePublicRef" },
|
|
132
|
+
"signature_hash": { "$ref": "#/$defs/sha256Digest" },
|
|
133
|
+
"alg": { "type": "string", "enum": ["Ed25519", "ECDSA-P256-SHA256"] }
|
|
134
|
+
}
|
|
135
|
+
},
|
|
136
|
+
"evidenceBoundary": {
|
|
137
|
+
"type": "object",
|
|
138
|
+
"required": [
|
|
139
|
+
"public_payload_only",
|
|
140
|
+
"raw_evidence_included",
|
|
141
|
+
"raw_memory_included",
|
|
142
|
+
"raw_prompt_included",
|
|
143
|
+
"raw_transcript_included",
|
|
144
|
+
"raw_embedding_included",
|
|
145
|
+
"provider_response_included",
|
|
146
|
+
"private_key_included",
|
|
147
|
+
"token_included",
|
|
148
|
+
"credential_included",
|
|
149
|
+
"local_path_included",
|
|
150
|
+
"provider_deletion_claim",
|
|
151
|
+
"model_forgetting_claim",
|
|
152
|
+
"hosted_saas_ready_claim",
|
|
153
|
+
"compliance_certification_claim",
|
|
154
|
+
"benchmark_superiority_claim"
|
|
155
|
+
],
|
|
156
|
+
"additionalProperties": false,
|
|
157
|
+
"properties": {
|
|
158
|
+
"public_payload_only": { "const": true },
|
|
159
|
+
"raw_evidence_included": { "const": false },
|
|
160
|
+
"raw_memory_included": { "const": false },
|
|
161
|
+
"raw_prompt_included": { "const": false },
|
|
162
|
+
"raw_transcript_included": { "const": false },
|
|
163
|
+
"raw_embedding_included": { "const": false },
|
|
164
|
+
"provider_response_included": { "const": false },
|
|
165
|
+
"private_key_included": { "const": false },
|
|
166
|
+
"token_included": { "const": false },
|
|
167
|
+
"credential_included": { "const": false },
|
|
168
|
+
"local_path_included": { "const": false },
|
|
169
|
+
"provider_deletion_claim": { "const": false },
|
|
170
|
+
"model_forgetting_claim": { "const": false },
|
|
171
|
+
"hosted_saas_ready_claim": { "const": false },
|
|
172
|
+
"compliance_certification_claim": { "const": false },
|
|
173
|
+
"benchmark_superiority_claim": { "const": false }
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
}
|
|
@@ -10,6 +10,8 @@
|
|
|
10
10
|
"environment",
|
|
11
11
|
"refs",
|
|
12
12
|
"probes",
|
|
13
|
+
"runtime_capability",
|
|
14
|
+
"authenticated_data_plane",
|
|
13
15
|
"operator_acceptance",
|
|
14
16
|
"claim_boundary"
|
|
15
17
|
],
|
|
@@ -19,14 +21,15 @@
|
|
|
19
21
|
"environment": {
|
|
20
22
|
"type": "object",
|
|
21
23
|
"additionalProperties": false,
|
|
22
|
-
"required": ["environment_id", "domain", "cloud_provider", "region", "owner", "status"],
|
|
24
|
+
"required": ["environment_id", "domain", "cloud_provider", "region", "owner", "status", "local_simulation"],
|
|
23
25
|
"properties": {
|
|
24
26
|
"environment_id": { "type": "string", "minLength": 1 },
|
|
25
27
|
"domain": { "type": "string", "minLength": 1 },
|
|
26
|
-
"cloud_provider": { "type": "string", "minLength": 1 },
|
|
28
|
+
"cloud_provider": { "type": "string", "minLength": 1, "not": { "const": "local" } },
|
|
27
29
|
"region": { "type": "string", "minLength": 1 },
|
|
28
30
|
"owner": { "type": "string", "minLength": 1 },
|
|
29
|
-
"status": { "enum": ["observed", "verified", "go", "accepted"] }
|
|
31
|
+
"status": { "enum": ["observed", "verified", "go", "accepted"] },
|
|
32
|
+
"local_simulation": { "const": false }
|
|
30
33
|
}
|
|
31
34
|
},
|
|
32
35
|
"refs": {
|
|
@@ -98,6 +101,43 @@
|
|
|
98
101
|
"gateway_readyz": { "$ref": "#/$defs/probe" }
|
|
99
102
|
}
|
|
100
103
|
},
|
|
104
|
+
"runtime_capability": {
|
|
105
|
+
"type": "object",
|
|
106
|
+
"additionalProperties": false,
|
|
107
|
+
"required": ["schema", "marker", "observed_at", "services"],
|
|
108
|
+
"properties": {
|
|
109
|
+
"schema": { "const": "enigma.hosted_backend_runtime_capability.v1" },
|
|
110
|
+
"marker": { "const": "enigma.private_data_plane.runtime.v1" },
|
|
111
|
+
"observed_at": { "type": "string", "format": "date-time" },
|
|
112
|
+
"services": {
|
|
113
|
+
"type": "object",
|
|
114
|
+
"additionalProperties": false,
|
|
115
|
+
"required": ["relay", "gateway"],
|
|
116
|
+
"properties": {
|
|
117
|
+
"relay": { "$ref": "#/$defs/runtimeService" },
|
|
118
|
+
"gateway": { "$ref": "#/$defs/runtimeService" }
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"authenticated_data_plane": {
|
|
124
|
+
"type": "object",
|
|
125
|
+
"additionalProperties": false,
|
|
126
|
+
"required": ["schema", "observed_at", "proofs"],
|
|
127
|
+
"properties": {
|
|
128
|
+
"schema": { "const": "enigma.hosted_backend_authenticated_data_plane.v1" },
|
|
129
|
+
"observed_at": { "type": "string", "format": "date-time" },
|
|
130
|
+
"proofs": {
|
|
131
|
+
"type": "object",
|
|
132
|
+
"additionalProperties": false,
|
|
133
|
+
"required": ["relay", "gateway"],
|
|
134
|
+
"properties": {
|
|
135
|
+
"relay": { "$ref": "#/$defs/dataPlaneProof" },
|
|
136
|
+
"gateway": { "$ref": "#/$defs/dataPlaneProof" }
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
},
|
|
101
141
|
"operator_acceptance": {
|
|
102
142
|
"type": "object",
|
|
103
143
|
"additionalProperties": false,
|
|
@@ -131,6 +171,35 @@
|
|
|
131
171
|
}
|
|
132
172
|
},
|
|
133
173
|
"$defs": {
|
|
174
|
+
"runtimeService": {
|
|
175
|
+
"type": "object",
|
|
176
|
+
"additionalProperties": false,
|
|
177
|
+
"required": ["service", "private_data_plane_operational", "authentication_enforced", "bootstrap_worker", "evidence_ref"],
|
|
178
|
+
"properties": {
|
|
179
|
+
"service": { "enum": ["enigma-relay", "enigma-gateway"] },
|
|
180
|
+
"private_data_plane_operational": { "const": true },
|
|
181
|
+
"authentication_enforced": { "const": true },
|
|
182
|
+
"bootstrap_worker": { "const": false },
|
|
183
|
+
"evidence_ref": { "type": "string", "minLength": 1 }
|
|
184
|
+
}
|
|
185
|
+
},
|
|
186
|
+
"dataPlaneProof": {
|
|
187
|
+
"type": "object",
|
|
188
|
+
"additionalProperties": false,
|
|
189
|
+
"required": ["service", "url", "method", "status_code", "authenticated", "authorization_result", "observed_at", "request_hash", "response_hash", "evidence_ref"],
|
|
190
|
+
"properties": {
|
|
191
|
+
"service": { "enum": ["enigma-relay", "enigma-gateway"] },
|
|
192
|
+
"url": { "type": "string", "format": "uri" },
|
|
193
|
+
"method": { "enum": ["GET", "POST", "PUT", "DELETE"] },
|
|
194
|
+
"status_code": { "type": "integer", "minimum": 200, "maximum": 299 },
|
|
195
|
+
"authenticated": { "const": true },
|
|
196
|
+
"authorization_result": { "const": "allowed" },
|
|
197
|
+
"observed_at": { "type": "string", "format": "date-time" },
|
|
198
|
+
"request_hash": { "type": "string", "pattern": "^sha256:[a-fA-F0-9]{64}$" },
|
|
199
|
+
"response_hash": { "type": "string", "pattern": "^sha256:[a-fA-F0-9]{64}$" },
|
|
200
|
+
"evidence_ref": { "type": "string", "minLength": 1 }
|
|
201
|
+
}
|
|
202
|
+
},
|
|
134
203
|
"probe": {
|
|
135
204
|
"type": "object",
|
|
136
205
|
"additionalProperties": false,
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.enigma.ai/immune-scan-report-v1.schema.json",
|
|
4
|
+
"title": "Enigma Immune Scan Report v1",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": [
|
|
7
|
+
"schema",
|
|
8
|
+
"report_id",
|
|
9
|
+
"generated_at",
|
|
10
|
+
"scan_root",
|
|
11
|
+
"antigen_envelope_refs",
|
|
12
|
+
"detector_ids",
|
|
13
|
+
"findings",
|
|
14
|
+
"counts",
|
|
15
|
+
"status",
|
|
16
|
+
"quarantine_refs",
|
|
17
|
+
"roots",
|
|
18
|
+
"public_payload_only",
|
|
19
|
+
"private_payload_detected"
|
|
20
|
+
],
|
|
21
|
+
"additionalProperties": false,
|
|
22
|
+
"properties": {
|
|
23
|
+
"schema": { "const": "enigma.immune_scan_report.v1" },
|
|
24
|
+
"report_id": { "$ref": "#/$defs/publicId" },
|
|
25
|
+
"generated_at": { "type": "string", "format": "date-time" },
|
|
26
|
+
"scan_root": { "$ref": "#/$defs/sha256Digest" },
|
|
27
|
+
"antigen_envelope_refs": {
|
|
28
|
+
"type": "array",
|
|
29
|
+
"items": { "$ref": "#/$defs/publicRef" },
|
|
30
|
+
"uniqueItems": true
|
|
31
|
+
},
|
|
32
|
+
"detector_ids": {
|
|
33
|
+
"type": "array",
|
|
34
|
+
"minItems": 1,
|
|
35
|
+
"items": { "$ref": "#/$defs/detectorId" },
|
|
36
|
+
"uniqueItems": true
|
|
37
|
+
},
|
|
38
|
+
"findings": {
|
|
39
|
+
"type": "array",
|
|
40
|
+
"items": { "$ref": "#/$defs/findingSummary" }
|
|
41
|
+
},
|
|
42
|
+
"counts": { "$ref": "#/$defs/scanCounts" },
|
|
43
|
+
"status": { "type": "string", "enum": ["clean", "flagged", "quarantined", "failed_closed"] },
|
|
44
|
+
"quarantine_refs": {
|
|
45
|
+
"type": "array",
|
|
46
|
+
"items": { "$ref": "#/$defs/publicRef" },
|
|
47
|
+
"uniqueItems": true
|
|
48
|
+
},
|
|
49
|
+
"roots": { "$ref": "#/$defs/scanRoots" },
|
|
50
|
+
"public_payload_only": { "const": true },
|
|
51
|
+
"private_payload_detected": { "const": false }
|
|
52
|
+
},
|
|
53
|
+
"$defs": {
|
|
54
|
+
"sha256Digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
|
|
55
|
+
"publicId": { "type": "string", "pattern": "^[a-z0-9][a-z0-9._:-]{7,127}$" },
|
|
56
|
+
"publicRef": { "type": "string", "pattern": "^ref:[A-Za-z0-9][A-Za-z0-9._~:@#?=&%+-]{0,255}$" },
|
|
57
|
+
"detectorId": { "type": "string", "pattern": "^detector:[A-Za-z0-9][A-Za-z0-9._~:@#?=&%+-]{0,191}$" },
|
|
58
|
+
"findingSummary": {
|
|
59
|
+
"type": "object",
|
|
60
|
+
"required": ["detector_id", "finding_ref", "finding_count", "status", "risk_labels"],
|
|
61
|
+
"additionalProperties": false,
|
|
62
|
+
"properties": {
|
|
63
|
+
"detector_id": { "$ref": "#/$defs/detectorId" },
|
|
64
|
+
"finding_ref": { "$ref": "#/$defs/publicRef" },
|
|
65
|
+
"finding_count": { "type": "integer", "minimum": 0 },
|
|
66
|
+
"status": { "type": "string", "enum": ["clean", "flagged", "quarantined", "failed_closed"] },
|
|
67
|
+
"risk_labels": {
|
|
68
|
+
"type": "array",
|
|
69
|
+
"items": { "$ref": "#/$defs/riskLabel" },
|
|
70
|
+
"uniqueItems": true
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
},
|
|
74
|
+
"scanCounts": {
|
|
75
|
+
"type": "object",
|
|
76
|
+
"required": ["scanned", "flagged", "quarantined", "tombstoned", "detectors"],
|
|
77
|
+
"additionalProperties": false,
|
|
78
|
+
"properties": {
|
|
79
|
+
"scanned": { "type": "integer", "minimum": 0 },
|
|
80
|
+
"flagged": { "type": "integer", "minimum": 0 },
|
|
81
|
+
"quarantined": { "type": "integer", "minimum": 0 },
|
|
82
|
+
"tombstoned": { "type": "integer", "minimum": 0 },
|
|
83
|
+
"detectors": { "type": "integer", "minimum": 1 }
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"scanRoots": {
|
|
87
|
+
"type": "object",
|
|
88
|
+
"required": ["finding_root", "receipt_chain_root", "active_root", "quarantine_root", "tombstone_root"],
|
|
89
|
+
"additionalProperties": false,
|
|
90
|
+
"properties": {
|
|
91
|
+
"finding_root": { "$ref": "#/$defs/sha256Digest" },
|
|
92
|
+
"receipt_chain_root": { "$ref": "#/$defs/sha256Digest" },
|
|
93
|
+
"active_root": { "$ref": "#/$defs/sha256Digest" },
|
|
94
|
+
"quarantine_root": { "$ref": "#/$defs/sha256Digest" },
|
|
95
|
+
"tombstone_root": { "$ref": "#/$defs/sha256Digest" }
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
"riskLabel": {
|
|
99
|
+
"type": "string",
|
|
100
|
+
"enum": [
|
|
101
|
+
"benign",
|
|
102
|
+
"untrusted_origin",
|
|
103
|
+
"prompt_injection",
|
|
104
|
+
"data_exfiltration",
|
|
105
|
+
"secret_material",
|
|
106
|
+
"memory_poisoning",
|
|
107
|
+
"policy_violation",
|
|
108
|
+
"unknown"
|
|
109
|
+
]
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.enigma.ai/lifecycle-receipt-log-v1.schema.json",
|
|
4
|
+
"title": "Enigma Lifecycle Receipt Log v1",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": [
|
|
7
|
+
"schema",
|
|
8
|
+
"log_id",
|
|
9
|
+
"log_ref",
|
|
10
|
+
"subject_ref",
|
|
11
|
+
"tenant_ref",
|
|
12
|
+
"epoch",
|
|
13
|
+
"previous_log_root",
|
|
14
|
+
"receipt_refs",
|
|
15
|
+
"active_root",
|
|
16
|
+
"quarantine_root",
|
|
17
|
+
"tombstone_root",
|
|
18
|
+
"receipt_log_root",
|
|
19
|
+
"issued_at",
|
|
20
|
+
"signer_ref",
|
|
21
|
+
"signature_ref"
|
|
22
|
+
],
|
|
23
|
+
"additionalProperties": false,
|
|
24
|
+
"properties": {
|
|
25
|
+
"schema": { "const": "enigma.lifecycle_receipt_log.v1" },
|
|
26
|
+
"log_id": { "$ref": "#/$defs/publicId" },
|
|
27
|
+
"log_ref": { "$ref": "#/$defs/publicRef" },
|
|
28
|
+
"subject_ref": { "$ref": "#/$defs/publicRef" },
|
|
29
|
+
"tenant_ref": { "$ref": "#/$defs/publicRef" },
|
|
30
|
+
"epoch": { "type": "integer", "minimum": 0 },
|
|
31
|
+
"previous_log_root": { "$ref": "#/$defs/sha256Digest" },
|
|
32
|
+
"receipt_refs": {
|
|
33
|
+
"type": "array",
|
|
34
|
+
"minItems": 1,
|
|
35
|
+
"uniqueItems": true,
|
|
36
|
+
"items": { "$ref": "#/$defs/orderedReceiptRef" }
|
|
37
|
+
},
|
|
38
|
+
"active_root": { "$ref": "#/$defs/sha256Digest" },
|
|
39
|
+
"quarantine_root": { "$ref": "#/$defs/sha256Digest" },
|
|
40
|
+
"tombstone_root": { "$ref": "#/$defs/sha256Digest" },
|
|
41
|
+
"receipt_log_root": { "$ref": "#/$defs/sha256Digest" },
|
|
42
|
+
"issued_at": { "type": "string", "format": "date-time" },
|
|
43
|
+
"signer_ref": { "$ref": "#/$defs/publicRef" },
|
|
44
|
+
"signature_ref": { "$ref": "#/$defs/publicRef" }
|
|
45
|
+
},
|
|
46
|
+
"$defs": {
|
|
47
|
+
"sha256Digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
|
|
48
|
+
"genesisOrSha256Digest": { "type": "string", "pattern": "^(sha256:[a-f0-9]{64}|GENESIS)$" },
|
|
49
|
+
"publicId": { "type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{7,127}$" },
|
|
50
|
+
"publicRef": { "type": "string", "pattern": "^(?![A-Za-z]:$)[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$" },
|
|
51
|
+
"orderedReceiptRef": {
|
|
52
|
+
"type": "object",
|
|
53
|
+
"required": ["sequence", "receipt_ref", "receipt_hash", "previous_receipt_hash", "lifecycle_state"],
|
|
54
|
+
"additionalProperties": false,
|
|
55
|
+
"properties": {
|
|
56
|
+
"sequence": { "type": "integer", "minimum": 0 },
|
|
57
|
+
"receipt_ref": { "$ref": "#/$defs/publicRef" },
|
|
58
|
+
"receipt_hash": { "$ref": "#/$defs/sha256Digest" },
|
|
59
|
+
"previous_receipt_hash": { "$ref": "#/$defs/genesisOrSha256Digest" },
|
|
60
|
+
"lifecycle_state": {
|
|
61
|
+
"type": "string",
|
|
62
|
+
"enum": ["active", "quarantine", "tombstone"]
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.enigma.ai/memory-atom-v1.schema.json",
|
|
4
|
+
"title": "Enigma Memory Atom v1",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": [
|
|
7
|
+
"schema",
|
|
8
|
+
"atom_id",
|
|
9
|
+
"atom_ref",
|
|
10
|
+
"atom_commitment",
|
|
11
|
+
"subject_ref",
|
|
12
|
+
"tenant_ref",
|
|
13
|
+
"encrypted_content_ref",
|
|
14
|
+
"content_commitment",
|
|
15
|
+
"encryption_envelope_ref",
|
|
16
|
+
"lifecycle_state",
|
|
17
|
+
"active_root",
|
|
18
|
+
"quarantine_root",
|
|
19
|
+
"tombstone_root",
|
|
20
|
+
"receipt_log_root",
|
|
21
|
+
"created_receipt_ref",
|
|
22
|
+
"latest_receipt_ref",
|
|
23
|
+
"created_at",
|
|
24
|
+
"updated_at",
|
|
25
|
+
"signer_ref",
|
|
26
|
+
"signature_ref"
|
|
27
|
+
],
|
|
28
|
+
"additionalProperties": false,
|
|
29
|
+
"properties": {
|
|
30
|
+
"schema": { "const": "enigma.memory_atom.v1" },
|
|
31
|
+
"atom_id": { "$ref": "#/$defs/publicId" },
|
|
32
|
+
"atom_ref": { "$ref": "#/$defs/publicRef" },
|
|
33
|
+
"atom_commitment": { "$ref": "#/$defs/sha256Digest" },
|
|
34
|
+
"subject_ref": { "$ref": "#/$defs/publicRef" },
|
|
35
|
+
"tenant_ref": { "$ref": "#/$defs/publicRef" },
|
|
36
|
+
"encrypted_content_ref": { "$ref": "#/$defs/publicRef" },
|
|
37
|
+
"content_commitment": { "$ref": "#/$defs/sha256Digest" },
|
|
38
|
+
"encryption_envelope_ref": { "$ref": "#/$defs/publicRef" },
|
|
39
|
+
"lifecycle_state": {
|
|
40
|
+
"type": "string",
|
|
41
|
+
"enum": ["active", "quarantine", "tombstone"]
|
|
42
|
+
},
|
|
43
|
+
"active_root": { "$ref": "#/$defs/sha256Digest" },
|
|
44
|
+
"quarantine_root": { "$ref": "#/$defs/sha256Digest" },
|
|
45
|
+
"tombstone_root": { "$ref": "#/$defs/sha256Digest" },
|
|
46
|
+
"receipt_log_root": { "$ref": "#/$defs/sha256Digest" },
|
|
47
|
+
"created_receipt_ref": { "$ref": "#/$defs/publicRef" },
|
|
48
|
+
"latest_receipt_ref": { "$ref": "#/$defs/publicRef" },
|
|
49
|
+
"created_at": { "type": "string", "format": "date-time" },
|
|
50
|
+
"updated_at": { "type": "string", "format": "date-time" },
|
|
51
|
+
"signer_ref": { "$ref": "#/$defs/publicRef" },
|
|
52
|
+
"signature_ref": { "$ref": "#/$defs/publicRef" }
|
|
53
|
+
},
|
|
54
|
+
"$defs": {
|
|
55
|
+
"sha256Digest": { "type": "string", "pattern": "^sha256:[a-f0-9]{64}$" },
|
|
56
|
+
"publicId": { "type": "string", "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{7,127}$" },
|
|
57
|
+
"publicRef": { "type": "string", "pattern": "^(?![A-Za-z]:$)[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$" }
|
|
58
|
+
}
|
|
59
|
+
}
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
-
"$id": "https://schemas.enigma.ai/memory-event-v1.schema.json",
|
|
4
|
-
"title": "Enigma Memory Event v1",
|
|
5
|
-
"type": "object",
|
|
6
|
-
"required": [
|
|
7
|
-
"schema",
|
|
8
|
-
"event_id",
|
|
9
|
-
"operation",
|
|
10
|
-
"tenant_id",
|
|
11
|
-
"subject_id",
|
|
12
|
-
"actor_id",
|
|
13
|
-
"timestamp",
|
|
14
|
-
"sequence",
|
|
15
|
-
"policy_id"
|
|
16
|
-
],
|
|
17
|
-
"additionalProperties": false,
|
|
18
|
-
"properties": {
|
|
19
|
-
"schema": { "const": "enigma.memory_event.v1" },
|
|
20
|
-
"event_id": { "type": "string", "minLength": 8 },
|
|
21
|
-
"operation": {
|
|
22
|
-
"type": "string",
|
|
23
|
-
"enum": ["create", "read", "update", "supersede", "delete", "retrieve", "inject", "export", "import", "deny", "quarantine", "boundary_cross"]
|
|
24
|
-
},
|
|
25
|
-
"tenant_id": { "type": "string", "minLength": 1 },
|
|
26
|
-
"subject_id": { "type": "string", "minLength": 1 },
|
|
27
|
-
"actor_id": { "type": "string", "minLength": 1 },
|
|
28
|
-
"memory_addr": { "type": "string", "pattern": "^[a-z0-9_.:-]+$" },
|
|
29
|
-
"source_addr": { "type": "string", "pattern": "^[a-z0-9_.:-]+$" },
|
|
30
|
-
"provider": { "type": "string" },
|
|
31
|
-
"model": { "type": "string" },
|
|
32
|
-
"purpose": { "type": "string" },
|
|
33
|
-
"timestamp": { "type": "string", "format": "date-time" },
|
|
34
|
-
"sequence": { "type": "integer", "minimum": 0 },
|
|
35
|
-
"policy_id": { "type": "string", "minLength": 1 },
|
|
36
|
-
"decision": { "type": "string", "enum": ["allow", "deny", "quarantine", "out_of_scope"] },
|
|
37
|
-
"metadata": {
|
|
38
|
-
"type": "object",
|
|
39
|
-
"additionalProperties": { "type": ["string", "number", "boolean", "null"] }
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
3
|
+
"$id": "https://schemas.enigma.ai/memory-event-v1.schema.json",
|
|
4
|
+
"title": "Enigma Memory Event v1",
|
|
5
|
+
"type": "object",
|
|
6
|
+
"required": [
|
|
7
|
+
"schema",
|
|
8
|
+
"event_id",
|
|
9
|
+
"operation",
|
|
10
|
+
"tenant_id",
|
|
11
|
+
"subject_id",
|
|
12
|
+
"actor_id",
|
|
13
|
+
"timestamp",
|
|
14
|
+
"sequence",
|
|
15
|
+
"policy_id"
|
|
16
|
+
],
|
|
17
|
+
"additionalProperties": false,
|
|
18
|
+
"properties": {
|
|
19
|
+
"schema": { "const": "enigma.memory_event.v1" },
|
|
20
|
+
"event_id": { "type": "string", "minLength": 8 },
|
|
21
|
+
"operation": {
|
|
22
|
+
"type": "string",
|
|
23
|
+
"enum": ["create", "read", "update", "supersede", "delete", "retrieve", "inject", "export", "import", "deny", "quarantine", "boundary_cross"]
|
|
24
|
+
},
|
|
25
|
+
"tenant_id": { "type": "string", "minLength": 1 },
|
|
26
|
+
"subject_id": { "type": "string", "minLength": 1 },
|
|
27
|
+
"actor_id": { "type": "string", "minLength": 1 },
|
|
28
|
+
"memory_addr": { "type": "string", "pattern": "^[a-z0-9_.:-]+$" },
|
|
29
|
+
"source_addr": { "type": "string", "pattern": "^[a-z0-9_.:-]+$" },
|
|
30
|
+
"provider": { "type": "string" },
|
|
31
|
+
"model": { "type": "string" },
|
|
32
|
+
"purpose": { "type": "string" },
|
|
33
|
+
"timestamp": { "type": "string", "format": "date-time" },
|
|
34
|
+
"sequence": { "type": "integer", "minimum": 0 },
|
|
35
|
+
"policy_id": { "type": "string", "minLength": 1 },
|
|
36
|
+
"decision": { "type": "string", "enum": ["allow", "deny", "quarantine", "out_of_scope"] },
|
|
37
|
+
"metadata": {
|
|
38
|
+
"type": "object",
|
|
39
|
+
"additionalProperties": { "type": ["string", "number", "boolean", "null"] }
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|