enigma-memory 0.1.17 → 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 +85 -27
- package/apps/cli/bin/enigma-desktop.mjs +140 -0
- package/apps/cli/bin/enigma-terminal.mjs +78 -0
- package/apps/cli/bin/enigma.mjs +4979 -3263
- 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/SIMULATION.md +14 -9
- package/deploy/docker-compose.local-production-simulation.yml +54 -12
- package/docs/benchmark-attestation-network.md +487 -487
- package/docs/benchmark-reproducibility.md +289 -289
- package/docs/blockchain-only-mechanisms.md +400 -400
- package/docs/browser-extension-install.md +8 -6
- package/docs/client-connectors.md +16 -12
- package/docs/demo-proof-network.md +275 -275
- package/docs/developer-ecosystem.md +15 -13
- package/docs/developer-proof-quickstart.md +325 -325
- package/docs/enigma-memory-ready-conformance.md +378 -376
- package/docs/install-anywhere.md +64 -30
- package/docs/installers-and-desktop.md +8 -7
- package/docs/memory-benchmarks.md +1 -1
- package/docs/memory-drive-health-model.md +690 -690
- package/docs/novelty-invention-candidates.md +161 -161
- package/docs/proof-network-build-notes.md +240 -240
- package/docs/proof-network-claim-boundaries.md +320 -318
- package/docs/proof-network.md +339 -339
- package/docs/sdk-api.md +324 -324
- package/docs/solana-proof-rail.md +453 -453
- 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 +410 -278
- 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 +249 -2
- 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 +2498 -1185
- 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 +436 -7
- 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 +1150 -125
- 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 +292 -274
- package/scripts/build-hosted-customer-lifecycle.mjs +493 -476
- package/scripts/build-hosted-probe-worker.mjs +19 -4
- package/scripts/build-installer-assets.mjs +409 -389
- 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 +4 -1
- package/scripts/build-proof-network-packet.mjs +213 -213
- package/scripts/check.mjs +25 -4
- package/scripts/collect-hosted-backend-live-evidence.mjs +49 -12
- package/scripts/install-enigma-local.mjs +18 -5
- package/scripts/release-audit.mjs +74 -115
- package/scripts/release-provenance.mjs +12 -2
- package/scripts/run-backend-readiness-smoke.mjs +112 -10
- package/scripts/run-standard-memory-benchmarks.mjs +1354 -1352
- package/scripts/scan-secrets.mjs +178 -0
- package/scripts/simulate-production-env.mjs +71 -10
- 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
|
@@ -5,7 +5,12 @@ import { pathToFileURL } from 'node:url';
|
|
|
5
5
|
import { buildProductionHandoffPacket } from './build-production-handoff-packet.mjs';
|
|
6
6
|
import { buildCloudflareTokenPolicy } from './build-cloudflare-token-policy.mjs';
|
|
7
7
|
import { runBackendReadinessSmoke } from './run-backend-readiness-smoke.mjs';
|
|
8
|
-
import {
|
|
8
|
+
import {
|
|
9
|
+
HOSTED_BACKEND_LIVE_EVIDENCE_SCHEMA,
|
|
10
|
+
HOSTED_BACKEND_LIVE_RESULT_SCHEMA,
|
|
11
|
+
REQUIRED_REF_KEYS,
|
|
12
|
+
validateHostedBackendLiveEvidence,
|
|
13
|
+
} from './validate-hosted-backend-live.mjs';
|
|
9
14
|
import { validateProductionManifestFiles } from './validate-production-manifests.mjs';
|
|
10
15
|
import { applyCloudflareSecretEnvFile } from './cloudflare-secret-env.mjs';
|
|
11
16
|
|
|
@@ -29,7 +34,7 @@ function assertNoUnsafeOutput(name, value, path = name) {
|
|
|
29
34
|
}
|
|
30
35
|
}
|
|
31
36
|
|
|
32
|
-
const DEFAULT_OBJECTIVE = 'Build Enigma Memory into a production-grade project with backend infrastructure, tests, professional math/diagram whitepaper, secure public site, deployment/handoff plan,
|
|
37
|
+
const DEFAULT_OBJECTIVE = 'Build Enigma Memory into a production-grade project with backend infrastructure, tests, professional math/diagram whitepaper, secure public site, and a deployment/handoff plan, without unsupported claims.';
|
|
33
38
|
|
|
34
39
|
class UsageError extends Error {
|
|
35
40
|
constructor(message) {
|
|
@@ -67,6 +72,45 @@ function expandHostedBackendBlockers(infra) {
|
|
|
67
72
|
}
|
|
68
73
|
return blockers;
|
|
69
74
|
}
|
|
75
|
+
async function hostedBackendLiveSummary(input, generatedAt) {
|
|
76
|
+
const supplied = input && typeof input === 'object'
|
|
77
|
+
? input
|
|
78
|
+
: await readJsonPath(input, 'hosted backend live evidence');
|
|
79
|
+
if (supplied === null) {
|
|
80
|
+
return {
|
|
81
|
+
ok: false,
|
|
82
|
+
status: 'missing',
|
|
83
|
+
blocker_paths: ['hosted_backend_live_evidence'],
|
|
84
|
+
checked: null,
|
|
85
|
+
};
|
|
86
|
+
}
|
|
87
|
+
const result = supplied.schema === HOSTED_BACKEND_LIVE_EVIDENCE_SCHEMA
|
|
88
|
+
? validateHostedBackendLiveEvidence(supplied, { generated_at: generatedAt })
|
|
89
|
+
: supplied;
|
|
90
|
+
if (result.schema !== HOSTED_BACKEND_LIVE_RESULT_SCHEMA) {
|
|
91
|
+
throw new UsageError(`hosted backend live input must use schema ${HOSTED_BACKEND_LIVE_EVIDENCE_SCHEMA} or ${HOSTED_BACKEND_LIVE_RESULT_SCHEMA}`);
|
|
92
|
+
}
|
|
93
|
+
const blockerPaths = Array.isArray(result.blockers)
|
|
94
|
+
? result.blockers.map((entry) => entry?.path).filter((path) => typeof path === 'string')
|
|
95
|
+
: ['blockers'];
|
|
96
|
+
if (result.checked?.refs_missing !== 0) blockerPaths.push('checked.refs_missing');
|
|
97
|
+
if (result.checked?.probes_covered !== 4) blockerPaths.push('checked.probes_covered');
|
|
98
|
+
if (result.checked?.runtime_services_covered !== 2) blockerPaths.push('checked.runtime_services_covered');
|
|
99
|
+
if (result.checked?.authenticated_data_plane_proofs_covered !== 2) blockerPaths.push('checked.authenticated_data_plane_proofs_covered');
|
|
100
|
+
if (result.ok !== true || result.status !== 'accepted') blockerPaths.push('status');
|
|
101
|
+
return {
|
|
102
|
+
ok: blockerPaths.length === 0,
|
|
103
|
+
status: result.status,
|
|
104
|
+
blocker_paths: [...new Set(blockerPaths)],
|
|
105
|
+
checked: {
|
|
106
|
+
refs_missing: result.checked?.refs_missing ?? null,
|
|
107
|
+
probes_covered: result.checked?.probes_covered ?? null,
|
|
108
|
+
runtime_services_covered: result.checked?.runtime_services_covered ?? null,
|
|
109
|
+
authenticated_data_plane_proofs_covered: result.checked?.authenticated_data_plane_proofs_covered ?? null,
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
|
|
70
114
|
|
|
71
115
|
function parseArgs(argv) {
|
|
72
116
|
const out = {
|
|
@@ -82,6 +126,7 @@ function parseArgs(argv) {
|
|
|
82
126
|
operatorAcceptancePacket: null,
|
|
83
127
|
infrastructureReadiness: null,
|
|
84
128
|
releaseAudit: null,
|
|
129
|
+
hostedBackendLive: null,
|
|
85
130
|
workerInspect: null,
|
|
86
131
|
};
|
|
87
132
|
for (let index = 0; index < argv.length;) {
|
|
@@ -103,6 +148,7 @@ function parseArgs(argv) {
|
|
|
103
148
|
else if (token === '--cloudflare-env-file') out.envFile = readValue(token);
|
|
104
149
|
else if (token === '--operator-acceptance-packet' || token === '--operatorAcceptancePacket') out.operatorAcceptancePacket = readValue(token);
|
|
105
150
|
else if (token === '--infrastructure-readiness' || token === '--infrastructureReadiness') out.infrastructureReadiness = readValue(token);
|
|
151
|
+
else if (token === '--hosted-backend-live' || token === '--hostedBackendLive') out.hostedBackendLive = readValue(token);
|
|
106
152
|
else if (token === '--release-audit' || token === '--releaseAudit') out.releaseAudit = readValue(token);
|
|
107
153
|
else if (token === '--worker-inspect' || token === '--workerInspect') out.workerInspect = readValue(token);
|
|
108
154
|
else if (token === '--out') out.out = readValue(token);
|
|
@@ -112,7 +158,7 @@ function parseArgs(argv) {
|
|
|
112
158
|
}
|
|
113
159
|
|
|
114
160
|
function usage() {
|
|
115
|
-
return `Usage: node scripts/build-goal-completion-audit.mjs --site <dir> [options]\n\nOptions:\n --project-name <name> Cloudflare Pages project. Default: enigma-memory.\n --domain <host> Public domain. Default: enigmamemory.com.\n --live-url <url> Current public URL to observe. Default: https://enigmamemory.com/.\n --expect-title <text> Expected live title fragment. Default: Enigma.\n --account-id <id> Cloudflare account id or placeholder for token-policy evidence.\n --infrastructure-readiness <file> Completed infrastructure readiness JSON to summarize.\n --operator-acceptance-packet <file> Completed operator packet JSON to validate and summarize.\n --release-audit <file> Current release audit JSON to summarize.\n --worker-inspect <file> Optional Worker inspection result; ready evidence suppresses the standalone probe action.\n --cloudflare-env-file <file> Load local Cloudflare env values without printing the path or values.\n --objective <text> Override objective text.\n --out <file> Write audit JSON.\n --help Show this help.\n`;
|
|
161
|
+
return `Usage: node scripts/build-goal-completion-audit.mjs --site <dir> [options]\n\nOptions:\n --project-name <name> Cloudflare Pages project. Default: enigma-memory.\n --domain <host> Public domain. Default: enigmamemory.com.\n --live-url <url> Current public URL to observe. Default: https://enigmamemory.com/.\n --expect-title <text> Expected live title fragment. Default: Enigma.\n --account-id <id> Cloudflare account id or placeholder for token-policy evidence.\n --infrastructure-readiness <file> Completed infrastructure readiness JSON to summarize.\n --hosted-backend-live <file> Strict hosted evidence/result with runtime and authenticated data-plane proofs.\n --operator-acceptance-packet <file> Completed operator packet JSON to validate and summarize.\n --release-audit <file> Current release audit JSON to summarize.\n --worker-inspect <file> Optional Worker inspection result; ready evidence suppresses the standalone probe action.\n --cloudflare-env-file <file> Load local Cloudflare env values without printing the path or values.\n --objective <text> Override objective text.\n --out <file> Write audit JSON.\n --help Show this help.\n`;
|
|
116
162
|
}
|
|
117
163
|
|
|
118
164
|
async function readText(path) {
|
|
@@ -148,31 +194,23 @@ function blockerBreakdownLines(prefix, breakdown) {
|
|
|
148
194
|
}
|
|
149
195
|
|
|
150
196
|
async function inspectDocs() {
|
|
151
|
-
const masterPlan = await readText(resolve('docs/overnight-build-master-plan.md'));
|
|
152
197
|
const whitepaper = await readText(resolve('docs/enigma-memory-technical-whitepaper.md'));
|
|
153
198
|
const evidence = await readText(resolve('docs/release-evidence-2026-06-23.md'));
|
|
199
|
+
const claimBoundaries = await readText(resolve('docs/proof-network-claim-boundaries.md'));
|
|
154
200
|
return {
|
|
155
|
-
masterPlan,
|
|
156
201
|
whitepaper,
|
|
157
202
|
evidence,
|
|
203
|
+
claimBoundaries,
|
|
158
204
|
};
|
|
159
205
|
}
|
|
160
206
|
|
|
161
|
-
function deliverablesFromEvidence({ docs, handoff, tokenPolicy, backendSmoke, productionManifests }) {
|
|
207
|
+
function deliverablesFromEvidence({ docs, handoff, tokenPolicy, backendSmoke, productionManifests, hostedBackendLive }) {
|
|
162
208
|
const pages = handoff.pages ?? {};
|
|
163
209
|
const infra = handoff.infrastructure ?? {};
|
|
164
210
|
const operator = handoff.operator_acceptance ?? {};
|
|
165
211
|
const releaseAudit = handoff.release_audit ?? {};
|
|
166
212
|
const releaseGateNames = new Set(Array.isArray(releaseAudit.gate_names) ? releaseAudit.gate_names : []);
|
|
167
213
|
const deliverables = [];
|
|
168
|
-
deliverables.push({
|
|
169
|
-
id: 'orchestration-master-plan',
|
|
170
|
-
requirement: 'Architecture/review owner and implementation-owner plan exists with claim boundaries and handoff cadence.',
|
|
171
|
-
...boolEvidence(
|
|
172
|
-
/GPT-5\.5 owns architecture, design, and review/.test(docs.masterPlan) && /Kimi Code owns implementation/.test(docs.masterPlan),
|
|
173
|
-
['docs/overnight-build-master-plan.md'],
|
|
174
|
-
),
|
|
175
|
-
});
|
|
176
214
|
deliverables.push({
|
|
177
215
|
id: 'whitepaper-math-diagrams',
|
|
178
216
|
requirement: 'Professional whitepaper contains math and diagrams for the memory layer and its evidence-bounded comparison framework.',
|
|
@@ -211,9 +249,9 @@ function deliverablesFromEvidence({ docs, handoff, tokenPolicy, backendSmoke, pr
|
|
|
211
249
|
backendSmoke.ok === true
|
|
212
250
|
&& backendSmoke.check_count === 4
|
|
213
251
|
&& backendSmoke.checks?.filter((check) => check.mode === 'production-fail-closed' && check.readyz_status === 503).length === 2
|
|
214
|
-
&& backendSmoke.checks?.filter((check) => check.mode === 'production-
|
|
252
|
+
&& backendSmoke.checks?.filter((check) => check.mode === 'production-operational-fixture' && check.readyz_status === 200 && check.readyz_missing_evidence_ref_count === 0 && check.readyz_all_checks_ok === true).length === 2,
|
|
215
253
|
['npm run production:backend-smoke', `${backendSmoke.check_count} checks`],
|
|
216
|
-
['backend readiness smoke did not prove fail-closed and
|
|
254
|
+
['backend readiness smoke did not prove fail-closed and explicit operational local runtime fixtures'],
|
|
217
255
|
),
|
|
218
256
|
});
|
|
219
257
|
deliverables.push({
|
|
@@ -231,7 +269,7 @@ function deliverablesFromEvidence({ docs, handoff, tokenPolicy, backendSmoke, pr
|
|
|
231
269
|
});
|
|
232
270
|
deliverables.push({
|
|
233
271
|
id: 'hosted-live-evidence-contract',
|
|
234
|
-
requirement: 'Hosted backend live evidence has a formal validator/schema requiring public HTTPS relay/gateway
|
|
272
|
+
requirement: 'Hosted backend live evidence has a formal validator/schema requiring public HTTPS health probes, explicit operational runtime capability, authenticated relay/gateway private data-plane proofs, all hosted refs, and operator acceptance go.',
|
|
235
273
|
...boolEvidence(
|
|
236
274
|
HOSTED_BACKEND_LIVE_EVIDENCE_SCHEMA === 'enigma.hosted_backend_live_evidence.v1'
|
|
237
275
|
&& HOSTED_BACKEND_LIVE_RESULT_SCHEMA === 'enigma.hosted_backend_live_result.v1'
|
|
@@ -280,11 +318,17 @@ function deliverablesFromEvidence({ docs, handoff, tokenPolicy, backendSmoke, pr
|
|
|
280
318
|
});
|
|
281
319
|
deliverables.push({
|
|
282
320
|
id: 'hosted-backend-live',
|
|
283
|
-
requirement: 'Hosted relay/gateway/storage/KMS/SIEM/backup/operator infrastructure is live and
|
|
321
|
+
requirement: 'Hosted relay/gateway/storage/KMS/SIEM/backup/operator infrastructure is live with explicit operational runtime capability and authenticated private data-plane proofs.',
|
|
284
322
|
...boolEvidence(
|
|
285
|
-
infra.hosted_live_ready === true,
|
|
286
|
-
[
|
|
287
|
-
|
|
323
|
+
infra.hosted_live_ready === true && hostedBackendLive.ok === true,
|
|
324
|
+
[
|
|
325
|
+
'npm run infrastructure:readiness -- --manifest <completed> --live --cloudflare-live required',
|
|
326
|
+
'npm run production:hosted-live -- --evidence <completed-hosted-evidence.json>',
|
|
327
|
+
],
|
|
328
|
+
[
|
|
329
|
+
...expandHostedBackendBlockers(infra),
|
|
330
|
+
...hostedBackendLive.blocker_paths.map((path) => `hosted evidence blocker path: ${path}`),
|
|
331
|
+
],
|
|
288
332
|
),
|
|
289
333
|
});
|
|
290
334
|
deliverables.push({
|
|
@@ -300,8 +344,9 @@ function deliverablesFromEvidence({ docs, handoff, tokenPolicy, backendSmoke, pr
|
|
|
300
344
|
id: 'unsupported-claims-blocked',
|
|
301
345
|
requirement: '$100B/best-in-world ambition is treated as ambition; collateral does not convert it into unsupported proof, ROI, compliance, or hosted-live claims.',
|
|
302
346
|
...boolEvidence(
|
|
303
|
-
/unsupported_market_superlative/.test(docs.evidence) || /unsupported superlatives/.test(docs.evidence)
|
|
304
|
-
|
|
347
|
+
/unsupported_market_superlative/.test(docs.evidence) || /unsupported superlatives/.test(docs.evidence)
|
|
348
|
+
|| /market leadership/i.test(docs.claimBoundaries ?? '') || /unsupported superlatives/i.test(docs.claimBoundaries ?? ''),
|
|
349
|
+
['docs/release-evidence-2026-06-23.md', 'docs/proof-network-claim-boundaries.md'],
|
|
305
350
|
['claim-boundary evidence missing unsupported-superlative controls'],
|
|
306
351
|
),
|
|
307
352
|
});
|
|
@@ -318,6 +363,7 @@ export async function buildGoalCompletionAudit(input = {}, options = {}) {
|
|
|
318
363
|
const expectTitle = optionalText(input.expectTitle, 'Enigma');
|
|
319
364
|
const accountId = optionalText(input.accountId, '<cloudflare-account-id>');
|
|
320
365
|
const workerInspect = await readJsonPath(input.workerInspect, 'worker inspection');
|
|
366
|
+
const hostedBackendLive = await hostedBackendLiveSummary(input.hostedBackendLive, generatedAt);
|
|
321
367
|
const docs = await inspectDocs();
|
|
322
368
|
const handoff = await buildProductionHandoffPacket({ site, projectName, domain, liveUrl, expectTitle, infrastructureReadiness: input.infrastructureReadiness, operatorAcceptancePacket: input.operatorAcceptancePacket, releaseAudit: input.releaseAudit }, {
|
|
323
369
|
env,
|
|
@@ -335,7 +381,7 @@ export async function buildGoalCompletionAudit(input = {}, options = {}) {
|
|
|
335
381
|
generated_at: generatedAt,
|
|
336
382
|
});
|
|
337
383
|
const productionManifests = await validateProductionManifestFiles({ generated_at: generatedAt });
|
|
338
|
-
const deliverables = deliverablesFromEvidence({ docs, handoff, tokenPolicy, backendSmoke, productionManifests });
|
|
384
|
+
const deliverables = deliverablesFromEvidence({ docs, handoff, tokenPolicy, backendSmoke, productionManifests, hostedBackendLive });
|
|
339
385
|
const blockers = deliverables.flatMap((item) => item.ok ? [] : item.blockers.map((blocker) => `${item.id}: ${blocker}`));
|
|
340
386
|
const deliverableById = new Map(deliverables.map((item) => [item.id, item]));
|
|
341
387
|
const staticSiteLive = deliverableById.get('secure-static-site-artifact')?.ok === true
|
|
@@ -357,6 +403,7 @@ export async function buildGoalCompletionAudit(input = {}, options = {}) {
|
|
|
357
403
|
check_count: backendSmoke.check_count,
|
|
358
404
|
loopback_only: backendSmoke.loopback_only,
|
|
359
405
|
},
|
|
406
|
+
hosted_backend_live_evidence: hostedBackendLive,
|
|
360
407
|
production_manifest_validation: {
|
|
361
408
|
ok: productionManifests.ok,
|
|
362
409
|
status: productionManifests.status,
|
|
@@ -367,7 +414,7 @@ export async function buildGoalCompletionAudit(input = {}, options = {}) {
|
|
|
367
414
|
next_actions: nextActionsForGoalAudit(handoff.next_actions, workerInspect),
|
|
368
415
|
claim_boundary: [
|
|
369
416
|
'This audit preserves the original objective and maps it to current direct evidence.',
|
|
370
|
-
'complete:false remains expected until hosted backend, operator acceptance, and provider evidence exist; static Cloudflare Pages deploy alone
|
|
417
|
+
'complete:false remains expected until hosted backend runtime capability, authenticated relay/gateway private data-plane proofs, operator acceptance, and provider evidence exist; health probes or static Cloudflare Pages deploy alone are not enough.',
|
|
371
418
|
'Ambition language is not treated as proof of market value, ROI, compliance status, benchmark leadership, hosted-live readiness, provider deletion, or model forgetting.',
|
|
372
419
|
],
|
|
373
420
|
};
|