@slkiser/opencode-quota 4.1.0 → 4.3.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.
Files changed (209) hide show
  1. package/README.md +85 -28
  2. package/dist/lib/api-key-resolver.d.ts +73 -22
  3. package/dist/lib/api-key-resolver.d.ts.map +1 -1
  4. package/dist/lib/api-key-resolver.js +102 -15
  5. package/dist/lib/api-key-resolver.js.map +1 -1
  6. package/dist/lib/chutes-config.d.ts.map +1 -1
  7. package/dist/lib/chutes-config.js +2 -4
  8. package/dist/lib/chutes-config.js.map +1 -1
  9. package/dist/lib/config.d.ts +1 -1
  10. package/dist/lib/config.d.ts.map +1 -1
  11. package/dist/lib/config.js +22 -0
  12. package/dist/lib/config.js.map +1 -1
  13. package/dist/lib/copilot.d.ts.map +1 -1
  14. package/dist/lib/copilot.js +82 -31
  15. package/dist/lib/copilot.js.map +1 -1
  16. package/dist/lib/deepseek-auth.d.ts.map +1 -1
  17. package/dist/lib/deepseek-auth.js +3 -7
  18. package/dist/lib/deepseek-auth.js.map +1 -1
  19. package/dist/lib/entries.d.ts +9 -4
  20. package/dist/lib/entries.d.ts.map +1 -1
  21. package/dist/lib/entries.js.map +1 -1
  22. package/dist/lib/glm-coding-plan.d.ts +18 -0
  23. package/dist/lib/glm-coding-plan.d.ts.map +1 -0
  24. package/dist/lib/glm-coding-plan.js +68 -0
  25. package/dist/lib/glm-coding-plan.js.map +1 -0
  26. package/dist/lib/google-agy-companion.d.ts +4 -25
  27. package/dist/lib/google-agy-companion.d.ts.map +1 -1
  28. package/dist/lib/google-agy-companion.js +47 -272
  29. package/dist/lib/google-agy-companion.js.map +1 -1
  30. package/dist/lib/google-agy.d.ts.map +1 -1
  31. package/dist/lib/google-agy.js +7 -25
  32. package/dist/lib/google-agy.js.map +1 -1
  33. package/dist/lib/google-antigravity-companion.d.ts +4 -25
  34. package/dist/lib/google-antigravity-companion.d.ts.map +1 -1
  35. package/dist/lib/google-antigravity-companion.js +44 -283
  36. package/dist/lib/google-antigravity-companion.js.map +1 -1
  37. package/dist/lib/google-companion-credentials.d.ts +70 -0
  38. package/dist/lib/google-companion-credentials.d.ts.map +1 -0
  39. package/dist/lib/google-companion-credentials.js +265 -0
  40. package/dist/lib/google-companion-credentials.js.map +1 -0
  41. package/dist/lib/google-gemini-cli-companion.d.ts +4 -25
  42. package/dist/lib/google-gemini-cli-companion.d.ts.map +1 -1
  43. package/dist/lib/google-gemini-cli-companion.js +47 -258
  44. package/dist/lib/google-gemini-cli-companion.js.map +1 -1
  45. package/dist/lib/google-gemini-cli.d.ts.map +1 -1
  46. package/dist/lib/google-gemini-cli.js +2 -20
  47. package/dist/lib/google-gemini-cli.js.map +1 -1
  48. package/dist/lib/google.d.ts.map +1 -1
  49. package/dist/lib/google.js +23 -45
  50. package/dist/lib/google.js.map +1 -1
  51. package/dist/lib/kimi-auth.d.ts +3 -26
  52. package/dist/lib/kimi-auth.d.ts.map +1 -1
  53. package/dist/lib/kimi-auth.js +24 -91
  54. package/dist/lib/kimi-auth.js.map +1 -1
  55. package/dist/lib/maintainer-announcements.js +2 -2
  56. package/dist/lib/maintainer-announcements.js.map +1 -1
  57. package/dist/lib/map-with-concurrency.d.ts +2 -0
  58. package/dist/lib/map-with-concurrency.d.ts.map +1 -0
  59. package/dist/lib/map-with-concurrency.js +17 -0
  60. package/dist/lib/map-with-concurrency.js.map +1 -0
  61. package/dist/lib/nanogpt-config.d.ts.map +1 -1
  62. package/dist/lib/nanogpt-config.js +2 -4
  63. package/dist/lib/nanogpt-config.js.map +1 -1
  64. package/dist/lib/openrouter.d.ts +13 -0
  65. package/dist/lib/openrouter.d.ts.map +1 -0
  66. package/dist/lib/openrouter.js +41 -0
  67. package/dist/lib/openrouter.js.map +1 -0
  68. package/dist/lib/provider-metadata.d.ts +11 -0
  69. package/dist/lib/provider-metadata.d.ts.map +1 -1
  70. package/dist/lib/provider-metadata.js +11 -0
  71. package/dist/lib/provider-metadata.js.map +1 -1
  72. package/dist/lib/quota-dialog-commands.d.ts.map +1 -1
  73. package/dist/lib/quota-dialog-commands.js +3 -10
  74. package/dist/lib/quota-dialog-commands.js.map +1 -1
  75. package/dist/lib/quota-export.d.ts.map +1 -1
  76. package/dist/lib/quota-export.js +1 -0
  77. package/dist/lib/quota-export.js.map +1 -1
  78. package/dist/lib/quota-providers-remote.d.ts +0 -1
  79. package/dist/lib/quota-providers-remote.d.ts.map +1 -1
  80. package/dist/lib/quota-providers-remote.js +3 -16
  81. package/dist/lib/quota-providers-remote.js.map +1 -1
  82. package/dist/lib/quota-render-data.d.ts.map +1 -1
  83. package/dist/lib/quota-render-data.js +40 -15
  84. package/dist/lib/quota-render-data.js.map +1 -1
  85. package/dist/lib/quota-runtime-context.d.ts +2 -0
  86. package/dist/lib/quota-runtime-context.d.ts.map +1 -1
  87. package/dist/lib/quota-runtime-context.js +40 -0
  88. package/dist/lib/quota-runtime-context.js.map +1 -1
  89. package/dist/lib/quota-state.d.ts.map +1 -1
  90. package/dist/lib/quota-state.js +89 -5
  91. package/dist/lib/quota-state.js.map +1 -1
  92. package/dist/lib/quota-status.d.ts +7 -17
  93. package/dist/lib/quota-status.d.ts.map +1 -1
  94. package/dist/lib/quota-status.js +116 -1036
  95. package/dist/lib/quota-status.js.map +1 -1
  96. package/dist/lib/quota-telemetry.d.ts +45 -0
  97. package/dist/lib/quota-telemetry.d.ts.map +1 -0
  98. package/dist/lib/quota-telemetry.js +300 -0
  99. package/dist/lib/quota-telemetry.js.map +1 -0
  100. package/dist/lib/synthetic-config.d.ts.map +1 -1
  101. package/dist/lib/synthetic-config.js +2 -4
  102. package/dist/lib/synthetic-config.js.map +1 -1
  103. package/dist/lib/tui-runtime.d.ts.map +1 -1
  104. package/dist/lib/tui-runtime.js +10 -1
  105. package/dist/lib/tui-runtime.js.map +1 -1
  106. package/dist/lib/types.d.ts +17 -1
  107. package/dist/lib/types.d.ts.map +1 -1
  108. package/dist/lib/types.js +3 -0
  109. package/dist/lib/types.js.map +1 -1
  110. package/dist/lib/zai-auth.d.ts +3 -26
  111. package/dist/lib/zai-auth.d.ts.map +1 -1
  112. package/dist/lib/zai-auth.js +24 -94
  113. package/dist/lib/zai-auth.js.map +1 -1
  114. package/dist/lib/zai.d.ts +1 -8
  115. package/dist/lib/zai.d.ts.map +1 -1
  116. package/dist/lib/zai.js +11 -97
  117. package/dist/lib/zai.js.map +1 -1
  118. package/dist/lib/zhipu-auth.d.ts +3 -26
  119. package/dist/lib/zhipu-auth.d.ts.map +1 -1
  120. package/dist/lib/zhipu-auth.js +24 -94
  121. package/dist/lib/zhipu-auth.js.map +1 -1
  122. package/dist/lib/zhipu.d.ts +1 -8
  123. package/dist/lib/zhipu.d.ts.map +1 -1
  124. package/dist/lib/zhipu.js +10 -89
  125. package/dist/lib/zhipu.js.map +1 -1
  126. package/dist/plugin.d.ts.map +1 -1
  127. package/dist/plugin.js +4 -0
  128. package/dist/plugin.js.map +1 -1
  129. package/dist/providers/alibaba-coding-plan.d.ts.map +1 -1
  130. package/dist/providers/alibaba-coding-plan.js +33 -6
  131. package/dist/providers/alibaba-coding-plan.js.map +1 -1
  132. package/dist/providers/anthropic.d.ts.map +1 -1
  133. package/dist/providers/anthropic.js +35 -7
  134. package/dist/providers/anthropic.js.map +1 -1
  135. package/dist/providers/chutes.d.ts.map +1 -1
  136. package/dist/providers/chutes.js +10 -3
  137. package/dist/providers/chutes.js.map +1 -1
  138. package/dist/providers/copilot.d.ts.map +1 -1
  139. package/dist/providers/copilot.js +79 -29
  140. package/dist/providers/copilot.js.map +1 -1
  141. package/dist/providers/cursor.d.ts.map +1 -1
  142. package/dist/providers/cursor.js +34 -6
  143. package/dist/providers/cursor.js.map +1 -1
  144. package/dist/providers/deepseek.d.ts.map +1 -1
  145. package/dist/providers/deepseek.js +10 -3
  146. package/dist/providers/deepseek.js.map +1 -1
  147. package/dist/providers/glm-coding-plan-provider.d.ts +9 -0
  148. package/dist/providers/glm-coding-plan-provider.d.ts.map +1 -1
  149. package/dist/providers/glm-coding-plan-provider.js +24 -2
  150. package/dist/providers/glm-coding-plan-provider.js.map +1 -1
  151. package/dist/providers/google-agy.d.ts.map +1 -1
  152. package/dist/providers/google-agy.js +23 -6
  153. package/dist/providers/google-agy.js.map +1 -1
  154. package/dist/providers/google-antigravity.d.ts.map +1 -1
  155. package/dist/providers/google-antigravity.js +31 -6
  156. package/dist/providers/google-antigravity.js.map +1 -1
  157. package/dist/providers/google-gemini-cli.d.ts.map +1 -1
  158. package/dist/providers/google-gemini-cli.js +24 -6
  159. package/dist/providers/google-gemini-cli.js.map +1 -1
  160. package/dist/providers/kimi-code.d.ts.map +1 -1
  161. package/dist/providers/kimi-code.js +27 -8
  162. package/dist/providers/kimi-code.js.map +1 -1
  163. package/dist/providers/mimo.d.ts.map +1 -1
  164. package/dist/providers/mimo.js +12 -5
  165. package/dist/providers/mimo.js.map +1 -1
  166. package/dist/providers/minimax-coding-plan.d.ts.map +1 -1
  167. package/dist/providers/minimax-coding-plan.js +37 -6
  168. package/dist/providers/minimax-coding-plan.js.map +1 -1
  169. package/dist/providers/nanogpt.d.ts.map +1 -1
  170. package/dist/providers/nanogpt.js +41 -4
  171. package/dist/providers/nanogpt.js.map +1 -1
  172. package/dist/providers/openai.d.ts.map +1 -1
  173. package/dist/providers/openai.js +20 -3
  174. package/dist/providers/openai.js.map +1 -1
  175. package/dist/providers/opencode-go.d.ts.map +1 -1
  176. package/dist/providers/opencode-go.js +33 -15
  177. package/dist/providers/opencode-go.js.map +1 -1
  178. package/dist/providers/opencode-zen.d.ts.map +1 -1
  179. package/dist/providers/opencode-zen.js +27 -22
  180. package/dist/providers/opencode-zen.js.map +1 -1
  181. package/dist/providers/openrouter.d.ts +6 -0
  182. package/dist/providers/openrouter.d.ts.map +1 -0
  183. package/dist/providers/openrouter.js +25 -0
  184. package/dist/providers/openrouter.js.map +1 -0
  185. package/dist/providers/quota-providers.js +2 -1
  186. package/dist/providers/quota-providers.js.map +1 -1
  187. package/dist/providers/qwen-code.d.ts.map +1 -1
  188. package/dist/providers/qwen-code.js +19 -5
  189. package/dist/providers/qwen-code.js.map +1 -1
  190. package/dist/providers/registry.d.ts.map +1 -1
  191. package/dist/providers/registry.js +2 -0
  192. package/dist/providers/registry.js.map +1 -1
  193. package/dist/providers/result-helpers.d.ts +29 -1
  194. package/dist/providers/result-helpers.d.ts.map +1 -1
  195. package/dist/providers/result-helpers.js +69 -0
  196. package/dist/providers/result-helpers.js.map +1 -1
  197. package/dist/providers/synthetic.d.ts.map +1 -1
  198. package/dist/providers/synthetic.js +10 -3
  199. package/dist/providers/synthetic.js.map +1 -1
  200. package/dist/providers/zai.d.ts.map +1 -1
  201. package/dist/providers/zai.js +2 -1
  202. package/dist/providers/zai.js.map +1 -1
  203. package/dist/providers/zhipu.d.ts.map +1 -1
  204. package/dist/providers/zhipu.js +2 -1
  205. package/dist/providers/zhipu.js.map +1 -1
  206. package/dist/tui.d.ts.map +1 -1
  207. package/dist/tui.js +4 -0
  208. package/dist/tui.tsx +5 -0
  209. package/package.json +10 -2
@@ -1 +1 @@
1
- {"version":3,"file":"quota-status.js","sourceRoot":"","sources":["../../src/lib/quota-status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quota-status.js","sourceRoot":"","sources":["../../src/lib/quota-status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ import type { ObservableResult } from "@opentelemetry/api";
2
+ import type { QuotaProviderResult } from "./entries.js";
3
+ type ObservableCallback = (result: ObservableResult) => void;
4
+ type ObservableGauge = {
5
+ addCallback(callback: ObservableCallback): void;
6
+ removeCallback?(callback: ObservableCallback): void;
7
+ };
8
+ type TelemetryApi = {
9
+ metrics: {
10
+ getMeter(name: string): {
11
+ createObservableGauge(name: string, options: {
12
+ description: string;
13
+ unit: string;
14
+ }): ObservableGauge;
15
+ };
16
+ };
17
+ };
18
+ type TelemetryApiLoader = () => Promise<TelemetryApi>;
19
+ export interface QuotaTelemetryToken {
20
+ readonly ownerId: number;
21
+ readonly generation: number;
22
+ }
23
+ export declare function configureQuotaTelemetry(params: {
24
+ owner: object;
25
+ enabled: boolean;
26
+ identity: string;
27
+ }): QuotaTelemetryToken | undefined;
28
+ export declare function disposeQuotaTelemetryOwner(ownerKey: object): void;
29
+ export declare function updateQuotaTelemetrySnapshot(params: {
30
+ token?: QuotaTelemetryToken;
31
+ snapshotId: string;
32
+ supersededSnapshotIds?: readonly string[];
33
+ providerId: string;
34
+ cacheTimestamp?: number;
35
+ result: QuotaProviderResult | null;
36
+ }): void;
37
+ export declare function retainQuotaTelemetryProviders(params: {
38
+ token?: QuotaTelemetryToken;
39
+ providerIds: readonly string[];
40
+ }): void;
41
+ export declare function __flushQuotaTelemetryInitializationForTests(): Promise<void>;
42
+ export declare function __setQuotaTelemetryApiLoaderForTests(loader: TelemetryApiLoader): void;
43
+ export declare function __resetQuotaTelemetryForTests(): void;
44
+ export {};
45
+ //# sourceMappingURL=quota-telemetry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quota-telemetry.d.ts","sourceRoot":"","sources":["../../src/lib/quota-telemetry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEvE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAWxD,KAAK,kBAAkB,GAAG,CAAC,MAAM,EAAE,gBAAgB,KAAK,IAAI,CAAC;AAC7D,KAAK,eAAe,GAAG;IACrB,WAAW,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAChD,cAAc,CAAC,CAAC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;CACrD,CAAC;AACF,KAAK,YAAY,GAAG;IAClB,OAAO,EAAE;QACP,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG;YACtB,qBAAqB,CACnB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE;gBAAE,WAAW,EAAE,MAAM,CAAC;gBAAC,IAAI,EAAE,MAAM,CAAA;aAAE,GAC7C,eAAe,CAAC;SACpB,CAAC;KACH,CAAC;CACH,CAAC;AACF,KAAK,kBAAkB,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;AAEtD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAqMD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,GAAG,mBAAmB,GAAG,SAAS,CA8BlC;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAWjE;AAWD,wBAAgB,4BAA4B,CAAC,MAAM,EAAE;IACnD,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;CACpC,GAAG,IAAI,CAiEP;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE;IACpD,KAAK,CAAC,EAAE,mBAAmB,CAAC;IAC5B,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;CAChC,GAAG,IAAI,CAiBP;AAED,wBAAsB,2CAA2C,IAAI,OAAO,CAAC,IAAI,CAAC,CAEjF;AAED,wBAAgB,oCAAoC,CAAC,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAKrF;AAED,wBAAgB,6BAA6B,IAAI,IAAI,CAUpD"}
@@ -0,0 +1,300 @@
1
+ import { isPercentEntry } from "./entries.js";
2
+ import { getQuotaProviderShape } from "./provider-metadata.js";
3
+ import { classifyQuotaWindowText } from "./quota-entry-display.js";
4
+ import { QUOTA_PROVIDERS_AGGREGATE_ID } from "./quota-providers.js";
5
+ const METER_NAME = "@slkiser/opencode-quota";
6
+ const CONSUMED_METRIC_NAME = "opencode.quota.consumed";
7
+ const CACHE_AGE_METRIC_NAME = "opencode.quota.cache.age";
8
+ const TELEMETRY_STATE_KEY = Symbol.for("@slkiser/opencode-quota/quota-telemetry/v2");
9
+ function defaultApiLoader() {
10
+ return import("@opentelemetry/api");
11
+ }
12
+ function getState() {
13
+ const globalState = globalThis;
14
+ const existing = globalState[TELEMETRY_STATE_KEY];
15
+ if (existing)
16
+ return existing;
17
+ const state = {
18
+ owners: new WeakMap(),
19
+ ownersById: new Map(),
20
+ nextOwnerId: 1,
21
+ snapshots: new Map(),
22
+ initialization: null,
23
+ unavailable: false,
24
+ registered: false,
25
+ apiLoader: defaultApiLoader,
26
+ };
27
+ globalState[TELEMETRY_STATE_KEY] = state;
28
+ return state;
29
+ }
30
+ function safeProviderAttribute(providerId) {
31
+ if (providerId === QUOTA_PROVIDERS_AGGREGATE_ID ||
32
+ providerId.startsWith(`${QUOTA_PROVIDERS_AGGREGATE_ID}:`)) {
33
+ return "custom";
34
+ }
35
+ return getQuotaProviderShape(providerId)?.id ?? "other";
36
+ }
37
+ function activeProviderId(providerId) {
38
+ return providerId.startsWith(`${QUOTA_PROVIDERS_AGGREGATE_ID}:`)
39
+ ? QUOTA_PROVIDERS_AGGREGATE_ID
40
+ : providerId;
41
+ }
42
+ function observationKey(attributes) {
43
+ return [
44
+ attributes["quota.provider"],
45
+ attributes["quota.window"],
46
+ attributes["quota.result_type"],
47
+ ].join("\u0000");
48
+ }
49
+ function snapshotKey(ownerId, identity) {
50
+ return `${ownerId}\u0000${identity}`;
51
+ }
52
+ function removeOwnerSnapshots(state, ownerId) {
53
+ const prefix = `${ownerId}\u0000`;
54
+ for (const key of state.snapshots.keys()) {
55
+ if (key.startsWith(prefix))
56
+ state.snapshots.delete(key);
57
+ }
58
+ }
59
+ function collectConsumedObservations(state) {
60
+ const observations = new Map();
61
+ for (const snapshot of state.snapshots.values()) {
62
+ for (const observation of snapshot.consumed) {
63
+ const key = observationKey(observation.attributes);
64
+ const existing = observations.get(key);
65
+ if (!existing || observation.value > existing.value) {
66
+ observations.set(key, observation);
67
+ }
68
+ }
69
+ }
70
+ return [...observations.entries()]
71
+ .sort(([left], [right]) => left.localeCompare(right))
72
+ .map(([, observation]) => observation);
73
+ }
74
+ function collectCacheAgeObservations(state, now) {
75
+ const observations = new Map();
76
+ for (const snapshot of state.snapshots.values()) {
77
+ if (snapshot.cacheTimestamp === undefined)
78
+ continue;
79
+ const provider = safeProviderAttribute(snapshot.providerId);
80
+ const value = Math.max(0, now - snapshot.cacheTimestamp) / 1000;
81
+ const existing = observations.get(provider);
82
+ if (!existing || value > existing.value) {
83
+ observations.set(provider, {
84
+ value,
85
+ attributes: { "quota.provider": provider },
86
+ });
87
+ }
88
+ }
89
+ return [...observations.entries()]
90
+ .sort(([left], [right]) => left.localeCompare(right))
91
+ .map(([, observation]) => observation);
92
+ }
93
+ function emitObservations(result, observations) {
94
+ for (const observation of observations) {
95
+ try {
96
+ result.observe(observation.value, observation.attributes);
97
+ }
98
+ catch {
99
+ // One host observer failure must not suppress other safe series.
100
+ }
101
+ }
102
+ }
103
+ function registerInstruments(state, api) {
104
+ const meter = api.metrics.getMeter(METER_NAME);
105
+ const consumedGauge = meter.createObservableGauge(CONSUMED_METRIC_NAME, {
106
+ description: "Normalized quota consumed, where 1 is 100% consumed",
107
+ unit: "1",
108
+ });
109
+ const cacheAgeGauge = meter.createObservableGauge(CACHE_AGE_METRIC_NAME, {
110
+ description: "Age of the normalized cached quota observation",
111
+ unit: "s",
112
+ });
113
+ const observeConsumed = (result) => {
114
+ try {
115
+ emitObservations(result, collectConsumedObservations(state));
116
+ }
117
+ catch {
118
+ // Telemetry callbacks must never affect the host or quota collection.
119
+ }
120
+ };
121
+ const observeCacheAge = (result) => {
122
+ try {
123
+ emitObservations(result, collectCacheAgeObservations(state, Date.now()));
124
+ }
125
+ catch {
126
+ // Telemetry callbacks must never affect the host or quota collection.
127
+ }
128
+ };
129
+ consumedGauge.addCallback(observeConsumed);
130
+ try {
131
+ cacheAgeGauge.addCallback(observeCacheAge);
132
+ }
133
+ catch (error) {
134
+ consumedGauge.removeCallback?.(observeConsumed);
135
+ throw error;
136
+ }
137
+ state.consumedGauge = consumedGauge;
138
+ state.cacheAgeGauge = cacheAgeGauge;
139
+ state.observeConsumed = observeConsumed;
140
+ state.observeCacheAge = observeCacheAge;
141
+ state.registered = true;
142
+ }
143
+ function initializeTelemetry(state) {
144
+ if (state.registered || state.unavailable || state.initialization)
145
+ return;
146
+ state.initialization = state
147
+ .apiLoader()
148
+ .then((api) => registerInstruments(state, api))
149
+ .catch(() => {
150
+ state.unavailable = true;
151
+ });
152
+ }
153
+ export function configureQuotaTelemetry(params) {
154
+ try {
155
+ const state = getState();
156
+ let owner = state.owners.get(params.owner);
157
+ if (!owner) {
158
+ owner = {
159
+ id: state.nextOwnerId,
160
+ generation: 0,
161
+ enabled: false,
162
+ identity: "",
163
+ };
164
+ state.nextOwnerId += 1;
165
+ state.owners.set(params.owner, owner);
166
+ state.ownersById.set(owner.id, owner);
167
+ }
168
+ if (owner.enabled !== params.enabled || owner.identity !== params.identity) {
169
+ owner.enabled = params.enabled;
170
+ owner.identity = params.identity;
171
+ owner.generation += 1;
172
+ removeOwnerSnapshots(state, owner.id);
173
+ }
174
+ if (!owner.enabled)
175
+ return undefined;
176
+ initializeTelemetry(state);
177
+ return { ownerId: owner.id, generation: owner.generation };
178
+ }
179
+ catch {
180
+ // OpenTelemetry is optional and must not affect normal plugin behavior.
181
+ return undefined;
182
+ }
183
+ }
184
+ export function disposeQuotaTelemetryOwner(ownerKey) {
185
+ try {
186
+ const state = getState();
187
+ const owner = state.owners.get(ownerKey);
188
+ if (!owner)
189
+ return;
190
+ removeOwnerSnapshots(state, owner.id);
191
+ state.owners.delete(ownerKey);
192
+ state.ownersById.delete(owner.id);
193
+ }
194
+ catch {
195
+ // Plugin disposal must remain best-effort.
196
+ }
197
+ }
198
+ function isCurrentToken(state, token) {
199
+ if (!token)
200
+ return false;
201
+ const owner = state.ownersById.get(token.ownerId);
202
+ return Boolean(owner?.enabled && owner.generation === token.generation);
203
+ }
204
+ export function updateQuotaTelemetrySnapshot(params) {
205
+ try {
206
+ const state = getState();
207
+ if (!isCurrentToken(state, params.token))
208
+ return;
209
+ for (const snapshotId of params.supersededSnapshotIds ?? []) {
210
+ state.snapshots.delete(snapshotKey(params.token.ownerId, snapshotId));
211
+ }
212
+ const key = snapshotKey(params.token.ownerId, params.snapshotId);
213
+ if (!params.result || !params.result.attempted || params.result.entries.length === 0) {
214
+ state.snapshots.delete(key);
215
+ return;
216
+ }
217
+ const provider = safeProviderAttribute(params.providerId);
218
+ const consumed = new Map();
219
+ for (const entry of params.result.entries) {
220
+ if (!isPercentEntry(entry) || !Number.isFinite(entry.percentRemaining))
221
+ continue;
222
+ const attributes = {
223
+ "quota.provider": provider,
224
+ "quota.window": classifyQuotaWindowText(entry.label ?? "") ??
225
+ classifyQuotaWindowText(entry.name) ??
226
+ "unknown",
227
+ "quota.result_type": entry.accounting.resultType,
228
+ };
229
+ const observation = {
230
+ value: Math.min(1, Math.max(0, (100 - entry.percentRemaining) / 100)),
231
+ attributes,
232
+ };
233
+ const observationIdentity = observationKey(attributes);
234
+ const existing = consumed.get(observationIdentity);
235
+ if (!existing || observation.value > existing.value) {
236
+ consumed.set(observationIdentity, observation);
237
+ }
238
+ }
239
+ if (consumed.size === 0) {
240
+ state.snapshots.delete(key);
241
+ return;
242
+ }
243
+ const existing = state.snapshots.get(key);
244
+ if (existing?.cacheTimestamp !== undefined &&
245
+ params.cacheTimestamp !== undefined &&
246
+ params.cacheTimestamp < existing.cacheTimestamp) {
247
+ return;
248
+ }
249
+ state.snapshots.set(key, {
250
+ ownerId: params.token.ownerId,
251
+ generation: params.token.generation,
252
+ providerId: params.providerId,
253
+ ...(params.cacheTimestamp !== undefined ? { cacheTimestamp: params.cacheTimestamp } : {}),
254
+ consumed: [...consumed.entries()]
255
+ .sort(([left], [right]) => left.localeCompare(right))
256
+ .map(([, observation]) => observation),
257
+ });
258
+ }
259
+ catch {
260
+ // Snapshot publication is deliberately best-effort and synchronous.
261
+ }
262
+ }
263
+ export function retainQuotaTelemetryProviders(params) {
264
+ try {
265
+ const state = getState();
266
+ if (!isCurrentToken(state, params.token))
267
+ return;
268
+ const retained = new Set(params.providerIds);
269
+ for (const [key, snapshot] of state.snapshots) {
270
+ if (snapshot.ownerId === params.token.ownerId &&
271
+ !retained.has(activeProviderId(snapshot.providerId))) {
272
+ state.snapshots.delete(key);
273
+ }
274
+ }
275
+ }
276
+ catch {
277
+ // Reconciliation is best-effort and must not affect provider selection.
278
+ }
279
+ }
280
+ export async function __flushQuotaTelemetryInitializationForTests() {
281
+ await getState().initialization;
282
+ }
283
+ export function __setQuotaTelemetryApiLoaderForTests(loader) {
284
+ const state = getState();
285
+ state.apiLoader = loader;
286
+ state.initialization = null;
287
+ state.unavailable = false;
288
+ }
289
+ export function __resetQuotaTelemetryForTests() {
290
+ const globalState = globalThis;
291
+ const state = globalState[TELEMETRY_STATE_KEY];
292
+ if (state?.consumedGauge && state.observeConsumed) {
293
+ state.consumedGauge.removeCallback?.(state.observeConsumed);
294
+ }
295
+ if (state?.cacheAgeGauge && state.observeCacheAge) {
296
+ state.cacheAgeGauge.removeCallback?.(state.observeCacheAge);
297
+ }
298
+ delete globalState[TELEMETRY_STATE_KEY];
299
+ }
300
+ //# sourceMappingURL=quota-telemetry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quota-telemetry.js","sourceRoot":"","sources":["../../src/lib/quota-telemetry.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"synthetic-config.d.ts","sourceRoot":"","sources":["../../src/lib/synthetic-config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAKD,MAAM,MAAM,kBAAkB,GAC1B,uBAAuB,GACvB,eAAe,GACf,gBAAgB,GAChB,WAAW,CAAC;AAEhB,OAAO,EAAE,qCAAqC,IAAI,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AAejH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAEpF;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAE3D;AAED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC;IAC1D,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAClC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC,CAKD"}
1
+ {"version":3,"file":"synthetic-config.d.ts","sourceRoot":"","sources":["../../src/lib/synthetic-config.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,qBAAqB;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,kBAAkB,CAAC;CAC5B;AAKD,MAAM,MAAM,kBAAkB,GAC1B,uBAAuB,GACvB,eAAe,GACf,gBAAgB,GAChB,WAAW,CAAC;AAEhB,OAAO,EAAE,qCAAqC,IAAI,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AAgBjH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CAEpF;AAED,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC,CAE3D;AAED,wBAAsB,0BAA0B,IAAI,OAAO,CAAC;IAC1D,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAClC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB,CAAC,CAED"}
@@ -12,6 +12,7 @@ const syntheticApiKeyResolver = createProviderApiKeyResolver({
12
12
  getConfigCandidates: getGlobalOpencodeConfigCandidatePaths,
13
13
  auth: {
14
14
  readAuth: readAuthFile,
15
+ getAuthPaths,
15
16
  authSource: "auth.json",
16
17
  },
17
18
  });
@@ -22,9 +23,6 @@ export async function hasSyntheticApiKey() {
22
23
  return syntheticApiKeyResolver.has();
23
24
  }
24
25
  export async function getSyntheticKeyDiagnostics() {
25
- return {
26
- ...(await syntheticApiKeyResolver.diagnostics()),
27
- authPaths: getAuthPaths(),
28
- };
26
+ return syntheticApiKeyResolver.diagnostics();
29
27
  }
30
28
  //# sourceMappingURL=synthetic-config.js.map