xoonya 1.25.0 → 1.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,27 @@
1
+ # xoonya Compatibility Note
2
+
3
+ `xoonya` is a first public contract built from private lineage.
4
+
5
+ That means the current public center of gravity is:
6
+
7
+ - `Canonical Event Bundle`
8
+ - `Receipt`
9
+ - `Proof Bundle`
10
+
11
+ Older compact receipt and profile helpers remain available because they are useful support breadth, not because the public contract is required to center on them.
12
+
13
+ Current retained compatibility helpers include:
14
+
15
+ - `createReceipt(...)`
16
+ - `verifyReceipt(...)`
17
+ - `createReceiptV2(...)`
18
+ - `verifyReceiptV2(...)`
19
+ - `createProofEnvelopeV1(...)`
20
+ - `verifyProofEnvelopeV1(...)`
21
+ - profile verification helpers
22
+
23
+ Public guidance:
24
+
25
+ - use the canonical event and proof-bundle flow first
26
+ - treat retained compact helpers as compatibility/support utilities
27
+ - do not model new integrations as if the older helper lineage were the only public proof contract
@@ -0,0 +1,47 @@
1
+ # xoonya Cross-Runtime Posture
2
+
3
+ `xoonya` is intended to be reproducible across runtimes.
4
+
5
+ The current reference implementation is Node.js, but the proof contract is designed so that:
6
+
7
+ - canonical event normalization is explicit
8
+ - hashing is deterministic
9
+ - receipt derivation is deterministic
10
+ - proof-bundle verification is deterministic
11
+
12
+ ## Current reference runtime
13
+
14
+ - Node.js `>=18`
15
+
16
+ ## What is already explicit
17
+
18
+ - canonical object ordering is defined by the proof implementation
19
+ - event commitment is derived from canonical serialized event content
20
+ - receipt IDs are derived from canonical receipt-signing material
21
+ - proof-bundle verification checks deterministic structural invariants
22
+
23
+ ## Current publication artifacts
24
+
25
+ - `vectors/conformance-vectors.json`
26
+ - `vectors/adversarial-vectors.json`
27
+
28
+ These vectors are intended to be reusable by future implementations in other runtimes.
29
+
30
+ ## Current limitation
31
+
32
+ This repo does not yet ship a second-language reference implementation.
33
+
34
+ So the current cross-runtime posture is:
35
+
36
+ - contract and vectors are published
37
+ - Node.js reference behavior is enforced
38
+ - additional runtime implementations can now target the same vector sets
39
+
40
+ ## Final release expectation
41
+
42
+ Before calling the proof product fully closed, future implementations should be able to replay the published vectors and reach the same outcomes for:
43
+
44
+ - canonical event commitments
45
+ - receipt IDs
46
+ - proof-bundle verification
47
+ - adversarial rejection reasons where contractually stable
@@ -0,0 +1,445 @@
1
+ # xoonya Final Contract
2
+
3
+ ## Purpose
4
+
5
+ `xoonya` is the neutral proof foundation for machine actions.
6
+
7
+ It exists to make machine-action evidence:
8
+
9
+ - deterministic
10
+ - portable
11
+ - minimal
12
+ - verifiable
13
+ - replayable
14
+ - independent of payment rails, settlement systems, and workflow engines
15
+
16
+ `xoonya` is not a commerce system, policy engine, or execution runtime.
17
+
18
+ ## Public Release Stance
19
+
20
+ This product is being prepared as a first public release from private lineage.
21
+
22
+ That means:
23
+
24
+ - prior internal proof formats are design history, not public obligations
25
+ - useful lineage may be preserved where it strengthens the final product
26
+ - historical private helper shapes do not automatically become the public contract
27
+
28
+ The public baseline should therefore be chosen for correctness, clarity, determinism, and extensibility, not for backward compatibility with prior private repos.
29
+
30
+ ## Product Boundary
31
+
32
+ `xoonya` owns:
33
+
34
+ - canonical event commitment rules
35
+ - canonical hashing rules
36
+ - receipt construction
37
+ - proof bundle construction
38
+ - receipt verification
39
+ - proof bundle verification
40
+ - conformance vectors
41
+ - versioned proof schemas
42
+
43
+ `xoonya` does not own:
44
+
45
+ - pricing
46
+ - balances
47
+ - refunds
48
+ - treasury logic
49
+ - workflow semantics
50
+ - task catalogs
51
+ - execution orchestration
52
+ - settlement orchestration
53
+ - market rules
54
+ - governance policy
55
+
56
+ ## Core Doctrine
57
+
58
+ The proof model is layered.
59
+
60
+ ### Layer 1: Canonical Event Bundle
61
+
62
+ This is the machine fact being committed.
63
+
64
+ It is the canonical, deterministic representation of an externally consequential machine event.
65
+
66
+ ### Layer 2: Receipt
67
+
68
+ This is the minimal commitment artifact.
69
+
70
+ It proves that a specific identity committed to a specific canonical event commitment under a specific versioned receipt contract.
71
+
72
+ ### Layer 3: Proof Bundle
73
+
74
+ This carries the richer proof context around the receipt:
75
+
76
+ - anchors
77
+ - attestation references
78
+ - evidence references
79
+ - batch inclusion material
80
+ - metadata
81
+
82
+ ### Layer 4: Profiles
83
+
84
+ Profiles are optional domain-specific overlays for things like:
85
+
86
+ - economic handoff
87
+ - registry lifecycle
88
+ - compliance
89
+ - industry-specific evidence rules
90
+
91
+ Profiles must not mutate the base proof contract.
92
+
93
+ ## Non-Negotiable Invariants
94
+
95
+ The following invariants must hold for all final versions.
96
+
97
+ ### 1. Deterministic canonicalization
98
+
99
+ The same logical event must always produce the same canonical byte representation.
100
+
101
+ No implementation may depend on:
102
+
103
+ - locale
104
+ - timezone
105
+ - object insertion order
106
+ - language-specific serializer behavior
107
+ - non-canonical map ordering
108
+
109
+ ### 2. Deterministic hashing
110
+
111
+ The same canonical event bytes must always yield the same commitment hash.
112
+
113
+ Hashing must use explicit domain separation.
114
+
115
+ ### 3. Minimal receipt
116
+
117
+ The receipt must stay small and stable.
118
+
119
+ It must not absorb:
120
+
121
+ - economics
122
+ - payment semantics
123
+ - execution transcript detail
124
+ - attestation bodies
125
+ - anchor proofs
126
+
127
+ ### 4. Optional anchoring
128
+
129
+ Anchoring is optional.
130
+
131
+ Proof validity must not depend on anchoring.
132
+
133
+ Anchoring strengthens external assurance and chronology, but does not define whether the receipt is well-formed or verifiable.
134
+
135
+ ### 5. Single machine truth format
136
+
137
+ There must be one machine-native proof contract.
138
+
139
+ Human-readable renderings are views or encodings of the same proof objects, not separate proof protocols.
140
+
141
+ ### 6. Versioned stability
142
+
143
+ Versions are explicit and strict.
144
+
145
+ Older versions remain historically valid.
146
+
147
+ New versions must not silently reinterpret older receipts.
148
+
149
+ ## Canonical Event Bundle v1
150
+
151
+ The canonical event bundle is the fact layer.
152
+
153
+ Its purpose is to represent an externally consequential machine event in a deterministic and portable way.
154
+
155
+ ### Required fields
156
+
157
+ - `version`
158
+ - `domain_id`
159
+ - `sequence`
160
+ - `actor_id`
161
+ - `adapter_source`
162
+ - `event_type`
163
+ - `event_hash`
164
+
165
+ ### Optional fields
166
+
167
+ - `timestamp_ns`
168
+ - `parent_refs`
169
+ - `capability_refs`
170
+ - `attestation_ref`
171
+ - `semantic_slots`
172
+
173
+ ### Rules
174
+
175
+ - ordering is determined by explicit replay-safe fields, not by timestamps
176
+ - timestamps may exist, but must not define event ordering
177
+ - semantic slots are interpretation hints and must not change the event commitment semantics
178
+ - attestation references are optional and external
179
+
180
+ ### Commitment rule
181
+
182
+ The canonical event bundle commitment must be derived from the canonical serialized form of the full event bundle object, not from a hand-picked concatenation of selected fields.
183
+
184
+ This is the preferred rule because it:
185
+
186
+ - reduces hidden ambiguity
187
+ - reduces implementation drift
188
+ - makes conformance easier to test
189
+ - makes schema evolution cleaner
190
+
191
+ ## Receipt v1
192
+
193
+ The receipt is the minimal commitment artifact.
194
+
195
+ ### Purpose
196
+
197
+ The receipt proves:
198
+
199
+ - which proof contract version applies
200
+ - which identity issued the commitment
201
+ - which canonical event commitment is being committed
202
+ - that the issuer signed or committed that event commitment
203
+
204
+ ### Required fields
205
+
206
+ - `version`
207
+ - `receipt_id`
208
+ - `agent_identity`
209
+ - `domain_id`
210
+ - `sequence`
211
+ - `event_commitment`
212
+ - `signature`
213
+
214
+ ### Optional fields
215
+
216
+ - `algorithm`
217
+
218
+ ### Rules
219
+
220
+ - `receipt_id` must be deterministic or derivable in a stable way
221
+ - `agent_identity` must be a stable identity reference, not a commerce-specific account handle
222
+ - `event_commitment` must equal the canonical event bundle commitment
223
+ - `signature` must verify against the exact commitment material defined by the contract
224
+
225
+ ### Explicit exclusions
226
+
227
+ The receipt must not directly carry:
228
+
229
+ - prices
230
+ - balances
231
+ - refunds
232
+ - quote details
233
+ - settlement details
234
+ - anchor records
235
+ - Merkle paths
236
+ - attestation bodies
237
+ - execution transcripts
238
+
239
+ ## Proof Bundle v1
240
+
241
+ The proof bundle is the portable richer proof container.
242
+
243
+ ### Required fields
244
+
245
+ - `ceb`
246
+ - `receipt`
247
+
248
+ ### Optional fields
249
+
250
+ - `anchors`
251
+ - `attestations`
252
+ - `evidence_refs`
253
+ - `batch_refs`
254
+ - `metadata`
255
+
256
+ ### Purpose
257
+
258
+ The proof bundle is where richer proof and portability features live without bloating the receipt.
259
+
260
+ This is the correct place for:
261
+
262
+ - chain or ledger anchors
263
+ - block references
264
+ - batch roots
265
+ - inclusion proofs
266
+ - external evidence references
267
+ - optional attestation references
268
+
269
+ ### Rules
270
+
271
+ - the receipt remains valid without a proof bundle
272
+ - the proof bundle must never alter the meaning of the receipt
273
+ - all optional fields must be additive, not redefining
274
+
275
+ ## Attestation Relationship
276
+
277
+ Attestation is separate from proof.
278
+
279
+ `xoonya` may reference attestation material, commit to attestation hashes, and verify attestation-shaped adjuncts if needed, but attestation must remain conceptually separate from the receipt core.
280
+
281
+ ### Rule
282
+
283
+ Attestation may be consumed.
284
+ It must not become the receipt.
285
+
286
+ ## Profiles
287
+
288
+ Profiles are optional structured overlays built on top of base proof primitives.
289
+
290
+ Examples:
291
+
292
+ - economic receipt profile
293
+ - registry lifecycle profile
294
+ - compliance profile
295
+
296
+ ### Profile rule
297
+
298
+ Profiles may:
299
+
300
+ - reference receipts
301
+ - reference proof bundles
302
+ - define domain-specific payload semantics
303
+ - define domain-specific verification logic
304
+
305
+ Profiles may not:
306
+
307
+ - redefine base receipt meaning
308
+ - redefine canonical event bundle meaning
309
+ - create hidden alternate proof cores
310
+
311
+ ## Batching
312
+
313
+ Batching is supported, but not part of the minimal receipt core.
314
+
315
+ ### Rule
316
+
317
+ Multiple proof commitments may be compressed into a deterministic batch root.
318
+
319
+ Batch-related material belongs in:
320
+
321
+ - proof bundle
322
+ - batch metadata
323
+ - inclusion proofs
324
+ - anchor references
325
+
326
+ not in the base receipt itself.
327
+
328
+ ## Verification Contract
329
+
330
+ Verification must produce deterministic outcomes.
331
+
332
+ ### Verification result fields
333
+
334
+ - `ok`
335
+ - `code`
336
+ - `message`
337
+ - optional `details`
338
+
339
+ ### Canonical failure classes
340
+
341
+ - invalid schema
342
+ - unsupported version
343
+ - hash mismatch
344
+ - signature mismatch
345
+ - receipt mismatch
346
+ - bundle mismatch
347
+ - profile mismatch
348
+
349
+ ### Rule
350
+
351
+ The same invalid input must fail the same way across conformant implementations.
352
+
353
+ ## Versioning Strategy
354
+
355
+ ### v1
356
+
357
+ Freeze:
358
+
359
+ - canonical event bundle v1
360
+ - receipt v1
361
+ - proof bundle v1
362
+ - verification result contract v1
363
+
364
+ ### Future versions
365
+
366
+ A new version is justified only when:
367
+
368
+ - commitment semantics change
369
+ - canonicalization semantics change
370
+ - identity/signature semantics change in a breaking way
371
+ - proof container semantics change in a breaking way
372
+
373
+ New profiles do not require a new core proof version unless they change base semantics.
374
+
375
+ ## Conformance Requirements
376
+
377
+ Any implementation claiming compatibility must pass:
378
+
379
+ - canonicalization vectors
380
+ - hashing vectors
381
+ - receipt creation vectors
382
+ - receipt verification vectors
383
+ - proof bundle verification vectors
384
+ - adversarial vectors
385
+
386
+ ### Adversarial vector classes
387
+
388
+ - field ordering drift
389
+ - null / absent field ambiguity
390
+ - unicode normalization edge cases
391
+ - timestamp representation drift
392
+ - duplicate proof entries
393
+ - wrong anchor references
394
+ - wrong batch inclusion paths
395
+ - signature mismatch
396
+ - tampered metadata
397
+ - version mismatch
398
+
399
+ ## Public API Direction
400
+
401
+ The public API of `xoonya` should center on:
402
+
403
+ - `canonicalizeEvent`
404
+ - `hashEvent`
405
+ - `emitReceipt`
406
+ - `verifyReceipt`
407
+ - `buildProofBundle`
408
+ - `verifyProofBundle`
409
+
410
+ Optional profile helpers may be added separately.
411
+
412
+ ## What Should Be Carried Forward From Older Proof Lineage
413
+
414
+ Keep:
415
+
416
+ - minimal commitment philosophy
417
+ - strict domain separation
418
+ - optional anchoring
419
+ - proof envelope / bundle layering
420
+ - additive profile concept
421
+ - strong conformance vector discipline
422
+
423
+ Do not freeze directly:
424
+
425
+ - historical internal names
426
+ - historical version labels
427
+ - exact old byte-count decisions as sacred
428
+ - old rail-shaped assumptions
429
+
430
+ ## Final Product Position
431
+
432
+ `xoonya` should become:
433
+
434
+ - the neutral machine truth layer
435
+ - the portable proof layer
436
+ - the deterministic evidence layer
437
+
438
+ It should be usable:
439
+
440
+ - independently of `xytara`
441
+ - independently of any chain
442
+ - independently of any specific payment rail
443
+ - independently of any specific runtime
444
+
445
+ That independence is the foundation of the whole stack.
package/README.md CHANGED
@@ -12,6 +12,31 @@ It exists to make machine evidence:
12
12
 
13
13
  This repo is the proof-side half of the final two-repo public stack. It focuses on canonical events, receipts, proof bundles, and verification. It does not own pricing, catalogs, workflow orchestration, payment rails, or settlement policy.
14
14
 
15
+ ## Start Here
16
+
17
+ If you are new to the proof-side package, use this order:
18
+
19
+ 1. read [START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xoonya/START_HERE.md)
20
+ 2. run `node examples/package_quickstart.js`
21
+ 3. run `npm run verify:all`
22
+ 4. use [FINAL_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xoonya/FINAL_CONTRACT.md) and [SERVICE_CONTRACT.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xoonya/SERVICE_CONTRACT.md) as the durable public contract
23
+
24
+ If you are integrating from outside the stack, also read:
25
+
26
+ - [CROSS_RUNTIME_POSTURE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xoonya/CROSS_RUNTIME_POSTURE.md)
27
+ - [integrations/PROOF_INTEGRATION_PROCESS.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xoonya/integrations/PROOF_INTEGRATION_PROCESS.md)
28
+
29
+ ## Production Path
30
+
31
+ The intended production-facing proof path is now:
32
+
33
+ 1. receive the transaction-side handoff or default path artifact from `xytara`
34
+ 2. inspect the proof-side review posture
35
+ 3. confirm carry and run posture
36
+ 4. emit and verify the proof-native completion path
37
+
38
+ The rest of this README explains the broader route ladder, but the public starting posture should now be understandable from that one proof-side path.
39
+
15
40
  The package and service now also expose a default proof center surface so the intended proof-native path is easy to inspect directly:
16
41
 
17
42
  - canonical event bundle v1
@@ -130,6 +155,34 @@ Primary proof-model routes:
130
155
  - `POST /v1/proof-center/transaction-handoff/run`
131
156
  - `GET /v1/proof-center/result-package-handoff`
132
157
  - `GET /v1/proof-center/result-package-handoff/summary`
158
+ - `GET /v1/proof-center/governance`
159
+ - `GET /v1/proof-center/governance/summary`
160
+ - `GET /v1/proof-center/bridge`
161
+ - `GET /v1/proof-center/bridge/summary`
162
+ - `GET /v1/proof-center/bridge/profile-support`
163
+ - `POST /v1/proof-center/governance/interpretation-validate`
164
+ - `POST /v1/proof-center/governance/coordination`
165
+ - `POST /v1/proof-center/governance/dashboard`
166
+ - `POST /v1/proof-center/governance/operator-view`
167
+ - `POST /v1/proof-center/governance/admin-view`
168
+ - `POST /v1/proof-center/governance/dashboard-pack`
169
+ - `POST /v1/proof-center/governance/workflow-pack`
170
+ - `POST /v1/proof-center/governance/signoff-pack`
171
+ - `POST /v1/proof-center/governance/disputes/summary`
172
+ - `POST /v1/proof-center/governance/disputes/case-review`
173
+ - `POST /v1/proof-center/governance/disputes/action`
174
+ - `POST /v1/proof-center/governance/disputes/case-bundle`
175
+ - `POST /v1/proof-center/governance/disputes/resolution-pack`
176
+ - `POST /v1/proof-center/governance/console-pack`
177
+ - `POST /v1/proof-center/governance/handoff-bundle`
178
+ - `POST /v1/proof-center/governance/review-link`
179
+ - `POST /v1/proof-center/bridge/receipt-wrap`
180
+ - `POST /v1/proof-center/bridge/validator-verify`
181
+ - `POST /v1/proof-center/bridge/receipt-ledger-handoff`
182
+ - `POST /v1/proof-center/bridge/operator-review-pack`
183
+ - `POST /v1/proof-center/bridge/compatibility-pack`
184
+ - `POST /v1/proof-center/bridge/workflow-pack`
185
+ - `POST /v1/proof-center/bridge/admin-pack`
133
186
  - `POST /v1/proof-center/result-package-handoff/review`
134
187
  - `POST /v1/proof-center/result-package-handoff/review/summary`
135
188
  - `POST /v1/proof-center/result-package-handoff/review/extension-readiness`
@@ -187,6 +240,25 @@ It now also exposes a handoff-intake summary and handoff-intake-boundary summary
187
240
  It now also exposes a handoff-intake-carry summary so the same proof-side intake surface can be reused more directly as compact consumable carry instead of only summary or boundary posture.
188
241
  It now also exposes a handoff-run summary so that same handoff contract can be read directly as the final proof-native run posture instead of only as continuity guidance.
189
242
 
243
+ The Wave B governance carry-over line adds a bounded governance center on the proof side:
244
+
245
+ - governance interpretation validation for receipt-ledger and result-package follow-through
246
+ - governance coordination emission for the next proof-side/operator handoff step
247
+ - governance dashboard, operator-view, admin-view, dashboard-pack, workflow-pack, and signoff-pack packaging
248
+ - dispute summary, case review, metadata-only dispute action, case-bundle export, and resolution-pack export
249
+ - console-pack, handoff-bundle, and explicit review-link surfaces for compact operator carry into the proof-side review/run ladder
250
+
251
+ This keeps governance review attached to the proof-side operating shape without widening `xoonya` into a runtime or economics system.
252
+
253
+ The Wave E bridge carry-over line adds a bounded bridge center on the proof side:
254
+
255
+ - receipt-wrap support for compact compatibility receipts when an outside bridge still needs that bounded surface
256
+ - validator-compatible verification and receipt inspection posture for bridge-side review
257
+ - receipt-ledger handoff packaging for compact proof-to-economics carry
258
+ - operator review packs, workflow packs, admin packs, and compatibility packs so bridge-facing support breadth is easy to inspect without changing the public proof center
259
+
260
+ This keeps the public story centered on `xoonya` while preserving the useful bridge, validator, and profile lineage as support surfaces instead of separate product identities.
261
+
190
262
  The current `1.18.0` line starts turning that adapter-consumable handoff surface into a clearer adapter-usable handoff package:
191
263
 
192
264
  - proof-side handoff-package intake summaries on top of the intake surface
@@ -258,6 +330,15 @@ The current `1.25.0` line starts turning that adapter-ready default path into a
258
330
  - clearer complete-default-path ids across review, carry, and proof-native run posture
259
331
 
260
332
  This is intended to make the proof-side continuation path easier to adopt as the complete public default path an outside builder can use without needing private interpretation.
333
+
334
+ The current `1.26.0` line finalizes that public shape into a cleaner production-ready package:
335
+
336
+ - a publishable [START_HERE.md](C:/Users/Yoga/Desktop/workspace/vscode_workspace_public/naxytra/xoonya/START_HERE.md) onboarding path
337
+ - clearer top-level README entry points for the default proof-side production flow
338
+ - publishable contract, compatibility, and terminology docs carried in the package tarball
339
+ - naming cleanup that keeps the public story anchored to `xytara` and `xoonya`
340
+
341
+ This is intended to make the public proof-side package feel like a finished production-facing product instead of a strong stack that still assumes milestone-history context.
261
342
  - `POST /v1/events/canonicalize`
262
343
  - `POST /v1/events/hash`
263
344
  - `POST /v1/receipts/emit`