@pumped-fn/lite 1.9.1 → 1.10.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/CHANGELOG.md CHANGED
@@ -1,5 +1,37 @@
1
1
  # @pumped-fn/lite
2
2
 
3
+ ## 1.10.0
4
+
5
+ ### Minor Changes
6
+
7
+ - d227191: Add tag and atom registries for automatic tracking
8
+
9
+ - Add `tag.atoms()` method to query all atoms that use a specific tag
10
+ - Add `getAllTags()` function to query all created tags
11
+ - Tagged values now include a `tag` reference to their parent Tag
12
+ - Uses WeakRef for memory-efficient tracking (tags and atoms can be GC'd)
13
+ - Automatic registration when `tag()` and `atom()` are called
14
+
15
+ ## 1.9.2
16
+
17
+ ### Patch Changes
18
+
19
+ - 8a5e509: Add `name` option to function execution for API consistency
20
+
21
+ When executing functions via `ctx.exec({ fn, params })`, you can now provide an explicit `name` option for better observability:
22
+
23
+ ```typescript
24
+ await ctx.exec({
25
+ fn: async (ctx, id) => fetchData(id),
26
+ params: ["123"],
27
+ name: "fetchUserData",
28
+ });
29
+ ```
30
+
31
+ Name resolution priority: `options.name` > `fn.name` > `undefined`
32
+
33
+ This matches the existing `name` option on flow execution, enabling consistent naming for tracing and debugging.
34
+
3
35
  ## 1.9.1
4
36
 
5
37
  ### Patch Changes
package/README.md CHANGED
@@ -74,20 +74,26 @@ sequenceDiagram
74
74
  Context->>Context: run onClose cleanups (LIFO)
75
75
  ```
76
76
 
77
- ## Tag Inheritance
77
+ ## Tag Inheritance (ADR-023)
78
+
79
+ Tags are auto-populated into `ctx.data` and resolved via `seekTag()`:
78
80
 
79
81
  ```mermaid
80
82
  flowchart TD
81
- subgraph Scope["Scope: tags=[tenantId('t1')]"]
82
- subgraph Context["Context: tags=[requestId('r1')]"]
83
- subgraph Flow["Flow deps:"]
84
- T1["tags.required(tenantId) → 't1'"]
85
- T2["tags.required(requestId)'r1'"]
83
+ subgraph Root["Root Context (ctx.data)"]
84
+ S["scope.tags → auto-populated"]
85
+ C["context.tags → auto-populated"]
86
+ subgraph Child["Child Context (exec)"]
87
+ E["exec.tags → auto-populated"]
88
+ F["flow.tags → auto-populated"]
89
+ D["ctx.data.setTag() → runtime"]
90
+ subgraph Deps["tags.required(tag)"]
91
+ R["seekTag() traverses: Child → Root"]
86
92
  end
87
93
  end
88
94
  end
89
95
 
90
- Note["Inner inherits from outer. Override by passing same tag at inner level."]
96
+ Note["Nearest value wins. Propagates to all descendants."]
91
97
  ```
92
98
 
93
99
  ## Controller Reactivity
@@ -155,11 +161,29 @@ Short-lived operation with input/output.
155
161
 
156
162
  Contextual value passed through execution without explicit wiring.
157
163
 
158
- - `tag({ label, default?, parse? })` — define with optional default and validation
159
- - `tags.required(tag)` dependency that throws if missing
160
- - `tags.optional(tag)` dependency that returns undefined if missing
161
- - `tags.all(tag)` — collects all values from inheritance chain
162
- - Tags inherit: Scope → Context → exec call
164
+ - Hierarchical lookup via `seekTag()` (ADR-023)
165
+ - Auto-populates into `ctx.data`: scope context exec → flow
166
+ - Registry tracks atom↔tag relationships (ADR-026)
167
+
168
+ ```mermaid
169
+ flowchart TD
170
+ subgraph "Tag Registry (ADR-026)"
171
+ direction LR
172
+ A["atom({ tags: [...] })"] -->|auto-register| R["WeakMap⟨Tag, WeakRef⟨Atom⟩[]⟩"]
173
+ R -->|"tag.atoms()"| Q["query atoms by tag"]
174
+ R -->|"getAllTags()"| T["query all tags"]
175
+ end
176
+
177
+ subgraph "Tag Inheritance (ADR-023)"
178
+ S[scope.tags] --> D[ctx.data]
179
+ C[context.tags] --> D
180
+ E[exec.tags] --> D
181
+ F[flow.tags] --> D
182
+ D -->|"seekTag()"| V["nearest value wins"]
183
+ end
184
+ ```
185
+
186
+ Memory: `WeakRef` allows GC of unused atoms/tags. Cleanup on query.
163
187
 
164
188
  ### Controller
165
189
 
@@ -194,6 +218,42 @@ AOP-style middleware for cross-cutting concerns.
194
218
  - `dispose(scope)` — cleanup when scope disposed
195
219
  - Pass via `createScope({ extensions: [...] })`
196
220
 
221
+ ## Patterns
222
+
223
+ ### Eager Resolution via Tag Registry
224
+
225
+ Use tags to mark atoms for eager resolution without hardcoding atom references:
226
+
227
+ ```mermaid
228
+ flowchart LR
229
+ subgraph "Define"
230
+ T[eagerTag] --> A1[atomA]
231
+ T --> A2[atomB]
232
+ T --> A3[atomC]
233
+ end
234
+
235
+ subgraph "Extension init()"
236
+ E["eagerTag.atoms()"] --> R["resolve all marked atoms"]
237
+ end
238
+
239
+ A1 & A2 & A3 -.->|"auto-tracked"| E
240
+ ```
241
+
242
+ ### Extension Discovery via getAllTags()
243
+
244
+ Extensions can discover and process all tags at runtime:
245
+
246
+ ```mermaid
247
+ flowchart LR
248
+ subgraph "Runtime"
249
+ G["getAllTags()"] --> F{"filter by criteria"}
250
+ F --> P["process matching tags"]
251
+ P --> A["tag.atoms() for each"]
252
+ end
253
+ ```
254
+
255
+ Use cases: metrics collection, debugging, documentation generation.
256
+
197
257
  ## Full API
198
258
 
199
259
  See [`dist/index.d.mts`](./dist/index.d.mts) for complete type definitions.
@@ -229,9 +289,9 @@ ctx.data.getOrSetTag(countTag) // 0 (uses default, now stored)
229
289
  ctx.data.getTag(countTag) // 0 (now stored)
230
290
  ```
231
291
 
232
- ### Hierarchical Data Lookup with seek()
292
+ ### Hierarchical Data Lookup with seekTag() (ADR-023)
233
293
 
234
- Each execution context has isolated data, but `seekTag()` traverses the parent chain:
294
+ Tag dependencies (`tags.required()`, `tags.optional()`, `tags.all()`) use `seekTag()` internally to traverse the ExecutionContext parent chain. Tags from all sources are auto-populated into `ctx.data`:
235
295
 
236
296
  ```typescript
237
297
  const requestIdTag = tag<string>({ label: 'requestId' })
@@ -244,9 +304,9 @@ const middleware = flow({
244
304
  })
245
305
 
246
306
  const handler = flow({
247
- factory: (ctx) => {
248
- // seekTag() finds value from parent context
249
- const reqId = ctx.data.seekTag(requestIdTag) // 'req-123'
307
+ deps: { reqId: tags.required(requestIdTag) },
308
+ factory: (ctx, { reqId }) => {
309
+ // reqId === 'req-123' (found via seekTag from parent)
250
310
  }
251
311
  })
252
312
  ```
@@ -256,6 +316,28 @@ const handler = flow({
256
316
  | `getTag(tag)` | Local only | Per-exec isolated data |
257
317
  | `seekTag(tag)` | Local → parent → root | Cross-cutting concerns |
258
318
  | `setTag(tag, v)` | Local only | Always writes to current context |
319
+ | `tags.required(tag)` | Uses `seekTag()` | Dependency injection |
320
+
321
+ ### Resolution Timing
322
+
323
+ Tag dependencies resolve **once** at factory start. Direct `seekTag()` calls reflect runtime changes:
324
+
325
+ ```typescript
326
+ const handler = flow({
327
+ deps: { userId: tags.required(userIdTag) },
328
+ factory: (ctx, { userId }) => {
329
+ ctx.data.setTag(userIdTag, 'changed')
330
+
331
+ console.log(userId) // Original (stable)
332
+ console.log(ctx.data.seekTag(userIdTag)) // 'changed' (dynamic)
333
+ }
334
+ })
335
+ ```
336
+
337
+ | Access | Resolution | Runtime Changes |
338
+ |--------|------------|-----------------|
339
+ | `deps: { x: tags.required(tag) }` | Once at start | Stable snapshot |
340
+ | `ctx.data.seekTag(tag)` | Each call | Sees changes |
259
341
 
260
342
  ## License
261
343
 
package/dist/index.cjs CHANGED
@@ -24,11 +24,74 @@ var ParseError = class extends Error {
24
24
 
25
25
  //#endregion
26
26
  //#region src/tag.ts
27
+ const registry = /* @__PURE__ */ new WeakMap();
28
+ const tagRegistry = [];
29
+ /**
30
+ * Returns all tags that have been created.
31
+ *
32
+ * Uses WeakRef internally so tags can be garbage collected when no longer referenced.
33
+ * Stale references are cleaned up lazily on each call (not between calls).
34
+ *
35
+ * @returns Array of all live Tag instances. Returns `Tag<unknown, boolean>[]` because
36
+ * the registry cannot preserve individual tag type parameters at runtime.
37
+ *
38
+ * Performance: O(n) where n = total tags created. For typical usage (< 100 tags),
39
+ * this is negligible. Cleanup happens during query, not continuously.
40
+ *
41
+ * @example
42
+ * ```typescript
43
+ * const allTags = getAllTags()
44
+ * for (const t of allTags) {
45
+ * console.log(t.label, t.atoms().length)
46
+ * }
47
+ * ```
48
+ */
49
+ function getAllTags() {
50
+ const live = [];
51
+ const liveRefs = [];
52
+ for (const ref of tagRegistry) {
53
+ const tag$1 = ref.deref();
54
+ if (tag$1) {
55
+ live.push(tag$1);
56
+ liveRefs.push(ref);
57
+ }
58
+ }
59
+ tagRegistry.length = 0;
60
+ tagRegistry.push(...liveRefs);
61
+ return live;
62
+ }
63
+ function registerAtomToTags(atom$1, tags$1) {
64
+ for (const tagged of tags$1) {
65
+ let refs = registry.get(tagged.tag);
66
+ if (!refs) {
67
+ refs = [];
68
+ registry.set(tagged.tag, refs);
69
+ }
70
+ refs.push(new WeakRef(atom$1));
71
+ }
72
+ }
73
+ function getAtomsForTag(tag$1) {
74
+ const refs = registry.get(tag$1);
75
+ if (!refs) return [];
76
+ const live = [];
77
+ const liveRefs = [];
78
+ for (const ref of refs) {
79
+ const atom$1 = ref.deref();
80
+ if (atom$1) {
81
+ live.push(atom$1);
82
+ liveRefs.push(ref);
83
+ }
84
+ }
85
+ if (liveRefs.length > 0) registry.set(tag$1, liveRefs);
86
+ else registry.delete(tag$1);
87
+ return live;
88
+ }
27
89
  function tag(options) {
28
90
  const key = Symbol.for(`@pumped-fn/lite/tag/${options.label}`);
29
91
  const hasDefault = "default" in options;
30
92
  const defaultValue = hasDefault ? options.default : void 0;
31
93
  const parse = options.parse;
94
+ let tagInstance;
32
95
  function createTagged(value) {
33
96
  let validatedValue = value;
34
97
  if (parse) try {
@@ -39,7 +102,8 @@ function tag(options) {
39
102
  return {
40
103
  [taggedSymbol]: true,
41
104
  key,
42
- value: validatedValue
105
+ value: validatedValue,
106
+ tag: tagInstance
43
107
  };
44
108
  }
45
109
  function get(source) {
@@ -59,7 +123,22 @@ function tag(options) {
59
123
  for (let i = 0; i < tags$1.length; i++) if (tags$1[i].key === key) result.push(tags$1[i].value);
60
124
  return result;
61
125
  }
62
- return Object.assign(createTagged, {
126
+ /**
127
+ * Returns all atoms that have been created with this tag.
128
+ *
129
+ * Uses WeakRef internally so atoms can be garbage collected when no longer referenced.
130
+ * Stale references are cleaned up lazily on each call.
131
+ *
132
+ * @returns Array of atoms using this tag. Returns `Atom<unknown>[]` because multiple
133
+ * atom types with different return types can use the same tag - TypeScript cannot
134
+ * track this runtime relationship.
135
+ *
136
+ * Performance: O(n) where n = atoms using this tag. Cleanup happens during query.
137
+ */
138
+ function atoms() {
139
+ return getAtomsForTag(tagInstance);
140
+ }
141
+ tagInstance = Object.assign(createTagged, {
63
142
  [tagSymbol]: true,
64
143
  key,
65
144
  label: options.label,
@@ -68,8 +147,11 @@ function tag(options) {
68
147
  parse,
69
148
  get,
70
149
  find,
71
- collect
150
+ collect,
151
+ atoms
72
152
  });
153
+ tagRegistry.push(new WeakRef(tagInstance));
154
+ return tagInstance;
73
155
  }
74
156
  /**
75
157
  * Type guard to check if a value is a Tag.
@@ -149,12 +231,14 @@ function isTagExecutor(value) {
149
231
  //#endregion
150
232
  //#region src/atom.ts
151
233
  function atom(config) {
152
- return {
234
+ const atomInstance = {
153
235
  [atomSymbol]: true,
154
236
  factory: config.factory,
155
237
  deps: config.deps,
156
238
  tags: config.tags
157
239
  };
240
+ if (config.tags?.length) registerAtomToTags(atomInstance, config.tags);
241
+ return atomInstance;
158
242
  }
159
243
  /**
160
244
  * Type guard to check if a value is an Atom.
@@ -668,10 +752,9 @@ var ScopeImpl = class {
668
752
  }
669
753
  return next();
670
754
  }
671
- async resolveDeps(deps, tagSource) {
755
+ async resolveDeps(deps, ctx) {
672
756
  if (!deps) return {};
673
757
  const result = {};
674
- const tags$1 = tagSource ?? this.tags;
675
758
  for (const [key, dep] of Object.entries(deps)) if (isAtom(dep)) result[key] = await this.resolve(dep);
676
759
  else if (isControllerDep(dep)) {
677
760
  const ctrl = new ControllerImpl(dep.atom, this);
@@ -680,19 +763,33 @@ var ScopeImpl = class {
680
763
  } else if (tagExecutorSymbol in dep) {
681
764
  const tagExecutor = dep;
682
765
  switch (tagExecutor.mode) {
683
- case "required":
684
- result[key] = tagExecutor.tag.get(tags$1);
766
+ case "required": {
767
+ const value = ctx ? ctx.data.seekTag(tagExecutor.tag) : tagExecutor.tag.find(this.tags);
768
+ if (value !== void 0) result[key] = value;
769
+ else if (tagExecutor.tag.hasDefault) result[key] = tagExecutor.tag.defaultValue;
770
+ else throw new Error(`Tag "${tagExecutor.tag.label}" not found`);
685
771
  break;
772
+ }
686
773
  case "optional":
687
- result[key] = tagExecutor.tag.find(tags$1);
774
+ result[key] = (ctx ? ctx.data.seekTag(tagExecutor.tag) : tagExecutor.tag.find(this.tags)) ?? tagExecutor.tag.defaultValue;
688
775
  break;
689
776
  case "all":
690
- result[key] = tagExecutor.tag.collect(tags$1);
777
+ result[key] = ctx ? this.collectFromHierarchy(ctx, tagExecutor.tag) : tagExecutor.tag.collect(this.tags);
691
778
  break;
692
779
  }
693
780
  }
694
781
  return result;
695
782
  }
783
+ collectFromHierarchy(ctx, tag$1) {
784
+ const results = [];
785
+ let current = ctx;
786
+ while (current) {
787
+ const value = current.data.getTag(tag$1);
788
+ if (value !== void 0) results.push(value);
789
+ current = current.parent;
790
+ }
791
+ return results;
792
+ }
696
793
  controller(atom$1, options) {
697
794
  let ctrl = this.controllers.get(atom$1);
698
795
  if (!ctrl) {
@@ -787,14 +884,16 @@ var ScopeImpl = class {
787
884
  if (this.chainPromise) await this.chainPromise;
788
885
  }
789
886
  createContext(options) {
790
- return new ExecutionContextImpl(this, options);
887
+ const ctx = new ExecutionContextImpl(this, options);
888
+ for (const tagged of options?.tags ?? []) ctx.data.set(tagged.key, tagged.value);
889
+ for (const tagged of this.tags) if (!ctx.data.has(tagged.key)) ctx.data.set(tagged.key, tagged.value);
890
+ return ctx;
791
891
  }
792
892
  };
793
893
  var ExecutionContextImpl = class ExecutionContextImpl {
794
894
  cleanups = [];
795
895
  closed = false;
796
896
  _input;
797
- baseTags;
798
897
  _data;
799
898
  _execName;
800
899
  _flowName;
@@ -805,8 +904,6 @@ var ExecutionContextImpl = class ExecutionContextImpl {
805
904
  this._input = options?.input;
806
905
  this._execName = options?.execName;
807
906
  this._flowName = options?.flowName;
808
- const ctxTags = options?.tags;
809
- this.baseTags = ctxTags?.length ? [...ctxTags, ...scope.tags] : scope.tags;
810
907
  }
811
908
  get input() {
812
909
  return this._input;
@@ -821,7 +918,7 @@ var ExecutionContextImpl = class ExecutionContextImpl {
821
918
  async exec(options) {
822
919
  if (this.closed) throw new Error("ExecutionContext is closed");
823
920
  if ("flow" in options) {
824
- const { flow: flow$1, input, rawInput, name: execName } = options;
921
+ const { flow: flow$1, input, rawInput, name: execName, tags: execTags } = options;
825
922
  const rawValue = rawInput !== void 0 ? rawInput : input;
826
923
  let parsedInput = rawValue;
827
924
  if (flow$1.parse) {
@@ -834,20 +931,21 @@ var ExecutionContextImpl = class ExecutionContextImpl {
834
931
  }
835
932
  const childCtx = new ExecutionContextImpl(this.scope, {
836
933
  parent: this,
837
- tags: this.baseTags,
838
934
  input: parsedInput,
839
935
  execName,
840
936
  flowName: flow$1.name
841
937
  });
938
+ for (const tagged of execTags ?? []) childCtx.data.set(tagged.key, tagged.value);
939
+ for (const tagged of flow$1.tags ?? []) if (!childCtx.data.has(tagged.key)) childCtx.data.set(tagged.key, tagged.value);
842
940
  try {
843
- return await childCtx.execFlowInternal(options);
941
+ return await childCtx.execFlowInternal(flow$1);
844
942
  } finally {
845
943
  await childCtx.close();
846
944
  }
847
945
  } else {
848
946
  const childCtx = new ExecutionContextImpl(this.scope, {
849
947
  parent: this,
850
- tags: this.baseTags,
948
+ execName: options.name,
851
949
  flowName: options.fn.name || void 0,
852
950
  input: options.params
853
951
  });
@@ -858,14 +956,8 @@ var ExecutionContextImpl = class ExecutionContextImpl {
858
956
  }
859
957
  }
860
958
  }
861
- async execFlowInternal(options) {
862
- const { flow: flow$1, tags: execTags } = options;
863
- const allTags = (execTags?.length ?? 0) > 0 || (flow$1.tags?.length ?? 0) > 0 ? [
864
- ...execTags ?? [],
865
- ...this.baseTags,
866
- ...flow$1.tags ?? []
867
- ] : this.baseTags;
868
- const resolvedDeps = await this.scope.resolveDeps(flow$1.deps, allTags);
959
+ async execFlowInternal(flow$1) {
960
+ const resolvedDeps = await this.scope.resolveDeps(flow$1.deps, this);
869
961
  const factory = flow$1.factory;
870
962
  const doExec = async () => {
871
963
  if (flow$1.deps && Object.keys(flow$1.deps).length > 0) return factory(this, resolvedDeps);
@@ -945,6 +1037,7 @@ exports.controllerSymbol = controllerSymbol;
945
1037
  exports.createScope = createScope;
946
1038
  exports.flow = flow;
947
1039
  exports.flowSymbol = flowSymbol;
1040
+ exports.getAllTags = getAllTags;
948
1041
  exports.isAtom = isAtom;
949
1042
  exports.isControllerDep = isControllerDep;
950
1043
  exports.isFlow = isFlow;
package/dist/index.d.cts CHANGED
@@ -132,6 +132,7 @@ declare namespace Lite {
132
132
  interface ExecFnOptions<Output, Args extends unknown[] = unknown[]> {
133
133
  fn: (ctx: ExecutionContext, ...args: Args) => MaybePromise<Output>;
134
134
  params: Args;
135
+ name?: string;
135
136
  tags?: Tagged<unknown>[];
136
137
  }
137
138
  type ControllerEvent = 'resolving' | 'resolved' | '*';
@@ -188,11 +189,13 @@ declare namespace Lite {
188
189
  get(source: TagSource): HasDefault extends true ? T : T;
189
190
  find(source: TagSource): HasDefault extends true ? T : T | undefined;
190
191
  collect(source: TagSource): T[];
192
+ atoms(): Atom<unknown>[];
191
193
  }
192
194
  interface Tagged<T> {
193
195
  readonly [taggedSymbol]: true;
194
196
  readonly key: symbol;
195
197
  readonly value: T;
198
+ readonly tag: Tag<T, boolean>;
196
199
  }
197
200
  type TagSource = Tagged<unknown>[] | {
198
201
  tags?: Tagged<unknown>[];
@@ -239,6 +242,27 @@ declare namespace Lite {
239
242
  }
240
243
  //#endregion
241
244
  //#region src/tag.d.ts
245
+ /**
246
+ * Returns all tags that have been created.
247
+ *
248
+ * Uses WeakRef internally so tags can be garbage collected when no longer referenced.
249
+ * Stale references are cleaned up lazily on each call (not between calls).
250
+ *
251
+ * @returns Array of all live Tag instances. Returns `Tag<unknown, boolean>[]` because
252
+ * the registry cannot preserve individual tag type parameters at runtime.
253
+ *
254
+ * Performance: O(n) where n = total tags created. For typical usage (< 100 tags),
255
+ * this is negligible. Cleanup happens during query, not continuously.
256
+ *
257
+ * @example
258
+ * ```typescript
259
+ * const allTags = getAllTags()
260
+ * for (const t of allTags) {
261
+ * console.log(t.label, t.atoms().length)
262
+ * }
263
+ * ```
264
+ */
265
+ declare function getAllTags(): Lite.Tag<unknown, boolean>[];
242
266
  /**
243
267
  * Creates a metadata tag for attaching and retrieving typed values from Atoms and Flows.
244
268
  *
@@ -628,5 +652,5 @@ declare class ParseError extends Error {
628
652
  //#region src/index.d.ts
629
653
  declare const VERSION = "0.0.1";
630
654
  //#endregion
631
- export { type AtomState, type Lite, ParseError, VERSION, atom, atomSymbol, controller, controllerDepSymbol, controllerSymbol, createScope, flow, flowSymbol, isAtom, isControllerDep, isFlow, isPreset, isTag, isTagExecutor, isTagged, preset, presetSymbol, service, tag, tagExecutorSymbol, tagSymbol, taggedSymbol, tags, typed, typedSymbol };
655
+ export { type AtomState, type Lite, ParseError, VERSION, atom, atomSymbol, controller, controllerDepSymbol, controllerSymbol, createScope, flow, flowSymbol, getAllTags, isAtom, isControllerDep, isFlow, isPreset, isTag, isTagExecutor, isTagged, preset, presetSymbol, service, tag, tagExecutorSymbol, tagSymbol, taggedSymbol, tags, typed, typedSymbol };
632
656
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/symbols.ts","../src/types.ts","../src/tag.ts","../src/atom.ts","../src/flow.ts","../src/preset.ts","../src/service.ts","../src/scope.ts","../src/errors.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/symbols.ts","../src/types.ts","../src/tag.ts","../src/atom.ts","../src/flow.ts","../src/preset.ts","../src/service.ts","../src/scope.ts","../src/errors.ts","../src/index.ts"],"sourcesContent":[],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -132,6 +132,7 @@ declare namespace Lite {
132
132
  interface ExecFnOptions<Output, Args extends unknown[] = unknown[]> {
133
133
  fn: (ctx: ExecutionContext, ...args: Args) => MaybePromise<Output>;
134
134
  params: Args;
135
+ name?: string;
135
136
  tags?: Tagged<unknown>[];
136
137
  }
137
138
  type ControllerEvent = 'resolving' | 'resolved' | '*';
@@ -188,11 +189,13 @@ declare namespace Lite {
188
189
  get(source: TagSource): HasDefault extends true ? T : T;
189
190
  find(source: TagSource): HasDefault extends true ? T : T | undefined;
190
191
  collect(source: TagSource): T[];
192
+ atoms(): Atom<unknown>[];
191
193
  }
192
194
  interface Tagged<T> {
193
195
  readonly [taggedSymbol]: true;
194
196
  readonly key: symbol;
195
197
  readonly value: T;
198
+ readonly tag: Tag<T, boolean>;
196
199
  }
197
200
  type TagSource = Tagged<unknown>[] | {
198
201
  tags?: Tagged<unknown>[];
@@ -239,6 +242,27 @@ declare namespace Lite {
239
242
  }
240
243
  //#endregion
241
244
  //#region src/tag.d.ts
245
+ /**
246
+ * Returns all tags that have been created.
247
+ *
248
+ * Uses WeakRef internally so tags can be garbage collected when no longer referenced.
249
+ * Stale references are cleaned up lazily on each call (not between calls).
250
+ *
251
+ * @returns Array of all live Tag instances. Returns `Tag<unknown, boolean>[]` because
252
+ * the registry cannot preserve individual tag type parameters at runtime.
253
+ *
254
+ * Performance: O(n) where n = total tags created. For typical usage (< 100 tags),
255
+ * this is negligible. Cleanup happens during query, not continuously.
256
+ *
257
+ * @example
258
+ * ```typescript
259
+ * const allTags = getAllTags()
260
+ * for (const t of allTags) {
261
+ * console.log(t.label, t.atoms().length)
262
+ * }
263
+ * ```
264
+ */
265
+ declare function getAllTags(): Lite.Tag<unknown, boolean>[];
242
266
  /**
243
267
  * Creates a metadata tag for attaching and retrieving typed values from Atoms and Flows.
244
268
  *
@@ -628,5 +652,5 @@ declare class ParseError extends Error {
628
652
  //#region src/index.d.ts
629
653
  declare const VERSION = "0.0.1";
630
654
  //#endregion
631
- export { type AtomState, type Lite, ParseError, VERSION, atom, atomSymbol, controller, controllerDepSymbol, controllerSymbol, createScope, flow, flowSymbol, isAtom, isControllerDep, isFlow, isPreset, isTag, isTagExecutor, isTagged, preset, presetSymbol, service, tag, tagExecutorSymbol, tagSymbol, taggedSymbol, tags, typed, typedSymbol };
655
+ export { type AtomState, type Lite, ParseError, VERSION, atom, atomSymbol, controller, controllerDepSymbol, controllerSymbol, createScope, flow, flowSymbol, getAllTags, isAtom, isControllerDep, isFlow, isPreset, isTag, isTagExecutor, isTagged, preset, presetSymbol, service, tag, tagExecutorSymbol, tagSymbol, taggedSymbol, tags, typed, typedSymbol };
632
656
  //# sourceMappingURL=index.d.mts.map