@antasphere/chassis-db 1.1.0 → 1.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.
package/dist/schema.d.ts CHANGED
@@ -2786,6 +2786,661 @@ export declare const projectTeams: import("drizzle-orm/pg-core").PgTableWithColu
2786
2786
  };
2787
2787
  dialect: "pg";
2788
2788
  }>;
2789
+ /**
2790
+ * Outbound webhooks (PRDCT-3482): a URL a workspace registers to be told, by
2791
+ * a signed POST, when something happens to the tool's own subjects. One row
2792
+ * per endpoint, owned by its workspace (ON DELETE CASCADE: a deleted
2793
+ * workspace takes its endpoints and, through them, their deliveries).
2794
+ *
2795
+ * - `events` lists what the endpoint subscribes to: an event type
2796
+ * ('resource.created'), a family pattern ('resource.*') or everything
2797
+ * ('*'). The tool declares the types; the chassis only matches them.
2798
+ * - `filters` narrows the subscription by subject: a subject key mapped to
2799
+ * a list of ids. The keys are ANDed, the ids within one key ORed; an empty
2800
+ * object filters nothing.
2801
+ * - `secret` is the signing secret, SEALED (AES-GCM under a key derived from
2802
+ * the auth secret), never stored in plaintext. During a rotation the outgoing secret
2803
+ * stays in `previous_secret`, sealed the same way, until
2804
+ * `previous_secret_expires_at`, so a receiver can switch keys without a
2805
+ * gap.
2806
+ * - The failure streak (`consecutive_failures`, `first_failure_at`) drives
2807
+ * the auto-disable: an endpoint that keeps failing is switched off
2808
+ * (`enabled` false, `disabled_at` and `disabled_reason` set) rather than
2809
+ * retried forever.
2810
+ * - `last_delivery_at` / `last_delivery_status` are the endpoint's last
2811
+ * outcome, for the list; the history itself is `webhook_deliveries`.
2812
+ */
2813
+ export declare const webhookEndpoints: import("drizzle-orm/pg-core").PgTableWithColumns<{
2814
+ name: "webhook_endpoints";
2815
+ schema: undefined;
2816
+ columns: {
2817
+ id: import("drizzle-orm/pg-core").PgColumn<{
2818
+ name: "id";
2819
+ tableName: "webhook_endpoints";
2820
+ dataType: "string";
2821
+ columnType: "PgUUID";
2822
+ data: string;
2823
+ driverParam: string;
2824
+ notNull: true;
2825
+ hasDefault: true;
2826
+ isPrimaryKey: true;
2827
+ isAutoincrement: false;
2828
+ hasRuntimeDefault: false;
2829
+ enumValues: undefined;
2830
+ baseColumn: never;
2831
+ identity: undefined;
2832
+ generated: undefined;
2833
+ }, {}, {}>;
2834
+ workspaceId: import("drizzle-orm/pg-core").PgColumn<{
2835
+ name: "workspace_id";
2836
+ tableName: "webhook_endpoints";
2837
+ dataType: "string";
2838
+ columnType: "PgUUID";
2839
+ data: string;
2840
+ driverParam: string;
2841
+ notNull: true;
2842
+ hasDefault: false;
2843
+ isPrimaryKey: false;
2844
+ isAutoincrement: false;
2845
+ hasRuntimeDefault: false;
2846
+ enumValues: undefined;
2847
+ baseColumn: never;
2848
+ identity: undefined;
2849
+ generated: undefined;
2850
+ }, {}, {}>;
2851
+ url: import("drizzle-orm/pg-core").PgColumn<{
2852
+ name: "url";
2853
+ tableName: "webhook_endpoints";
2854
+ dataType: "string";
2855
+ columnType: "PgText";
2856
+ data: string;
2857
+ driverParam: string;
2858
+ notNull: true;
2859
+ hasDefault: false;
2860
+ isPrimaryKey: false;
2861
+ isAutoincrement: false;
2862
+ hasRuntimeDefault: false;
2863
+ enumValues: [string, ...string[]];
2864
+ baseColumn: never;
2865
+ identity: undefined;
2866
+ generated: undefined;
2867
+ }, {}, {}>;
2868
+ description: import("drizzle-orm/pg-core").PgColumn<{
2869
+ name: "description";
2870
+ tableName: "webhook_endpoints";
2871
+ dataType: "string";
2872
+ columnType: "PgText";
2873
+ data: string;
2874
+ driverParam: string;
2875
+ notNull: true;
2876
+ hasDefault: true;
2877
+ isPrimaryKey: false;
2878
+ isAutoincrement: false;
2879
+ hasRuntimeDefault: false;
2880
+ enumValues: [string, ...string[]];
2881
+ baseColumn: never;
2882
+ identity: undefined;
2883
+ generated: undefined;
2884
+ }, {}, {}>;
2885
+ events: import("drizzle-orm/pg-core").PgColumn<{
2886
+ name: "events";
2887
+ tableName: "webhook_endpoints";
2888
+ dataType: "array";
2889
+ columnType: "PgArray";
2890
+ data: string[];
2891
+ driverParam: string | string[];
2892
+ notNull: true;
2893
+ hasDefault: false;
2894
+ isPrimaryKey: false;
2895
+ isAutoincrement: false;
2896
+ hasRuntimeDefault: false;
2897
+ enumValues: [string, ...string[]];
2898
+ baseColumn: import("drizzle-orm").Column<{
2899
+ name: "events";
2900
+ tableName: "webhook_endpoints";
2901
+ dataType: "string";
2902
+ columnType: "PgText";
2903
+ data: string;
2904
+ driverParam: string;
2905
+ notNull: false;
2906
+ hasDefault: false;
2907
+ isPrimaryKey: false;
2908
+ isAutoincrement: false;
2909
+ hasRuntimeDefault: false;
2910
+ enumValues: [string, ...string[]];
2911
+ baseColumn: never;
2912
+ identity: undefined;
2913
+ generated: undefined;
2914
+ }, {}, {}>;
2915
+ identity: undefined;
2916
+ generated: undefined;
2917
+ }, {}, {
2918
+ baseBuilder: import("drizzle-orm/pg-core").PgColumnBuilder<{
2919
+ name: "events";
2920
+ dataType: "string";
2921
+ columnType: "PgText";
2922
+ data: string;
2923
+ enumValues: [string, ...string[]];
2924
+ driverParam: string;
2925
+ }, {}, {}, import("drizzle-orm").ColumnBuilderExtraConfig>;
2926
+ size: undefined;
2927
+ }>;
2928
+ filters: import("drizzle-orm/pg-core").PgColumn<{
2929
+ name: "filters";
2930
+ tableName: "webhook_endpoints";
2931
+ dataType: "json";
2932
+ columnType: "PgJsonb";
2933
+ data: Record<string, string[]>;
2934
+ driverParam: unknown;
2935
+ notNull: true;
2936
+ hasDefault: true;
2937
+ isPrimaryKey: false;
2938
+ isAutoincrement: false;
2939
+ hasRuntimeDefault: false;
2940
+ enumValues: undefined;
2941
+ baseColumn: never;
2942
+ identity: undefined;
2943
+ generated: undefined;
2944
+ }, {}, {
2945
+ $type: Record<string, string[]>;
2946
+ }>;
2947
+ enabled: import("drizzle-orm/pg-core").PgColumn<{
2948
+ name: "enabled";
2949
+ tableName: "webhook_endpoints";
2950
+ dataType: "boolean";
2951
+ columnType: "PgBoolean";
2952
+ data: boolean;
2953
+ driverParam: boolean;
2954
+ notNull: true;
2955
+ hasDefault: true;
2956
+ isPrimaryKey: false;
2957
+ isAutoincrement: false;
2958
+ hasRuntimeDefault: false;
2959
+ enumValues: undefined;
2960
+ baseColumn: never;
2961
+ identity: undefined;
2962
+ generated: undefined;
2963
+ }, {}, {}>;
2964
+ secret: import("drizzle-orm/pg-core").PgColumn<{
2965
+ name: "secret";
2966
+ tableName: "webhook_endpoints";
2967
+ dataType: "string";
2968
+ columnType: "PgText";
2969
+ data: string;
2970
+ driverParam: string;
2971
+ notNull: true;
2972
+ hasDefault: false;
2973
+ isPrimaryKey: false;
2974
+ isAutoincrement: false;
2975
+ hasRuntimeDefault: false;
2976
+ enumValues: [string, ...string[]];
2977
+ baseColumn: never;
2978
+ identity: undefined;
2979
+ generated: undefined;
2980
+ }, {}, {}>;
2981
+ previousSecret: import("drizzle-orm/pg-core").PgColumn<{
2982
+ name: "previous_secret";
2983
+ tableName: "webhook_endpoints";
2984
+ dataType: "string";
2985
+ columnType: "PgText";
2986
+ data: string;
2987
+ driverParam: string;
2988
+ notNull: false;
2989
+ hasDefault: false;
2990
+ isPrimaryKey: false;
2991
+ isAutoincrement: false;
2992
+ hasRuntimeDefault: false;
2993
+ enumValues: [string, ...string[]];
2994
+ baseColumn: never;
2995
+ identity: undefined;
2996
+ generated: undefined;
2997
+ }, {}, {}>;
2998
+ previousSecretExpiresAt: import("drizzle-orm/pg-core").PgColumn<{
2999
+ name: "previous_secret_expires_at";
3000
+ tableName: "webhook_endpoints";
3001
+ dataType: "date";
3002
+ columnType: "PgTimestamp";
3003
+ data: Date;
3004
+ driverParam: string;
3005
+ notNull: false;
3006
+ hasDefault: false;
3007
+ isPrimaryKey: false;
3008
+ isAutoincrement: false;
3009
+ hasRuntimeDefault: false;
3010
+ enumValues: undefined;
3011
+ baseColumn: never;
3012
+ identity: undefined;
3013
+ generated: undefined;
3014
+ }, {}, {}>;
3015
+ createdBy: import("drizzle-orm/pg-core").PgColumn<{
3016
+ name: "created_by";
3017
+ tableName: "webhook_endpoints";
3018
+ dataType: "string";
3019
+ columnType: "PgText";
3020
+ data: string;
3021
+ driverParam: string;
3022
+ notNull: false;
3023
+ hasDefault: false;
3024
+ isPrimaryKey: false;
3025
+ isAutoincrement: false;
3026
+ hasRuntimeDefault: false;
3027
+ enumValues: [string, ...string[]];
3028
+ baseColumn: never;
3029
+ identity: undefined;
3030
+ generated: undefined;
3031
+ }, {}, {}>;
3032
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
3033
+ name: "created_at";
3034
+ tableName: "webhook_endpoints";
3035
+ dataType: "date";
3036
+ columnType: "PgTimestamp";
3037
+ data: Date;
3038
+ driverParam: string;
3039
+ notNull: true;
3040
+ hasDefault: true;
3041
+ isPrimaryKey: false;
3042
+ isAutoincrement: false;
3043
+ hasRuntimeDefault: false;
3044
+ enumValues: undefined;
3045
+ baseColumn: never;
3046
+ identity: undefined;
3047
+ generated: undefined;
3048
+ }, {}, {}>;
3049
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
3050
+ name: "updated_at";
3051
+ tableName: "webhook_endpoints";
3052
+ dataType: "date";
3053
+ columnType: "PgTimestamp";
3054
+ data: Date;
3055
+ driverParam: string;
3056
+ notNull: true;
3057
+ hasDefault: true;
3058
+ isPrimaryKey: false;
3059
+ isAutoincrement: false;
3060
+ hasRuntimeDefault: false;
3061
+ enumValues: undefined;
3062
+ baseColumn: never;
3063
+ identity: undefined;
3064
+ generated: undefined;
3065
+ }, {}, {}>;
3066
+ disabledAt: import("drizzle-orm/pg-core").PgColumn<{
3067
+ name: "disabled_at";
3068
+ tableName: "webhook_endpoints";
3069
+ dataType: "date";
3070
+ columnType: "PgTimestamp";
3071
+ data: Date;
3072
+ driverParam: string;
3073
+ notNull: false;
3074
+ hasDefault: false;
3075
+ isPrimaryKey: false;
3076
+ isAutoincrement: false;
3077
+ hasRuntimeDefault: false;
3078
+ enumValues: undefined;
3079
+ baseColumn: never;
3080
+ identity: undefined;
3081
+ generated: undefined;
3082
+ }, {}, {}>;
3083
+ disabledReason: import("drizzle-orm/pg-core").PgColumn<{
3084
+ name: "disabled_reason";
3085
+ tableName: "webhook_endpoints";
3086
+ dataType: "string";
3087
+ columnType: "PgText";
3088
+ data: string;
3089
+ driverParam: string;
3090
+ notNull: false;
3091
+ hasDefault: false;
3092
+ isPrimaryKey: false;
3093
+ isAutoincrement: false;
3094
+ hasRuntimeDefault: false;
3095
+ enumValues: [string, ...string[]];
3096
+ baseColumn: never;
3097
+ identity: undefined;
3098
+ generated: undefined;
3099
+ }, {}, {}>;
3100
+ consecutiveFailures: import("drizzle-orm/pg-core").PgColumn<{
3101
+ name: "consecutive_failures";
3102
+ tableName: "webhook_endpoints";
3103
+ dataType: "number";
3104
+ columnType: "PgInteger";
3105
+ data: number;
3106
+ driverParam: string | number;
3107
+ notNull: true;
3108
+ hasDefault: true;
3109
+ isPrimaryKey: false;
3110
+ isAutoincrement: false;
3111
+ hasRuntimeDefault: false;
3112
+ enumValues: undefined;
3113
+ baseColumn: never;
3114
+ identity: undefined;
3115
+ generated: undefined;
3116
+ }, {}, {}>;
3117
+ firstFailureAt: import("drizzle-orm/pg-core").PgColumn<{
3118
+ name: "first_failure_at";
3119
+ tableName: "webhook_endpoints";
3120
+ dataType: "date";
3121
+ columnType: "PgTimestamp";
3122
+ data: Date;
3123
+ driverParam: string;
3124
+ notNull: false;
3125
+ hasDefault: false;
3126
+ isPrimaryKey: false;
3127
+ isAutoincrement: false;
3128
+ hasRuntimeDefault: false;
3129
+ enumValues: undefined;
3130
+ baseColumn: never;
3131
+ identity: undefined;
3132
+ generated: undefined;
3133
+ }, {}, {}>;
3134
+ lastDeliveryAt: import("drizzle-orm/pg-core").PgColumn<{
3135
+ name: "last_delivery_at";
3136
+ tableName: "webhook_endpoints";
3137
+ dataType: "date";
3138
+ columnType: "PgTimestamp";
3139
+ data: Date;
3140
+ driverParam: string;
3141
+ notNull: false;
3142
+ hasDefault: false;
3143
+ isPrimaryKey: false;
3144
+ isAutoincrement: false;
3145
+ hasRuntimeDefault: false;
3146
+ enumValues: undefined;
3147
+ baseColumn: never;
3148
+ identity: undefined;
3149
+ generated: undefined;
3150
+ }, {}, {}>;
3151
+ lastDeliveryStatus: import("drizzle-orm/pg-core").PgColumn<{
3152
+ name: "last_delivery_status";
3153
+ tableName: "webhook_endpoints";
3154
+ dataType: "string";
3155
+ columnType: "PgText";
3156
+ data: "delivered" | "failed";
3157
+ driverParam: string;
3158
+ notNull: false;
3159
+ hasDefault: false;
3160
+ isPrimaryKey: false;
3161
+ isAutoincrement: false;
3162
+ hasRuntimeDefault: false;
3163
+ enumValues: ["delivered", "failed"];
3164
+ baseColumn: never;
3165
+ identity: undefined;
3166
+ generated: undefined;
3167
+ }, {}, {}>;
3168
+ };
3169
+ dialect: "pg";
3170
+ }>;
3171
+ /**
3172
+ * The life of one delivery. A stray value must be impossible: text + CHECK,
3173
+ * never a free string.
3174
+ *
3175
+ * - `pending`: queued, or waiting for its next attempt (`next_attempt_at`).
3176
+ * - `delivered`: the receiver answered 2xx.
3177
+ * - `failed`: the attempt was refused for good (the endpoint disabled or gone).
3178
+ * - `held`: the retry budget ran out; the row waits on the held queue and
3179
+ * comes back through the delivery queue every hour until the receiver
3180
+ * takes it.
3181
+ */
3182
+ export declare const webhookDeliveryStatuses: readonly ["pending", "delivered", "failed", "held"];
3183
+ export type WebhookDeliveryStatus = (typeof webhookDeliveryStatuses)[number];
3184
+ /**
3185
+ * One row per (endpoint, event): the delivery and its attempts, kept for the
3186
+ * endpoint's history and for a redelivery. Both ends cascade: a deleted
3187
+ * endpoint or workspace takes its rows. `workspace_id` is a copy of the
3188
+ * endpoint's, kept on purpose so the lists and the nightly purge never join;
3189
+ * an endpoint never changes workspace, so the copy cannot drift.
3190
+ *
3191
+ * `event_id` is the event's own id, the same on every attempt and on a
3192
+ * redelivery: it is the receiver's dedupe key, never regenerated. `payload`
3193
+ * is the envelope as sent, without the attempt number, which is the row's
3194
+ * `attempt` and is stamped at each send. `last_status_code` and
3195
+ * `last_error` describe the latest attempt only.
3196
+ */
3197
+ export declare const webhookDeliveries: import("drizzle-orm/pg-core").PgTableWithColumns<{
3198
+ name: "webhook_deliveries";
3199
+ schema: undefined;
3200
+ columns: {
3201
+ id: import("drizzle-orm/pg-core").PgColumn<{
3202
+ name: "id";
3203
+ tableName: "webhook_deliveries";
3204
+ dataType: "string";
3205
+ columnType: "PgUUID";
3206
+ data: string;
3207
+ driverParam: string;
3208
+ notNull: true;
3209
+ hasDefault: true;
3210
+ isPrimaryKey: true;
3211
+ isAutoincrement: false;
3212
+ hasRuntimeDefault: false;
3213
+ enumValues: undefined;
3214
+ baseColumn: never;
3215
+ identity: undefined;
3216
+ generated: undefined;
3217
+ }, {}, {}>;
3218
+ endpointId: import("drizzle-orm/pg-core").PgColumn<{
3219
+ name: "endpoint_id";
3220
+ tableName: "webhook_deliveries";
3221
+ dataType: "string";
3222
+ columnType: "PgUUID";
3223
+ data: string;
3224
+ driverParam: string;
3225
+ notNull: true;
3226
+ hasDefault: false;
3227
+ isPrimaryKey: false;
3228
+ isAutoincrement: false;
3229
+ hasRuntimeDefault: false;
3230
+ enumValues: undefined;
3231
+ baseColumn: never;
3232
+ identity: undefined;
3233
+ generated: undefined;
3234
+ }, {}, {}>;
3235
+ workspaceId: import("drizzle-orm/pg-core").PgColumn<{
3236
+ name: "workspace_id";
3237
+ tableName: "webhook_deliveries";
3238
+ dataType: "string";
3239
+ columnType: "PgUUID";
3240
+ data: string;
3241
+ driverParam: string;
3242
+ notNull: true;
3243
+ hasDefault: false;
3244
+ isPrimaryKey: false;
3245
+ isAutoincrement: false;
3246
+ hasRuntimeDefault: false;
3247
+ enumValues: undefined;
3248
+ baseColumn: never;
3249
+ identity: undefined;
3250
+ generated: undefined;
3251
+ }, {}, {}>;
3252
+ eventId: import("drizzle-orm/pg-core").PgColumn<{
3253
+ name: "event_id";
3254
+ tableName: "webhook_deliveries";
3255
+ dataType: "string";
3256
+ columnType: "PgUUID";
3257
+ data: string;
3258
+ driverParam: string;
3259
+ notNull: true;
3260
+ hasDefault: false;
3261
+ isPrimaryKey: false;
3262
+ isAutoincrement: false;
3263
+ hasRuntimeDefault: false;
3264
+ enumValues: undefined;
3265
+ baseColumn: never;
3266
+ identity: undefined;
3267
+ generated: undefined;
3268
+ }, {}, {}>;
3269
+ eventType: import("drizzle-orm/pg-core").PgColumn<{
3270
+ name: "event_type";
3271
+ tableName: "webhook_deliveries";
3272
+ dataType: "string";
3273
+ columnType: "PgText";
3274
+ data: string;
3275
+ driverParam: string;
3276
+ notNull: true;
3277
+ hasDefault: false;
3278
+ isPrimaryKey: false;
3279
+ isAutoincrement: false;
3280
+ hasRuntimeDefault: false;
3281
+ enumValues: [string, ...string[]];
3282
+ baseColumn: never;
3283
+ identity: undefined;
3284
+ generated: undefined;
3285
+ }, {}, {}>;
3286
+ payload: import("drizzle-orm/pg-core").PgColumn<{
3287
+ name: "payload";
3288
+ tableName: "webhook_deliveries";
3289
+ dataType: "json";
3290
+ columnType: "PgJsonb";
3291
+ data: Record<string, unknown>;
3292
+ driverParam: unknown;
3293
+ notNull: true;
3294
+ hasDefault: false;
3295
+ isPrimaryKey: false;
3296
+ isAutoincrement: false;
3297
+ hasRuntimeDefault: false;
3298
+ enumValues: undefined;
3299
+ baseColumn: never;
3300
+ identity: undefined;
3301
+ generated: undefined;
3302
+ }, {}, {
3303
+ $type: Record<string, unknown>;
3304
+ }>;
3305
+ status: import("drizzle-orm/pg-core").PgColumn<{
3306
+ name: "status";
3307
+ tableName: "webhook_deliveries";
3308
+ dataType: "string";
3309
+ columnType: "PgText";
3310
+ data: "delivered" | "failed" | "pending" | "held";
3311
+ driverParam: string;
3312
+ notNull: true;
3313
+ hasDefault: true;
3314
+ isPrimaryKey: false;
3315
+ isAutoincrement: false;
3316
+ hasRuntimeDefault: false;
3317
+ enumValues: ["pending", "delivered", "failed", "held"];
3318
+ baseColumn: never;
3319
+ identity: undefined;
3320
+ generated: undefined;
3321
+ }, {}, {}>;
3322
+ attempt: import("drizzle-orm/pg-core").PgColumn<{
3323
+ name: "attempt";
3324
+ tableName: "webhook_deliveries";
3325
+ dataType: "number";
3326
+ columnType: "PgInteger";
3327
+ data: number;
3328
+ driverParam: string | number;
3329
+ notNull: true;
3330
+ hasDefault: true;
3331
+ isPrimaryKey: false;
3332
+ isAutoincrement: false;
3333
+ hasRuntimeDefault: false;
3334
+ enumValues: undefined;
3335
+ baseColumn: never;
3336
+ identity: undefined;
3337
+ generated: undefined;
3338
+ }, {}, {}>;
3339
+ lastStatusCode: import("drizzle-orm/pg-core").PgColumn<{
3340
+ name: "last_status_code";
3341
+ tableName: "webhook_deliveries";
3342
+ dataType: "number";
3343
+ columnType: "PgInteger";
3344
+ data: number;
3345
+ driverParam: string | number;
3346
+ notNull: false;
3347
+ hasDefault: false;
3348
+ isPrimaryKey: false;
3349
+ isAutoincrement: false;
3350
+ hasRuntimeDefault: false;
3351
+ enumValues: undefined;
3352
+ baseColumn: never;
3353
+ identity: undefined;
3354
+ generated: undefined;
3355
+ }, {}, {}>;
3356
+ lastError: import("drizzle-orm/pg-core").PgColumn<{
3357
+ name: "last_error";
3358
+ tableName: "webhook_deliveries";
3359
+ dataType: "string";
3360
+ columnType: "PgText";
3361
+ data: string;
3362
+ driverParam: string;
3363
+ notNull: false;
3364
+ hasDefault: false;
3365
+ isPrimaryKey: false;
3366
+ isAutoincrement: false;
3367
+ hasRuntimeDefault: false;
3368
+ enumValues: [string, ...string[]];
3369
+ baseColumn: never;
3370
+ identity: undefined;
3371
+ generated: undefined;
3372
+ }, {}, {}>;
3373
+ nextAttemptAt: import("drizzle-orm/pg-core").PgColumn<{
3374
+ name: "next_attempt_at";
3375
+ tableName: "webhook_deliveries";
3376
+ dataType: "date";
3377
+ columnType: "PgTimestamp";
3378
+ data: Date;
3379
+ driverParam: string;
3380
+ notNull: false;
3381
+ hasDefault: false;
3382
+ isPrimaryKey: false;
3383
+ isAutoincrement: false;
3384
+ hasRuntimeDefault: false;
3385
+ enumValues: undefined;
3386
+ baseColumn: never;
3387
+ identity: undefined;
3388
+ generated: undefined;
3389
+ }, {}, {}>;
3390
+ deliveredAt: import("drizzle-orm/pg-core").PgColumn<{
3391
+ name: "delivered_at";
3392
+ tableName: "webhook_deliveries";
3393
+ dataType: "date";
3394
+ columnType: "PgTimestamp";
3395
+ data: Date;
3396
+ driverParam: string;
3397
+ notNull: false;
3398
+ hasDefault: false;
3399
+ isPrimaryKey: false;
3400
+ isAutoincrement: false;
3401
+ hasRuntimeDefault: false;
3402
+ enumValues: undefined;
3403
+ baseColumn: never;
3404
+ identity: undefined;
3405
+ generated: undefined;
3406
+ }, {}, {}>;
3407
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
3408
+ name: "created_at";
3409
+ tableName: "webhook_deliveries";
3410
+ dataType: "date";
3411
+ columnType: "PgTimestamp";
3412
+ data: Date;
3413
+ driverParam: string;
3414
+ notNull: true;
3415
+ hasDefault: true;
3416
+ isPrimaryKey: false;
3417
+ isAutoincrement: false;
3418
+ hasRuntimeDefault: false;
3419
+ enumValues: undefined;
3420
+ baseColumn: never;
3421
+ identity: undefined;
3422
+ generated: undefined;
3423
+ }, {}, {}>;
3424
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
3425
+ name: "updated_at";
3426
+ tableName: "webhook_deliveries";
3427
+ dataType: "date";
3428
+ columnType: "PgTimestamp";
3429
+ data: Date;
3430
+ driverParam: string;
3431
+ notNull: true;
3432
+ hasDefault: true;
3433
+ isPrimaryKey: false;
3434
+ isAutoincrement: false;
3435
+ hasRuntimeDefault: false;
3436
+ enumValues: undefined;
3437
+ baseColumn: never;
3438
+ identity: undefined;
3439
+ generated: undefined;
3440
+ }, {}, {}>;
3441
+ };
3442
+ dialect: "pg";
3443
+ }>;
2789
3444
  export type InstanceSettings = typeof instanceSettings.$inferSelect;
2790
3445
  export type Workspace = typeof workspaces.$inferSelect;
2791
3446
  export type WorkspaceMember = typeof workspaceMembers.$inferSelect;
@@ -2801,4 +3456,6 @@ export type ProjectMemberRow = typeof projectMembers.$inferSelect;
2801
3456
  export type WorkspaceTeamRow = typeof workspaceTeams.$inferSelect;
2802
3457
  export type WorkspaceTeamMemberRow = typeof workspaceTeamMembers.$inferSelect;
2803
3458
  export type ProjectTeamRow = typeof projectTeams.$inferSelect;
3459
+ export type WebhookEndpointRow = typeof webhookEndpoints.$inferSelect;
3460
+ export type WebhookDeliveryRow = typeof webhookDeliveries.$inferSelect;
2804
3461
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
package/dist/schema.js CHANGED
@@ -617,4 +617,113 @@ export const projectTeams = pgTable('project_teams', {
617
617
  index('project_teams_project_created_id_idx').on(t.projectId, t.createdAt, t.id),
618
618
  check('project_teams_role_check', sql `${t.role} IN ('manager', 'editor', 'viewer')`)
619
619
  ]);
620
+ /**
621
+ * Outbound webhooks (PRDCT-3482): a URL a workspace registers to be told, by
622
+ * a signed POST, when something happens to the tool's own subjects. One row
623
+ * per endpoint, owned by its workspace (ON DELETE CASCADE: a deleted
624
+ * workspace takes its endpoints and, through them, their deliveries).
625
+ *
626
+ * - `events` lists what the endpoint subscribes to: an event type
627
+ * ('resource.created'), a family pattern ('resource.*') or everything
628
+ * ('*'). The tool declares the types; the chassis only matches them.
629
+ * - `filters` narrows the subscription by subject: a subject key mapped to
630
+ * a list of ids. The keys are ANDed, the ids within one key ORed; an empty
631
+ * object filters nothing.
632
+ * - `secret` is the signing secret, SEALED (AES-GCM under a key derived from
633
+ * the auth secret), never stored in plaintext. During a rotation the outgoing secret
634
+ * stays in `previous_secret`, sealed the same way, until
635
+ * `previous_secret_expires_at`, so a receiver can switch keys without a
636
+ * gap.
637
+ * - The failure streak (`consecutive_failures`, `first_failure_at`) drives
638
+ * the auto-disable: an endpoint that keeps failing is switched off
639
+ * (`enabled` false, `disabled_at` and `disabled_reason` set) rather than
640
+ * retried forever.
641
+ * - `last_delivery_at` / `last_delivery_status` are the endpoint's last
642
+ * outcome, for the list; the history itself is `webhook_deliveries`.
643
+ */
644
+ export const webhookEndpoints = pgTable('webhook_endpoints', {
645
+ id: uuid('id').primaryKey().defaultRandom(),
646
+ workspaceId: uuid('workspace_id')
647
+ .notNull()
648
+ .references(() => workspaces.id, { onDelete: 'cascade' }),
649
+ url: text('url').notNull(),
650
+ description: text('description').notNull().default(''),
651
+ /** Event types or patterns: 'resource.created', 'resource.*', '*'. */
652
+ events: text('events').array().notNull(),
653
+ /** Subject key → ids; AND across keys, OR within one. */
654
+ filters: jsonb('filters').$type().notNull().default({}),
655
+ enabled: boolean('enabled').notNull().default(true),
656
+ /** The signing secret, sealed; never plaintext. */
657
+ secret: text('secret').notNull(),
658
+ /** The sealed previous secret, kept during a rotation's overlap. */
659
+ previousSecret: text('previous_secret'),
660
+ previousSecretExpiresAt: timestamp('previous_secret_expires_at', { withTimezone: true }),
661
+ createdBy: text('created_by').references(() => user.id, { onDelete: 'set null' }),
662
+ createdAt: timestamp('created_at', { withTimezone: true }).notNull().defaultNow(),
663
+ updatedAt: timestamp('updated_at', { withTimezone: true }).notNull().defaultNow(),
664
+ // Set together by the auto-disable.
665
+ disabledAt: timestamp('disabled_at', { withTimezone: true }),
666
+ disabledReason: text('disabled_reason'),
667
+ consecutiveFailures: integer('consecutive_failures').notNull().default(0),
668
+ /** When the current failure streak began; NULL while none runs. */
669
+ firstFailureAt: timestamp('first_failure_at', { withTimezone: true }),
670
+ lastDeliveryAt: timestamp('last_delivery_at', { withTimezone: true }),
671
+ lastDeliveryStatus: text('last_delivery_status', { enum: ['delivered', 'failed'] })
672
+ }, (t) => [
673
+ index('webhook_endpoints_workspace_idx').on(t.workspaceId),
674
+ // Serves the endpoints list's keyset pagination.
675
+ index('webhook_endpoints_workspace_created_id_idx').on(t.workspaceId, t.createdAt, t.id),
676
+ check('webhook_endpoints_last_status_check', sql `${t.lastDeliveryStatus} IS NULL OR ${t.lastDeliveryStatus} IN ('delivered', 'failed')`)
677
+ ]);
678
+ /**
679
+ * The life of one delivery. A stray value must be impossible: text + CHECK,
680
+ * never a free string.
681
+ *
682
+ * - `pending`: queued, or waiting for its next attempt (`next_attempt_at`).
683
+ * - `delivered`: the receiver answered 2xx.
684
+ * - `failed`: the attempt was refused for good (the endpoint disabled or gone).
685
+ * - `held`: the retry budget ran out; the row waits on the held queue and
686
+ * comes back through the delivery queue every hour until the receiver
687
+ * takes it.
688
+ */
689
+ export const webhookDeliveryStatuses = ['pending', 'delivered', 'failed', 'held'];
690
+ /**
691
+ * One row per (endpoint, event): the delivery and its attempts, kept for the
692
+ * endpoint's history and for a redelivery. Both ends cascade: a deleted
693
+ * endpoint or workspace takes its rows. `workspace_id` is a copy of the
694
+ * endpoint's, kept on purpose so the lists and the nightly purge never join;
695
+ * an endpoint never changes workspace, so the copy cannot drift.
696
+ *
697
+ * `event_id` is the event's own id, the same on every attempt and on a
698
+ * redelivery: it is the receiver's dedupe key, never regenerated. `payload`
699
+ * is the envelope as sent, without the attempt number, which is the row's
700
+ * `attempt` and is stamped at each send. `last_status_code` and
701
+ * `last_error` describe the latest attempt only.
702
+ */
703
+ export const webhookDeliveries = pgTable('webhook_deliveries', {
704
+ id: uuid('id').primaryKey().defaultRandom(),
705
+ endpointId: uuid('endpoint_id')
706
+ .notNull()
707
+ .references(() => webhookEndpoints.id, { onDelete: 'cascade' }),
708
+ workspaceId: uuid('workspace_id')
709
+ .notNull()
710
+ .references(() => workspaces.id, { onDelete: 'cascade' }),
711
+ eventId: uuid('event_id').notNull(),
712
+ eventType: text('event_type').notNull(),
713
+ payload: jsonb('payload').$type().notNull(),
714
+ status: text('status', { enum: webhookDeliveryStatuses }).notNull().default('pending'),
715
+ attempt: integer('attempt').notNull().default(0),
716
+ lastStatusCode: integer('last_status_code'),
717
+ lastError: text('last_error'),
718
+ nextAttemptAt: timestamp('next_attempt_at', { withTimezone: true }),
719
+ deliveredAt: timestamp('delivered_at', { withTimezone: true }),
720
+ createdAt: timestamp('created_at', { withTimezone: true }).notNull().defaultNow(),
721
+ updatedAt: timestamp('updated_at', { withTimezone: true }).notNull().defaultNow()
722
+ }, (t) => [
723
+ // Serves an endpoint's deliveries list (keyset pagination).
724
+ index('webhook_deliveries_endpoint_created_id_idx').on(t.endpointId, t.createdAt, t.id),
725
+ // Serves the nightly purge (created_at range scan).
726
+ index('webhook_deliveries_created_idx').on(t.createdAt),
727
+ check('webhook_deliveries_status_check', sql `${t.status} IN ('pending', 'delivered', 'failed', 'held')`)
728
+ ]);
620
729
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antasphere/chassis-db",
3
- "version": "1.1.0",
3
+ "version": "1.3.0",
4
4
  "license": "SEE LICENSE IN LICENSE",
5
5
  "repository": {
6
6
  "type": "git",
package/src/schema.ts CHANGED
@@ -717,6 +717,130 @@ export const projectTeams = pgTable(
717
717
  ]
718
718
  );
719
719
 
720
+ /**
721
+ * Outbound webhooks (PRDCT-3482): a URL a workspace registers to be told, by
722
+ * a signed POST, when something happens to the tool's own subjects. One row
723
+ * per endpoint, owned by its workspace (ON DELETE CASCADE: a deleted
724
+ * workspace takes its endpoints and, through them, their deliveries).
725
+ *
726
+ * - `events` lists what the endpoint subscribes to: an event type
727
+ * ('resource.created'), a family pattern ('resource.*') or everything
728
+ * ('*'). The tool declares the types; the chassis only matches them.
729
+ * - `filters` narrows the subscription by subject: a subject key mapped to
730
+ * a list of ids. The keys are ANDed, the ids within one key ORed; an empty
731
+ * object filters nothing.
732
+ * - `secret` is the signing secret, SEALED (AES-GCM under a key derived from
733
+ * the auth secret), never stored in plaintext. During a rotation the outgoing secret
734
+ * stays in `previous_secret`, sealed the same way, until
735
+ * `previous_secret_expires_at`, so a receiver can switch keys without a
736
+ * gap.
737
+ * - The failure streak (`consecutive_failures`, `first_failure_at`) drives
738
+ * the auto-disable: an endpoint that keeps failing is switched off
739
+ * (`enabled` false, `disabled_at` and `disabled_reason` set) rather than
740
+ * retried forever.
741
+ * - `last_delivery_at` / `last_delivery_status` are the endpoint's last
742
+ * outcome, for the list; the history itself is `webhook_deliveries`.
743
+ */
744
+ export const webhookEndpoints = pgTable(
745
+ 'webhook_endpoints',
746
+ {
747
+ id: uuid('id').primaryKey().defaultRandom(),
748
+ workspaceId: uuid('workspace_id')
749
+ .notNull()
750
+ .references(() => workspaces.id, { onDelete: 'cascade' }),
751
+ url: text('url').notNull(),
752
+ description: text('description').notNull().default(''),
753
+ /** Event types or patterns: 'resource.created', 'resource.*', '*'. */
754
+ events: text('events').array().notNull(),
755
+ /** Subject key → ids; AND across keys, OR within one. */
756
+ filters: jsonb('filters').$type<Record<string, string[]>>().notNull().default({}),
757
+ enabled: boolean('enabled').notNull().default(true),
758
+ /** The signing secret, sealed; never plaintext. */
759
+ secret: text('secret').notNull(),
760
+ /** The sealed previous secret, kept during a rotation's overlap. */
761
+ previousSecret: text('previous_secret'),
762
+ previousSecretExpiresAt: timestamp('previous_secret_expires_at', { withTimezone: true }),
763
+ createdBy: text('created_by').references(() => user.id, { onDelete: 'set null' }),
764
+ createdAt: timestamp('created_at', { withTimezone: true }).notNull().defaultNow(),
765
+ updatedAt: timestamp('updated_at', { withTimezone: true }).notNull().defaultNow(),
766
+ // Set together by the auto-disable.
767
+ disabledAt: timestamp('disabled_at', { withTimezone: true }),
768
+ disabledReason: text('disabled_reason'),
769
+ consecutiveFailures: integer('consecutive_failures').notNull().default(0),
770
+ /** When the current failure streak began; NULL while none runs. */
771
+ firstFailureAt: timestamp('first_failure_at', { withTimezone: true }),
772
+ lastDeliveryAt: timestamp('last_delivery_at', { withTimezone: true }),
773
+ lastDeliveryStatus: text('last_delivery_status', { enum: ['delivered', 'failed'] })
774
+ },
775
+ (t) => [
776
+ index('webhook_endpoints_workspace_idx').on(t.workspaceId),
777
+ // Serves the endpoints list's keyset pagination.
778
+ index('webhook_endpoints_workspace_created_id_idx').on(t.workspaceId, t.createdAt, t.id),
779
+ check(
780
+ 'webhook_endpoints_last_status_check',
781
+ sql`${t.lastDeliveryStatus} IS NULL OR ${t.lastDeliveryStatus} IN ('delivered', 'failed')`
782
+ )
783
+ ]
784
+ );
785
+
786
+ /**
787
+ * The life of one delivery. A stray value must be impossible: text + CHECK,
788
+ * never a free string.
789
+ *
790
+ * - `pending`: queued, or waiting for its next attempt (`next_attempt_at`).
791
+ * - `delivered`: the receiver answered 2xx.
792
+ * - `failed`: the attempt was refused for good (the endpoint disabled or gone).
793
+ * - `held`: the retry budget ran out; the row waits on the held queue and
794
+ * comes back through the delivery queue every hour until the receiver
795
+ * takes it.
796
+ */
797
+ export const webhookDeliveryStatuses = ['pending', 'delivered', 'failed', 'held'] as const;
798
+ export type WebhookDeliveryStatus = (typeof webhookDeliveryStatuses)[number];
799
+
800
+ /**
801
+ * One row per (endpoint, event): the delivery and its attempts, kept for the
802
+ * endpoint's history and for a redelivery. Both ends cascade: a deleted
803
+ * endpoint or workspace takes its rows. `workspace_id` is a copy of the
804
+ * endpoint's, kept on purpose so the lists and the nightly purge never join;
805
+ * an endpoint never changes workspace, so the copy cannot drift.
806
+ *
807
+ * `event_id` is the event's own id, the same on every attempt and on a
808
+ * redelivery: it is the receiver's dedupe key, never regenerated. `payload`
809
+ * is the envelope as sent, without the attempt number, which is the row's
810
+ * `attempt` and is stamped at each send. `last_status_code` and
811
+ * `last_error` describe the latest attempt only.
812
+ */
813
+ export const webhookDeliveries = pgTable(
814
+ 'webhook_deliveries',
815
+ {
816
+ id: uuid('id').primaryKey().defaultRandom(),
817
+ endpointId: uuid('endpoint_id')
818
+ .notNull()
819
+ .references(() => webhookEndpoints.id, { onDelete: 'cascade' }),
820
+ workspaceId: uuid('workspace_id')
821
+ .notNull()
822
+ .references(() => workspaces.id, { onDelete: 'cascade' }),
823
+ eventId: uuid('event_id').notNull(),
824
+ eventType: text('event_type').notNull(),
825
+ payload: jsonb('payload').$type<Record<string, unknown>>().notNull(),
826
+ status: text('status', { enum: webhookDeliveryStatuses }).notNull().default('pending'),
827
+ attempt: integer('attempt').notNull().default(0),
828
+ lastStatusCode: integer('last_status_code'),
829
+ lastError: text('last_error'),
830
+ nextAttemptAt: timestamp('next_attempt_at', { withTimezone: true }),
831
+ deliveredAt: timestamp('delivered_at', { withTimezone: true }),
832
+ createdAt: timestamp('created_at', { withTimezone: true }).notNull().defaultNow(),
833
+ updatedAt: timestamp('updated_at', { withTimezone: true }).notNull().defaultNow()
834
+ },
835
+ (t) => [
836
+ // Serves an endpoint's deliveries list (keyset pagination).
837
+ index('webhook_deliveries_endpoint_created_id_idx').on(t.endpointId, t.createdAt, t.id),
838
+ // Serves the nightly purge (created_at range scan).
839
+ index('webhook_deliveries_created_idx').on(t.createdAt),
840
+ check('webhook_deliveries_status_check', sql`${t.status} IN ('pending', 'delivered', 'failed', 'held')`)
841
+ ]
842
+ );
843
+
720
844
  export type InstanceSettings = typeof instanceSettings.$inferSelect;
721
845
  export type Workspace = typeof workspaces.$inferSelect;
722
846
  export type WorkspaceMember = typeof workspaceMembers.$inferSelect;
@@ -732,3 +856,5 @@ export type ProjectMemberRow = typeof projectMembers.$inferSelect;
732
856
  export type WorkspaceTeamRow = typeof workspaceTeams.$inferSelect;
733
857
  export type WorkspaceTeamMemberRow = typeof workspaceTeamMembers.$inferSelect;
734
858
  export type ProjectTeamRow = typeof projectTeams.$inferSelect;
859
+ export type WebhookEndpointRow = typeof webhookEndpoints.$inferSelect;
860
+ export type WebhookDeliveryRow = typeof webhookDeliveries.$inferSelect;