enigma-memory 0.1.13 → 0.1.14
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 +36 -17
- package/apps/cli/bin/enigma.mjs +320 -42
- package/deploy/docker-compose.local-production-simulation.yml +10 -11
- package/docs/benchmark-attestation-network.md +487 -487
- package/docs/benchmark-reproducibility.md +10 -9
- package/docs/demo-proof-network.md +275 -275
- package/docs/developer-ecosystem.md +223 -223
- package/docs/developer-proof-quickstart.md +325 -325
- package/docs/enigma-memory-ready-conformance.md +376 -376
- package/docs/hosted-cloud-product.md +10 -0
- package/docs/install-anywhere.md +34 -17
- package/docs/installers-and-desktop.md +9 -7
- package/docs/proof-network-build-notes.md +240 -240
- package/docs/proof-network.md +257 -257
- package/docs/sdk-api.md +324 -324
- package/docs/solana-devnet-acceptance.md +48 -0
- package/docs/solana-proof-rail.md +453 -453
- package/examples/ci/github-actions.yml +6 -8
- package/package.json +8 -1
- package/packages/mcp-server/src/index.js +1 -1
- package/packages/passport/src/index.js +9 -5
- package/scripts/build-benchmark-proof-release.mjs +391 -0
- package/scripts/build-goal-completion-audit.mjs +11 -5
- package/scripts/build-hosted-api-key-lifecycle.mjs +1 -1
- package/scripts/build-hosted-customer-lifecycle.mjs +1 -1
- package/scripts/build-installer-assets.mjs +126 -10
- package/scripts/build-production-handoff-packet.mjs +7 -6
- package/scripts/build-production-unblocker.mjs +409 -0
- package/scripts/build-proof-network-packet.mjs +1 -1
- package/scripts/release-audit.mjs +71 -2
- package/scripts/run-standard-memory-benchmarks.mjs +1 -1
- package/scripts/wait-for-backend-ready.mjs +4 -2
|
@@ -1,376 +1,376 @@
|
|
|
1
|
-
# Enigma Memory Ready conformance
|
|
2
|
-
|
|
3
|
-
`Enigma Memory Ready` is a conformance program for client apps, MCP connectors, local operators, hosted operators, and ecosystem tools that want to prove they can integrate with Enigma Memory without leaking private memory data or overstating proof guarantees.
|
|
4
|
-
|
|
5
|
-
The badge is not a security audit, cloud compliance certificate, benchmark ranking, or claim that an external model/provider deleted or forgot anything. It means the reviewed integration can run the required local commands, emit public-safe receipts, respect proof boundaries, and pass the applicable conformance tests.
|
|
6
|
-
|
|
7
|
-
## Program goals
|
|
8
|
-
|
|
9
|
-
1. Make memory integrations reproducible for users and reviewers.
|
|
10
|
-
2. Keep raw memory, prompts, transcripts, completions, embeddings, tenant names, secrets, provider responses, API keys, private keys, and seed phrases out of public artifacts.
|
|
11
|
-
3. Separate Enigma-controlled proof state from provider-side claims.
|
|
12
|
-
4. Give client and connector authors a concrete checklist before requesting review.
|
|
13
|
-
5. Give operators a safe path to publish roots, refs, counts, signatures, and benchmark attestations without publishing private payloads.
|
|
14
|
-
|
|
15
|
-
## Conformance tracks
|
|
16
|
-
|
|
17
|
-
| Track | For | Required outcome |
|
|
18
|
-
| --- | --- | --- |
|
|
19
|
-
| Client Ready | Desktop apps, IDEs, agent shells, MCP hosts | The client can start the Enigma MCP server, use the configured bundle, and verify receipt-backed memory operations without leaking local paths or private memory in shared examples. |
|
|
20
|
-
| Connector Ready | Connector packages, templates, setup helpers | The connector writes deterministic, reversible, narrowly scoped config changes and preserves unrelated client settings. |
|
|
21
|
-
| Operator Ready | Teams running Enigma for users or workspaces | The operator can produce public-safe proof packets, anchor batches, revocations, and benchmark attestations without submitting transactions by default. |
|
|
22
|
-
| Benchmark Ready | Benchmark runners and comparison reports | The runner can publish report hashes, dataset refs, package refs, runner refs, counts, and attestations while retaining raw scoring inputs privately. |
|
|
23
|
-
|
|
24
|
-
An integration may qualify for more than one track. Review notes must state the exact track, version, package/client version, operating system, and command transcript hashes used for the decision.
|
|
25
|
-
|
|
26
|
-
## Required command surface
|
|
27
|
-
|
|
28
|
-
Conformant integrations must expose or document these commands in a way a reviewer can run locally. Commands may be direct CLI calls, scripted wrappers, CI steps, or equivalent SDK/MCP calls, but the public evidence must map back to these behaviors.
|
|
29
|
-
|
|
30
|
-
### Baseline local memory commands
|
|
31
|
-
|
|
32
|
-
```sh
|
|
33
|
-
enigma test-drive --overwrite
|
|
34
|
-
enigma setup --overwrite
|
|
35
|
-
enigma doctor
|
|
36
|
-
enigma remember --text-file ./public-safe-memory.txt
|
|
37
|
-
enigma search --query "public-safe query"
|
|
38
|
-
enigma context --query "public-safe query" --optimize
|
|
39
|
-
enigma verify --export ./.enigma/export.json
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
Requirements:
|
|
43
|
-
|
|
44
|
-
- `test-drive` must be zero-credential and local-only.
|
|
45
|
-
- `setup` must not write third-party client configs unless an explicit write flag is used.
|
|
46
|
-
- `doctor` must not print secrets, local account names, provider tokens, or raw private memory.
|
|
47
|
-
- `remember`, `search`, and `context` examples must use public-safe sample text only.
|
|
48
|
-
- `verify` must check receipt-chain consistency and fail closed on malformed exports.
|
|
49
|
-
|
|
50
|
-
### Connector commands
|
|
51
|
-
|
|
52
|
-
```sh
|
|
53
|
-
enigma setup --client auto --overwrite
|
|
54
|
-
enigma setup --connect-installed --overwrite
|
|
55
|
-
enigma connect <connector-id> --dry-run
|
|
56
|
-
enigma connect <connector-id>
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
Requirements:
|
|
60
|
-
|
|
61
|
-
- `--client auto` must report selected and skipped clients with reasons.
|
|
62
|
-
- `--connect-installed` must target installed or already-configured clients only.
|
|
63
|
-
- `connect --dry-run` must show the planned change without writing.
|
|
64
|
-
- `connect` must preserve unrelated config keys and sibling MCP servers.
|
|
65
|
-
- Config examples must use placeholders or relative examples, not local usernames, tenant names, or account ids.
|
|
66
|
-
- Re-running an equivalent connector write must be idempotent and must not create duplicate MCP entries.
|
|
67
|
-
|
|
68
|
-
### Proof Network planning commands
|
|
69
|
-
|
|
70
|
-
These are local planning and verification commands. They must not submit transactions, create accounts, publish packages, deploy infrastructure, or call external providers during conformance review.
|
|
71
|
-
|
|
72
|
-
```sh
|
|
73
|
-
enigma chain anchor --root <sha256-or-merkle-root> --ref <public-ref> --out ./anchor-batch.json
|
|
74
|
-
enigma chain grant --subject <public-subject-ref> --scope <scope> --expires-at <iso-time> --out ./capability-grant.json
|
|
75
|
-
enigma chain revoke --grant-id <public-grant-id> --reason <public-reason-code> --out ./capability-revocation.json
|
|
76
|
-
enigma chain attest --report-hash <sha256> --dataset-ref <public-dataset-ref> --runner-ref <public-runner-ref> --package-ref <public-package-ref> --out ./benchmark-attestation.json
|
|
77
|
-
enigma chain verify --file ./anchor-batch.json
|
|
78
|
-
enigma chain verify --file ./capability-grant.json
|
|
79
|
-
enigma chain verify --file ./capability-revocation.json
|
|
80
|
-
enigma chain verify --file ./benchmark-attestation.json
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
Every generated chain artifact must include or imply these flags:
|
|
84
|
-
|
|
85
|
-
```json
|
|
86
|
-
{
|
|
87
|
-
"transaction_submitted": false,
|
|
88
|
-
"raw_memory_on_chain": false
|
|
89
|
-
}
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
Supported Proof Network artifact types:
|
|
93
|
-
|
|
94
|
-
- `enigma.proof_network.anchor_batch.v1`
|
|
95
|
-
- `enigma.proof_network.capability_grant.v1`
|
|
96
|
-
- `enigma.proof_network.capability_revocation.v1`
|
|
97
|
-
- `enigma.proof_network.benchmark_attestation.v1`
|
|
98
|
-
- `enigma.proof_network.packet.v1`
|
|
99
|
-
|
|
100
|
-
## Required receipt and proof artifacts
|
|
101
|
-
|
|
102
|
-
A review packet should contain only public-safe JSON and hashes. Full private bundles, raw benchmark inputs, provider transcripts, and customer-specific configs stay private.
|
|
103
|
-
|
|
104
|
-
| Artifact | Required fields | Must not contain |
|
|
105
|
-
| --- | --- | --- |
|
|
106
|
-
| Setup summary | command, version, platform family, selected connector ids, skipped connector ids, receipt/root/hash refs | local usernames, absolute personal paths, tenant names, secrets |
|
|
107
|
-
| Memory receipt export | receipt ids, event types, bundle/export root, counts, timestamps, verification status | raw memory text, prompts, completions, embeddings |
|
|
108
|
-
| Connector plan | connector id, target config type, dry-run/write mode, changed boolean, backup-created boolean | unrelated app config values, local account ids, private paths |
|
|
109
|
-
| Anchor batch | schema id, batch id, roots, public refs, root count, intended chain/network label, `transaction_submitted:false`, `raw_memory_on_chain:false` | memory payloads, ACL bodies, tenant names, keys, seed phrases |
|
|
110
|
-
| Capability grant | schema id, grant id, issuer ref, subject ref, scope, expiry, nonce/nullifier commitment, signature/ref | private identities, authorization body text, private ACLs |
|
|
111
|
-
| Capability revocation | schema id, revocation id, grant id/ref, reason code, nullifier/ref, timestamp, signature/ref | private incident details, raw access logs, private identities |
|
|
112
|
-
| Benchmark attestation | schema id, report hash, dataset ref, runner ref, package ref, metric names, aggregate counts, signature/ref | raw dataset rows, scoring prompts, model outputs, provider responses |
|
|
113
|
-
| Proof packet | packet id, included artifact refs, roots, counts, verification summary, boundary statement | any raw memory or private operational data |
|
|
114
|
-
|
|
115
|
-
## Public-safe proof boundary
|
|
116
|
-
|
|
117
|
-
Conformance claims may say that Enigma verified Enigma-controlled or Enigma-mediated state:
|
|
118
|
-
|
|
119
|
-
- local vault event receipts;
|
|
120
|
-
- active and tombstoned memory address commitments;
|
|
121
|
-
- receipt-chain roots and exported bundle roots;
|
|
122
|
-
- context-pack retrieval/injection receipts;
|
|
123
|
-
- connector setup plans and idempotent config writes;
|
|
124
|
-
- relay, gateway, usage, settlement, and proof-network receipt refs;
|
|
125
|
-
- benchmark report hashes and aggregate benchmark attestations;
|
|
126
|
-
- Solana-ready anchor payloads that have not been submitted by the CLI.
|
|
127
|
-
|
|
128
|
-
Conformance claims must not say or imply that Enigma proves:
|
|
129
|
-
|
|
130
|
-
- an external hosted provider deleted memory;
|
|
131
|
-
- a model forgot information;
|
|
132
|
-
- a user, company, tenant, wallet, or provider account was verified unless a separate reviewed identity process exists;
|
|
133
|
-
- benchmark leadership from SDK mechanics alone;
|
|
134
|
-
- legal, SOC 2, HIPAA, GDPR, or financial compliance certification;
|
|
135
|
-
- token ROI, investment outcome, or provider invoice savings;
|
|
136
|
-
- Solana finality unless an independent transaction id and chain verification are supplied outside the local planning command.
|
|
137
|
-
|
|
138
|
-
## Conformance checklist
|
|
139
|
-
|
|
140
|
-
Reviewers should mark every applicable item `pass`, `fail`, or `not applicable` with the evidence file or command hash.
|
|
141
|
-
|
|
142
|
-
### Product and packaging
|
|
143
|
-
|
|
144
|
-
- [ ] Integration states its conformance track: Client Ready, Connector Ready, Operator Ready, Benchmark Ready, or a combination.
|
|
145
|
-
- [ ] Package/client version and Enigma version are recorded.
|
|
146
|
-
- [ ] Supported operating systems and connector ids are recorded.
|
|
147
|
-
- [ ] Public examples use generic ids, hashes, roots, counts, and placeholders only.
|
|
148
|
-
- [ ] The integration does not require external provider credentials for baseline local conformance.
|
|
149
|
-
- [ ] The integration does not deploy infrastructure, create cloud accounts, submit chain transactions, or publish packages during review.
|
|
150
|
-
|
|
151
|
-
### CLI and SDK behavior
|
|
152
|
-
|
|
153
|
-
- [ ] Baseline local memory commands run with public-safe sample inputs.
|
|
154
|
-
- [ ] Receipt verification succeeds for a valid export.
|
|
155
|
-
- [ ] Receipt verification fails for malformed or tampered exports.
|
|
156
|
-
- [ ] Command output avoids raw memory, prompts, transcripts, completions, embeddings, secrets, private keys, seed phrases, tenant names, and provider responses.
|
|
157
|
-
- [ ] Error messages identify the failing boundary without printing private payloads.
|
|
158
|
-
- [ ] SDK/MCP equivalents, if used, produce the same public-safe receipt semantics as the CLI.
|
|
159
|
-
|
|
160
|
-
### Connector behavior
|
|
161
|
-
|
|
162
|
-
- [ ] Dry run shows planned connector changes without writing files.
|
|
163
|
-
- [ ] Write mode only runs after an explicit write command or flag.
|
|
164
|
-
- [ ] Existing unrelated client settings are preserved.
|
|
165
|
-
- [ ] Existing sibling MCP servers are preserved.
|
|
166
|
-
- [ ] Equivalent repeated writes are idempotent.
|
|
167
|
-
- [ ] Missing clients are skipped with a reason instead of forcing default config creation.
|
|
168
|
-
- [ ] Backup behavior is documented and only occurs when an existing config changes.
|
|
169
|
-
|
|
170
|
-
### Proof Network behavior
|
|
171
|
-
|
|
172
|
-
- [ ] Anchor batches contain roots/refs/counts only.
|
|
173
|
-
- [ ] Capability grants contain scoped public refs, expiry, and replay-resistant ids/nullifiers.
|
|
174
|
-
- [ ] Revocations invalidate grants by public grant/ref/nullifier, not by exposing private ACL bodies.
|
|
175
|
-
- [ ] Benchmark attestations contain report hashes, dataset refs, runner refs, package refs, metrics, and aggregate counts only.
|
|
176
|
-
- [ ] `enigma chain verify --file <json>` accepts every valid supported artifact type.
|
|
177
|
-
- [ ] `enigma chain verify --file <json>` rejects unsupported schemas, missing roots, malformed hashes, invalid expiry, duplicate ids, and private payload keys/values.
|
|
178
|
-
- [ ] Chain artifacts clearly state `transaction_submitted:false` and `raw_memory_on_chain:false`.
|
|
179
|
-
|
|
180
|
-
### Operator evidence
|
|
181
|
-
|
|
182
|
-
- [ ] Operators keep private bundles, raw reports, provider responses, and customer configs out of public packets.
|
|
183
|
-
- [ ] Public packets include enough refs and hashes for independent integrity checks.
|
|
184
|
-
- [ ] Rotation, revocation, and incident examples use reason codes and public refs, not private incident narratives.
|
|
185
|
-
- [ ] Operators document who can issue grants, revoke grants, and sign attestations.
|
|
186
|
-
- [ ] Operators document retention boundaries for raw benchmark and support evidence.
|
|
187
|
-
|
|
188
|
-
## Test categories
|
|
189
|
-
|
|
190
|
-
A conformance test suite should cover behavior, boundaries, and negative cases. The suite may be implemented in the consumer repository, but the review packet must summarize the result and include public-safe evidence.
|
|
191
|
-
|
|
192
|
-
### 1. Install and command discovery
|
|
193
|
-
|
|
194
|
-
- CLI binary is discoverable.
|
|
195
|
-
- Version command reports the expected package version.
|
|
196
|
-
- Help output lists the required baseline and chain planning commands.
|
|
197
|
-
- No command discovery path requires provider credentials.
|
|
198
|
-
|
|
199
|
-
### 2. Local memory proof loop
|
|
200
|
-
|
|
201
|
-
- Public-safe memory can be remembered.
|
|
202
|
-
- Search and context commands can retrieve by public-safe query.
|
|
203
|
-
- Exported receipts verify successfully.
|
|
204
|
-
- Tampering with a receipt id, root, count, or signature causes verification failure.
|
|
205
|
-
- Empty or malformed exports fail with structured errors.
|
|
206
|
-
|
|
207
|
-
### 3. Connector dry-run and write safety
|
|
208
|
-
|
|
209
|
-
- Dry-run output includes target connector id, intended command, intended env keys, and changed status.
|
|
210
|
-
- Dry-run does not modify the target config.
|
|
211
|
-
- Write mode modifies only the Enigma MCP entry.
|
|
212
|
-
- Re-run write mode is idempotent.
|
|
213
|
-
- Invalid connector id fails without writing.
|
|
214
|
-
- Missing config path under `--connect-installed` is skipped, not created by surprise.
|
|
215
|
-
|
|
216
|
-
### 4. Proof Network artifact validation
|
|
217
|
-
|
|
218
|
-
- Valid anchor batch passes.
|
|
219
|
-
- Valid grant passes.
|
|
220
|
-
- Valid revocation passes.
|
|
221
|
-
- Valid benchmark attestation passes.
|
|
222
|
-
- Valid packet containing supported artifact refs passes.
|
|
223
|
-
- Private keys such as `memory`, `prompt`, `transcript`, `completion`, `embedding`, `tenant`, `apiKey`, `privateKey`, `seedPhrase`, `providerResponse`, and `aclBody` are rejected anywhere in proof payloads.
|
|
224
|
-
- Private-looking values such as bearer tokens, seed phrases, PEM blocks, raw prompt text, local personal paths, and provider response blobs are rejected.
|
|
225
|
-
- Unsupported schema names are rejected.
|
|
226
|
-
- Chain artifacts never claim transaction submission unless a separate chain-verification process is explicitly reviewed.
|
|
227
|
-
|
|
228
|
-
### 5. Benchmark attestation boundaries
|
|
229
|
-
|
|
230
|
-
- Report file hash is computed from the private report and only the hash is public.
|
|
231
|
-
- Dataset refs are public refs or hashes, not raw dataset rows.
|
|
232
|
-
- Runner refs identify code/package versions without embedding source blobs.
|
|
233
|
-
- Package refs identify package name/version/integrity without npm tokens.
|
|
234
|
-
- Aggregate metric names and counts are public-safe.
|
|
235
|
-
- Raw scoring prompts, model outputs, provider responses, and licensed dataset rows are excluded.
|
|
236
|
-
|
|
237
|
-
### 6. Failure and abuse cases
|
|
238
|
-
|
|
239
|
-
- Secret-like values in inputs are rejected before artifact creation.
|
|
240
|
-
- Unknown connector ids do not fall back to unsafe defaults.
|
|
241
|
-
- Malformed JSON exits non-zero and prints no private data.
|
|
242
|
-
- Expired grants fail validation.
|
|
243
|
-
- Revoking an unknown grant produces a public-safe error.
|
|
244
|
-
- Duplicate artifact ids in a packet fail validation.
|
|
245
|
-
- Missing `transaction_submitted:false` or `raw_memory_on_chain:false` fails chain artifact validation.
|
|
246
|
-
- Attempting to include raw memory in an anchor, grant, revocation, attestation, or packet fails validation.
|
|
247
|
-
|
|
248
|
-
## Badge levels
|
|
249
|
-
|
|
250
|
-
Badges are scoped to the reviewed track and version. A badge must link to a public-safe review packet or a signed review summary.
|
|
251
|
-
|
|
252
|
-
| Badge | Meaning | Minimum evidence |
|
|
253
|
-
| --- | --- | --- |
|
|
254
|
-
| Enigma Memory Ready: Client | Client can use Enigma MCP/CLI memory proofs safely. | Baseline local proof loop, MCP startup evidence, receipt verification, boundary checklist. |
|
|
255
|
-
| Enigma Memory Ready: Connector | Connector can plan and write safe config changes. | Dry-run/write/idempotency evidence, skipped-client behavior, config preservation test. |
|
|
256
|
-
| Enigma Memory Ready: Operator | Operator can produce safe proof packets and manage grants/revocations. | Anchor, grant, revoke, packet, and verify evidence with proof-boundary checklist. |
|
|
257
|
-
| Enigma Memory Ready: Benchmark | Benchmark runner can attest reports without leaking raw inputs. | Report hash, dataset refs, runner refs, package refs, aggregate metrics, attestation verification. |
|
|
258
|
-
| Enigma Memory Ready: Full | Integration satisfies all applicable tracks. | All above evidence plus a consolidated proof packet. |
|
|
259
|
-
|
|
260
|
-
Badge copy must include the reviewed versions, for example:
|
|
261
|
-
|
|
262
|
-
```text
|
|
263
|
-
Enigma Memory Ready: Connector
|
|
264
|
-
Reviewed for <client-or-package> <version> with enigma-memory <version>.
|
|
265
|
-
Scope: local MCP connector setup and receipt verification only.
|
|
266
|
-
```
|
|
267
|
-
|
|
268
|
-
## Common failure cases
|
|
269
|
-
|
|
270
|
-
A review should fail if any of these appear in public artifacts, examples, tests, logs, or badge claims:
|
|
271
|
-
|
|
272
|
-
- Raw memory text, prompts, transcripts, completions, embeddings, provider responses, raw dataset rows, or private benchmark scoring inputs.
|
|
273
|
-
- API keys, bearer tokens, SSH keys, PEM blocks, private keys, seed phrases, 2FA codes, cookies, local account names, or tenant names.
|
|
274
|
-
- Absolute local paths that reveal a person, tenant, workspace, customer, or account.
|
|
275
|
-
- Chain artifacts that omit `transaction_submitted:false` or imply a transaction was submitted by local planning commands.
|
|
276
|
-
- Proof artifacts that include ACL bodies instead of public scope refs and commitments.
|
|
277
|
-
- Connector writes that overwrite unrelated client settings.
|
|
278
|
-
- Claims that Enigma proves provider-side deletion, model forgetting, legal compliance, benchmark leadership, or financial outcomes.
|
|
279
|
-
- Benchmarks that publish raw licensed dataset rows or provider outputs instead of hashes, refs, aggregates, and attestations.
|
|
280
|
-
- Tests that pass by suppressing verification errors or accepting malformed proof artifacts.
|
|
281
|
-
|
|
282
|
-
## Review process
|
|
283
|
-
|
|
284
|
-
1. **Application**: submit the track, package/client/operator name, version, supported operating systems, connector ids, and public-safe review packet location.
|
|
285
|
-
2. **Boundary screen**: reviewer checks examples, logs, artifacts, docs, and tests for private data and unsupported claims before running commands.
|
|
286
|
-
3. **Command replay**: reviewer runs the required command set for the requested track using public-safe sample inputs.
|
|
287
|
-
4. **Artifact validation**: reviewer verifies receipts and proof-network JSON with `enigma verify` and `enigma chain verify --file <json>` as applicable.
|
|
288
|
-
5. **Negative tests**: reviewer runs malformed, tampered, expired, duplicate, unsupported-schema, and private-payload cases.
|
|
289
|
-
6. **Connector inspection**: for connector tracks, reviewer compares config before/after write mode and confirms dry-run and idempotency behavior.
|
|
290
|
-
7. **Badge decision**: reviewer records pass/fail/not-applicable checklist items, reviewed versions, evidence hashes, known limitations, and badge scope.
|
|
291
|
-
8. **Publication**: only the public-safe summary, hashes, roots, refs, counts, and signatures are published. Private bundles and raw reports stay private.
|
|
292
|
-
9. **Renewal**: badge holders renew when changing connector write behavior, proof artifact schemas, chain-planning semantics, benchmark methodology, or major package versions.
|
|
293
|
-
10. **Revocation**: Enigma may revoke or narrow a badge if published artifacts leak private data, claims exceed reviewed boundaries, or later versions remove required safety behavior.
|
|
294
|
-
|
|
295
|
-
## Required evidence bundle
|
|
296
|
-
|
|
297
|
-
A reviewer should be able to inspect the bundle without access to a private vault, customer workspace, provider account, cloud console, wallet, or hosted service.
|
|
298
|
-
|
|
299
|
-
| File | Required for | Contents |
|
|
300
|
-
| --- | --- | --- |
|
|
301
|
-
| `memory-ready-manifest.json` | all tracks | subject ref, version, Enigma version, requested tracks, platform family, connector ids, public evidence file refs, reviewer key/signature refs |
|
|
302
|
-
| `command-results.json` | all tracks | command refs, exit status, artifact hash, started/ended timestamps, redaction status, and boundary result for each required command |
|
|
303
|
-
| `receipt-verification.json` | Client, Connector, Operator | export ref, receipt count, root refs, verification status, tamper-test status, and failure-case status |
|
|
304
|
-
| `connector-safety.json` | Client, Connector | dry-run hash, write hash when applicable, idempotency result, skipped-client list, config-preservation result |
|
|
305
|
-
| `proof-network-packet.json` | Operator, Benchmark, Full | supported proof-network artifact refs, roots, counts, signatures/refs, and boundary statement |
|
|
306
|
-
| `benchmark-attestation.json` | Benchmark, Full | report hash, dataset refs, runner ref, package ref, metric names, aggregate counts, and attestation verification result |
|
|
307
|
-
| `claim-boundaries.txt` | all tracks | short human-readable statement of what the badge proves and does not prove |
|
|
308
|
-
|
|
309
|
-
Every evidence bundle must be reproducible from a clean local review directory using public-safe fixtures. If a reviewer cannot replay the command sequence without private data, the bundle is not sufficient for a public badge.
|
|
310
|
-
|
|
311
|
-
## Decision rules
|
|
312
|
-
|
|
313
|
-
Use these rules consistently so the badge is meaningful across connectors and operators.
|
|
314
|
-
|
|
315
|
-
- **Pass**: all required commands for the requested track run locally; all required artifacts validate; all negative cases fail closed; no private payloads or unsupported claims appear in public evidence.
|
|
316
|
-
- **Conditional pass**: only allowed for documentation wording defects or missing optional evidence. Conditional pass must name the fix and must not be used for privacy, receipt, proof-network, or connector-write failures.
|
|
317
|
-
- **Fail**: any required command cannot be replayed, any proof artifact leaks private data, any verifier accepts tampered evidence, any connector overwrites unrelated settings, or any badge claim exceeds the reviewed proof boundary.
|
|
318
|
-
- **Not applicable**: allowed only when a checklist item belongs to a track the subject did not request.
|
|
319
|
-
|
|
320
|
-
Privacy and proof-boundary failures are release-blocking. They cannot be waived by adding a warning label after the artifact has been generated.
|
|
321
|
-
|
|
322
|
-
## Public-safe fixture policy
|
|
323
|
-
|
|
324
|
-
Conformance tests should use small fixtures that are intentionally boring and non-identifying:
|
|
325
|
-
|
|
326
|
-
- memory fixture text: generic project notes with no people, customers, secrets, internal codenames, or provider output;
|
|
327
|
-
- query fixture: short generic strings such as `public-safe query`;
|
|
328
|
-
- subject refs: opaque refs such as `client:example-desktop` or hashes, not account names;
|
|
329
|
-
- dataset refs: public dataset/version refs or hashes, not raw rows;
|
|
330
|
-
- runner/package refs: package name, version, integrity hash, and source ref when public;
|
|
331
|
-
- key/signature refs: public verification-key refs or detached signature refs, never private keys.
|
|
332
|
-
|
|
333
|
-
The negative fixture set should include intentionally unsafe keys and values so reviewers can prove rejection behavior without publishing real secrets.
|
|
334
|
-
|
|
335
|
-
## Public review packet template
|
|
336
|
-
|
|
337
|
-
```json
|
|
338
|
-
{
|
|
339
|
-
"schema": "enigma.memory_ready.review_packet.v1",
|
|
340
|
-
"track": ["Connector Ready"],
|
|
341
|
-
"subject": {
|
|
342
|
-
"name_ref": "public-package-or-client-ref",
|
|
343
|
-
"version": "0.0.0",
|
|
344
|
-
"enigma_version": "0.1.
|
|
345
|
-
},
|
|
346
|
-
"commands": [
|
|
347
|
-
{
|
|
348
|
-
"command_ref": "sha256:...",
|
|
349
|
-
"purpose": "connector-dry-run",
|
|
350
|
-
"status": "pass"
|
|
351
|
-
}
|
|
352
|
-
],
|
|
353
|
-
"artifacts": [
|
|
354
|
-
{
|
|
355
|
-
"type": "enigma.proof_network.anchor_batch.v1",
|
|
356
|
-
"file_ref": "anchor-batch.json",
|
|
357
|
-
"sha256": "...",
|
|
358
|
-
"transaction_submitted": false,
|
|
359
|
-
"raw_memory_on_chain": false
|
|
360
|
-
}
|
|
361
|
-
],
|
|
362
|
-
"checklist_summary": {
|
|
363
|
-
"pass": 0,
|
|
364
|
-
"fail": 0,
|
|
365
|
-
"not_applicable": 0
|
|
366
|
-
},
|
|
367
|
-
"boundaries": [
|
|
368
|
-
"No provider-side deletion claim.",
|
|
369
|
-
"No model-forgetting claim.",
|
|
370
|
-
"No compliance-certification claim."
|
|
371
|
-
],
|
|
372
|
-
"reviewer_signature_ref": "public-signature-or-key-ref"
|
|
373
|
-
}
|
|
374
|
-
```
|
|
375
|
-
|
|
376
|
-
The template intentionally uses refs and hashes. Do not replace them with private command transcripts, raw memory, provider responses, customer identifiers, or local absolute paths.
|
|
1
|
+
# Enigma Memory Ready conformance
|
|
2
|
+
|
|
3
|
+
`Enigma Memory Ready` is a conformance program for client apps, MCP connectors, local operators, hosted operators, and ecosystem tools that want to prove they can integrate with Enigma Memory without leaking private memory data or overstating proof guarantees.
|
|
4
|
+
|
|
5
|
+
The badge is not a security audit, cloud compliance certificate, benchmark ranking, or claim that an external model/provider deleted or forgot anything. It means the reviewed integration can run the required local commands, emit public-safe receipts, respect proof boundaries, and pass the applicable conformance tests.
|
|
6
|
+
|
|
7
|
+
## Program goals
|
|
8
|
+
|
|
9
|
+
1. Make memory integrations reproducible for users and reviewers.
|
|
10
|
+
2. Keep raw memory, prompts, transcripts, completions, embeddings, tenant names, secrets, provider responses, API keys, private keys, and seed phrases out of public artifacts.
|
|
11
|
+
3. Separate Enigma-controlled proof state from provider-side claims.
|
|
12
|
+
4. Give client and connector authors a concrete checklist before requesting review.
|
|
13
|
+
5. Give operators a safe path to publish roots, refs, counts, signatures, and benchmark attestations without publishing private payloads.
|
|
14
|
+
|
|
15
|
+
## Conformance tracks
|
|
16
|
+
|
|
17
|
+
| Track | For | Required outcome |
|
|
18
|
+
| --- | --- | --- |
|
|
19
|
+
| Client Ready | Desktop apps, IDEs, agent shells, MCP hosts | The client can start the Enigma MCP server, use the configured bundle, and verify receipt-backed memory operations without leaking local paths or private memory in shared examples. |
|
|
20
|
+
| Connector Ready | Connector packages, templates, setup helpers | The connector writes deterministic, reversible, narrowly scoped config changes and preserves unrelated client settings. |
|
|
21
|
+
| Operator Ready | Teams running Enigma for users or workspaces | The operator can produce public-safe proof packets, anchor batches, revocations, and benchmark attestations without submitting transactions by default. |
|
|
22
|
+
| Benchmark Ready | Benchmark runners and comparison reports | The runner can publish report hashes, dataset refs, package refs, runner refs, counts, and attestations while retaining raw scoring inputs privately. |
|
|
23
|
+
|
|
24
|
+
An integration may qualify for more than one track. Review notes must state the exact track, version, package/client version, operating system, and command transcript hashes used for the decision.
|
|
25
|
+
|
|
26
|
+
## Required command surface
|
|
27
|
+
|
|
28
|
+
Conformant integrations must expose or document these commands in a way a reviewer can run locally. Commands may be direct CLI calls, scripted wrappers, CI steps, or equivalent SDK/MCP calls, but the public evidence must map back to these behaviors.
|
|
29
|
+
|
|
30
|
+
### Baseline local memory commands
|
|
31
|
+
|
|
32
|
+
```sh
|
|
33
|
+
enigma test-drive --overwrite
|
|
34
|
+
enigma setup --overwrite
|
|
35
|
+
enigma doctor
|
|
36
|
+
enigma remember --text-file ./public-safe-memory.txt
|
|
37
|
+
enigma search --query "public-safe query"
|
|
38
|
+
enigma context --query "public-safe query" --optimize
|
|
39
|
+
enigma verify --export ./.enigma/export.json
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
Requirements:
|
|
43
|
+
|
|
44
|
+
- `test-drive` must be zero-credential and local-only.
|
|
45
|
+
- `setup` must not write third-party client configs unless an explicit write flag is used.
|
|
46
|
+
- `doctor` must not print secrets, local account names, provider tokens, or raw private memory.
|
|
47
|
+
- `remember`, `search`, and `context` examples must use public-safe sample text only.
|
|
48
|
+
- `verify` must check receipt-chain consistency and fail closed on malformed exports.
|
|
49
|
+
|
|
50
|
+
### Connector commands
|
|
51
|
+
|
|
52
|
+
```sh
|
|
53
|
+
enigma setup --client auto --overwrite
|
|
54
|
+
enigma setup --connect-installed --overwrite
|
|
55
|
+
enigma connect <connector-id> --dry-run
|
|
56
|
+
enigma connect <connector-id>
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
Requirements:
|
|
60
|
+
|
|
61
|
+
- `--client auto` must report selected and skipped clients with reasons.
|
|
62
|
+
- `--connect-installed` must target installed or already-configured clients only.
|
|
63
|
+
- `connect --dry-run` must show the planned change without writing.
|
|
64
|
+
- `connect` must preserve unrelated config keys and sibling MCP servers.
|
|
65
|
+
- Config examples must use placeholders or relative examples, not local usernames, tenant names, or account ids.
|
|
66
|
+
- Re-running an equivalent connector write must be idempotent and must not create duplicate MCP entries.
|
|
67
|
+
|
|
68
|
+
### Proof Network planning commands
|
|
69
|
+
|
|
70
|
+
These are local planning and verification commands. They must not submit transactions, create accounts, publish packages, deploy infrastructure, or call external providers during conformance review.
|
|
71
|
+
|
|
72
|
+
```sh
|
|
73
|
+
enigma chain anchor --root <sha256-or-merkle-root> --ref <public-ref> --out ./anchor-batch.json
|
|
74
|
+
enigma chain grant --subject <public-subject-ref> --scope <scope> --expires-at <iso-time> --out ./capability-grant.json
|
|
75
|
+
enigma chain revoke --grant-id <public-grant-id> --reason <public-reason-code> --out ./capability-revocation.json
|
|
76
|
+
enigma chain attest --report-hash <sha256> --dataset-ref <public-dataset-ref> --runner-ref <public-runner-ref> --package-ref <public-package-ref> --out ./benchmark-attestation.json
|
|
77
|
+
enigma chain verify --file ./anchor-batch.json
|
|
78
|
+
enigma chain verify --file ./capability-grant.json
|
|
79
|
+
enigma chain verify --file ./capability-revocation.json
|
|
80
|
+
enigma chain verify --file ./benchmark-attestation.json
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
Every generated chain artifact must include or imply these flags:
|
|
84
|
+
|
|
85
|
+
```json
|
|
86
|
+
{
|
|
87
|
+
"transaction_submitted": false,
|
|
88
|
+
"raw_memory_on_chain": false
|
|
89
|
+
}
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Supported Proof Network artifact types:
|
|
93
|
+
|
|
94
|
+
- `enigma.proof_network.anchor_batch.v1`
|
|
95
|
+
- `enigma.proof_network.capability_grant.v1`
|
|
96
|
+
- `enigma.proof_network.capability_revocation.v1`
|
|
97
|
+
- `enigma.proof_network.benchmark_attestation.v1`
|
|
98
|
+
- `enigma.proof_network.packet.v1`
|
|
99
|
+
|
|
100
|
+
## Required receipt and proof artifacts
|
|
101
|
+
|
|
102
|
+
A review packet should contain only public-safe JSON and hashes. Full private bundles, raw benchmark inputs, provider transcripts, and customer-specific configs stay private.
|
|
103
|
+
|
|
104
|
+
| Artifact | Required fields | Must not contain |
|
|
105
|
+
| --- | --- | --- |
|
|
106
|
+
| Setup summary | command, version, platform family, selected connector ids, skipped connector ids, receipt/root/hash refs | local usernames, absolute personal paths, tenant names, secrets |
|
|
107
|
+
| Memory receipt export | receipt ids, event types, bundle/export root, counts, timestamps, verification status | raw memory text, prompts, completions, embeddings |
|
|
108
|
+
| Connector plan | connector id, target config type, dry-run/write mode, changed boolean, backup-created boolean | unrelated app config values, local account ids, private paths |
|
|
109
|
+
| Anchor batch | schema id, batch id, roots, public refs, root count, intended chain/network label, `transaction_submitted:false`, `raw_memory_on_chain:false` | memory payloads, ACL bodies, tenant names, keys, seed phrases |
|
|
110
|
+
| Capability grant | schema id, grant id, issuer ref, subject ref, scope, expiry, nonce/nullifier commitment, signature/ref | private identities, authorization body text, private ACLs |
|
|
111
|
+
| Capability revocation | schema id, revocation id, grant id/ref, reason code, nullifier/ref, timestamp, signature/ref | private incident details, raw access logs, private identities |
|
|
112
|
+
| Benchmark attestation | schema id, report hash, dataset ref, runner ref, package ref, metric names, aggregate counts, signature/ref | raw dataset rows, scoring prompts, model outputs, provider responses |
|
|
113
|
+
| Proof packet | packet id, included artifact refs, roots, counts, verification summary, boundary statement | any raw memory or private operational data |
|
|
114
|
+
|
|
115
|
+
## Public-safe proof boundary
|
|
116
|
+
|
|
117
|
+
Conformance claims may say that Enigma verified Enigma-controlled or Enigma-mediated state:
|
|
118
|
+
|
|
119
|
+
- local vault event receipts;
|
|
120
|
+
- active and tombstoned memory address commitments;
|
|
121
|
+
- receipt-chain roots and exported bundle roots;
|
|
122
|
+
- context-pack retrieval/injection receipts;
|
|
123
|
+
- connector setup plans and idempotent config writes;
|
|
124
|
+
- relay, gateway, usage, settlement, and proof-network receipt refs;
|
|
125
|
+
- benchmark report hashes and aggregate benchmark attestations;
|
|
126
|
+
- Solana-ready anchor payloads that have not been submitted by the CLI.
|
|
127
|
+
|
|
128
|
+
Conformance claims must not say or imply that Enigma proves:
|
|
129
|
+
|
|
130
|
+
- an external hosted provider deleted memory;
|
|
131
|
+
- a model forgot information;
|
|
132
|
+
- a user, company, tenant, wallet, or provider account was verified unless a separate reviewed identity process exists;
|
|
133
|
+
- benchmark leadership from SDK mechanics alone;
|
|
134
|
+
- legal, SOC 2, HIPAA, GDPR, or financial compliance certification;
|
|
135
|
+
- token ROI, investment outcome, or provider invoice savings;
|
|
136
|
+
- Solana finality unless an independent transaction id and chain verification are supplied outside the local planning command.
|
|
137
|
+
|
|
138
|
+
## Conformance checklist
|
|
139
|
+
|
|
140
|
+
Reviewers should mark every applicable item `pass`, `fail`, or `not applicable` with the evidence file or command hash.
|
|
141
|
+
|
|
142
|
+
### Product and packaging
|
|
143
|
+
|
|
144
|
+
- [ ] Integration states its conformance track: Client Ready, Connector Ready, Operator Ready, Benchmark Ready, or a combination.
|
|
145
|
+
- [ ] Package/client version and Enigma version are recorded.
|
|
146
|
+
- [ ] Supported operating systems and connector ids are recorded.
|
|
147
|
+
- [ ] Public examples use generic ids, hashes, roots, counts, and placeholders only.
|
|
148
|
+
- [ ] The integration does not require external provider credentials for baseline local conformance.
|
|
149
|
+
- [ ] The integration does not deploy infrastructure, create cloud accounts, submit chain transactions, or publish packages during review.
|
|
150
|
+
|
|
151
|
+
### CLI and SDK behavior
|
|
152
|
+
|
|
153
|
+
- [ ] Baseline local memory commands run with public-safe sample inputs.
|
|
154
|
+
- [ ] Receipt verification succeeds for a valid export.
|
|
155
|
+
- [ ] Receipt verification fails for malformed or tampered exports.
|
|
156
|
+
- [ ] Command output avoids raw memory, prompts, transcripts, completions, embeddings, secrets, private keys, seed phrases, tenant names, and provider responses.
|
|
157
|
+
- [ ] Error messages identify the failing boundary without printing private payloads.
|
|
158
|
+
- [ ] SDK/MCP equivalents, if used, produce the same public-safe receipt semantics as the CLI.
|
|
159
|
+
|
|
160
|
+
### Connector behavior
|
|
161
|
+
|
|
162
|
+
- [ ] Dry run shows planned connector changes without writing files.
|
|
163
|
+
- [ ] Write mode only runs after an explicit write command or flag.
|
|
164
|
+
- [ ] Existing unrelated client settings are preserved.
|
|
165
|
+
- [ ] Existing sibling MCP servers are preserved.
|
|
166
|
+
- [ ] Equivalent repeated writes are idempotent.
|
|
167
|
+
- [ ] Missing clients are skipped with a reason instead of forcing default config creation.
|
|
168
|
+
- [ ] Backup behavior is documented and only occurs when an existing config changes.
|
|
169
|
+
|
|
170
|
+
### Proof Network behavior
|
|
171
|
+
|
|
172
|
+
- [ ] Anchor batches contain roots/refs/counts only.
|
|
173
|
+
- [ ] Capability grants contain scoped public refs, expiry, and replay-resistant ids/nullifiers.
|
|
174
|
+
- [ ] Revocations invalidate grants by public grant/ref/nullifier, not by exposing private ACL bodies.
|
|
175
|
+
- [ ] Benchmark attestations contain report hashes, dataset refs, runner refs, package refs, metrics, and aggregate counts only.
|
|
176
|
+
- [ ] `enigma chain verify --file <json>` accepts every valid supported artifact type.
|
|
177
|
+
- [ ] `enigma chain verify --file <json>` rejects unsupported schemas, missing roots, malformed hashes, invalid expiry, duplicate ids, and private payload keys/values.
|
|
178
|
+
- [ ] Chain artifacts clearly state `transaction_submitted:false` and `raw_memory_on_chain:false`.
|
|
179
|
+
|
|
180
|
+
### Operator evidence
|
|
181
|
+
|
|
182
|
+
- [ ] Operators keep private bundles, raw reports, provider responses, and customer configs out of public packets.
|
|
183
|
+
- [ ] Public packets include enough refs and hashes for independent integrity checks.
|
|
184
|
+
- [ ] Rotation, revocation, and incident examples use reason codes and public refs, not private incident narratives.
|
|
185
|
+
- [ ] Operators document who can issue grants, revoke grants, and sign attestations.
|
|
186
|
+
- [ ] Operators document retention boundaries for raw benchmark and support evidence.
|
|
187
|
+
|
|
188
|
+
## Test categories
|
|
189
|
+
|
|
190
|
+
A conformance test suite should cover behavior, boundaries, and negative cases. The suite may be implemented in the consumer repository, but the review packet must summarize the result and include public-safe evidence.
|
|
191
|
+
|
|
192
|
+
### 1. Install and command discovery
|
|
193
|
+
|
|
194
|
+
- CLI binary is discoverable.
|
|
195
|
+
- Version command reports the expected package version.
|
|
196
|
+
- Help output lists the required baseline and chain planning commands.
|
|
197
|
+
- No command discovery path requires provider credentials.
|
|
198
|
+
|
|
199
|
+
### 2. Local memory proof loop
|
|
200
|
+
|
|
201
|
+
- Public-safe memory can be remembered.
|
|
202
|
+
- Search and context commands can retrieve by public-safe query.
|
|
203
|
+
- Exported receipts verify successfully.
|
|
204
|
+
- Tampering with a receipt id, root, count, or signature causes verification failure.
|
|
205
|
+
- Empty or malformed exports fail with structured errors.
|
|
206
|
+
|
|
207
|
+
### 3. Connector dry-run and write safety
|
|
208
|
+
|
|
209
|
+
- Dry-run output includes target connector id, intended command, intended env keys, and changed status.
|
|
210
|
+
- Dry-run does not modify the target config.
|
|
211
|
+
- Write mode modifies only the Enigma MCP entry.
|
|
212
|
+
- Re-run write mode is idempotent.
|
|
213
|
+
- Invalid connector id fails without writing.
|
|
214
|
+
- Missing config path under `--connect-installed` is skipped, not created by surprise.
|
|
215
|
+
|
|
216
|
+
### 4. Proof Network artifact validation
|
|
217
|
+
|
|
218
|
+
- Valid anchor batch passes.
|
|
219
|
+
- Valid grant passes.
|
|
220
|
+
- Valid revocation passes.
|
|
221
|
+
- Valid benchmark attestation passes.
|
|
222
|
+
- Valid packet containing supported artifact refs passes.
|
|
223
|
+
- Private keys such as `memory`, `prompt`, `transcript`, `completion`, `embedding`, `tenant`, `apiKey`, `privateKey`, `seedPhrase`, `providerResponse`, and `aclBody` are rejected anywhere in proof payloads.
|
|
224
|
+
- Private-looking values such as bearer tokens, seed phrases, PEM blocks, raw prompt text, local personal paths, and provider response blobs are rejected.
|
|
225
|
+
- Unsupported schema names are rejected.
|
|
226
|
+
- Chain artifacts never claim transaction submission unless a separate chain-verification process is explicitly reviewed.
|
|
227
|
+
|
|
228
|
+
### 5. Benchmark attestation boundaries
|
|
229
|
+
|
|
230
|
+
- Report file hash is computed from the private report and only the hash is public.
|
|
231
|
+
- Dataset refs are public refs or hashes, not raw dataset rows.
|
|
232
|
+
- Runner refs identify code/package versions without embedding source blobs.
|
|
233
|
+
- Package refs identify package name/version/integrity without npm tokens.
|
|
234
|
+
- Aggregate metric names and counts are public-safe.
|
|
235
|
+
- Raw scoring prompts, model outputs, provider responses, and licensed dataset rows are excluded.
|
|
236
|
+
|
|
237
|
+
### 6. Failure and abuse cases
|
|
238
|
+
|
|
239
|
+
- Secret-like values in inputs are rejected before artifact creation.
|
|
240
|
+
- Unknown connector ids do not fall back to unsafe defaults.
|
|
241
|
+
- Malformed JSON exits non-zero and prints no private data.
|
|
242
|
+
- Expired grants fail validation.
|
|
243
|
+
- Revoking an unknown grant produces a public-safe error.
|
|
244
|
+
- Duplicate artifact ids in a packet fail validation.
|
|
245
|
+
- Missing `transaction_submitted:false` or `raw_memory_on_chain:false` fails chain artifact validation.
|
|
246
|
+
- Attempting to include raw memory in an anchor, grant, revocation, attestation, or packet fails validation.
|
|
247
|
+
|
|
248
|
+
## Badge levels
|
|
249
|
+
|
|
250
|
+
Badges are scoped to the reviewed track and version. A badge must link to a public-safe review packet or a signed review summary.
|
|
251
|
+
|
|
252
|
+
| Badge | Meaning | Minimum evidence |
|
|
253
|
+
| --- | --- | --- |
|
|
254
|
+
| Enigma Memory Ready: Client | Client can use Enigma MCP/CLI memory proofs safely. | Baseline local proof loop, MCP startup evidence, receipt verification, boundary checklist. |
|
|
255
|
+
| Enigma Memory Ready: Connector | Connector can plan and write safe config changes. | Dry-run/write/idempotency evidence, skipped-client behavior, config preservation test. |
|
|
256
|
+
| Enigma Memory Ready: Operator | Operator can produce safe proof packets and manage grants/revocations. | Anchor, grant, revoke, packet, and verify evidence with proof-boundary checklist. |
|
|
257
|
+
| Enigma Memory Ready: Benchmark | Benchmark runner can attest reports without leaking raw inputs. | Report hash, dataset refs, runner refs, package refs, aggregate metrics, attestation verification. |
|
|
258
|
+
| Enigma Memory Ready: Full | Integration satisfies all applicable tracks. | All above evidence plus a consolidated proof packet. |
|
|
259
|
+
|
|
260
|
+
Badge copy must include the reviewed versions, for example:
|
|
261
|
+
|
|
262
|
+
```text
|
|
263
|
+
Enigma Memory Ready: Connector
|
|
264
|
+
Reviewed for <client-or-package> <version> with enigma-memory <version>.
|
|
265
|
+
Scope: local MCP connector setup and receipt verification only.
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
## Common failure cases
|
|
269
|
+
|
|
270
|
+
A review should fail if any of these appear in public artifacts, examples, tests, logs, or badge claims:
|
|
271
|
+
|
|
272
|
+
- Raw memory text, prompts, transcripts, completions, embeddings, provider responses, raw dataset rows, or private benchmark scoring inputs.
|
|
273
|
+
- API keys, bearer tokens, SSH keys, PEM blocks, private keys, seed phrases, 2FA codes, cookies, local account names, or tenant names.
|
|
274
|
+
- Absolute local paths that reveal a person, tenant, workspace, customer, or account.
|
|
275
|
+
- Chain artifacts that omit `transaction_submitted:false` or imply a transaction was submitted by local planning commands.
|
|
276
|
+
- Proof artifacts that include ACL bodies instead of public scope refs and commitments.
|
|
277
|
+
- Connector writes that overwrite unrelated client settings.
|
|
278
|
+
- Claims that Enigma proves provider-side deletion, model forgetting, legal compliance, benchmark leadership, or financial outcomes.
|
|
279
|
+
- Benchmarks that publish raw licensed dataset rows or provider outputs instead of hashes, refs, aggregates, and attestations.
|
|
280
|
+
- Tests that pass by suppressing verification errors or accepting malformed proof artifacts.
|
|
281
|
+
|
|
282
|
+
## Review process
|
|
283
|
+
|
|
284
|
+
1. **Application**: submit the track, package/client/operator name, version, supported operating systems, connector ids, and public-safe review packet location.
|
|
285
|
+
2. **Boundary screen**: reviewer checks examples, logs, artifacts, docs, and tests for private data and unsupported claims before running commands.
|
|
286
|
+
3. **Command replay**: reviewer runs the required command set for the requested track using public-safe sample inputs.
|
|
287
|
+
4. **Artifact validation**: reviewer verifies receipts and proof-network JSON with `enigma verify` and `enigma chain verify --file <json>` as applicable.
|
|
288
|
+
5. **Negative tests**: reviewer runs malformed, tampered, expired, duplicate, unsupported-schema, and private-payload cases.
|
|
289
|
+
6. **Connector inspection**: for connector tracks, reviewer compares config before/after write mode and confirms dry-run and idempotency behavior.
|
|
290
|
+
7. **Badge decision**: reviewer records pass/fail/not-applicable checklist items, reviewed versions, evidence hashes, known limitations, and badge scope.
|
|
291
|
+
8. **Publication**: only the public-safe summary, hashes, roots, refs, counts, and signatures are published. Private bundles and raw reports stay private.
|
|
292
|
+
9. **Renewal**: badge holders renew when changing connector write behavior, proof artifact schemas, chain-planning semantics, benchmark methodology, or major package versions.
|
|
293
|
+
10. **Revocation**: Enigma may revoke or narrow a badge if published artifacts leak private data, claims exceed reviewed boundaries, or later versions remove required safety behavior.
|
|
294
|
+
|
|
295
|
+
## Required evidence bundle
|
|
296
|
+
|
|
297
|
+
A reviewer should be able to inspect the bundle without access to a private vault, customer workspace, provider account, cloud console, wallet, or hosted service.
|
|
298
|
+
|
|
299
|
+
| File | Required for | Contents |
|
|
300
|
+
| --- | --- | --- |
|
|
301
|
+
| `memory-ready-manifest.json` | all tracks | subject ref, version, Enigma version, requested tracks, platform family, connector ids, public evidence file refs, reviewer key/signature refs |
|
|
302
|
+
| `command-results.json` | all tracks | command refs, exit status, artifact hash, started/ended timestamps, redaction status, and boundary result for each required command |
|
|
303
|
+
| `receipt-verification.json` | Client, Connector, Operator | export ref, receipt count, root refs, verification status, tamper-test status, and failure-case status |
|
|
304
|
+
| `connector-safety.json` | Client, Connector | dry-run hash, write hash when applicable, idempotency result, skipped-client list, config-preservation result |
|
|
305
|
+
| `proof-network-packet.json` | Operator, Benchmark, Full | supported proof-network artifact refs, roots, counts, signatures/refs, and boundary statement |
|
|
306
|
+
| `benchmark-attestation.json` | Benchmark, Full | report hash, dataset refs, runner ref, package ref, metric names, aggregate counts, and attestation verification result |
|
|
307
|
+
| `claim-boundaries.txt` | all tracks | short human-readable statement of what the badge proves and does not prove |
|
|
308
|
+
|
|
309
|
+
Every evidence bundle must be reproducible from a clean local review directory using public-safe fixtures. If a reviewer cannot replay the command sequence without private data, the bundle is not sufficient for a public badge.
|
|
310
|
+
|
|
311
|
+
## Decision rules
|
|
312
|
+
|
|
313
|
+
Use these rules consistently so the badge is meaningful across connectors and operators.
|
|
314
|
+
|
|
315
|
+
- **Pass**: all required commands for the requested track run locally; all required artifacts validate; all negative cases fail closed; no private payloads or unsupported claims appear in public evidence.
|
|
316
|
+
- **Conditional pass**: only allowed for documentation wording defects or missing optional evidence. Conditional pass must name the fix and must not be used for privacy, receipt, proof-network, or connector-write failures.
|
|
317
|
+
- **Fail**: any required command cannot be replayed, any proof artifact leaks private data, any verifier accepts tampered evidence, any connector overwrites unrelated settings, or any badge claim exceeds the reviewed proof boundary.
|
|
318
|
+
- **Not applicable**: allowed only when a checklist item belongs to a track the subject did not request.
|
|
319
|
+
|
|
320
|
+
Privacy and proof-boundary failures are release-blocking. They cannot be waived by adding a warning label after the artifact has been generated.
|
|
321
|
+
|
|
322
|
+
## Public-safe fixture policy
|
|
323
|
+
|
|
324
|
+
Conformance tests should use small fixtures that are intentionally boring and non-identifying:
|
|
325
|
+
|
|
326
|
+
- memory fixture text: generic project notes with no people, customers, secrets, internal codenames, or provider output;
|
|
327
|
+
- query fixture: short generic strings such as `public-safe query`;
|
|
328
|
+
- subject refs: opaque refs such as `client:example-desktop` or hashes, not account names;
|
|
329
|
+
- dataset refs: public dataset/version refs or hashes, not raw rows;
|
|
330
|
+
- runner/package refs: package name, version, integrity hash, and source ref when public;
|
|
331
|
+
- key/signature refs: public verification-key refs or detached signature refs, never private keys.
|
|
332
|
+
|
|
333
|
+
The negative fixture set should include intentionally unsafe keys and values so reviewers can prove rejection behavior without publishing real secrets.
|
|
334
|
+
|
|
335
|
+
## Public review packet template
|
|
336
|
+
|
|
337
|
+
```json
|
|
338
|
+
{
|
|
339
|
+
"schema": "enigma.memory_ready.review_packet.v1",
|
|
340
|
+
"track": ["Connector Ready"],
|
|
341
|
+
"subject": {
|
|
342
|
+
"name_ref": "public-package-or-client-ref",
|
|
343
|
+
"version": "0.0.0",
|
|
344
|
+
"enigma_version": "0.1.14"
|
|
345
|
+
},
|
|
346
|
+
"commands": [
|
|
347
|
+
{
|
|
348
|
+
"command_ref": "sha256:...",
|
|
349
|
+
"purpose": "connector-dry-run",
|
|
350
|
+
"status": "pass"
|
|
351
|
+
}
|
|
352
|
+
],
|
|
353
|
+
"artifacts": [
|
|
354
|
+
{
|
|
355
|
+
"type": "enigma.proof_network.anchor_batch.v1",
|
|
356
|
+
"file_ref": "anchor-batch.json",
|
|
357
|
+
"sha256": "...",
|
|
358
|
+
"transaction_submitted": false,
|
|
359
|
+
"raw_memory_on_chain": false
|
|
360
|
+
}
|
|
361
|
+
],
|
|
362
|
+
"checklist_summary": {
|
|
363
|
+
"pass": 0,
|
|
364
|
+
"fail": 0,
|
|
365
|
+
"not_applicable": 0
|
|
366
|
+
},
|
|
367
|
+
"boundaries": [
|
|
368
|
+
"No provider-side deletion claim.",
|
|
369
|
+
"No model-forgetting claim.",
|
|
370
|
+
"No compliance-certification claim."
|
|
371
|
+
],
|
|
372
|
+
"reviewer_signature_ref": "public-signature-or-key-ref"
|
|
373
|
+
}
|
|
374
|
+
```
|
|
375
|
+
|
|
376
|
+
The template intentionally uses refs and hashes. Do not replace them with private command transcripts, raw memory, provider responses, customer identifiers, or local absolute paths.
|