@ziffer-io/types 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,120 @@
1
+ ZIFFER SDK LICENSE
2
+
3
+ Copyright (c) 2026 code75 SASU, Paris, France. All rights reserved.
4
+ ZIFFER is a registered trademark of code75 SASU ("code75") — code75.io · ziffer.io
5
+
6
+ This licence governs the software package it accompanies (the "SDK"): the ZIFFER client
7
+ libraries, receipt verifier, wire types and MCP server published by code75. The SDK is
8
+ proprietary software. It is not open source.
9
+
10
+ 1. DEFINITIONS
11
+ "Agreement" means the written contract under which code75 provides the ZIFFER service to
12
+ you or the organisation you act for. code75's standard form of that contract is the ZIFFER
13
+ Customer Agreement, docs/legal/ziffer-customer-agreement.md, v0.1, provided on request.
14
+ "Service" means the ZIFFER service so provided. "You" means the person or organisation
15
+ using the SDK under an Agreement.
16
+
17
+ 2. LICENCE
18
+ Subject to the Agreement and to this licence, code75 grants you a limited, non-exclusive,
19
+ non-transferable, non-sublicensable, revocable licence to install and run the SDK, in
20
+ unmodified form, solely to interact with the Service and to verify the receipts it issues,
21
+ for the term of the Agreement.
22
+
23
+ 3. RESTRICTIONS
24
+ Except as expressly permitted by section 2 or by a law that cannot be excluded by
25
+ contract, you shall not, and shall not permit anyone else to:
26
+ (a) copy, distribute, publish, sublicense, sell, rent, lease or lend the SDK, or make it
27
+ available to any third party;
28
+ (b) modify, adapt, translate or create derivative works of the SDK;
29
+ (c) reverse engineer, decompile, disassemble or otherwise attempt to derive the source
30
+ code, algorithms or protocols of the SDK or the Service;
31
+ (d) use the SDK to build, train or benchmark a product or service that competes with the
32
+ Service, or to access the Service other than through the interfaces code75 documents;
33
+ (e) circumvent, disable or interfere with any security, verification or usage-control
34
+ mechanism of the SDK or the Service;
35
+ (f) remove, obscure or alter any copyright, trademark or other proprietary notice on or
36
+ in the SDK.
37
+
38
+ 4. OWNERSHIP AND INTELLECTUAL PROPERTY
39
+ The SDK is licensed, not sold. code75 and its licensors own and retain all right, title
40
+ and interest in and to the SDK and the Service, including all copyright, patent, trade
41
+ secret, trademark and other intellectual property rights, and all improvements and
42
+ derivative works, by whomever made. Nothing in this licence transfers any such right to
43
+ you. All rights not expressly granted are reserved. Any suggestion, idea or feedback you
44
+ provide about the SDK or the Service may be used by code75 without restriction or
45
+ compensation. "ZIFFER" and "code75" and the associated logos are brands and marks of
46
+ code75; this licence grants no right to use them.
47
+
48
+ 5. THIRD-PARTY COMPONENTS
49
+ The SDK includes third-party open-source components listed in the accompanying file
50
+ THIRD-PARTY-NOTICES. Those components are licensed under their own terms, which govern
51
+ them and prevail over this licence for those components only. This licence does not
52
+ apply to them.
53
+
54
+ 6. UPDATES
55
+ code75 may release updated versions of the SDK. This licence applies to each version you
56
+ install unless a later version is accompanied by a different licence. code75 has no
57
+ obligation to provide updates or support except as stated in the Agreement.
58
+
59
+ 7. YOUR RESPONSIBILITY FOR YOUR ACTIONS AND YOUR DATA
60
+ The Service issues decisions and signed receipts; it does not perform any action. You
61
+ alone decide what your systems do with a decision, you alone hold the credentials with
62
+ which any action is performed, and you alone are responsible for every action your
63
+ systems take or fail to take, for the policy you write and sign, for the data you submit
64
+ to the Service, and for your compliance with applicable law, including data protection,
65
+ export control and sanctions laws. A decision or receipt is not legal, regulatory,
66
+ financial or professional advice and is not a guarantee that any action is lawful,
67
+ appropriate or safe.
68
+
69
+ 7A. INDEMNITY
70
+ You shall defend, indemnify and hold harmless code75, its officers, employees and
71
+ contractors from and against any claim, loss, liability, damage, cost or expense
72
+ (including reasonable legal fees) arising out of or relating to: (a) your use of the
73
+ SDK or the Service; (b) any action taken or not taken by your systems; (c) the policy,
74
+ data or content you provide; or (d) your breach of this licence, the Agreement or
75
+ applicable law.
76
+
77
+ 7B. PRE-RELEASE SOFTWARE
78
+ The SDK and the Service may be provided in a pre-release, evaluation or limited form.
79
+ You accept that such software may contain errors and may change or be withdrawn, and
80
+ you use it at your own risk.
81
+
82
+ 8. NO WARRANTY
83
+ THE SDK IS PROVIDED "AS IS" AND "AS AVAILABLE", WITHOUT WARRANTY OF ANY KIND, EXPRESS,
84
+ IMPLIED OR STATUTORY, INCLUDING WITHOUT LIMITATION ANY WARRANTY OF MERCHANTABILITY,
85
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE OR NON-INFRINGEMENT, TO THE MAXIMUM EXTENT
86
+ PERMITTED BY LAW.
87
+
88
+ 9. LIMITATION OF LIABILITY
89
+ TO THE MAXIMUM EXTENT PERMITTED BY LAW, CODE75 SHALL NOT BE LIABLE FOR ANY INDIRECT,
90
+ INCIDENTAL, SPECIAL, CONSEQUENTIAL OR PUNITIVE DAMAGES, OR FOR ANY LOSS OF PROFITS,
91
+ REVENUE, DATA OR GOODWILL, ARISING OUT OF OR RELATING TO THE SDK, HOWEVER CAUSED AND
92
+ UNDER ANY THEORY OF LIABILITY, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
93
+ CODE75'S TOTAL LIABILITY UNDER THIS LICENCE SHALL NOT EXCEED THE AMOUNT STATED IN THE
94
+ AGREEMENT OR, IF NONE IS STATED, ONE HUNDRED EUROS (EUR 100). Nothing in this licence
95
+ excludes or limits liability that cannot be excluded or limited under applicable law.
96
+
97
+ 10. TERMINATION
98
+ This licence terminates automatically, without notice, if you breach it or when the
99
+ Agreement ends. On termination you shall stop all use of the SDK and destroy every copy
100
+ in your possession or control. Sections 3, 4, 7, 7A, 8, 9, 10, 11 and 12 survive
101
+ termination.
102
+
103
+ 11. GOVERNING LAW AND JURISDICTION
104
+ This licence is governed by the laws of France, without regard to conflict-of-law rules.
105
+ Any dispute arising out of or relating to this licence is submitted to the exclusive
106
+ jurisdiction of the competent courts of Paris, France, unless the Agreement states
107
+ otherwise.
108
+
109
+ 12. GENERAL
110
+ This licence, the Agreement and THIRD-PARTY-NOTICES are the entire terms for the SDK.
111
+ Where this licence and the Agreement conflict, the Agreement prevails. If any provision
112
+ of this licence is held unenforceable, it is enforced to the maximum extent permitted
113
+ and the remainder stays in effect. No failure or delay by code75 in exercising a right
114
+ is a waiver of it. You may not assign this licence without code75's written consent;
115
+ code75 may assign it to a successor of the ZIFFER business. Any claim by you relating to
116
+ the SDK must be brought within one (1) year after it arises, to the extent the law
117
+ allows. This licence is written in English; a translation is for convenience only and
118
+ the English text prevails.
119
+
120
+ Contact: code75 SASU, Paris — code75.io · ziffer.io
package/README.md ADDED
@@ -0,0 +1,58 @@
1
+ # `@ziffer-io/types`
2
+
3
+ The ACP wire format as TypeScript types, generated from `spec/schemas/` in the engine repository
4
+ and published at the commit this workspace pins.
5
+
6
+ ```bash
7
+ npm install @ziffer-io/types
8
+ ```
9
+
10
+ You do not usually install this directly. `@ziffer-io/client` depends on it, so a client install
11
+ brings the wire types with it.
12
+
13
+ ## What it is
14
+
15
+ `spec/schemas/wire/` and `spec/schemas/bundle/` are the only normative definition of every ACP
16
+ message. The engine's `tools/codegen.sh` turns them into Rust and TypeScript; this package is that
17
+ TypeScript output, compiled, with the engine commit it came from recorded in its own
18
+ `package.json` under `ziffer.enginePin`.
19
+
20
+ So the types are not a transcription of the schemas. They are the schemas' output, and a field this
21
+ package does not have is a field the specification does not state.
22
+
23
+ ## What is in the tarball
24
+
25
+ `dist/` only — compiled JavaScript and `.d.ts`. There is no build step on your machine and no
26
+ dependency to fetch: the previous arrangement had `@ziffer-io/client` naming the engine repository
27
+ as a `git+` dependency, which a consumer could not resolve at all, and which would have compiled
28
+ our wire types on their machine if they could.
29
+
30
+ ## What it does not do
31
+
32
+ - **It carries no behaviour.** These are types and the fail-safe accessors the generator emits for
33
+ signed-policy tables. Nothing here verifies a receipt, canonicalises bytes or talks to an API —
34
+ `@ziffer-io/verify` and `@ziffer-io/client` do those, each in one place.
35
+ - **It is not a validator.** A value typed as a `Proposal` has satisfied `tsc`, not the schema.
36
+ Nothing in this repository validates a document against `spec/schemas/` yet; that gap is
37
+ ACP-52, and it is disclosed rather than closed.
38
+ - **A version of this package does not pin the specification.** It pins an engine *commit*. Read
39
+ `ziffer.enginePin` for which one.
40
+
41
+ ## Development
42
+
43
+ ```sh
44
+ pnpm --filter @ziffer-io/types test # vendor from the pin, tsc -b, assert the entry resolves
45
+ ```
46
+
47
+ `src/` is gitignored: it is a build-time copy of the engine's `packages/acp-types/src`, taken from
48
+ the pinned commit and regenerated on every build, so there is no committed second copy of the wire
49
+ format to drift. `scripts/vendor-engine-types.mjs` refuses — by name — a pin it cannot read, a
50
+ lockfile that resolved a different commit, an absent checkout, and two checkouts at once.
51
+
52
+ ## Licence
53
+
54
+ Proprietary. Copyright (c) 2026 code75 SASU, Paris, France. ZIFFER is a registered trademark of code75
55
+ SASU. This package is **not open source**: it is licensed for use with the ZIFFER service under
56
+ your agreement with code75, on the terms in `LICENSE` beside this file. The third-party
57
+ open-source components it redistributes are listed in `THIRD-PARTY-NOTICES` and are governed by
58
+ their own licences.
@@ -0,0 +1,18 @@
1
+ THIRD-PARTY NOTICES for @ziffer-io/types
2
+
3
+ GENERATED FILE -- do not edit by hand.
4
+ Regenerate with: node tools/third-party-notices.mjs
5
+ tools/release-npm.sh refuses to publish when this file is out of date.
6
+
7
+ The LICENSE beside this file governs the ZIFFER SDK itself, which is
8
+ proprietary software of code75 SASU. The components below are third-party
9
+ open-source, are redistributed under their own licences, and those licences
10
+ govern them and prevail for those components only (SDK licence, section 5).
11
+ Each entry is read from the component as it is installed, at the version
12
+ this release resolves.
13
+
14
+ This package has no third-party runtime dependencies.
15
+
16
+ That is a fact about this release and not a promise about the next one:
17
+ the file is regenerated on every release, so a dependency added later
18
+ appears here without anyone having to remember it.