@adastracomputing/ink 0.1.5 → 0.1.6

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/CHANGELOG.md CHANGED
@@ -8,6 +8,18 @@ here. Pre-1.0 releases follow `0.Y.Z` semantics, see
8
8
 
9
9
  No unreleased changes.
10
10
 
11
+ ## 0.1.6, expose intent + key-entry types and add optional inclusionProof to InkAuditInclusionSchema
12
+
13
+ Pure additive release. Two surface expansions and one backward-compatible schema addition:
14
+
15
+ - **Intent surface** — re-exports `IntentTypeSchema` constant and `IntentType` type from the package root. Adopters writing payload-aware receivers can now type their intent dispatch off the canonical Zod enum without reaching into a deep path.
16
+ - **Key-entry surface** — re-exports `KeyStatusSchema`, `KeyRoleSchema`, `KeyEntrySchema` constants and `KeyStatus`, `KeyRole`, `KeyEntry`, `StoredKey` types. Adopters wiring their own key-set storage and rotation can now type the persistence shapes without reaching into a deep path. `CandidateKey` was already root-exported.
17
+ - **InkAuditInclusionSchema** — adds an optional `inclusionProof: z.array(z.string()).optional()` field. Third-party auditor clients that verify Merkle inclusion proofs use this field; receivers that only check signatures can ignore it. Backward-compatible because the field is optional — receivers on 0.1.5 work unchanged on 0.1.6.
18
+
19
+ No wire-level changes. No behavior changes inside the existing functions.
20
+
21
+ Per the pre-1.0 policy this release publishes under the `next` dist-tag.
22
+
11
23
  ## 0.1.5, expose handshake type re-exports and InkTransportSchema from the package root
12
24
 
13
25
  Pure additive release. Re-exports the `InkChallenge`, `InkRejection`, `InkResolution`, `InkTransport` types and the `InkTransportSchema` constant from the package root. Adopters writing handshake-aware receivers can now type their state-machine without reaching into a deep path. No wire-level changes. No behavior changes inside the existing functions. Receivers on 0.1.4 work unchanged on 0.1.5.
package/dist/index.d.ts CHANGED
@@ -16,8 +16,10 @@ export type { InkAuditEventType, InkAuditEvent, InkAuditInclusion, InkReceipt, I
16
16
  export { InkChallengeSchema, InkRejectionSchema, InkResolutionSchema, InkTransportSchema, } from "./models/ink-handshake.js";
17
17
  export type { AgentCardVisibility, InkChallenge, InkRejection, InkResolution, InkTransport, } from "./models/ink-handshake.js";
18
18
  export { AgentCardSchema } from "./models/agent-card.js";
19
- export { validateMessage, MessageEnvelopeSchema } from "./models/intent.js";
20
- export type { MessageEnvelope } from "./models/intent.js";
19
+ export { validateMessage, MessageEnvelopeSchema, IntentTypeSchema, } from "./models/intent.js";
20
+ export type { MessageEnvelope, IntentType, } from "./models/intent.js";
21
+ export { KeyStatusSchema, KeyRoleSchema, KeyEntrySchema, } from "./models/key-entry.js";
22
+ export type { KeyStatus, KeyRole, KeyEntry, StoredKey, } from "./models/key-entry.js";
21
23
  export type { InkSignInput } from "./crypto/ink.js";
22
24
  export type { CandidateKey } from "./models/key-entry.js";
23
25
  export { resolveAgentInbox } from "./models/agent-card.js";
package/dist/index.js CHANGED
@@ -32,5 +32,9 @@ export { AgentCardSchema } from "./models/agent-card.js";
32
32
  // reject malformed envelopes before signature verification; without
33
33
  // it they have to re-implement the schema check or import from a
34
34
  // non-public path.
35
- export { validateMessage, MessageEnvelopeSchema } from "./models/intent.js";
35
+ export { validateMessage, MessageEnvelopeSchema, IntentTypeSchema, } from "./models/intent.js";
36
+ // Key-entry types and schemas for adopters wiring their own key-set
37
+ // storage and rotation. `CandidateKey` was already root-exported via
38
+ // the verifier surface; this batch adds the persistence shapes.
39
+ export { KeyStatusSchema, KeyRoleSchema, KeyEntrySchema, } from "./models/key-entry.js";
36
40
  export { resolveAgentInbox } from "./models/agent-card.js";
@@ -301,6 +301,7 @@ export declare const InkAuditInclusionSchema: z.ZodObject<{
301
301
  treeSize: z.ZodNumber;
302
302
  leafIndex: z.ZodNumber;
303
303
  rootHash: z.ZodString;
304
+ inclusionProof: z.ZodOptional<z.ZodArray<z.ZodString>>;
304
305
  timestamp: z.ZodString;
305
306
  serviceSignature: z.ZodString;
306
307
  }, z.core.$strip>;
@@ -132,6 +132,14 @@ export const InkAuditInclusionSchema = z.object({
132
132
  treeSize: z.number().int().positive(),
133
133
  leafIndex: z.number().int().min(0),
134
134
  rootHash: z.string(),
135
+ /** Optional Merkle inclusion proof — array of 64-character lowercase hex
136
+ * hash siblings on the path from the leaf to the root. Consumers that
137
+ * verify proofs (third-party auditor clients) read this field; consumers
138
+ * that only check signatures can ignore it. Bounds mirror the verifier's
139
+ * own input validation (`src/audit/inclusion-receipt.ts`): max 64 entries,
140
+ * each exactly 64 lowercase hex chars, so a malicious witness cannot
141
+ * force the parser to allocate megabytes of garbage proof data. */
142
+ inclusionProof: z.array(z.string().regex(/^[0-9a-f]{64}$/)).max(64).optional(),
135
143
  timestamp: z.string().datetime(),
136
144
  serviceSignature: z.string(),
137
145
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adastracomputing/ink",
3
- "version": "0.1.5",
3
+ "version": "0.1.6",
4
4
  "description": "Library and specification for the INK (Inter-agent Networking Kernel) protocol",
5
5
  "license": "MIT OR Apache-2.0",
6
6
  "author": "Ad Astra Computing Inc.",