agentfootprint 9.36.0 → 9.37.1

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 (132) hide show
  1. package/ai-instructions/claude-code/SKILL.md +177 -353
  2. package/dist/adapters/hosting/firestoreSessions.js +28 -6
  3. package/dist/adapters/hosting/firestoreSessions.js.map +1 -1
  4. package/dist/adapters/hosting/googleAgentEngine.js +64 -0
  5. package/dist/adapters/hosting/googleAgentEngine.js.map +1 -1
  6. package/dist/adapters/memory/agentcore.js +7 -1
  7. package/dist/adapters/memory/agentcore.js.map +1 -1
  8. package/dist/adapters/memory/memoryBank.js +29 -8
  9. package/dist/adapters/memory/memoryBank.js.map +1 -1
  10. package/dist/adapters/memory/redis.js +28 -1
  11. package/dist/adapters/memory/redis.js.map +1 -1
  12. package/dist/artifacts/scopePath.js +13 -2
  13. package/dist/artifacts/scopePath.js.map +1 -1
  14. package/dist/doors/skill-graph.js +55 -6
  15. package/dist/doors/skill-graph.js.map +1 -1
  16. package/dist/esm/adapters/hosting/firestoreSessions.js +29 -7
  17. package/dist/esm/adapters/hosting/firestoreSessions.js.map +1 -1
  18. package/dist/esm/adapters/hosting/googleAgentEngine.js +64 -0
  19. package/dist/esm/adapters/hosting/googleAgentEngine.js.map +1 -1
  20. package/dist/esm/adapters/memory/agentcore.js +7 -1
  21. package/dist/esm/adapters/memory/agentcore.js.map +1 -1
  22. package/dist/esm/adapters/memory/memoryBank.d.ts +13 -3
  23. package/dist/esm/adapters/memory/memoryBank.js +29 -8
  24. package/dist/esm/adapters/memory/memoryBank.js.map +1 -1
  25. package/dist/esm/adapters/memory/redis.d.ts +25 -0
  26. package/dist/esm/adapters/memory/redis.js +28 -1
  27. package/dist/esm/adapters/memory/redis.js.map +1 -1
  28. package/dist/esm/artifacts/scopePath.d.ts +9 -1
  29. package/dist/esm/artifacts/scopePath.js +13 -2
  30. package/dist/esm/artifacts/scopePath.js.map +1 -1
  31. package/dist/esm/doors/skill-graph.d.ts +55 -6
  32. package/dist/esm/doors/skill-graph.js +55 -6
  33. package/dist/esm/doors/skill-graph.js.map +1 -1
  34. package/dist/esm/hosting/conformance/cases.d.ts +15 -0
  35. package/dist/esm/hosting/conformance/cases.js +395 -0
  36. package/dist/esm/hosting/conformance/cases.js.map +1 -0
  37. package/dist/esm/hosting/conformance/index.d.ts +11 -0
  38. package/dist/esm/hosting/conformance/index.js +11 -0
  39. package/dist/esm/hosting/conformance/index.js.map +1 -0
  40. package/dist/esm/hosting/conformance/run.d.ts +46 -0
  41. package/dist/esm/hosting/conformance/run.js +182 -0
  42. package/dist/esm/hosting/conformance/run.js.map +1 -0
  43. package/dist/esm/hosting/conformance/types.d.ts +140 -0
  44. package/dist/esm/hosting/conformance/types.js +6 -0
  45. package/dist/esm/hosting/conformance/types.js.map +1 -0
  46. package/dist/esm/hosting/errors.d.ts +34 -0
  47. package/dist/esm/hosting/errors.js +47 -0
  48. package/dist/esm/hosting/errors.js.map +1 -1
  49. package/dist/esm/hosting/index.d.ts +4 -1
  50. package/dist/esm/hosting/index.js +11 -1
  51. package/dist/esm/hosting/index.js.map +1 -1
  52. package/dist/esm/hosting/memorySessions.d.ts +5 -0
  53. package/dist/esm/hosting/memorySessions.js +25 -17
  54. package/dist/esm/hosting/memorySessions.js.map +1 -1
  55. package/dist/esm/hosting/sessionOwnership.d.ts +86 -0
  56. package/dist/esm/hosting/sessionOwnership.js +106 -0
  57. package/dist/esm/hosting/sessionOwnership.js.map +1 -0
  58. package/dist/esm/hosting/sqliteSessions.js +41 -10
  59. package/dist/esm/hosting/sqliteSessions.js.map +1 -1
  60. package/dist/esm/hosting/types.d.ts +68 -4
  61. package/dist/esm/hosting/types.js.map +1 -1
  62. package/dist/esm/memory/identity/encode.d.ts +67 -0
  63. package/dist/esm/memory/identity/encode.js +91 -0
  64. package/dist/esm/memory/identity/encode.js.map +1 -0
  65. package/dist/esm/memory/identity/index.d.ts +1 -0
  66. package/dist/esm/memory/identity/index.js +1 -0
  67. package/dist/esm/memory/identity/index.js.map +1 -1
  68. package/dist/esm/memory/identity/types.d.ts +21 -4
  69. package/dist/esm/memory/identity/types.js +27 -7
  70. package/dist/esm/memory/identity/types.js.map +1 -1
  71. package/dist/hosting/conformance/cases.js +398 -0
  72. package/dist/hosting/conformance/cases.js.map +1 -0
  73. package/dist/hosting/conformance/index.js +18 -0
  74. package/dist/hosting/conformance/index.js.map +1 -0
  75. package/dist/hosting/conformance/run.js +188 -0
  76. package/dist/hosting/conformance/run.js.map +1 -0
  77. package/dist/hosting/conformance/types.js +7 -0
  78. package/dist/hosting/conformance/types.js.map +1 -0
  79. package/dist/hosting/errors.js +49 -1
  80. package/dist/hosting/errors.js.map +1 -1
  81. package/dist/hosting/index.js +18 -2
  82. package/dist/hosting/index.js.map +1 -1
  83. package/dist/hosting/memorySessions.js +25 -17
  84. package/dist/hosting/memorySessions.js.map +1 -1
  85. package/dist/hosting/sessionOwnership.js +110 -0
  86. package/dist/hosting/sessionOwnership.js.map +1 -0
  87. package/dist/hosting/sqliteSessions.js +41 -10
  88. package/dist/hosting/sqliteSessions.js.map +1 -1
  89. package/dist/hosting/types.js.map +1 -1
  90. package/dist/memory/identity/encode.js +96 -0
  91. package/dist/memory/identity/encode.js.map +1 -0
  92. package/dist/memory/identity/index.js +5 -1
  93. package/dist/memory/identity/index.js.map +1 -1
  94. package/dist/memory/identity/types.js +27 -7
  95. package/dist/memory/identity/types.js.map +1 -1
  96. package/dist/types/adapters/hosting/firestoreSessions.d.ts.map +1 -1
  97. package/dist/types/adapters/hosting/googleAgentEngine.d.ts.map +1 -1
  98. package/dist/types/adapters/memory/agentcore.d.ts.map +1 -1
  99. package/dist/types/adapters/memory/memoryBank.d.ts +13 -3
  100. package/dist/types/adapters/memory/memoryBank.d.ts.map +1 -1
  101. package/dist/types/adapters/memory/redis.d.ts +25 -0
  102. package/dist/types/adapters/memory/redis.d.ts.map +1 -1
  103. package/dist/types/artifacts/scopePath.d.ts +9 -1
  104. package/dist/types/artifacts/scopePath.d.ts.map +1 -1
  105. package/dist/types/doors/skill-graph.d.ts +55 -6
  106. package/dist/types/doors/skill-graph.d.ts.map +1 -1
  107. package/dist/types/hosting/conformance/cases.d.ts +16 -0
  108. package/dist/types/hosting/conformance/cases.d.ts.map +1 -0
  109. package/dist/types/hosting/conformance/index.d.ts +12 -0
  110. package/dist/types/hosting/conformance/index.d.ts.map +1 -0
  111. package/dist/types/hosting/conformance/run.d.ts +47 -0
  112. package/dist/types/hosting/conformance/run.d.ts.map +1 -0
  113. package/dist/types/hosting/conformance/types.d.ts +141 -0
  114. package/dist/types/hosting/conformance/types.d.ts.map +1 -0
  115. package/dist/types/hosting/errors.d.ts +34 -0
  116. package/dist/types/hosting/errors.d.ts.map +1 -1
  117. package/dist/types/hosting/index.d.ts +4 -1
  118. package/dist/types/hosting/index.d.ts.map +1 -1
  119. package/dist/types/hosting/memorySessions.d.ts +5 -0
  120. package/dist/types/hosting/memorySessions.d.ts.map +1 -1
  121. package/dist/types/hosting/sessionOwnership.d.ts +87 -0
  122. package/dist/types/hosting/sessionOwnership.d.ts.map +1 -0
  123. package/dist/types/hosting/sqliteSessions.d.ts.map +1 -1
  124. package/dist/types/hosting/types.d.ts +68 -4
  125. package/dist/types/hosting/types.d.ts.map +1 -1
  126. package/dist/types/memory/identity/encode.d.ts +68 -0
  127. package/dist/types/memory/identity/encode.d.ts.map +1 -0
  128. package/dist/types/memory/identity/index.d.ts +1 -0
  129. package/dist/types/memory/identity/index.d.ts.map +1 -1
  130. package/dist/types/memory/identity/types.d.ts +21 -4
  131. package/dist/types/memory/identity/types.d.ts.map +1 -1
  132. package/package.json +1 -1
@@ -102,6 +102,7 @@
102
102
  * Pattern: Adapter (GoF) — `MemoryStore` onto `reasoningEngines.memories`,
103
103
  * through the shared REST client in `adapters/google/aiPlatform.ts`.
104
104
  */
105
+ import { encodeIdentityField } from '../../memory/identity/index.js';
105
106
  import { awaitOperation, buildAiPlatformClient, DEFAULT_OPERATION_TIMEOUT_MS, fingerprint, googleSdkFailure, isAlreadyExists, isNotFound, isSanitizedGoogleError, resolveEngine, safeResourceId, } from '../google/aiPlatform.js';
106
107
  const ADAPTER = 'memoryBankStore';
107
108
  /**
@@ -669,9 +670,16 @@ export class MemoryBankStore {
669
670
  ` An empty scope is not "no scoping" — it is a real scope that matches every other ` +
670
671
  `empty-scoped memory in the bank, whoever wrote it. Return at least one key.`);
671
672
  }
672
- // The service rejects `*` in a scope value. Replaced rather than passed on,
673
- // so a tenant named with one is a NAME and not a wildcard.
674
- return Object.fromEntries(entries.map(([key, value]) => [key, value.replace(/\*/g, '_')]));
673
+ // The service rejects `*` in a scope value, so one is ESCAPED rather than
674
+ // passed on — a tenant named with one is a NAME, not a wildcard. Escaped
675
+ // and not replaced: mapping `*` onto some other character merges two
676
+ // different scopes into one address, which is the isolation bug this
677
+ // method exists to prevent (`*` used to become `_`, landing a tenant named
678
+ // `*` on top of the no-tenant scope). `%` goes first because it introduces
679
+ // the escape; a value that arrived already encoded is escaped again, which
680
+ // is unreadable but injective, and unreadable-and-separate beats legible
681
+ // and shared.
682
+ return Object.fromEntries(entries.map(([key, value]) => [key, value.replace(/%/g, '%25').replace(/\*/g, '%2A')]));
675
683
  }
676
684
  }
677
685
  /**
@@ -682,7 +690,10 @@ export class MemoryBankStore {
682
690
  * project: 'my-project',
683
691
  * location: 'us-central1',
684
692
  * reasoningEngine: '1234567890',
685
- * scopeFor: (id) => ({ tenant: id.tenant ?? '_', principal: id.principal ?? '_' }),
693
+ * scopeFor: (id) => ({
694
+ * tenant: encodeIdentityField(id.tenant),
695
+ * principal: encodeIdentityField(id.principal),
696
+ * }),
686
697
  * });
687
698
  *
688
699
  * const hits = await store.search(identity, [], { text: 'what does she prefer?', k: 5 });
@@ -740,12 +751,22 @@ function foreignMemory(id, name) {
740
751
  err.name = 'MemoryScopeConflictError';
741
752
  return err;
742
753
  }
743
- /** The default scope: the full identity tuple, matching every other store. */
754
+ /**
755
+ * The default scope: the full identity tuple, matching every other store.
756
+ *
757
+ * Each field goes through the SAME encoder the namespace stores use, so the
758
+ * isolation is the same isolation: absence is the marker `_`, and a value that
759
+ * spells the marker (or carries the separator) is escaped away from it. Left
760
+ * raw, a bank with no tenant and a bank whose tenant is named `_` shared one
761
+ * scope — and a Memory Bank scope is exact-matched, so sharing it is sharing
762
+ * the memories. Well-behaved ids encode to themselves, so existing banks keep
763
+ * the scope they were written under.
764
+ */
744
765
  function defaultScopeFor(identity) {
745
766
  return {
746
- tenant: identity.tenant || '_',
747
- principal: identity.principal || '_',
748
- conversation: identity.conversationId,
767
+ tenant: encodeIdentityField(identity.tenant),
768
+ principal: encodeIdentityField(identity.principal),
769
+ conversation: encodeIdentityField(identity.conversationId),
749
770
  };
750
771
  }
751
772
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"memoryBank.js","sourceRoot":"","sources":["../../../../src/adapters/memory/memoryBank.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memoryBank.js","sourceRoot":"","sources":["../../../../src/adapters/memory/memoryBank.ts"],"names":[],"mappings":"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"}
@@ -103,6 +103,26 @@ export declare class RedisStore implements MemoryStore {
103
103
  private readonly ownsClient;
104
104
  private closed;
105
105
  constructor(options?: RedisStoreOptions);
106
+ /**
107
+ * A literal string → a `SCAN MATCH` pattern that matches only itself.
108
+ *
109
+ * A key is stored bytes; a MATCH pattern is a GLOB, and Redis reads it with
110
+ * `stringmatchlen`, whose metacharacters are `*`, `?`, `[` and `\` (a `]`
111
+ * outside a class is an ordinary character, so it needs no escape). The
112
+ * namespace deliberately does NOT escape `*` — it is a legal character in a
113
+ * name and escaping it in the KEY would re-key every store that has one —
114
+ * so it has to be escaped HERE, at the one place a name is used as a
115
+ * pattern instead of as data.
116
+ *
117
+ * Without this, `forget({ conversationId: '*' })` scanned `af:_/_/*:*`,
118
+ * which glob-matches every other scope's keys — and `forget` DELETES what
119
+ * it scans. That is cross-tenant destruction from one ordinary-looking id.
120
+ *
121
+ * The backslash is escaped FIRST, for the same reason the namespace encoder
122
+ * escapes `%` first: it introduces every escape that follows, so a name
123
+ * containing `\*` must not come out as an escaped `*`.
124
+ */
125
+ private static globLiteral;
106
126
  private nsKey;
107
127
  private entryKey;
108
128
  private indexKey;
@@ -127,6 +147,11 @@ export declare class RedisStore implements MemoryStore {
127
147
  } | null>;
128
148
  /**
129
149
  * GDPR — drop every key under this identity's namespace.
150
+ *
151
+ * Only the trailing `*` is a wildcard: the prefix and the namespace are
152
+ * matched LITERALLY (see {@link RedisStore.globLiteral}), so an id that
153
+ * happens to contain a glob character erases its own scope and nobody
154
+ * else's.
130
155
  */
131
156
  forget(identity: MemoryIdentity): Promise<void>;
132
157
  /**
@@ -71,6 +71,28 @@ export class RedisStore {
71
71
  }
72
72
  }
73
73
  // Key helpers
74
+ /**
75
+ * A literal string → a `SCAN MATCH` pattern that matches only itself.
76
+ *
77
+ * A key is stored bytes; a MATCH pattern is a GLOB, and Redis reads it with
78
+ * `stringmatchlen`, whose metacharacters are `*`, `?`, `[` and `\` (a `]`
79
+ * outside a class is an ordinary character, so it needs no escape). The
80
+ * namespace deliberately does NOT escape `*` — it is a legal character in a
81
+ * name and escaping it in the KEY would re-key every store that has one —
82
+ * so it has to be escaped HERE, at the one place a name is used as a
83
+ * pattern instead of as data.
84
+ *
85
+ * Without this, `forget({ conversationId: '*' })` scanned `af:_/_/*:*`,
86
+ * which glob-matches every other scope's keys — and `forget` DELETES what
87
+ * it scans. That is cross-tenant destruction from one ordinary-looking id.
88
+ *
89
+ * The backslash is escaped FIRST, for the same reason the namespace encoder
90
+ * escapes `%` first: it introduces every escape that follows, so a name
91
+ * containing `\*` must not come out as an escaped `*`.
92
+ */
93
+ static globLiteral(raw) {
94
+ return raw.replace(/\\/g, '\\\\').replace(/[*?[]/g, (ch) => `\\${ch}`);
95
+ }
74
96
  nsKey(identity, suffix) {
75
97
  return `${this.prefix}:${identityNamespace(identity)}:${suffix}`;
76
98
  }
@@ -216,10 +238,15 @@ export class RedisStore {
216
238
  }
217
239
  /**
218
240
  * GDPR — drop every key under this identity's namespace.
241
+ *
242
+ * Only the trailing `*` is a wildcard: the prefix and the namespace are
243
+ * matched LITERALLY (see {@link RedisStore.globLiteral}), so an id that
244
+ * happens to contain a glob character erases its own scope and nobody
245
+ * else's.
219
246
  */
220
247
  async forget(identity) {
221
248
  this.ensureOpen('forget');
222
- const pattern = `${this.prefix}:${identityNamespace(identity)}:*`;
249
+ const pattern = `${RedisStore.globLiteral(`${this.prefix}:${identityNamespace(identity)}:`)}*`;
223
250
  let cursor = '0';
224
251
  do {
225
252
  const [next, keys] = await this.client.scan(cursor, 'MATCH', pattern, 'COUNT', this.scanCount);
@@ -1 +1 @@
1
- {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../../../src/adapters/memory/redis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"redis.js","sourceRoot":"","sources":["../../../../src/adapters/memory/redis.ts"],"names":[],"mappings":"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"}
@@ -18,11 +18,19 @@
18
18
  * parent-directory hop (`%2E%2E` is a NAME);
19
19
  * • an empty or absent field collapses to `_`, mirroring
20
20
  * `identityNamespace`'s stable layout, so "no tenant" is one shape and
21
- * not two.
21
+ * not two — and a field whose VALUE is `_` is escaped away from that
22
+ * marker, so absence and the tenant named `_` are not one directory.
22
23
  *
23
24
  * After this, `..`, `/` and `\` arrive as data and land as literals. The
24
25
  * adapters assert `isArtifactRef` on the last segment anyway, because
25
26
  * "cannot happen" is a claim, not a defence.
27
+ *
28
+ * The encoding is INJECTIVE, per field and therefore per scope: two different
29
+ * scopes never address one directory or one key prefix. `encodeURIComponent`
30
+ * supplies that for every character (it escapes `%`, its own introducer, so
31
+ * an already-escaped-looking value cannot land on the value that produced
32
+ * it); {@link distinctFromAbsent} supplies it for the absence marker, which
33
+ * `encodeURIComponent` passes through untouched because `_` is unreserved.
26
34
  */
27
35
  import type { ArtifactScope } from './types.js';
28
36
  /** One RAW tuple field → one inert path/key segment. */
@@ -18,15 +18,26 @@
18
18
  * parent-directory hop (`%2E%2E` is a NAME);
19
19
  * • an empty or absent field collapses to `_`, mirroring
20
20
  * `identityNamespace`'s stable layout, so "no tenant" is one shape and
21
- * not two.
21
+ * not two — and a field whose VALUE is `_` is escaped away from that
22
+ * marker, so absence and the tenant named `_` are not one directory.
22
23
  *
23
24
  * After this, `..`, `/` and `\` arrive as data and land as literals. The
24
25
  * adapters assert `isArtifactRef` on the last segment anyway, because
25
26
  * "cannot happen" is a claim, not a defence.
27
+ *
28
+ * The encoding is INJECTIVE, per field and therefore per scope: two different
29
+ * scopes never address one directory or one key prefix. `encodeURIComponent`
30
+ * supplies that for every character (it escapes `%`, its own introducer, so
31
+ * an already-escaped-looking value cannot land on the value that produced
32
+ * it); {@link distinctFromAbsent} supplies it for the absence marker, which
33
+ * `encodeURIComponent` passes through untouched because `_` is unreserved.
26
34
  */
35
+ import { distinctFromAbsent, IDENTITY_ABSENT } from '../memory/identity/index.js';
27
36
  /** One RAW tuple field → one inert path/key segment. */
28
37
  export function scopeSegment(raw) {
29
- return encodeURIComponent(raw === undefined || raw === '' ? '_' : raw).replace(/\./g, '%2E');
38
+ if (raw === undefined || raw === '')
39
+ return IDENTITY_ABSENT;
40
+ return distinctFromAbsent(encodeURIComponent(raw).replace(/\./g, '%2E'));
30
41
  }
31
42
  /** The three encoded segments of a scope, in the fixed tenant/principal/
32
43
  * conversation order every adapter lays out. */
@@ -1 +1 @@
1
- {"version":3,"file":"scopePath.js","sourceRoot":"","sources":["../../../src/artifacts/scopePath.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAIH,wDAAwD;AACxD,MAAM,UAAU,YAAY,CAAC,GAAuB;IAClD,OAAO,kBAAkB,CAAC,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAC/F,CAAC;AAED;iDACiD;AACjD,MAAM,UAAU,aAAa,CAAC,KAAoB;IAChD,OAAO;QACL,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;QAC1B,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;QAC7B,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC;KACnC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAoB,EAAE,IAAa;IAChE,MAAM,IAAI,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;IACjE,OAAO,GAAG,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AACrD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,IAAwB;IACxE,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACnD,MAAM,IAAI,SAAS,CACjB,eAAe,OAAO,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,2BAA2B;YACjF,mFAAmF;YACnF,gDAAgD,CACnD,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,SAAS,CACjB,eAAe,OAAO,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iCAAiC;YACvF,qFAAqF;YACrF,qEAAqE,CACxE,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC7D,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QACnB,MAAM,IAAI,SAAS,CACjB,eAAe,OAAO,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,8BAA8B;YACpF,6BAA6B,CAChC,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"scopePath.js","sourceRoot":"","sources":["../../../src/artifacts/scopePath.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AAEH,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAGlF,wDAAwD;AACxD,MAAM,UAAU,YAAY,CAAC,GAAuB;IAClD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,eAAe,CAAC;IAC5D,OAAO,kBAAkB,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3E,CAAC;AAED;iDACiD;AACjD,MAAM,UAAU,aAAa,CAAC,KAAoB;IAChD,OAAO;QACL,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC;QAC1B,YAAY,CAAC,KAAK,CAAC,SAAS,CAAC;QAC7B,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC;KACnC,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,KAAoB,EAAE,IAAa;IAChE,MAAM,IAAI,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC;IACjE,OAAO,GAAG,IAAI,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;AACrD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,IAAwB;IACxE,IAAI,IAAI,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IACzC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACnD,MAAM,IAAI,SAAS,CACjB,eAAe,OAAO,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,2BAA2B;YACjF,mFAAmF;YACnF,gDAAgD,CACnD,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,SAAS,CACjB,eAAe,OAAO,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,iCAAiC;YACvF,qFAAqF;YACrF,qEAAqE,CACxE,CAAC;IACJ,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC7D,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;QACnB,MAAM,IAAI,SAAS,CACjB,eAAe,OAAO,cAAc,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,8BAA8B;YACpF,6BAA6B,CAChC,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -39,17 +39,66 @@
39
39
  * they live host-side, on `agentfootprint/context`. A foreign host builds
40
40
  * `Injection` objects directly — five fields, all data.
41
41
  *
42
+ * THE EXAMPLE BELOW IS CHECKED, not typed out. Doc comments are emitted into
43
+ * the `.d.ts`, so this block is what a consumer reads on hover — and the one
44
+ * that shipped before 9.37.x could not compile three ways over (a config key
45
+ * that does not exist, chaining the builder's methods off the finished graph
46
+ * the object form returns, and passing ids to a `.route()` that takes skill
47
+ * objects). It is now the `doc-example` region of
48
+ * `examples/context-engineering/19-skill-graph-host.ts` — typechecked by
49
+ * `npm run test:examples:typecheck`, RUN by `scripts/run-all-examples.sh`, and
50
+ * pinned byte-for-byte to these lines by
51
+ * `test/lib/injection-engine/skill-graph-doc-example.test.ts`. Edit it there;
52
+ * the test will tell you to bring this copy along.
53
+ *
42
54
  * @example routing a turn from a host that is not our agent
43
55
  * ```ts
44
- * import { skillGraph, readSkillDescriptor } from 'agentfootprint/skill-graph';
56
+ * import {
57
+ * readSkillDescriptor,
58
+ * skillGraph,
59
+ * type Injection,
60
+ * type InjectionContext,
61
+ * } from 'agentfootprint/skill-graph';
62
+ *
63
+ * // A foreign host builds `Injection` objects directly — five fields, all data.
64
+ * // (`defineSkill` and friends live host-side, on `agentfootprint/context`.)
65
+ * const triage: Injection = {
66
+ * id: 'triage',
67
+ * flavor: 'skill',
68
+ * description: 'Find the order the customer is talking about.',
69
+ * trigger: { kind: 'llm-activated', viaToolName: 'read_skill' },
70
+ * inject: { systemPrompt: 'Ask for the order id, then call lookup_order.' },
71
+ * };
72
+ * const billing: Injection = {
73
+ * id: 'billing',
74
+ * flavor: 'skill',
75
+ * description: 'Refunds, double charges, invoices.',
76
+ * trigger: { kind: 'llm-activated', viaToolName: 'read_skill' },
77
+ * inject: { systemPrompt: 'Confirm the charge history before promising a refund.' },
78
+ * };
45
79
  *
46
- * const graph = skillGraph({ skills, entry: 'triage' })
47
- * .route('triage', 'billing', { when: (ctx) => /invoice/i.test(ctx.userMessage) })
80
+ * // The FLUENT builder takes the skill OBJECTS (not their ids) and ends in
81
+ * // `.build()`. `skillGraph({ skills, start, steps })` is the OTHER door: it
82
+ * // returns a finished `SkillGraph`, with nothing to chain.
83
+ * const graph = skillGraph()
84
+ * .entry(triage)
85
+ * .route(triage, billing, { onToolReturn: 'lookup_order' })
48
86
  * .build();
49
87
  *
50
- * // per iteration — ONE ctx, built once (obligation 1)
51
- * const move = graph.explainNextSkill(ctx);
52
- * const offered = graph.reachableSkills(ctx.currentSkillId); // obligation 2
88
+ * // Per iteration — ONE ctx, built once and asked every question below: a
89
+ * // cursor derived from a different ctx than the triggers can disagree with
90
+ * // them (obligation 1 of `SkillGraphHost`).
91
+ * const ctx: InjectionContext = {
92
+ * iteration: 2,
93
+ * userMessage: 'I was charged twice for order 4021',
94
+ * history: [{ role: 'user', content: 'I was charged twice for order 4021' }],
95
+ * activatedInjectionIds: [],
96
+ * currentSkillId: 'triage',
97
+ * toolResults: [{ toolName: 'lookup_order', result: 'order 4021 · charged twice' }],
98
+ * };
99
+ *
100
+ * const move = graph.explainNextSkill(ctx); // where the cursor goes, and WHY
101
+ * const offered = graph.reachableSkills(move.to); // obligation 2 — gate read_skill on this
53
102
  * const readSkill = readSkillDescriptor(graph.skills, { grantable: offered });
54
103
  * ```
55
104
  */
@@ -39,17 +39,66 @@
39
39
  * they live host-side, on `agentfootprint/context`. A foreign host builds
40
40
  * `Injection` objects directly — five fields, all data.
41
41
  *
42
+ * THE EXAMPLE BELOW IS CHECKED, not typed out. Doc comments are emitted into
43
+ * the `.d.ts`, so this block is what a consumer reads on hover — and the one
44
+ * that shipped before 9.37.x could not compile three ways over (a config key
45
+ * that does not exist, chaining the builder's methods off the finished graph
46
+ * the object form returns, and passing ids to a `.route()` that takes skill
47
+ * objects). It is now the `doc-example` region of
48
+ * `examples/context-engineering/19-skill-graph-host.ts` — typechecked by
49
+ * `npm run test:examples:typecheck`, RUN by `scripts/run-all-examples.sh`, and
50
+ * pinned byte-for-byte to these lines by
51
+ * `test/lib/injection-engine/skill-graph-doc-example.test.ts`. Edit it there;
52
+ * the test will tell you to bring this copy along.
53
+ *
42
54
  * @example routing a turn from a host that is not our agent
43
55
  * ```ts
44
- * import { skillGraph, readSkillDescriptor } from 'agentfootprint/skill-graph';
56
+ * import {
57
+ * readSkillDescriptor,
58
+ * skillGraph,
59
+ * type Injection,
60
+ * type InjectionContext,
61
+ * } from 'agentfootprint/skill-graph';
62
+ *
63
+ * // A foreign host builds `Injection` objects directly — five fields, all data.
64
+ * // (`defineSkill` and friends live host-side, on `agentfootprint/context`.)
65
+ * const triage: Injection = {
66
+ * id: 'triage',
67
+ * flavor: 'skill',
68
+ * description: 'Find the order the customer is talking about.',
69
+ * trigger: { kind: 'llm-activated', viaToolName: 'read_skill' },
70
+ * inject: { systemPrompt: 'Ask for the order id, then call lookup_order.' },
71
+ * };
72
+ * const billing: Injection = {
73
+ * id: 'billing',
74
+ * flavor: 'skill',
75
+ * description: 'Refunds, double charges, invoices.',
76
+ * trigger: { kind: 'llm-activated', viaToolName: 'read_skill' },
77
+ * inject: { systemPrompt: 'Confirm the charge history before promising a refund.' },
78
+ * };
45
79
  *
46
- * const graph = skillGraph({ skills, entry: 'triage' })
47
- * .route('triage', 'billing', { when: (ctx) => /invoice/i.test(ctx.userMessage) })
80
+ * // The FLUENT builder takes the skill OBJECTS (not their ids) and ends in
81
+ * // `.build()`. `skillGraph({ skills, start, steps })` is the OTHER door: it
82
+ * // returns a finished `SkillGraph`, with nothing to chain.
83
+ * const graph = skillGraph()
84
+ * .entry(triage)
85
+ * .route(triage, billing, { onToolReturn: 'lookup_order' })
48
86
  * .build();
49
87
  *
50
- * // per iteration — ONE ctx, built once (obligation 1)
51
- * const move = graph.explainNextSkill(ctx);
52
- * const offered = graph.reachableSkills(ctx.currentSkillId); // obligation 2
88
+ * // Per iteration — ONE ctx, built once and asked every question below: a
89
+ * // cursor derived from a different ctx than the triggers can disagree with
90
+ * // them (obligation 1 of `SkillGraphHost`).
91
+ * const ctx: InjectionContext = {
92
+ * iteration: 2,
93
+ * userMessage: 'I was charged twice for order 4021',
94
+ * history: [{ role: 'user', content: 'I was charged twice for order 4021' }],
95
+ * activatedInjectionIds: [],
96
+ * currentSkillId: 'triage',
97
+ * toolResults: [{ toolName: 'lookup_order', result: 'order 4021 · charged twice' }],
98
+ * };
99
+ *
100
+ * const move = graph.explainNextSkill(ctx); // where the cursor goes, and WHY
101
+ * const offered = graph.reachableSkills(move.to); // obligation 2 — gate read_skill on this
53
102
  * const readSkill = readSkillDescriptor(graph.skills, { grantable: offered });
54
103
  * ```
55
104
  */
@@ -1 +1 @@
1
- {"version":3,"file":"skill-graph.js","sourceRoot":"","sources":["../../../src/doors/skill-graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsDG;AAWH,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAY1E,OAAO,EACL,oBAAoB,GAErB,MAAM,wCAAwC,CAAC;AAEhD,0EAA0E;AAC1E,OAAO,EACL,WAAW,EACX,aAAa,EACb,UAAU,EACV,iCAAiC,EACjC,wBAAwB,GAiCzB,MAAM,uCAAuC,CAAC;AAG/C,0EAA0E;AAC1E,OAAO,EACL,eAAe,EACf,aAAa,EACb,WAAW,GAIZ,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,oBAAoB,GAKrB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,WAAW,EACX,eAAe,EACf,sBAAsB,EACtB,SAAS,EACT,eAAe,GAKhB,MAAM,0CAA0C,CAAC;AAElD,0EAA0E;AAC1E,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GAEpB,MAAM,iDAAiD,CAAC;AAEzD,0EAA0E;AAC1E,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,mBAAmB,GAMpB,MAAM,uCAAuC,CAAC;AAE/C,0EAA0E;AAC1E,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,GAEf,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,yBAAyB,EACzB,YAAY,GAEb,MAAM,4CAA4C,CAAC;AAEpD,0EAA0E;AAC1E,4EAA4E;AAC5E,4EAA4E;AAC5E,iCAAiC;AACjC,OAAO,EAAE,oBAAoB,EAAsB,MAAM,oCAAoC,CAAC"}
1
+ {"version":3,"file":"skill-graph.js","sourceRoot":"","sources":["../../../src/doors/skill-graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuGG;AAWH,OAAO,EAAE,sBAAsB,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAY1E,OAAO,EACL,oBAAoB,GAErB,MAAM,wCAAwC,CAAC;AAEhD,0EAA0E;AAC1E,OAAO,EACL,WAAW,EACX,aAAa,EACb,UAAU,EACV,iCAAiC,EACjC,wBAAwB,GAiCzB,MAAM,uCAAuC,CAAC;AAG/C,0EAA0E;AAC1E,OAAO,EACL,eAAe,EACf,aAAa,EACb,WAAW,GAIZ,MAAM,wCAAwC,CAAC;AAChD,OAAO,EACL,oBAAoB,GAKrB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,WAAW,EACX,eAAe,EACf,sBAAsB,EACtB,SAAS,EACT,eAAe,GAKhB,MAAM,0CAA0C,CAAC;AAElD,0EAA0E;AAC1E,OAAO,EACL,oBAAoB,EACpB,mBAAmB,GAEpB,MAAM,iDAAiD,CAAC;AAEzD,0EAA0E;AAC1E,OAAO,EACL,SAAS,EACT,kBAAkB,EAClB,mBAAmB,GAMpB,MAAM,uCAAuC,CAAC;AAE/C,0EAA0E;AAC1E,OAAO,EACL,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,GAEf,MAAM,0CAA0C,CAAC;AAClD,OAAO,EACL,yBAAyB,EACzB,YAAY,GAEb,MAAM,4CAA4C,CAAC;AAEpD,0EAA0E;AAC1E,4EAA4E;AAC5E,4EAA4E;AAC5E,iCAAiC;AACjC,OAAO,EAAE,oBAAoB,EAAsB,MAAM,oCAAoC,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * hosting/conformance/cases — the battery itself.
3
+ *
4
+ * Each case holds ONE law of the port and says which one in its `law` field,
5
+ * so a failure reads as a broken promise rather than as a broken assertion.
6
+ * Nothing here imports a test framework: a case throws to fail, which is the
7
+ * one convention every runner in every language already agrees on.
8
+ */
9
+ import type { ConformanceKit, SessionLifecycleCase } from './types.js';
10
+ /**
11
+ * The battery, in the order a store fails it most usefully: reading before
12
+ * writing, writing before ownership, ownership before the listing built on it.
13
+ */
14
+ export declare const sessionLifecycleConformance: readonly SessionLifecycleCase[];
15
+ export type { ConformanceKit, SessionLifecycleCase };