@hol-org/cigar 0.9.4

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.
Files changed (78) hide show
  1. package/LICENSE +201 -0
  2. package/NOTICE +5 -0
  3. package/README.md +68 -0
  4. package/dist/client.d.ts +16 -0
  5. package/dist/client.d.ts.map +1 -0
  6. package/dist/client.js +839 -0
  7. package/dist/client.js.map +1 -0
  8. package/dist/digest.d.ts +21 -0
  9. package/dist/digest.d.ts.map +1 -0
  10. package/dist/digest.js +406 -0
  11. package/dist/digest.js.map +1 -0
  12. package/dist/errors.d.ts +35 -0
  13. package/dist/errors.d.ts.map +1 -0
  14. package/dist/errors.js +54 -0
  15. package/dist/errors.js.map +1 -0
  16. package/dist/examples/quickstart.d.ts +2 -0
  17. package/dist/examples/quickstart.d.ts.map +1 -0
  18. package/dist/examples/quickstart.js +32 -0
  19. package/dist/examples/quickstart.js.map +1 -0
  20. package/dist/examples/two-agent-observer.d.ts +9 -0
  21. package/dist/examples/two-agent-observer.d.ts.map +1 -0
  22. package/dist/examples/two-agent-observer.js +59 -0
  23. package/dist/examples/two-agent-observer.js.map +1 -0
  24. package/dist/examples/verify-shared-bundle.d.ts +2 -0
  25. package/dist/examples/verify-shared-bundle.d.ts.map +1 -0
  26. package/dist/examples/verify-shared-bundle.js +13 -0
  27. package/dist/examples/verify-shared-bundle.js.map +1 -0
  28. package/dist/generated/cigar_service_pb.d.ts +642 -0
  29. package/dist/generated/cigar_service_pb.d.ts.map +1 -0
  30. package/dist/generated/cigar_service_pb.js +55 -0
  31. package/dist/generated/cigar_service_pb.js.map +1 -0
  32. package/dist/generated/context_abi_pb.d.ts +3429 -0
  33. package/dist/generated/context_abi_pb.d.ts.map +1 -0
  34. package/dist/generated/context_abi_pb.js +1386 -0
  35. package/dist/generated/context_abi_pb.js.map +1 -0
  36. package/dist/generated/errors.d.ts +242 -0
  37. package/dist/generated/errors.d.ts.map +1 -0
  38. package/dist/generated/errors.js +38 -0
  39. package/dist/generated/errors.js.map +1 -0
  40. package/dist/generated/generated/error_codes_pb.d.ts +188 -0
  41. package/dist/generated/generated/error_codes_pb.d.ts.map +1 -0
  42. package/dist/generated/generated/error_codes_pb.js +191 -0
  43. package/dist/generated/generated/error_codes_pb.js.map +1 -0
  44. package/dist/generated/models.d.ts +472 -0
  45. package/dist/generated/models.d.ts.map +1 -0
  46. package/dist/generated/models.js +314 -0
  47. package/dist/generated/models.js.map +1 -0
  48. package/dist/generated/operations.d.ts +912 -0
  49. package/dist/generated/operations.d.ts.map +1 -0
  50. package/dist/generated/operations.js +50 -0
  51. package/dist/generated/operations.js.map +1 -0
  52. package/dist/idempotency.d.ts +3 -0
  53. package/dist/idempotency.d.ts.map +1 -0
  54. package/dist/idempotency.js +16 -0
  55. package/dist/idempotency.js.map +1 -0
  56. package/dist/index.d.ts +13 -0
  57. package/dist/index.d.ts.map +1 -0
  58. package/dist/index.js +13 -0
  59. package/dist/index.js.map +1 -0
  60. package/dist/release.json +6 -0
  61. package/dist/types.d.ts +115 -0
  62. package/dist/types.d.ts.map +1 -0
  63. package/dist/types.js +3 -0
  64. package/dist/types.js.map +1 -0
  65. package/dist/verify-replay.d.ts +3 -0
  66. package/dist/verify-replay.d.ts.map +1 -0
  67. package/dist/verify-replay.js +391 -0
  68. package/dist/verify-replay.js.map +1 -0
  69. package/dist/verify-vectors.d.ts +3 -0
  70. package/dist/verify-vectors.d.ts.map +1 -0
  71. package/dist/verify-vectors.js +383 -0
  72. package/dist/verify-vectors.js.map +1 -0
  73. package/dist/workflow-session.d.ts +93 -0
  74. package/dist/workflow-session.d.ts.map +1 -0
  75. package/dist/workflow-session.js +550 -0
  76. package/dist/workflow-session.js.map +1 -0
  77. package/fixtures/semantic-bundle-v1.json +13 -0
  78. package/package.json +60 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quickstart.js","sourceRoot":"","sources":["../../src/examples/quickstart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EACL,WAAW,EACX,QAAQ,EACR,oBAAoB,EACpB,YAAY,GAEb,MAAM,aAAa,CAAC;AAQrB,MAAM,UAAU,GAAG,IAAI,GAAG,CAAC,wCAAwC,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AACtF,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAY,CAAC;AAC1E,IAAI,OAAO,CAAC,cAAc,KAAK,sCAAsC;IAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAC9G,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC1C,IAAI,QAAQ,KAAK,OAAO,CAAC,kBAAkB;IAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;AAExG,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC;AACtC,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;IACzC,IAAI,MAAM,KAAK,SAAS;QAAE,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IACtF,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC;QAC7B,OAAO;QACP,qBAAqB,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;QACpD,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;KAC3F,CAAC,CAAC;IACH,MAAM,MAAM,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC;QACjD,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;QAC5B,cAAc,EAAE,oBAAoB,CAAC,YAAY,CAAC;KACnD,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,OAAO,CAAC,SAAS,KAAK,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,wDAAwD,CAAC,CAAC;IACvH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,wBAAwB,CAAC,EAAE,OAAO,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;IAC/G,OAAO,CAAC,KAAK,CAAC,4BAA4B,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;AAC5E,CAAC;AAED,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC","sourcesContent":["import { readFile } from \"node:fs/promises\";\n\nimport {\n CigarClient,\n bundleId,\n createIdempotencyKey,\n verifyBundle,\n type SemanticContextBundle,\n} from \"../index.js\";\n\ninterface Fixture {\n readonly schema_version: string;\n readonly bundle: SemanticContextBundle;\n readonly expected_bundle_id: string;\n}\n\nconst fixtureUrl = new URL(\"../../fixtures/semantic-bundle-v1.json\", import.meta.url);\nconst fixture = JSON.parse(await readFile(fixtureUrl, \"utf8\")) as Fixture;\nif (fixture.schema_version !== \"cigar.sdk-semantic-bundle-fixture.v1\") throw new Error(\"unsupported fixture\");\nverifyBundle(fixture.bundle);\nconst identity = bundleId(fixture.bundle);\nif (identity !== fixture.expected_bundle_id) throw new Error(\"shared semantic bundle identity differs\");\n\nconst baseUrl = process.env.CIGAR_URL;\nif (baseUrl !== undefined) {\n const planId = process.env.CIGAR_PLAN_ID;\n if (planId === undefined) throw new Error(\"CIGAR_PLAN_ID is required with CIGAR_URL\");\n const client = new CigarClient({\n baseUrl,\n allowInsecureLoopback: baseUrl.startsWith(\"http://\"),\n ...(process.env.CIGAR_TOKEN === undefined ? {} : { bearerToken: process.env.CIGAR_TOKEN }),\n });\n await client.negotiate({ timeoutMs: 5_000 });\n const compiled = await client.compileContextBundle({\n payload: { plan_id: planId },\n idempotencyKey: createIdempotencyKey(\"quickstart\"),\n });\n if (compiled.payload.bundle_id !== identity) throw new Error(\"daemon bundle identity differs from the shared fixture\");\n const manifest = await client.getContextBundleManifest({ payload: { bundle_id: compiled.payload.bundle_id } });\n console.error(`verified daemon manifest ${manifest.payload.manifest_id}`);\n}\n\nconsole.log(identity);\n"]}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Read-only observer for the Honey two-agent handoff workflow.
3
+ *
4
+ * The observer intentionally calls only disclosure-safe read operations. Its bearer token must
5
+ * belong to a separately configured observer principal; the example never accepts, records,
6
+ * merges, revokes, or otherwise acquires handoff authority.
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=two-agent-observer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"two-agent-observer.d.ts","sourceRoot":"","sources":["../../src/examples/two-agent-observer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG","sourcesContent":["/**\n * Read-only observer for the Honey two-agent handoff workflow.\n *\n * The observer intentionally calls only disclosure-safe read operations. Its bearer token must\n * belong to a separately configured observer principal; the example never accepts, records,\n * merges, revokes, or otherwise acquires handoff authority.\n */\n\nimport { CigarClient } from \"../index.js\";\n\nfunction required(name: string): string {\n const value = process.env[name];\n if (value === undefined || value.length === 0) throw new Error(`${name} is required`);\n return value;\n}\n\nfunction resultEventCount(commits: readonly unknown[]): number {\n let count = 0;\n for (const commit of commits) {\n if (typeof commit !== \"object\" || commit === null || Array.isArray(commit)) continue;\n const events = (commit as Record<string, unknown>).events;\n if (!Array.isArray(events)) continue;\n for (const event of events) {\n if (typeof event !== \"object\" || event === null || Array.isArray(event)) continue;\n const kind = (event as Record<string, unknown>).kind;\n if (kind === \"agent_result_proposed\" || kind === \"merge_conflict_created\") count += 1;\n }\n }\n return count;\n}\n\nconst baseUrl = required(\"CIGAR_URL\");\nconst client = new CigarClient({\n baseUrl,\n allowInsecureLoopback: baseUrl.startsWith(\"http://\"),\n bearerToken: required(\"CIGAR_OBSERVER_TOKEN\"),\n});\n\nawait client.negotiate({ timeoutMs: 5_000 });\nconst preview = await client.previewHandoff({\n payload: { handoff_id: required(\"CIGAR_HANDOFF_ID\") },\n});\nconst spaceLog = await client.getSpaceLog({\n payload: { space_id: required(\"CIGAR_SPACE_ID\") },\n pageSize: 100,\n});\n\n// Do not print task text, source material, result claims, credentials, or event payload digests.\nconsole.log(JSON.stringify({\n handoff_id: preview.payload.handoff_id,\n accepted_capability_count: preview.payload.accepted_capabilities.length,\n rejected_capability_count: preview.payload.rejected_capabilities.length,\n accepted_project_count: preview.payload.accepted_projects.length,\n rejected_project_count: preview.payload.rejected_projects.length,\n reference_count: preview.payload.reference_count,\n visible_commit_count: spaceLog.payload.commits.length,\n visible_result_event_count: resultEventCount(spaceLog.payload.commits),\n more_commits_available: spaceLog.nextPageCursor !== undefined,\n}, null, 2));\n"]}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Read-only observer for the Honey two-agent handoff workflow.
3
+ *
4
+ * The observer intentionally calls only disclosure-safe read operations. Its bearer token must
5
+ * belong to a separately configured observer principal; the example never accepts, records,
6
+ * merges, revokes, or otherwise acquires handoff authority.
7
+ */
8
+ import { CigarClient } from "../index.js";
9
+ function required(name) {
10
+ const value = process.env[name];
11
+ if (value === undefined || value.length === 0)
12
+ throw new Error(`${name} is required`);
13
+ return value;
14
+ }
15
+ function resultEventCount(commits) {
16
+ let count = 0;
17
+ for (const commit of commits) {
18
+ if (typeof commit !== "object" || commit === null || Array.isArray(commit))
19
+ continue;
20
+ const events = commit.events;
21
+ if (!Array.isArray(events))
22
+ continue;
23
+ for (const event of events) {
24
+ if (typeof event !== "object" || event === null || Array.isArray(event))
25
+ continue;
26
+ const kind = event.kind;
27
+ if (kind === "agent_result_proposed" || kind === "merge_conflict_created")
28
+ count += 1;
29
+ }
30
+ }
31
+ return count;
32
+ }
33
+ const baseUrl = required("CIGAR_URL");
34
+ const client = new CigarClient({
35
+ baseUrl,
36
+ allowInsecureLoopback: baseUrl.startsWith("http://"),
37
+ bearerToken: required("CIGAR_OBSERVER_TOKEN"),
38
+ });
39
+ await client.negotiate({ timeoutMs: 5_000 });
40
+ const preview = await client.previewHandoff({
41
+ payload: { handoff_id: required("CIGAR_HANDOFF_ID") },
42
+ });
43
+ const spaceLog = await client.getSpaceLog({
44
+ payload: { space_id: required("CIGAR_SPACE_ID") },
45
+ pageSize: 100,
46
+ });
47
+ // Do not print task text, source material, result claims, credentials, or event payload digests.
48
+ console.log(JSON.stringify({
49
+ handoff_id: preview.payload.handoff_id,
50
+ accepted_capability_count: preview.payload.accepted_capabilities.length,
51
+ rejected_capability_count: preview.payload.rejected_capabilities.length,
52
+ accepted_project_count: preview.payload.accepted_projects.length,
53
+ rejected_project_count: preview.payload.rejected_projects.length,
54
+ reference_count: preview.payload.reference_count,
55
+ visible_commit_count: spaceLog.payload.commits.length,
56
+ visible_result_event_count: resultEventCount(spaceLog.payload.commits),
57
+ more_commits_available: spaceLog.nextPageCursor !== undefined,
58
+ }, null, 2));
59
+ //# sourceMappingURL=two-agent-observer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"two-agent-observer.js","sourceRoot":"","sources":["../../src/examples/two-agent-observer.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,GAAG,IAAI,cAAc,CAAC,CAAC;IACtF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,OAA2B;IACnD,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,SAAS;QACrF,MAAM,MAAM,GAAI,MAAkC,CAAC,MAAM,CAAC;QAC1D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,SAAS;QACrC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,SAAS;YAClF,MAAM,IAAI,GAAI,KAAiC,CAAC,IAAI,CAAC;YACrD,IAAI,IAAI,KAAK,uBAAuB,IAAI,IAAI,KAAK,wBAAwB;gBAAE,KAAK,IAAI,CAAC,CAAC;QACxF,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AACtC,MAAM,MAAM,GAAG,IAAI,WAAW,CAAC;IAC7B,OAAO;IACP,qBAAqB,EAAE,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC;IACpD,WAAW,EAAE,QAAQ,CAAC,sBAAsB,CAAC;CAC9C,CAAC,CAAC;AAEH,MAAM,MAAM,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7C,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC;IAC1C,OAAO,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,kBAAkB,CAAC,EAAE;CACtD,CAAC,CAAC;AACH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC;IACxC,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE;IACjD,QAAQ,EAAE,GAAG;CACd,CAAC,CAAC;AAEH,iGAAiG;AACjG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC;IACzB,UAAU,EAAE,OAAO,CAAC,OAAO,CAAC,UAAU;IACtC,yBAAyB,EAAE,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM;IACvE,yBAAyB,EAAE,OAAO,CAAC,OAAO,CAAC,qBAAqB,CAAC,MAAM;IACvE,sBAAsB,EAAE,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM;IAChE,sBAAsB,EAAE,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,MAAM;IAChE,eAAe,EAAE,OAAO,CAAC,OAAO,CAAC,eAAe;IAChD,oBAAoB,EAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM;IACrD,0BAA0B,EAAE,gBAAgB,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;IACtE,sBAAsB,EAAE,QAAQ,CAAC,cAAc,KAAK,SAAS;CAC9D,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC","sourcesContent":["/**\n * Read-only observer for the Honey two-agent handoff workflow.\n *\n * The observer intentionally calls only disclosure-safe read operations. Its bearer token must\n * belong to a separately configured observer principal; the example never accepts, records,\n * merges, revokes, or otherwise acquires handoff authority.\n */\n\nimport { CigarClient } from \"../index.js\";\n\nfunction required(name: string): string {\n const value = process.env[name];\n if (value === undefined || value.length === 0) throw new Error(`${name} is required`);\n return value;\n}\n\nfunction resultEventCount(commits: readonly unknown[]): number {\n let count = 0;\n for (const commit of commits) {\n if (typeof commit !== \"object\" || commit === null || Array.isArray(commit)) continue;\n const events = (commit as Record<string, unknown>).events;\n if (!Array.isArray(events)) continue;\n for (const event of events) {\n if (typeof event !== \"object\" || event === null || Array.isArray(event)) continue;\n const kind = (event as Record<string, unknown>).kind;\n if (kind === \"agent_result_proposed\" || kind === \"merge_conflict_created\") count += 1;\n }\n }\n return count;\n}\n\nconst baseUrl = required(\"CIGAR_URL\");\nconst client = new CigarClient({\n baseUrl,\n allowInsecureLoopback: baseUrl.startsWith(\"http://\"),\n bearerToken: required(\"CIGAR_OBSERVER_TOKEN\"),\n});\n\nawait client.negotiate({ timeoutMs: 5_000 });\nconst preview = await client.previewHandoff({\n payload: { handoff_id: required(\"CIGAR_HANDOFF_ID\") },\n});\nconst spaceLog = await client.getSpaceLog({\n payload: { space_id: required(\"CIGAR_SPACE_ID\") },\n pageSize: 100,\n});\n\n// Do not print task text, source material, result claims, credentials, or event payload digests.\nconsole.log(JSON.stringify({\n handoff_id: preview.payload.handoff_id,\n accepted_capability_count: preview.payload.accepted_capabilities.length,\n rejected_capability_count: preview.payload.rejected_capabilities.length,\n accepted_project_count: preview.payload.accepted_projects.length,\n rejected_project_count: preview.payload.rejected_projects.length,\n reference_count: preview.payload.reference_count,\n visible_commit_count: spaceLog.payload.commits.length,\n visible_result_event_count: resultEventCount(spaceLog.payload.commits),\n more_commits_available: spaceLog.nextPageCursor !== undefined,\n}, null, 2));\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=verify-shared-bundle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-shared-bundle.d.ts","sourceRoot":"","sources":["../../src/examples/verify-shared-bundle.ts"],"names":[],"mappings":"","sourcesContent":["import { readFile } from \"node:fs/promises\";\n\nimport { bundleId, verifyBundle, type SemanticContextBundle } from \"../index.js\";\n\ninterface Fixture {\n readonly schema_version: string;\n readonly bundle: SemanticContextBundle;\n readonly expected_bundle_id: string;\n}\n\nconst defaultFixture = new URL(\"../../fixtures/semantic-bundle-v1.json\", import.meta.url);\nconst source = await readFile(process.argv[2] ?? defaultFixture, \"utf8\");\nconst fixture = JSON.parse(source) as Fixture;\nif (fixture.schema_version !== \"cigar.sdk-semantic-bundle-fixture.v1\") throw new Error(\"unsupported fixture\");\nverifyBundle(fixture.bundle);\nconst computed = bundleId(fixture.bundle);\nif (computed !== fixture.expected_bundle_id) throw new Error(\"shared semantic bundle identity differs\");\nconsole.log(computed);\n"]}
@@ -0,0 +1,13 @@
1
+ import { readFile } from "node:fs/promises";
2
+ import { bundleId, verifyBundle } from "../index.js";
3
+ const defaultFixture = new URL("../../fixtures/semantic-bundle-v1.json", import.meta.url);
4
+ const source = await readFile(process.argv[2] ?? defaultFixture, "utf8");
5
+ const fixture = JSON.parse(source);
6
+ if (fixture.schema_version !== "cigar.sdk-semantic-bundle-fixture.v1")
7
+ throw new Error("unsupported fixture");
8
+ verifyBundle(fixture.bundle);
9
+ const computed = bundleId(fixture.bundle);
10
+ if (computed !== fixture.expected_bundle_id)
11
+ throw new Error("shared semantic bundle identity differs");
12
+ console.log(computed);
13
+ //# sourceMappingURL=verify-shared-bundle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-shared-bundle.js","sourceRoot":"","sources":["../../src/examples/verify-shared-bundle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EAAE,QAAQ,EAAE,YAAY,EAA8B,MAAM,aAAa,CAAC;AAQjF,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,wCAAwC,EAAE,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1F,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,cAAc,EAAE,MAAM,CAAC,CAAC;AACzE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAY,CAAC;AAC9C,IAAI,OAAO,CAAC,cAAc,KAAK,sCAAsC;IAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAC;AAC9G,YAAY,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC7B,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;AAC1C,IAAI,QAAQ,KAAK,OAAO,CAAC,kBAAkB;IAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;AACxG,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC","sourcesContent":["import { readFile } from \"node:fs/promises\";\n\nimport { bundleId, verifyBundle, type SemanticContextBundle } from \"../index.js\";\n\ninterface Fixture {\n readonly schema_version: string;\n readonly bundle: SemanticContextBundle;\n readonly expected_bundle_id: string;\n}\n\nconst defaultFixture = new URL(\"../../fixtures/semantic-bundle-v1.json\", import.meta.url);\nconst source = await readFile(process.argv[2] ?? defaultFixture, \"utf8\");\nconst fixture = JSON.parse(source) as Fixture;\nif (fixture.schema_version !== \"cigar.sdk-semantic-bundle-fixture.v1\") throw new Error(\"unsupported fixture\");\nverifyBundle(fixture.bundle);\nconst computed = bundleId(fixture.bundle);\nif (computed !== fixture.expected_bundle_id) throw new Error(\"shared semantic bundle identity differs\");\nconsole.log(computed);\n"]}