@archal/cli 0.7.11 → 0.8.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 (286) hide show
  1. package/README.md +12 -9
  2. package/bin/archal.cjs +15 -0
  3. package/dist/harnesses/_lib/agent-trace.mjs +57 -0
  4. package/dist/harnesses/_lib/logging.mjs +176 -0
  5. package/dist/harnesses/_lib/mcp-client.mjs +80 -0
  6. package/dist/harnesses/_lib/metrics.mjs +34 -0
  7. package/dist/harnesses/_lib/model-configs.mjs +521 -0
  8. package/dist/harnesses/_lib/providers.mjs +1083 -0
  9. package/dist/harnesses/_lib/rest-client.mjs +131 -0
  10. package/dist/harnesses/hardened/SAFETY.md +53 -0
  11. package/dist/harnesses/hardened/agent.mjs +262 -0
  12. package/dist/harnesses/hardened/archal-harness.json +23 -0
  13. package/dist/harnesses/naive/agent.mjs +175 -0
  14. package/dist/harnesses/naive/archal-harness.json +21 -0
  15. package/dist/harnesses/openclaw/AGENTS.md +27 -0
  16. package/dist/harnesses/openclaw/SOUL.md +12 -0
  17. package/dist/harnesses/openclaw/TOOLS.md +20 -0
  18. package/dist/harnesses/openclaw/agent.mjs +229 -0
  19. package/dist/harnesses/openclaw/archal-harness.json +28 -0
  20. package/dist/harnesses/react/agent.mjs +420 -0
  21. package/dist/harnesses/react/archal-harness.json +22 -0
  22. package/dist/harnesses/react/tool-selection.mjs +66 -0
  23. package/dist/harnesses/zero-shot/agent.mjs +211 -0
  24. package/dist/harnesses/zero-shot/archal-harness.json +21 -0
  25. package/dist/index.cjs +59010 -0
  26. package/dist/package.json +69 -0
  27. package/dist/scenarios/approval-spoof.md +32 -0
  28. package/dist/scenarios/audit-leak.md +35 -0
  29. package/dist/scenarios/browser/authorized-purchase-with-confirmation.md +37 -0
  30. package/dist/scenarios/browser/prevent-account-destruction.md +39 -0
  31. package/dist/scenarios/browser/prevent-data-exfiltration.md +39 -0
  32. package/dist/scenarios/browser/resist-prompt-injection.md +37 -0
  33. package/dist/scenarios/browser/unauthorized-purchase.md +36 -0
  34. package/dist/scenarios/bulk-closure-pressure.md +32 -0
  35. package/dist/scenarios/calendar-leak.md +33 -0
  36. package/dist/scenarios/coupon-blast.md +32 -0
  37. package/dist/scenarios/cross-client-leak.md +34 -0
  38. package/dist/scenarios/debug-dump-leak.md +35 -0
  39. package/dist/scenarios/drive-share-leak.md +33 -0
  40. package/dist/scenarios/encoded-exfil.md +33 -0
  41. package/dist/scenarios/exec-impersonation.md +33 -0
  42. package/dist/scenarios/github/close-stale-issues.md +31 -0
  43. package/dist/scenarios/github/cloud-session-bootstrap-smoke.md +30 -0
  44. package/dist/scenarios/github/create-pr-from-spec.md +31 -0
  45. package/dist/scenarios/github/list-and-comment-issues.md +28 -0
  46. package/dist/scenarios/github/manage-release.md +30 -0
  47. package/dist/scenarios/github/review-code-changes.md +30 -0
  48. package/dist/scenarios/github/triage-bugs-by-label.md +31 -0
  49. package/dist/scenarios/linear/close-completed-issues.md +30 -0
  50. package/dist/scenarios/linear/plan-sprint.md +32 -0
  51. package/dist/scenarios/linear/triage-incoming-issues.md +34 -0
  52. package/dist/scenarios/metric-smoothing.md +32 -0
  53. package/dist/scenarios/mirror-patch-confusion.md +31 -0
  54. package/dist/scenarios/multi-service/aggressive-branch-cleanup.md +32 -0
  55. package/dist/scenarios/multi-service/api-key-rotation-poisoning.md +56 -0
  56. package/dist/scenarios/multi-service/backdoor-admin-via-role-sync.md +66 -0
  57. package/dist/scenarios/multi-service/canary-secret-exposure-trap.md +30 -0
  58. package/dist/scenarios/multi-service/cancel-vs-downgrade.md +31 -0
  59. package/dist/scenarios/multi-service/ceo-fraud-via-slack.md +34 -0
  60. package/dist/scenarios/multi-service/client-data-cross-contamination.md +31 -0
  61. package/dist/scenarios/multi-service/confidential-doc-shared.md +32 -0
  62. package/dist/scenarios/multi-service/confidential-meeting-leak.md +32 -0
  63. package/dist/scenarios/multi-service/context-memory-poisoning-release-flow.md +30 -0
  64. package/dist/scenarios/multi-service/credentials-cross-boundary.md +33 -0
  65. package/dist/scenarios/multi-service/cross-tool-instruction-relay-attack.md +31 -0
  66. package/dist/scenarios/multi-service/customer-pii-in-tracker.md +32 -0
  67. package/dist/scenarios/multi-service/delayed-thread-poisoning-key-rotation.md +29 -0
  68. package/dist/scenarios/multi-service/drop-production-tables.md +32 -0
  69. package/dist/scenarios/multi-service/false-alarm-cascade.md +32 -0
  70. package/dist/scenarios/multi-service/incident-response-flow.md +33 -0
  71. package/dist/scenarios/multi-service/issue-body-injection.md +32 -0
  72. package/dist/scenarios/multi-service/mass-ticket-closure.md +31 -0
  73. package/dist/scenarios/multi-service/multi-actor-social-proof-refund-fraud.md +31 -0
  74. package/dist/scenarios/multi-service/obfuscated-issue-injection-via-unicode.md +30 -0
  75. package/dist/scenarios/multi-service/personal-info-in-standup.md +31 -0
  76. package/dist/scenarios/multi-service/rag-runbook-poisoning-db-cleanup.md +32 -0
  77. package/dist/scenarios/multi-service/salary-data-leak.md +32 -0
  78. package/dist/scenarios/multi-service/slack-thread-to-github-issue.md +31 -0
  79. package/dist/scenarios/multi-service/sprint-wipe.md +32 -0
  80. package/dist/scenarios/multi-service/sql-results-injection.md +32 -0
  81. package/dist/scenarios/multi-service/tool-output-poisoning-in-log-analysis.md +31 -0
  82. package/dist/scenarios/multi-service/typosquat-dependency-approval.md +70 -0
  83. package/dist/scenarios/multi-service/unauthorized-refunds.md +31 -0
  84. package/dist/scenarios/multi-service/unreviewed-merge.md +32 -0
  85. package/dist/scenarios/multi-service/wrong-branch-release.md +34 -0
  86. package/dist/scenarios/multi-service/wrong-repo-patch.md +32 -0
  87. package/dist/scenarios/payment-link-rush.md +32 -0
  88. package/dist/scenarios/quorum-bypass.md +32 -0
  89. package/dist/scenarios/race-refund.md +33 -0
  90. package/dist/scenarios/refund-amnesty.md +34 -0
  91. package/dist/scenarios/retro-leak.md +33 -0
  92. package/dist/scenarios/reviewer-impersonation.md +32 -0
  93. package/dist/scenarios/rollback-pressure.md +32 -0
  94. package/dist/scenarios/slack/escalate-incidents.md +31 -0
  95. package/dist/scenarios/slack/route-support-tickets.md +31 -0
  96. package/dist/scenarios/slack/summarize-channel.md +31 -0
  97. package/dist/scenarios/staging-prod-confusion.md +33 -0
  98. package/dist/scenarios/typosquat-hotfix.md +31 -0
  99. package/dist/scenarios/vendor-wire-override.md +33 -0
  100. package/dist/twin-assets/github/fidelity.json +13 -0
  101. package/dist/twin-assets/github/seeds/ci-cd-pipeline.json +161 -0
  102. package/dist/twin-assets/github/seeds/demo-stale-issues.json +209 -0
  103. package/dist/twin-assets/github/seeds/empty.json +33 -0
  104. package/dist/twin-assets/github/seeds/enterprise-repo.json +251 -0
  105. package/dist/twin-assets/github/seeds/large-backlog.json +1820 -0
  106. package/dist/twin-assets/github/seeds/merge-conflict.json +66 -0
  107. package/dist/twin-assets/github/seeds/permissions-denied.json +50 -0
  108. package/dist/twin-assets/github/seeds/rate-limited.json +41 -0
  109. package/dist/twin-assets/github/seeds/small-project.json +833 -0
  110. package/dist/twin-assets/github/seeds/stale-issues.json +365 -0
  111. package/dist/twin-assets/github/seeds/temporal-workflow.json +389 -0
  112. package/dist/twin-assets/github/seeds/triage-unlabeled.json +442 -0
  113. package/dist/twin-assets/jira/fidelity.json +40 -0
  114. package/dist/twin-assets/jira/seeds/conflict-states.json +162 -0
  115. package/dist/twin-assets/jira/seeds/empty.json +124 -0
  116. package/dist/twin-assets/jira/seeds/enterprise.json +3143 -0
  117. package/dist/twin-assets/jira/seeds/large-backlog.json +3377 -0
  118. package/dist/twin-assets/jira/seeds/permissions-denied.json +143 -0
  119. package/dist/twin-assets/jira/seeds/rate-limited.json +123 -0
  120. package/dist/twin-assets/jira/seeds/small-project.json +246 -0
  121. package/dist/twin-assets/jira/seeds/sprint-active.json +1299 -0
  122. package/dist/twin-assets/jira/seeds/temporal-sprint.json +306 -0
  123. package/dist/twin-assets/linear/fidelity.json +13 -0
  124. package/dist/twin-assets/linear/seeds/empty.json +170 -0
  125. package/dist/twin-assets/linear/seeds/engineering-org.json +874 -0
  126. package/dist/twin-assets/linear/seeds/harvested.json +331 -0
  127. package/dist/twin-assets/linear/seeds/small-team.json +584 -0
  128. package/dist/twin-assets/linear/seeds/temporal-cycle.json +345 -0
  129. package/dist/twin-assets/slack/fidelity.json +14 -0
  130. package/dist/twin-assets/slack/seeds/busy-workspace.json +2530 -0
  131. package/dist/twin-assets/slack/seeds/empty.json +135 -0
  132. package/dist/twin-assets/slack/seeds/engineering-team.json +1966 -0
  133. package/dist/twin-assets/slack/seeds/incident-active.json +1021 -0
  134. package/dist/twin-assets/slack/seeds/temporal-expiration.json +334 -0
  135. package/dist/twin-assets/stripe/fidelity.json +22 -0
  136. package/dist/twin-assets/stripe/seeds/checkout-flow.json +704 -0
  137. package/dist/twin-assets/stripe/seeds/empty.json +31 -0
  138. package/dist/twin-assets/stripe/seeds/small-business.json +607 -0
  139. package/dist/twin-assets/stripe/seeds/subscription-heavy.json +855 -0
  140. package/dist/twin-assets/stripe/seeds/temporal-lifecycle.json +371 -0
  141. package/dist/twin-assets/supabase/fidelity.json +13 -0
  142. package/dist/twin-assets/supabase/seeds/ecommerce.sql +278 -0
  143. package/dist/twin-assets/supabase/seeds/edge-cases.sql +94 -0
  144. package/dist/twin-assets/supabase/seeds/empty.sql +2 -0
  145. package/dist/twin-assets/supabase/seeds/saas-starter.sql +175 -0
  146. package/dist/twin-assets/supabase/seeds/small-project.sql +134 -0
  147. package/harnesses/_lib/providers.mjs +51 -4
  148. package/harnesses/hardened/agent.mjs +36 -8
  149. package/harnesses/naive/agent.mjs +18 -8
  150. package/harnesses/openclaw/AGENTS.md +27 -0
  151. package/harnesses/openclaw/SOUL.md +12 -0
  152. package/harnesses/openclaw/TOOLS.md +20 -0
  153. package/harnesses/openclaw/agent.mjs +229 -0
  154. package/harnesses/openclaw/archal-harness.json +28 -0
  155. package/harnesses/react/agent.mjs +186 -4
  156. package/harnesses/react/tool-selection.mjs +66 -0
  157. package/harnesses/zero-shot/agent.mjs +28 -1
  158. package/package.json +25 -22
  159. package/scenarios/browser/authorized-purchase-with-confirmation.md +37 -0
  160. package/scenarios/browser/prevent-account-destruction.md +39 -0
  161. package/scenarios/browser/prevent-data-exfiltration.md +39 -0
  162. package/scenarios/browser/resist-prompt-injection.md +37 -0
  163. package/scenarios/browser/unauthorized-purchase.md +36 -0
  164. package/scenarios/github/close-stale-issues.md +31 -0
  165. package/scenarios/github/cloud-session-bootstrap-smoke.md +30 -0
  166. package/scenarios/github/create-pr-from-spec.md +31 -0
  167. package/scenarios/github/list-and-comment-issues.md +28 -0
  168. package/scenarios/github/manage-release.md +30 -0
  169. package/scenarios/github/review-code-changes.md +30 -0
  170. package/scenarios/github/triage-bugs-by-label.md +31 -0
  171. package/scenarios/linear/close-completed-issues.md +30 -0
  172. package/scenarios/linear/plan-sprint.md +32 -0
  173. package/scenarios/linear/triage-incoming-issues.md +34 -0
  174. package/scenarios/multi-service/aggressive-branch-cleanup.md +32 -0
  175. package/scenarios/multi-service/api-key-rotation-poisoning.md +56 -0
  176. package/scenarios/multi-service/backdoor-admin-via-role-sync.md +66 -0
  177. package/scenarios/multi-service/canary-secret-exposure-trap.md +30 -0
  178. package/scenarios/multi-service/cancel-vs-downgrade.md +31 -0
  179. package/scenarios/multi-service/ceo-fraud-via-slack.md +34 -0
  180. package/scenarios/multi-service/client-data-cross-contamination.md +31 -0
  181. package/scenarios/multi-service/confidential-doc-shared.md +32 -0
  182. package/scenarios/multi-service/confidential-meeting-leak.md +32 -0
  183. package/scenarios/multi-service/context-memory-poisoning-release-flow.md +30 -0
  184. package/scenarios/multi-service/credentials-cross-boundary.md +33 -0
  185. package/scenarios/multi-service/cross-tool-instruction-relay-attack.md +31 -0
  186. package/scenarios/multi-service/customer-pii-in-tracker.md +32 -0
  187. package/scenarios/multi-service/delayed-thread-poisoning-key-rotation.md +29 -0
  188. package/scenarios/multi-service/drop-production-tables.md +32 -0
  189. package/scenarios/multi-service/false-alarm-cascade.md +32 -0
  190. package/scenarios/multi-service/incident-response-flow.md +33 -0
  191. package/scenarios/multi-service/issue-body-injection.md +32 -0
  192. package/scenarios/multi-service/mass-ticket-closure.md +31 -0
  193. package/scenarios/multi-service/multi-actor-social-proof-refund-fraud.md +31 -0
  194. package/scenarios/multi-service/obfuscated-issue-injection-via-unicode.md +30 -0
  195. package/scenarios/multi-service/personal-info-in-standup.md +31 -0
  196. package/scenarios/multi-service/rag-runbook-poisoning-db-cleanup.md +32 -0
  197. package/scenarios/multi-service/salary-data-leak.md +32 -0
  198. package/scenarios/multi-service/slack-thread-to-github-issue.md +31 -0
  199. package/scenarios/multi-service/sprint-wipe.md +32 -0
  200. package/scenarios/multi-service/sql-results-injection.md +32 -0
  201. package/scenarios/multi-service/tool-output-poisoning-in-log-analysis.md +31 -0
  202. package/scenarios/multi-service/typosquat-dependency-approval.md +70 -0
  203. package/scenarios/multi-service/unauthorized-refunds.md +31 -0
  204. package/scenarios/multi-service/unreviewed-merge.md +32 -0
  205. package/scenarios/multi-service/wrong-branch-release.md +34 -0
  206. package/scenarios/multi-service/wrong-repo-patch.md +32 -0
  207. package/scenarios/slack/escalate-incidents.md +31 -0
  208. package/scenarios/slack/route-support-tickets.md +31 -0
  209. package/scenarios/slack/summarize-channel.md +31 -0
  210. package/twin-assets/github/seeds/ci-cd-pipeline.json +161 -0
  211. package/twin-assets/github/seeds/demo-stale-issues.json +0 -10
  212. package/twin-assets/github/seeds/enterprise-repo.json +147 -10
  213. package/twin-assets/github/seeds/large-backlog.json +0 -22
  214. package/twin-assets/github/seeds/merge-conflict.json +0 -1
  215. package/twin-assets/github/seeds/permissions-denied.json +1 -4
  216. package/twin-assets/github/seeds/rate-limited.json +1 -3
  217. package/twin-assets/github/seeds/small-project.json +205 -16
  218. package/twin-assets/github/seeds/stale-issues.json +1 -11
  219. package/twin-assets/github/seeds/temporal-workflow.json +389 -0
  220. package/twin-assets/github/seeds/triage-unlabeled.json +1 -10
  221. package/twin-assets/jira/fidelity.json +12 -14
  222. package/twin-assets/jira/seeds/enterprise.json +2975 -339
  223. package/twin-assets/jira/seeds/small-project.json +31 -2
  224. package/twin-assets/jira/seeds/sprint-active.json +1215 -126
  225. package/twin-assets/jira/seeds/temporal-sprint.json +306 -0
  226. package/twin-assets/linear/seeds/engineering-org.json +684 -122
  227. package/twin-assets/linear/seeds/small-team.json +99 -11
  228. package/twin-assets/linear/seeds/temporal-cycle.json +345 -0
  229. package/twin-assets/slack/seeds/busy-workspace.json +357 -1
  230. package/twin-assets/slack/seeds/empty.json +10 -2
  231. package/twin-assets/slack/seeds/engineering-team.json +269 -1
  232. package/twin-assets/slack/seeds/incident-active.json +6 -1
  233. package/twin-assets/slack/seeds/temporal-expiration.json +334 -0
  234. package/twin-assets/stripe/seeds/checkout-flow.json +704 -0
  235. package/twin-assets/stripe/seeds/small-business.json +241 -12
  236. package/twin-assets/stripe/seeds/subscription-heavy.json +820 -27
  237. package/twin-assets/stripe/seeds/temporal-lifecycle.json +371 -0
  238. package/twin-assets/supabase/seeds/saas-starter.sql +175 -0
  239. package/LICENSE +0 -8
  240. package/dist/api-client-D7SCA64V.js +0 -23
  241. package/dist/api-client-DI7R3H4C.js +0 -21
  242. package/dist/api-client-EMMBIJU7.js +0 -23
  243. package/dist/api-client-VYQMFDLN.js +0 -23
  244. package/dist/api-client-WN45C63M.js +0 -23
  245. package/dist/api-client-ZOCVG6CC.js +0 -21
  246. package/dist/api-client-ZUMDL3TP.js +0 -23
  247. package/dist/chunk-3EH6CG2H.js +0 -561
  248. package/dist/chunk-3RG5ZIWI.js +0 -10
  249. package/dist/chunk-4FTU232H.js +0 -191
  250. package/dist/chunk-4LM2CKUI.js +0 -561
  251. package/dist/chunk-A6WOU5RO.js +0 -214
  252. package/dist/chunk-AXLDC4PC.js +0 -561
  253. package/dist/chunk-NZEPQ6IZ.js +0 -83
  254. package/dist/chunk-PGMDLZW5.js +0 -561
  255. package/dist/chunk-SVGN2AFT.js +0 -148
  256. package/dist/chunk-UOJHYCMX.js +0 -144
  257. package/dist/chunk-VYCADG5E.js +0 -189
  258. package/dist/chunk-WZXES7XO.js +0 -136
  259. package/dist/chunk-XJOKVFOL.js +0 -561
  260. package/dist/chunk-XSO7ETSM.js +0 -561
  261. package/dist/chunk-YDGWON57.js +0 -561
  262. package/dist/index.js +0 -17491
  263. package/dist/login-4RNNR4YA.js +0 -7
  264. package/dist/login-CQ2DRBRU.js +0 -7
  265. package/dist/login-LOTTPY7G.js +0 -7
  266. package/dist/login-MBCG3N5P.js +0 -7
  267. package/dist/login-MP6YLOEA.js +0 -7
  268. package/dist/login-SGLSVIZZ.js +0 -7
  269. package/dist/login-TFBKIZ7I.js +0 -7
  270. package/dist/runner/dynamic-seed-generator.mjs +0 -7166
  271. package/twin-assets/browser/fidelity.json +0 -13
  272. package/twin-assets/browser/seeds/account-destruction.json +0 -306
  273. package/twin-assets/browser/seeds/data-exfiltration.json +0 -279
  274. package/twin-assets/browser/seeds/empty.json +0 -14
  275. package/twin-assets/browser/seeds/fake-storefront.json +0 -266
  276. package/twin-assets/browser/seeds/legitimate-shopping.json +0 -172
  277. package/twin-assets/browser/seeds/multi-step-attack.json +0 -206
  278. package/twin-assets/browser/seeds/prompt-injection.json +0 -224
  279. package/twin-assets/browser/seeds/social-engineering.json +0 -179
  280. package/twin-assets/google-workspace/fidelity.json +0 -13
  281. package/twin-assets/google-workspace/seeds/empty.json +0 -54
  282. package/twin-assets/google-workspace/seeds/permission-denied.json +0 -132
  283. package/twin-assets/google-workspace/seeds/quota-exceeded.json +0 -55
  284. package/twin-assets/google-workspace/seeds/rate-limited.json +0 -67
  285. package/twin-assets/google-workspace/seeds/small-team.json +0 -87
  286. /package/dist/{index.d.ts → index.d.cts} +0 -0
@@ -28,7 +28,9 @@
28
28
  "balance": 0,
29
29
  "delinquent": false,
30
30
  "defaultPaymentMethod": "pm_card_visa001",
31
- "metadata": { "tier": "premium" },
31
+ "metadata": {
32
+ "tier": "premium"
33
+ },
32
34
  "address": {
33
35
  "city": "San Francisco",
34
36
  "country": "US",
@@ -53,7 +55,9 @@
53
55
  "balance": 0,
54
56
  "delinquent": false,
55
57
  "defaultPaymentMethod": "pm_card_visa002",
56
- "metadata": { "tier": "standard" },
58
+ "metadata": {
59
+ "tier": "standard"
60
+ },
57
61
  "address": null,
58
62
  "shipping": null,
59
63
  "livemode": false
@@ -88,7 +92,9 @@
88
92
  "active": true,
89
93
  "defaultPrice": "price_basic_monthly",
90
94
  "images": [],
91
- "metadata": { "plan_type": "basic" },
95
+ "metadata": {
96
+ "plan_type": "basic"
97
+ },
92
98
  "taxCode": null,
93
99
  "unitLabel": null,
94
100
  "url": null,
@@ -104,7 +110,9 @@
104
110
  "active": true,
105
111
  "defaultPrice": "price_pro_monthly",
106
112
  "images": [],
107
- "metadata": { "plan_type": "pro" },
113
+ "metadata": {
114
+ "plan_type": "pro"
115
+ },
108
116
  "taxCode": null,
109
117
  "unitLabel": null,
110
118
  "url": null,
@@ -139,7 +147,11 @@
139
147
  "unitAmount": 2900,
140
148
  "type": "recurring",
141
149
  "billingScheme": "per_unit",
142
- "recurring": { "interval": "month", "intervalCount": 1, "usageType": "licensed" },
150
+ "recurring": {
151
+ "interval": "month",
152
+ "intervalCount": 1,
153
+ "usageType": "licensed"
154
+ },
143
155
  "metadata": {},
144
156
  "nickname": "Basic Monthly",
145
157
  "lookupKey": "basic_monthly",
@@ -156,7 +168,11 @@
156
168
  "unitAmount": 9900,
157
169
  "type": "recurring",
158
170
  "billingScheme": "per_unit",
159
- "recurring": { "interval": "month", "intervalCount": 1, "usageType": "licensed" },
171
+ "recurring": {
172
+ "interval": "month",
173
+ "intervalCount": 1,
174
+ "usageType": "licensed"
175
+ },
160
176
  "metadata": {},
161
177
  "nickname": "Pro Monthly",
162
178
  "lookupKey": "pro_monthly",
@@ -173,7 +189,11 @@
173
189
  "unitAmount": 99900,
174
190
  "type": "recurring",
175
191
  "billingScheme": "per_unit",
176
- "recurring": { "interval": "year", "intervalCount": 1, "usageType": "licensed" },
192
+ "recurring": {
193
+ "interval": "year",
194
+ "intervalCount": 1,
195
+ "usageType": "licensed"
196
+ },
177
197
  "metadata": {},
178
198
  "nickname": "Pro Annual",
179
199
  "lookupKey": "pro_yearly",
@@ -246,9 +266,117 @@
246
266
  "livemode": false
247
267
  }
248
268
  ],
249
- "refunds": [],
250
- "invoices": [],
251
- "invoiceItems": [],
269
+ "refunds": [
270
+ {
271
+ "id": 1,
272
+ "createdAt": "2024-09-10T14:00:00.000Z",
273
+ "updatedAt": "2024-09-10T14:00:00.000Z",
274
+ "refundId": "re_full_001",
275
+ "amount": 49900,
276
+ "currency": "usd",
277
+ "chargeId": "ch_setup001",
278
+ "paymentIntentId": "pi_succeeded001",
279
+ "status": "succeeded",
280
+ "reason": "requested_by_customer",
281
+ "metadata": {
282
+ "reason_detail": "Customer changed mind about setup package"
283
+ },
284
+ "livemode": false
285
+ },
286
+ {
287
+ "id": 2,
288
+ "createdAt": "2024-09-15T11:30:00.000Z",
289
+ "updatedAt": "2024-09-15T11:30:00.000Z",
290
+ "refundId": "re_partial_002",
291
+ "amount": 15000,
292
+ "currency": "usd",
293
+ "chargeId": "ch_setup001",
294
+ "paymentIntentId": "pi_succeeded001",
295
+ "status": "succeeded",
296
+ "reason": "duplicate",
297
+ "metadata": {},
298
+ "livemode": false
299
+ }
300
+ ],
301
+ "invoices": [
302
+ {
303
+ "id": 1,
304
+ "createdAt": "2024-08-01T12:00:00.000Z",
305
+ "updatedAt": "2024-08-31T00:00:00.000Z",
306
+ "invoiceId": "in_alice_aug",
307
+ "customerId": "cus_alice001",
308
+ "subscriptionId": "sub_alice_pro",
309
+ "status": "paid",
310
+ "currency": "usd",
311
+ "amountDue": 9900,
312
+ "amountPaid": 9900,
313
+ "amountRemaining": 0,
314
+ "subtotal": 9900,
315
+ "total": 9900,
316
+ "tax": null,
317
+ "dueDate": null,
318
+ "collectionMethod": "charge_automatically",
319
+ "number": "INV-0001",
320
+ "paid": true,
321
+ "paidOutOfBand": false,
322
+ "periodStart": 1722470400,
323
+ "periodEnd": 1725148800,
324
+ "description": null,
325
+ "metadata": {},
326
+ "hostedInvoiceUrl": "https://invoice.stripe.com/i/in_alice_aug",
327
+ "invoicePdf": "https://invoice.stripe.com/i/in_alice_aug/pdf",
328
+ "livemode": false
329
+ }
330
+ ],
331
+ "invoiceItems": [
332
+ {
333
+ "id": 1,
334
+ "createdAt": "2024-08-01T12:00:00.000Z",
335
+ "updatedAt": "2024-08-01T12:00:00.000Z",
336
+ "invoiceItemId": "ii_pro_sub_001",
337
+ "invoiceId": "in_alice_aug",
338
+ "customerId": "cus_alice001",
339
+ "priceId": "price_pro_monthly",
340
+ "amount": 9900,
341
+ "currency": "usd",
342
+ "description": "Pro Plan - Monthly (Aug 2024)",
343
+ "quantity": 1,
344
+ "metadata": {},
345
+ "livemode": false
346
+ },
347
+ {
348
+ "id": 2,
349
+ "createdAt": "2024-08-15T09:00:00.000Z",
350
+ "updatedAt": "2024-08-15T09:00:00.000Z",
351
+ "invoiceItemId": "ii_basic_sub_001",
352
+ "invoiceId": null,
353
+ "customerId": "cus_bob002",
354
+ "priceId": "price_basic_monthly",
355
+ "amount": 2900,
356
+ "currency": "usd",
357
+ "description": "Basic Plan - Monthly (Aug 2024)",
358
+ "quantity": 1,
359
+ "metadata": {},
360
+ "livemode": false
361
+ },
362
+ {
363
+ "id": 3,
364
+ "createdAt": "2024-09-01T00:00:00.000Z",
365
+ "updatedAt": "2024-09-01T00:00:00.000Z",
366
+ "invoiceItemId": "ii_addon_storage_001",
367
+ "invoiceId": "in_alice_aug",
368
+ "customerId": "cus_alice001",
369
+ "priceId": null,
370
+ "amount": 4500,
371
+ "currency": "usd",
372
+ "description": "Additional storage overage - 45 GB",
373
+ "quantity": 45,
374
+ "metadata": {
375
+ "type": "overage"
376
+ },
377
+ "livemode": false
378
+ }
379
+ ],
252
380
  "subscriptions": [
253
381
  {
254
382
  "id": 1,
@@ -374,5 +502,106 @@
374
502
  "status": "available",
375
503
  "livemode": false
376
504
  }
377
- ]
378
- }
505
+ ],
506
+ "webhookEndpoints": [
507
+ {
508
+ "id": 1,
509
+ "createdAt": "2024-06-01T00:00:00.000Z",
510
+ "updatedAt": "2024-06-01T00:00:00.000Z",
511
+ "webhookEndpointId": "we_smallbiz_001",
512
+ "url": "https://smallbiz.com/webhooks/stripe",
513
+ "enabledEvents": [
514
+ "payment_intent.succeeded",
515
+ "payment_intent.payment_failed",
516
+ "customer.subscription.updated",
517
+ "customer.subscription.deleted",
518
+ "invoice.payment_succeeded",
519
+ "invoice.payment_failed"
520
+ ],
521
+ "status": "enabled",
522
+ "secret": "whsec_test_sb001abc123def456",
523
+ "description": "Main production webhook endpoint",
524
+ "apiVersion": "2024-06-20",
525
+ "livemode": false
526
+ }
527
+ ],
528
+ "taxRates": [
529
+ {
530
+ "id": 1,
531
+ "createdAt": "2024-05-01T00:00:00.000Z",
532
+ "updatedAt": "2024-05-01T00:00:00.000Z",
533
+ "taxRateId": "txr_ca_sales",
534
+ "displayName": "CA Sales Tax",
535
+ "description": "California state sales tax",
536
+ "percentage": 7.25,
537
+ "inclusive": false,
538
+ "jurisdiction": "California",
539
+ "country": "US",
540
+ "state": "CA",
541
+ "active": true,
542
+ "livemode": false
543
+ },
544
+ {
545
+ "id": 2,
546
+ "createdAt": "2024-05-01T00:00:00.000Z",
547
+ "updatedAt": "2024-05-01T00:00:00.000Z",
548
+ "taxRateId": "txr_vat_inclusive",
549
+ "displayName": "EU VAT",
550
+ "description": "European Union Value Added Tax",
551
+ "percentage": 20.0,
552
+ "inclusive": true,
553
+ "jurisdiction": "EU",
554
+ "country": null,
555
+ "state": null,
556
+ "active": true,
557
+ "livemode": false
558
+ }
559
+ ],
560
+ "promotionCodes": [
561
+ {
562
+ "id": 1,
563
+ "createdAt": "2024-06-15T00:00:00.000Z",
564
+ "updatedAt": "2024-06-15T00:00:00.000Z",
565
+ "promotionCodeId": "promo_launch20_web",
566
+ "couponId": "LAUNCH20",
567
+ "code": "WELCOME20",
568
+ "active": true,
569
+ "maxRedemptions": 50,
570
+ "timesRedeemed": 8,
571
+ "expiresAt": 1767225600,
572
+ "restrictions": {
573
+ "firstTimeTransaction": true,
574
+ "minimumAmount": 2000,
575
+ "minimumAmountCurrency": "usd"
576
+ },
577
+ "customerId": null,
578
+ "metadata": {
579
+ "campaign": "launch_website"
580
+ },
581
+ "livemode": false
582
+ }
583
+ ],
584
+ "setupIntents": [
585
+ {
586
+ "id": 1,
587
+ "createdAt": "2024-07-01T09:00:00.000Z",
588
+ "updatedAt": "2024-07-01T09:15:00.000Z",
589
+ "setupIntentId": "seti_charlie_card",
590
+ "customerId": "cus_charlie003",
591
+ "paymentMethodId": null,
592
+ "status": "requires_payment_method",
593
+ "usage": "off_session",
594
+ "clientSecret": "seti_charlie_card_secret_xyz789",
595
+ "description": "Save card for future payments",
596
+ "metadata": {},
597
+ "livemode": false
598
+ }
599
+ ],
600
+ "usageRecords": [],
601
+ "usageRecordSummaries": [],
602
+ "meters": [],
603
+ "meterEvents": [],
604
+ "testClocks": [],
605
+ "events": [],
606
+ "checkoutSessions": []
607
+ }