@remit/api-openapi-spec 0.0.68 → 0.0.70

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 (2) hide show
  1. package/openapi.json +56 -8
  2. package/package.json +1 -1
package/openapi.json CHANGED
@@ -2873,7 +2873,7 @@
2873
2873
  "/calendar-suggestions/{suggestionId}/accept": {
2874
2874
  "post": {
2875
2875
  "operationId": "CalendarSuggestionActionOperations_acceptCalendarSuggestion",
2876
- "description": "Add the suggested event to a calendar. One transaction: a VCALENDAR is\nbuilt from the invitation's own bytes, keeping its UID and SEQUENCE and\nmarking the user `ATTENDEE;PARTSTAT=ACCEPTED`, and written through the\nsame service function every other calendar write goes through — so a web\nedit and a native edit of that event cannot diverge. Accepting a `Cancel`\nsuggestion writes `STATUS:CANCELLED` on the resource the same way.\n\nNo reply is sent to the organizer. This endpoint sends no mail at all,\nand the card says so.\n\nIdempotent: accepting an already-accepted suggestion rewrites the same\nresource and returns the same suggestion, because both the resource id\nand the suggestion id are derived rather than minted.\n\n400 when the suggestion is not one that can be accepted — already\ndeclined, dismissed or superseded — or when its iCalendar will not parse.",
2876
+ "description": "Add the suggested event to a calendar. One transaction: a VCALENDAR is\nbuilt from the invitation's own bytes, keeping its UID and SEQUENCE and\nmarking the user `ATTENDEE;PARTSTAT=ACCEPTED`, and written through the\nsame service function every other calendar write goes through — so a web\nedit and a native edit of that event cannot diverge. Accepting a `Cancel`\nsuggestion writes `STATUS:CANCELLED` on the resource the same way.\n\n`answer: Tentative` writes the same resource with `PARTSTAT=TENTATIVE`\nand moves the suggestion to `Tentative` instead of `Accepted`.\n\nNo reply is sent to the organizer. This endpoint sends no mail at all,\nand the card says so.\n\nIdempotent: accepting an already-accepted suggestion rewrites the same\nresource and returns the same suggestion, because both the resource id\nand the suggestion id are derived rather than minted.\n\n400 when the suggestion is not one that can be accepted — already\nanswered otherwise, dismissed or superseded — when a `Cancel` suggestion\nis answered `Tentative`, or when its iCalendar will not parse.",
2877
2877
  "parameters": [
2878
2878
  {
2879
2879
  "name": "suggestionId",
@@ -6236,6 +6236,15 @@
6236
6236
  }
6237
6237
  ],
6238
6238
  "description": "Collection the accepted event is written into."
6239
+ },
6240
+ "answer": {
6241
+ "allOf": [
6242
+ {
6243
+ "$ref": "#/components/schemas/RemitImap.CalendarInviteAnswer"
6244
+ }
6245
+ ],
6246
+ "description": "How the user answers. `Tentative` adds the event as a maybe. Refused with 400 on a `Cancel` suggestion, which has nothing to answer tentatively.",
6247
+ "default": "Accepted"
6239
6248
  }
6240
6249
  },
6241
6250
  "description": "Body of `POST /calendar-suggestions/{suggestionId}/accept`. Names the collection the event is written into; there is no default, because filing someone else's invitation into a calendar the user did not pick is a decision the server does not get to make."
@@ -7655,6 +7664,14 @@
7655
7664
  },
7656
7665
  "description": "One stretch of time the caller is busy in. Merged across every calendar they\nhold, so two overlapping meetings in two calendars are one span and a caller\nasking \"is this slot free\" never has to do the merging itself."
7657
7666
  },
7667
+ "RemitImap.CalendarInviteAnswer": {
7668
+ "type": "string",
7669
+ "enum": [
7670
+ "Accepted",
7671
+ "Tentative"
7672
+ ],
7673
+ "description": "The answer an invitation is added to a calendar with. It is written as the user's `ATTENDEE;PARTSTAT` on the stored event (RFC 5545 3.2.12) and becomes the suggestion's state."
7674
+ },
7658
7675
  "RemitImap.CalendarInviteMethod": {
7659
7676
  "type": "string",
7660
7677
  "enum": [
@@ -8016,7 +8033,7 @@
8016
8033
  },
8017
8034
  "acceptedCalendarObjectId": {
8018
8035
  "type": "string",
8019
- "description": "The `CalendarObject` that accepting this suggestion wrote. `\"\"` until it is accepted — the named absent state, never a missing attribute — and the resource's id afterwards, so the card can link to the event it produced.",
8036
+ "description": "The `CalendarObject` that accepting this suggestion wrote. `\"\"` until it is accepted or answered tentatively — the named absent state, never a missing attribute — and the resource's id afterwards, so the card can link to the event it produced.",
8020
8037
  "default": "",
8021
8038
  "readOnly": true
8022
8039
  },
@@ -8187,7 +8204,7 @@
8187
8204
  },
8188
8205
  "reason": {
8189
8206
  "type": "string",
8190
- "description": "Why, when the verdict is skipped or rejected"
8207
+ "description": "Why, when the verdict is skipped or rejected; for a filter that lands switched off, what it is waiting for"
8191
8208
  }
8192
8209
  },
8193
8210
  "description": "What became of one item in the submitted document"
@@ -9129,6 +9146,17 @@
9129
9146
  ],
9130
9147
  "description": "Message attribute a FilterClause matches against — RFC 031's Tier 0 literal predicates plus the RFC 038 D2 additions (list membership and sender domain). Every member is matched vector-free at index time and in the back-apply corpus projection."
9131
9148
  },
9149
+ "RemitImap.FilterDisabledReason": {
9150
+ "type": "string",
9151
+ "enum": [
9152
+ "None",
9153
+ "UserDisabled",
9154
+ "AwaitingFolder",
9155
+ "FolderCreateFailed",
9156
+ "FolderMissing"
9157
+ ],
9158
+ "description": "Why a Filter is Disabled. `None` while the filter is not Disabled; every other value names the one thing that has to change before it can run again."
9159
+ },
9132
9160
  "RemitImap.FilterMatchOperator": {
9133
9161
  "type": "string",
9134
9162
  "enum": [
@@ -9145,6 +9173,7 @@
9145
9173
  "name",
9146
9174
  "scope",
9147
9175
  "state",
9176
+ "disabledReason",
9148
9177
  "hasAnchor",
9149
9178
  "ruleChangedAt",
9150
9179
  "actionChangedAt",
@@ -9200,8 +9229,17 @@
9200
9229
  "$ref": "#/components/schemas/RemitImap.FilterState"
9201
9230
  }
9202
9231
  ],
9203
- "description": "Cache of whether this filter is still active, backing byAccountAndState (RFC 034 Decision 1.2). Starts Active; lazily patched to Expired the first time something reads a Temporary filter past its expiresAt — whichever of index-time evaluation, retroactive replay, or a settings-page list touches it next. Never the correctness source; expiresAt is.",
9204
- "default": "Active",
9232
+ "description": "Whether this filter runs, backing byAccountAndState (RFC 034 Decision 1.2). Starts Active. The user sets Active or Disabled on update; the system sets Disabled when the filter cannot work as designed, and records why in disabledReason. Expired is lazily patched the first time something reads a Temporary filter past its expiresAt, which stays the correctness source for expiry.",
9233
+ "default": "Active"
9234
+ },
9235
+ "disabledReason": {
9236
+ "allOf": [
9237
+ {
9238
+ "$ref": "#/components/schemas/RemitImap.FilterDisabledReason"
9239
+ }
9240
+ ],
9241
+ "description": "Why this filter is Disabled; `None` whenever state is not Disabled. Written together with state, never on its own: turning a filter on clears it.",
9242
+ "default": "None",
9205
9243
  "readOnly": true
9206
9244
  },
9207
9245
  "hasAnchor": {
@@ -9274,9 +9312,10 @@
9274
9312
  "type": "string",
9275
9313
  "enum": [
9276
9314
  "Active",
9277
- "Expired"
9315
+ "Expired",
9316
+ "Disabled"
9278
9317
  ],
9279
- "description": "Cache of whether a Filter is still active to evaluate, backing the byAccountAndState index (RFC 034 Decision 1.2). Not the source of truth for expiry — Filter.expiresAt is, compared directly at every evaluation. Starts Active; lazily patched to Expired the first time something reads a Temporary filter past its expiresAt. No Disabled value: this RFC has no flow that pauses a filter without deleting it."
9318
+ "description": "Whether a Filter runs, backing the byAccountAndState index (RFC 034 Decision 1.2). Active and Disabled are written; Expired is a lazily-patched cache of Filter.expiresAt, which stays the source of truth for expiry. A Disabled filter records why in Filter.disabledReason."
9280
9319
  },
9281
9320
  "RemitImap.FolderAppointment": {
9282
9321
  "type": "object",
@@ -12245,6 +12284,15 @@
12245
12284
  "type": "string",
12246
12285
  "description": "ISO 8601 date-time with zone offset, present only when scope is Temporary (RFC 034 Decision 1.1) — a business date, not an epoch instant. Every evaluation compares `now` against this value directly; it is the source of truth for whether a Temporary filter is still active, independent of `state` or row existence. Mutable on update (reader #266), alongside scope — moving the date bumps ruleChangedAt the same way a scope change does."
12247
12286
  },
12287
+ "state": {
12288
+ "allOf": [
12289
+ {
12290
+ "$ref": "#/components/schemas/RemitImap.FilterState"
12291
+ }
12292
+ ],
12293
+ "description": "Whether this filter runs, backing byAccountAndState (RFC 034 Decision 1.2). Starts Active. The user sets Active or Disabled on update; the system sets Disabled when the filter cannot work as designed, and records why in disabledReason. Expired is lazily patched the first time something reads a Temporary filter past its expiresAt, which stays the correctness source for expiry.",
12294
+ "default": "Active"
12295
+ },
12248
12296
  "matchOperator": {
12249
12297
  "allOf": [
12250
12298
  {
@@ -12273,7 +12321,7 @@
12273
12321
  "default": "None"
12274
12322
  }
12275
12323
  },
12276
- "description": "Input for updating a filter (RFC 034, reader #266). The name, predicate,\naction, scope, and expiresAt are all updatable; `ttl` is always\nserver-derived from `scope`/`expiresAt`, never client-supplied, and\n`state`/`hasAnchor`/`ruleChangedAt`/`actionChangedAt`/`filterId` are\nserver-derived too. A patch touching the predicate, the action, `scope`, or\n`expiresAt` bumps `ruleChangedAt`; a name-only rename never does (RFC 034\nDecision 3.2, reader #266). Only a patch touching the predicate or the\naction bumps `actionChangedAt`, the narrower signal exclusive-move\nprecedence reads (reader #384) — a scope/expiresAt-only edit leaves it\nuntouched.\n\nThe semantic anchor has no field here at all — it is set once, from\n`anchorMessageId`, only on `CreateFilterInput`. Repointing an anchor would\nsilently change what a saved filter matches with nothing visible changing;\nthat deserves a new filter, so the server rejects any attempt to smuggle an\nanchor change through this body (reader #266)."
12324
+ "description": "Input for updating a filter (RFC 034, reader #266). The name, predicate,\naction, scope, and expiresAt are all updatable; `ttl` is always\nserver-derived from `scope`/`expiresAt`, never client-supplied, and\n`disabledReason`/`hasAnchor`/`ruleChangedAt`/`actionChangedAt`/`filterId` are\nserver-derived too. `state` takes `Active` or `Disabled`: the user turns a\nfilter off or back on, and turning it on clears `disabledReason`. `Expired`\nis refused; the expiry is set through `scope`/`expiresAt`. A patch touching the predicate, the action, `scope`, or\n`expiresAt` bumps `ruleChangedAt`; a name-only rename never does (RFC 034\nDecision 3.2, reader #266). Only a patch touching the predicate or the\naction bumps `actionChangedAt`, the narrower signal exclusive-move\nprecedence reads (reader #384) — a scope/expiresAt-only edit leaves it\nuntouched.\n\nThe semantic anchor has no field here at all — it is set once, from\n`anchorMessageId`, only on `CreateFilterInput`. Repointing an anchor would\nsilently change what a saved filter matches with nothing visible changing;\nthat deserves a new filter, so the server rejects any attempt to smuggle an\nanchor change through this body (reader #266)."
12277
12325
  },
12278
12326
  "RemitImap.UpdateFlagsInput": {
12279
12327
  "type": "object",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remit/api-openapi-spec",
3
- "version": "0.0.68",
3
+ "version": "0.0.70",
4
4
  "description": "Remit API OpenAPI 3 document, generated from TypeSpec.",
5
5
  "exports": {
6
6
  ".": "./openapi.json",