@shipstatic/types 2.17.0 → 2.18.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/dist/index.d.ts CHANGED
@@ -1966,12 +1966,13 @@ export interface BillingSyncResponse {
1966
1966
  * All activity event types logged in the system.
1967
1967
  * Uses dot notation consistently: {resource}.{action}
1968
1968
  *
1969
- * Retention: activity rows are permanent the account's own history and
1970
- * the platform's audit ledgers are one table, kept for the life of the
1971
- * account (deletion removes them). Only the personal payload is
1972
- * time-bounded: past 90 days each row sheds its IP.
1969
+ * Retention: activity rows age out. An account keeps a recent window and,
1970
+ * beneath it, never fewer than its most recent handful so a dormant
1971
+ * account's history is never empty and a row that outlives the window
1972
+ * keeps no IP address. Activity from deploys made without an account ages
1973
+ * out sooner, and deleting an account removes its rows outright, at any age.
1973
1974
  */
1974
- export type ActivityEvent = 'account.create' | 'account.delete' | 'account.key.generate' | 'account.plan.transition' | 'deployment.create' | 'deployment.update' | 'deployment.delete' | 'deployment.claim' | 'deployment.flagged' | 'deployment.open' | 'domain.create' | 'domain.update' | 'domain.delete' | 'domain.verify' | 'token.create' | 'token.consume' | 'token.delete' | 'admin.account.plan.update' | 'admin.account.suspended.update' | 'admin.account.ref.update' | 'admin.account.labels.update' | 'admin.deployment.delete' | 'admin.domain.delete' | 'admin.impersonate';
1975
+ export type ActivityEvent = 'account.create' | 'account.delete' | 'account.key.generate' | 'account.plan.transition' | 'deployment.create' | 'deployment.update' | 'deployment.delete' | 'deployment.claim' | 'deployment.flagged' | 'deployment.open' | 'domain.create' | 'domain.update' | 'domain.delete' | 'domain.verify' | 'token.create' | 'token.consume' | 'token.delete' | 'checkout.open' | 'admin.account.plan.update' | 'admin.account.suspended.update' | 'admin.account.ref.update' | 'admin.account.labels.update' | 'admin.deployment.delete' | 'admin.domain.delete' | 'admin.impersonate';
1975
1976
  /**
1976
1977
  * Activity events visible to users in the dashboard
1977
1978
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shipstatic/types",
3
- "version": "2.17.0",
3
+ "version": "2.18.0",
4
4
  "description": "Shared types for ShipStatic platform",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
package/src/index.ts CHANGED
@@ -2832,10 +2832,11 @@ export interface BillingSyncResponse {
2832
2832
  * All activity event types logged in the system.
2833
2833
  * Uses dot notation consistently: {resource}.{action}
2834
2834
  *
2835
- * Retention: activity rows are permanent the account's own history and
2836
- * the platform's audit ledgers are one table, kept for the life of the
2837
- * account (deletion removes them). Only the personal payload is
2838
- * time-bounded: past 90 days each row sheds its IP.
2835
+ * Retention: activity rows age out. An account keeps a recent window and,
2836
+ * beneath it, never fewer than its most recent handful so a dormant
2837
+ * account's history is never empty and a row that outlives the window
2838
+ * keeps no IP address. Activity from deploys made without an account ages
2839
+ * out sooner, and deleting an account removes its rows outright, at any age.
2839
2840
  */
2840
2841
  export type ActivityEvent =
2841
2842
  // Account events
@@ -2859,6 +2860,10 @@ export type ActivityEvent =
2859
2860
  | 'token.create'
2860
2861
  | 'token.consume'
2861
2862
  | 'token.delete'
2863
+ // Billing events (internal: the operator's stream, never the customer's
2864
+ // feed — the feed's copy of this fact is the `account.plan.transition` it
2865
+ // may become)
2866
+ | 'checkout.open'
2862
2867
  // Admin events (not user-visible)
2863
2868
  | 'admin.account.plan.update'
2864
2869
  | 'admin.account.suspended.update'
@@ -2868,10 +2873,17 @@ export type ActivityEvent =
2868
2873
  | 'admin.domain.delete'
2869
2874
  | 'admin.impersonate';
2870
2875
 
2871
- // A subscription's own history is not logged here. What a plan change MEANS
2872
- // is recorded once, as `account.plan.transition`; everything behind it
2873
- // (invoices, refunds, disputes, retries) belongs to Stripe, which owns the
2874
- // record and shows it to the customer in the Customer Portal.
2876
+ // The billing boundary: the stream records the PLATFORM'S own acts, and
2877
+ // Stripe records the subscription's life. `checkout.open` is ours — the
2878
+ // platform mints the Session, and it is the one billing act that exists
2879
+ // before Stripe holds anything. `account.plan.transition` is ours what a
2880
+ // change MEANS, entitlement crossing our threshold. Everything between those
2881
+ // two edges (invoices, refunds, disputes, retries, scheduled changes) is the
2882
+ // subscription's own history, which belongs to Stripe as merchant of record
2883
+ // and is shown to the customer in the Customer Portal; none of it is
2884
+ // restated here. Refusals write no history either: the stream records what
2885
+ // happened to resources, never what was declined — a detection
2886
+ // (`deployment.flagged`) is a fact discovered about content, not a refusal.
2875
2887
 
2876
2888
  /**
2877
2889
  * Activity events visible to users in the dashboard