@relayfile/relay-helpers 0.4.6 → 0.4.8

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/README.md CHANGED
@@ -20,6 +20,43 @@ await githubClient().mergePullRequest({ owner, repo, number });
20
20
  await slackClient().post('#eng', 'shipped');
21
21
  ```
22
22
 
23
+ ## Create delivery status
24
+
25
+ GitHub and Linear create helpers return a discriminated `CreatedResult` instead
26
+ of making a missing receipt look confirmed:
27
+
28
+ ```ts
29
+ const posted = await githubClient().comment({ owner, repo, number }, body);
30
+
31
+ switch (posted.status) {
32
+ case 'confirmed':
33
+ console.log('provider receipt received', posted.id, posted.url);
34
+ break;
35
+ case 'pending':
36
+ // The draft was accepted and may still be delivered. Do not throw/retry:
37
+ // doing so can duplicate the provider-side effect.
38
+ console.log('write accepted; receipt not observed yet', posted.path);
39
+ break;
40
+ case 'dropped':
41
+ console.error('transport confirmed the write was dropped', posted.path);
42
+ break;
43
+ }
44
+ ```
45
+
46
+ `path` is always the Relayfile draft handle. For compatibility, `id` also
47
+ falls back to that path until a provider receipt supplies an id. `url` is an
48
+ empty string when no provider URL exists; it is never populated with a
49
+ filesystem path. Older custom transports need no changes: a receipt implies
50
+ `confirmed`, while no receipt implies `pending`. A transport should report
51
+ `dropped` only with positive evidence that the draft will not be handled.
52
+ Mount receipt timeouts and direct-HTTP operations that are still running are
53
+ therefore `pending`; a direct operation explicitly reported as failed,
54
+ dead-lettered, or canceled is `dropped`. Ambiguous failures such as an admission
55
+ timeout still throw because the server may have accepted the request before the
56
+ client lost the response—calling that dropped would make an unsafe retry look
57
+ safe. A missing receipt alone can never distinguish pending from an unmounted
58
+ draft, so callers must not promote `pending` to `dropped` themselves.
59
+
23
60
  ## A named client for every provider
24
61
 
25
62
  Every provider in the catalog has a named client (`asanaClient`, `notionClient`,
@@ -51,7 +88,7 @@ provider isn't known at author time.
51
88
 
52
89
  Inject `PreviewTransport` when a local run must record intended provider
53
90
  operations without touching a Relayfile mount or network API. Explicit
54
- transport injection always wins over ambient credentials:
91
+ transport injection normally wins over ambient credentials:
55
92
 
56
93
  ```ts
57
94
  import { PreviewTransport, slackClient } from '@relayfile/relay-helpers';
@@ -82,3 +119,50 @@ try {
82
119
  restore();
83
120
  }
84
121
  ```
122
+
123
+ Local runtimes that enforce an immutable write policy can bind a final-write
124
+ authorizer. It runs after explicit/process transport selection, so authored
125
+ `transport` options cannot bypass denial or canonical preview routing:
126
+
127
+ ```ts
128
+ import {
129
+ PreviewTransport,
130
+ bindRelayWriteAuthorizer,
131
+ runWithRelayWriteAuthorizer,
132
+ } from '@relayfile/relay-helpers/transport';
133
+
134
+ const canonicalPreview = new PreviewTransport();
135
+ const restoreAuthorization = bindRelayWriteAuthorizer(() => ({
136
+ allowed: true,
137
+ transport: canonicalPreview,
138
+ }));
139
+ try {
140
+ await handler();
141
+ } finally {
142
+ restoreAuthorization();
143
+ }
144
+ ```
145
+
146
+ Returning `{ allowed: false }` rejects before any selected transport or native
147
+ VFS write. Authorizers compose from outermost to innermost: any denial wins,
148
+ and the first transport override remains authoritative, so Agent code cannot
149
+ relax a runtime denial or redirect its canonical preview. Reads and lists are
150
+ unaffected. Cleanup callbacks are idempotent and safe out of order, but should
151
+ still be restored in `finally`.
152
+
153
+ When one process can host overlapping Runs, use an isolated async scope rather
154
+ than an imperative binding. Bindings created by code inside the operation still
155
+ compose with the outer policy:
156
+
157
+ ```ts
158
+ await runWithRelayWriteAuthorizer(
159
+ () => ({ allowed: true, transport: canonicalPreview }),
160
+ async () => {
161
+ await importAndRunAgent();
162
+ },
163
+ );
164
+ ```
165
+
166
+ The execution coordinator is shared across installed package copies and its
167
+ global reference cannot be overwritten or deleted. This lets the runtime bind
168
+ before importing authored code without exposing last-writer-wins policy state.
@@ -1 +1 @@
1
- {"version":3,"file":"generic.d.ts","sourceRoot":"","sources":["../src/generic.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAIb,KAAK,eAAe,EACrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AAExB,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;AAE1D;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,iBAAiB;IACtD,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrB,yDAAyD;IACzD,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAC5E;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC7G,oDAAoD;IACpD,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACnF,iDAAiD;IACjD,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;CACtF;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,iBAAiB,EACrD,QAAQ,EAAE,CAAC,EACX,IAAI,GAAE,kBAAuB,GAC5B,WAAW,CAAC,CAAC,CAAC,CAgEhB;AAED,qFAAqF;AACrF,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"generic.d.ts","sourceRoot":"","sources":["../src/generic.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,aAAa,EAGb,KAAK,eAAe,EACrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACvB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAEL,KAAK,kBAAkB,EACxB,MAAM,gBAAgB,CAAC;AAGxB,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC,CAAC;AAE1D;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,iBAAiB;IACtD,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;IACrB,yDAAyD;IACzD,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,MAAM,CAAC;IAC5E;;;;;OAKG;IACH,KAAK,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAC7G,oDAAoD;IACpD,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACnF,iDAAiD;IACjD,IAAI,CAAC,CAAC,EAAE,QAAQ,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAAG,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC;CACtF;AAMD;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,CAAC,SAAS,iBAAiB,EACrD,QAAQ,EAAE,CAAC,EACX,IAAI,GAAE,kBAAuB,GAC5B,WAAW,CAAC,CAAC,CAAC,CAwEhB;AAED,qFAAqF;AACrF,OAAO,EAAE,aAAa,EAAE,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,CAAC"}
package/dist/generic.js CHANGED
@@ -1,6 +1,7 @@
1
- import { draftFile, encodeSegment, listJsonFiles, readJsonFile, writeJsonFile } from '@relayfile/adapter-core/vfs-client';
1
+ import { draftFile, encodeSegment, listJsonFiles, readJsonFile } from '@relayfile/adapter-core/vfs-client';
2
2
  import { WRITEBACK_PATH_CATALOG, writebackPath } from '@relayfile/adapter-core/writeback-paths';
3
3
  import { createRelayTransportResolver, } from './transport.js';
4
+ import { executeRelayWrite } from './write-authorizer.js';
4
5
  function isItemPath(path) {
5
6
  return path.endsWith('.json');
6
7
  }
@@ -21,17 +22,21 @@ export function relayClient(provider, opts = {}) {
21
22
  async write(resource, params, body) {
22
23
  const base = writebackPath(provider, resource, params);
23
24
  const transport = resolveTransport();
24
- if (transport) {
25
- return transport.write({
26
- provider,
27
- resource: String(resource),
28
- parameters: { ...params },
29
- path: base,
30
- body,
31
- });
32
- }
25
+ const request = {
26
+ provider,
27
+ resource: String(resource),
28
+ parameters: { ...params },
29
+ path: base,
30
+ body,
31
+ };
33
32
  const target = isItemPath(base) ? base : `${base}/${draftFile(String(resource))}`;
34
- return writeJsonFile(opts, provider, `write.${String(resource)}`, target, body);
33
+ return executeRelayWrite(transport, request, {
34
+ options: opts,
35
+ integration: provider,
36
+ operation: `write.${String(resource)}`,
37
+ path: target,
38
+ data: body,
39
+ });
35
40
  },
36
41
  async read(resource, params = {}) {
37
42
  // `async` so a validation/path error rejects the promise rather than
@@ -1 +1 @@
1
- {"version":3,"file":"generic.js","sourceRoot":"","sources":["../src/generic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"generic.js","sourceRoot":"","sources":["../src/generic.ts"],"names":[],"mappings":"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"}
package/dist/github.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { type ProviderClient } from './provider-client.js';
2
+ import { type CreatedResult } from './receipt.js';
2
3
  import { type RelayClientOptions } from './transport.js';
3
4
  export interface GithubTarget {
4
5
  owner: string;
@@ -7,10 +8,7 @@ export interface GithubTarget {
7
8
  }
8
9
  export interface GithubClient extends ProviderClient<'github'> {
9
10
  /** Comment on an issue or pull request. */
10
- comment(target: GithubTarget, body: string): Promise<{
11
- id: string;
12
- url: string;
13
- }>;
11
+ comment(target: GithubTarget, body: string): Promise<CreatedResult>;
14
12
  /** Create an issue. */
15
13
  createIssue(args: {
16
14
  owner: string;
@@ -18,10 +16,7 @@ export interface GithubClient extends ProviderClient<'github'> {
18
16
  title: string;
19
17
  body: string;
20
18
  labels?: string[];
21
- }): Promise<{
22
- id: string;
23
- url: string;
24
- }>;
19
+ }): Promise<CreatedResult>;
25
20
  /** Create a pull request from a branch already present on GitHub. */
26
21
  createPullRequest(args: {
27
22
  owner: string;
@@ -32,10 +27,7 @@ export interface GithubClient extends ProviderClient<'github'> {
32
27
  body?: string;
33
28
  draft?: boolean;
34
29
  author?: 'app' | 'user';
35
- }): Promise<{
36
- id: string;
37
- url: string;
38
- }>;
30
+ }): Promise<CreatedResult>;
39
31
  /** Create a Git ref through a non-canonical draft. */
40
32
  pushRef(args: {
41
33
  owner: string;
@@ -1 +1 @@
1
- {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../src/github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../src/github.ts"],"names":[],"mappings":"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"}
package/dist/github.js CHANGED
@@ -1,7 +1,8 @@
1
- import { encodeSegment, writeJsonFile, } from '@relayfile/adapter-core/vfs-client';
1
+ import { encodeSegment } from '@relayfile/adapter-core/vfs-client';
2
2
  import { providerClient } from './provider-client.js';
3
3
  import { created } from './receipt.js';
4
4
  import { createRelayTransportResolver, } from './transport.js';
5
+ import { executeRelayWrite } from './write-authorizer.js';
5
6
  /**
6
7
  * Ergonomic GitHub client over the writeback-path catalog, plus the uniform
7
8
  * resource-keyed access (`.issues`, `.["issue-comments"]`, `.merge`, `.reviews`).
@@ -11,13 +12,13 @@ export function githubClient(opts = {}) {
11
12
  const resolveTransport = createRelayTransportResolver(opts);
12
13
  return Object.assign(base, {
13
14
  async comment(target, body) {
14
- return created(await base['issue-comments'].write({ owner: target.owner, repo: target.repo, issueNumber: target.number }, { body }));
15
+ return created(base['issue-comments'].write({ owner: target.owner, repo: target.repo, issueNumber: target.number }, { body }));
15
16
  },
16
17
  async createIssue(args) {
17
- return created(await base.issues.write({ owner: args.owner, repo: args.repo }, { title: args.title, body: args.body, ...(args.labels ? { labels: args.labels } : {}) }));
18
+ return created(base.issues.write({ owner: args.owner, repo: args.repo }, { title: args.title, body: args.body, ...(args.labels ? { labels: args.labels } : {}) }));
18
19
  },
19
20
  async createPullRequest(args) {
20
- return created(await base['pull-requests'].write({ owner: args.owner, repo: args.repo }, {
21
+ return created(base['pull-requests'].write({ owner: args.owner, repo: args.repo }, {
21
22
  title: args.title,
22
23
  head: args.head,
23
24
  base: args.base,
@@ -42,18 +43,13 @@ export function githubClient(opts = {}) {
42
43
  ...(args.force !== undefined ? { force: args.force } : {})
43
44
  };
44
45
  const transport = resolveTransport();
45
- if (transport) {
46
- await transport.write({
47
- provider: 'github',
48
- resource: 'refs',
49
- parameters: { owner: args.owner, repo: args.repo, ref: normalizedRef },
50
- path,
51
- body,
52
- });
53
- }
54
- else {
55
- await writeJsonFile(opts, 'github', 'write.refs', path, body);
56
- }
46
+ await executeRelayWrite(transport, {
47
+ provider: 'github',
48
+ resource: 'refs',
49
+ parameters: { owner: args.owner, repo: args.repo, ref: normalizedRef },
50
+ path,
51
+ body,
52
+ }, { options: opts, integration: 'github', operation: 'write.refs', path, data: body });
57
53
  },
58
54
  async closePullRequest(target) {
59
55
  await base['close-pull-request'].write({ owner: target.owner, repo: target.repo, pullNumber: target.number }, {});
@@ -1 +1 @@
1
- {"version":3,"file":"github.js","sourceRoot":"","sources":["../src/github.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"github.js","sourceRoot":"","sources":["../src/github.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -22,8 +22,8 @@
22
22
  */
23
23
  export { relayClient, encodeSegment, type RelayClient, type RelayParams } from './generic.js';
24
24
  export { providerClient, type ProviderClient, type ResourceClient } from './provider-client.js';
25
- export { created } from './receipt.js';
26
- export { PreviewTransport, bindPreviewTransport, bindRelayTransport, clearPreviewTransport, createRelayTransportResolver, getProcessRelayTransport, setPreviewTransport, setProcessRelayTransport, type PreviewTransportOptions, type RelayClientOptions, type RelayTransport, type RelayTransportParameters, type RelayTransportRequest, type RelayTransportWriteRequest, } from './transport.js';
25
+ export { created, type CreatedConfirmed, type CreatedDropped, type CreatedPending, type CreatedResult, } from './receipt.js';
26
+ export { PreviewTransport, RelayWriteAuthorizationError, bindRelayWriteAuthorizer, runWithRelayWriteAuthorizer, bindPreviewTransport, bindRelayTransport, clearPreviewTransport, createRelayTransportResolver, getProcessRelayTransport, setPreviewTransport, setProcessRelayTransport, type PreviewTransportOptions, type RelayClientOptions, type RelayTransport, type RelayTransportParameters, type RelayTransportRequest, type RelayTransportWriteRequest, type RelayWriteAuthorizationDecision, type RelayWriteAuthorizer, } from './transport.js';
27
27
  export type { EffectPolicyV1, PreviewAccess, PreviewAction, PreviewParameters, PreviewSimulatedReceipt, TransportPreviewAction, } from './types.js';
28
28
  export { linearClient, type LinearClient, type LinearCreateIssueArgs } from './linear.js';
29
29
  export { githubClient, type GithubClient, type GithubTarget } from './github.js';
@@ -31,5 +31,5 @@ export { slackClient, type SlackClient } from './slack.js';
31
31
  export { redditClient } from './reddit.js';
32
32
  export { telegramClient, telegramReceiptMessageId, telegramReceiptTs, type TelegramChatId, type TelegramClient, type TelegramEditMessageOptions, type TelegramMessageId, type TelegramMessageResult, type TelegramParseMode, type TelegramReactionResult, type TelegramSendMessageOptions, } from './telegram.js';
33
33
  export * from './generated/clients.js';
34
- export type { IntegrationClientOptions, WritebackResult } from '@relayfile/adapter-core/vfs-client';
34
+ export type { IntegrationClientOptions, WritebackDeliveryStatus, WritebackResult, } from '@relayfile/adapter-core/vfs-client';
35
35
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,4BAA4B,EAC5B,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,GAChC,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,0BAA0B,EAC/B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,GAChC,MAAM,eAAe,CAAC;AAKvB,cAAc,wBAAwB,CAAC;AAEvC,YAAY,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,KAAK,cAAc,EAAE,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAChG,OAAO,EACL,OAAO,EACP,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,aAAa,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,wBAAwB,EACxB,2BAA2B,EAC3B,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,4BAA4B,EAC5B,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,KAAK,cAAc,EACnB,KAAK,wBAAwB,EAC7B,KAAK,qBAAqB,EAC1B,KAAK,0BAA0B,EAC/B,KAAK,+BAA+B,EACpC,KAAK,oBAAoB,GAC1B,MAAM,gBAAgB,CAAC;AACxB,YAAY,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,uBAAuB,EACvB,sBAAsB,GACvB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,cAAc,EACnB,KAAK,0BAA0B,EAC/B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,0BAA0B,GAChC,MAAM,eAAe,CAAC;AAKvB,cAAc,wBAAwB,CAAC;AAEvC,YAAY,EACV,wBAAwB,EACxB,uBAAuB,EACvB,eAAe,GAChB,MAAM,oCAAoC,CAAC"}
package/dist/index.js CHANGED
@@ -22,8 +22,8 @@
22
22
  */
23
23
  export { relayClient, encodeSegment } from './generic.js';
24
24
  export { providerClient } from './provider-client.js';
25
- export { created } from './receipt.js';
26
- export { PreviewTransport, bindPreviewTransport, bindRelayTransport, clearPreviewTransport, createRelayTransportResolver, getProcessRelayTransport, setPreviewTransport, setProcessRelayTransport, } from './transport.js';
25
+ export { created, } from './receipt.js';
26
+ export { PreviewTransport, RelayWriteAuthorizationError, bindRelayWriteAuthorizer, runWithRelayWriteAuthorizer, bindPreviewTransport, bindRelayTransport, clearPreviewTransport, createRelayTransportResolver, getProcessRelayTransport, setPreviewTransport, setProcessRelayTransport, } from './transport.js';
27
27
  // Ergonomic clients (resource-keyed access + named methods).
28
28
  export { linearClient } from './linear.js';
29
29
  export { githubClient } from './github.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAsC,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,cAAc,EAA4C,MAAM,sBAAsB,CAAC;AAChG,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,4BAA4B,EAC5B,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,GAOzB,MAAM,gBAAgB,CAAC;AAUxB,6DAA6D;AAC7D,OAAO,EAAE,YAAY,EAAiD,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAwC,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,WAAW,EAAoB,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,iBAAiB,GASlB,MAAM,eAAe,CAAC;AAEvB,mEAAmE;AACnE,mEAAmE;AACnE,4EAA4E;AAC5E,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,OAAO,EAAE,WAAW,EAAE,aAAa,EAAsC,MAAM,cAAc,CAAC;AAC9F,OAAO,EAAE,cAAc,EAA4C,MAAM,sBAAsB,CAAC;AAChG,OAAO,EACL,OAAO,GAKR,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,gBAAgB,EAChB,4BAA4B,EAC5B,wBAAwB,EACxB,2BAA2B,EAC3B,oBAAoB,EACpB,kBAAkB,EAClB,qBAAqB,EACrB,4BAA4B,EAC5B,wBAAwB,EACxB,mBAAmB,EACnB,wBAAwB,GASzB,MAAM,gBAAgB,CAAC;AAUxB,6DAA6D;AAC7D,OAAO,EAAE,YAAY,EAAiD,MAAM,aAAa,CAAC;AAC1F,OAAO,EAAE,YAAY,EAAwC,MAAM,aAAa,CAAC;AACjF,OAAO,EAAE,WAAW,EAAoB,MAAM,YAAY,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EACL,cAAc,EACd,wBAAwB,EACxB,iBAAiB,GASlB,MAAM,eAAe,CAAC;AAEvB,mEAAmE;AACnE,mEAAmE;AACnE,4EAA4E;AAC5E,cAAc,wBAAwB,CAAC"}
package/dist/linear.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  import { type ProviderClient } from './provider-client.js';
2
+ import { type CreatedResult } from './receipt.js';
2
3
  import type { LinearAgentActivity } from '@relayfile/adapter-linear/types';
3
4
  import { type RelayClientOptions } from './transport.js';
4
5
  export interface LinearCreateIssueArgs {
@@ -30,37 +31,19 @@ export interface LinearCreateLabelArgs {
30
31
  export type LinearUpdateLabelArgs = Partial<Pick<LinearCreateLabelArgs, 'name' | 'description' | 'color' | 'parentId'>>;
31
32
  export interface LinearClient extends ProviderClient<'linear'> {
32
33
  /** Post an activity to a Linear Agent Session. */
33
- agentActivity(sessionId: string, activity: LinearAgentActivity): Promise<{
34
- id: string;
35
- url: string;
36
- }>;
34
+ agentActivity(sessionId: string, activity: LinearAgentActivity): Promise<CreatedResult>;
37
35
  /** Send a response activity to a Linear Agent Session. */
38
- respond(sessionId: string, body: string): Promise<{
39
- id: string;
40
- url: string;
41
- }>;
36
+ respond(sessionId: string, body: string): Promise<CreatedResult>;
42
37
  /** Send a quick thought activity so Linear knows the agent is working. */
43
- acknowledge(sessionId: string): Promise<{
44
- id: string;
45
- url: string;
46
- }>;
38
+ acknowledge(sessionId: string): Promise<CreatedResult>;
47
39
  /** Comment on an issue. */
48
- comment(issueId: string, body: string): Promise<{
49
- id: string;
50
- url: string;
51
- }>;
40
+ comment(issueId: string, body: string): Promise<CreatedResult>;
52
41
  /** Create an issue. */
53
- createIssue(args: LinearCreateIssueArgs): Promise<{
54
- id: string;
55
- url: string;
56
- }>;
42
+ createIssue(args: LinearCreateIssueArgs): Promise<CreatedResult>;
57
43
  /** Patch an existing issue. */
58
44
  updateIssue(issueId: string, args: LinearUpdateIssueArgs): Promise<void>;
59
45
  /** Create a label. */
60
- createLabel(args: LinearCreateLabelArgs): Promise<{
61
- id: string;
62
- url: string;
63
- }>;
46
+ createLabel(args: LinearCreateLabelArgs): Promise<CreatedResult>;
64
47
  /** Patch an existing label. */
65
48
  updateLabel(labelId: string, args: LinearUpdateLabelArgs): Promise<void>;
66
49
  /** Read one issue by id. */
@@ -1 +1 @@
1
- {"version":3,"file":"linear.d.ts","sourceRoot":"","sources":["../src/linear.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linear.d.ts","sourceRoot":"","sources":["../src/linear.ts"],"names":[],"mappings":"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"}
package/dist/linear.js CHANGED
@@ -1,9 +1,10 @@
1
- import { readJsonFile, writeJsonFile, } from '@relayfile/adapter-core/vfs-client';
1
+ import { readJsonFile } from '@relayfile/adapter-core/vfs-client';
2
2
  import { linearByUuidAliasPath } from '@relayfile/adapter-linear/path-mapper';
3
3
  import { encodeSegment } from './generic.js';
4
4
  import { providerClient } from './provider-client.js';
5
5
  import { created } from './receipt.js';
6
6
  import { createRelayTransportResolver, } from './transport.js';
7
+ import { executeRelayWrite } from './write-authorizer.js';
7
8
  /**
8
9
  * Ergonomic Linear client over the writeback-path catalog. Recovers the
9
10
  * `ctx.linear.comment(...)` shape removed from the runtime, plus the uniform
@@ -17,7 +18,7 @@ export function linearClient(opts = {}) {
17
18
  // Read lookup follows the adapter's stable UUID alias. Writeback keeps the
18
19
  // canonical issue item path until its contract is separately proven.
19
20
  const issueUuidPath = (issueId) => linearByUuidAliasPath(base.issues.path(), issueId);
20
- const agentActivity = async (sessionId, activity) => created(await base['agent-activities'].write({ sessionId }, activity));
21
+ const agentActivity = async (sessionId, activity) => created(base['agent-activities'].write({ sessionId }, activity));
21
22
  return Object.assign(base, {
22
23
  agentActivity,
23
24
  async respond(sessionId, body) {
@@ -27,33 +28,23 @@ export function linearClient(opts = {}) {
27
28
  return agentActivity(sessionId, { type: 'thought', body: 'Acknowledged.' });
28
29
  },
29
30
  async comment(issueId, body) {
30
- return created(await base.comments.write({ issueId }, { body }));
31
+ return created(base.comments.write({ issueId }, { body }));
31
32
  },
32
33
  async createIssue(args) {
33
- return created(await base.issues.write({}, args));
34
+ return created(base.issues.write({}, args));
34
35
  },
35
36
  async updateIssue(issueId, args) {
36
37
  const path = issuePath(issueId);
37
38
  const transport = resolveTransport();
38
- if (transport) {
39
- await transport.write({ provider: 'linear', resource: 'issues', parameters: { issueId }, path, body: args });
40
- }
41
- else {
42
- await writeJsonFile(opts, 'linear', 'updateIssue', path, args);
43
- }
39
+ await executeRelayWrite(transport, { provider: 'linear', resource: 'issues', parameters: { issueId }, path, body: args }, { options: opts, integration: 'linear', operation: 'updateIssue', path, data: args });
44
40
  },
45
41
  async createLabel(args) {
46
- return created(await base.labels.write({}, args));
42
+ return created(base.labels.write({}, args));
47
43
  },
48
44
  async updateLabel(labelId, args) {
49
45
  const path = labelPath(labelId);
50
46
  const transport = resolveTransport();
51
- if (transport) {
52
- await transport.write({ provider: 'linear', resource: 'labels', parameters: { labelId }, path, body: args });
53
- }
54
- else {
55
- await writeJsonFile(opts, 'linear', 'updateLabel', path, args);
56
- }
47
+ await executeRelayWrite(transport, { provider: 'linear', resource: 'labels', parameters: { labelId }, path, body: args }, { options: opts, integration: 'linear', operation: 'updateLabel', path, data: args });
57
48
  },
58
49
  getIssue(issueId) {
59
50
  const path = issueUuidPath(issueId);
@@ -1 +1 @@
1
- {"version":3,"file":"linear.js","sourceRoot":"","sources":["../src/linear.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,YAAY,EACZ,aAAa,GACd,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAuB,MAAM,sBAAsB,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EACL,4BAA4B,GAE7B,MAAM,gBAAgB,CAAC;AAwDxB;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,OAA2B,EAAE;IACxD,MAAM,IAAI,GAAG,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC5C,MAAM,gBAAgB,GAAG,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;IAC9F,MAAM,SAAS,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC;IAC9F,2EAA2E;IAC3E,qEAAqE;IACrE,MAAM,aAAa,GAAG,CAAC,OAAe,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;IAC9F,MAAM,aAAa,GAAG,KAAK,EAAE,SAAiB,EAAE,QAA6B,EAAE,EAAE,CAC/E,OAAO,CAAC,MAAM,IAAI,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC;IACzE,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE;QACzB,aAAa;QACb,KAAK,CAAC,OAAO,CAAC,SAAiB,EAAE,IAAY;YAC3C,OAAO,aAAa,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,SAAiB;YACjC,OAAO,aAAa,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD,KAAK,CAAC,OAAO,CAAC,OAAe,EAAE,IAAY;YACzC,OAAO,OAAO,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,IAA2B;YAC3C,OAAO,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,IAA6B;YAC9D,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;YAChC,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;YACrC,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/G,CAAC;iBAAM,CAAC;gBACN,MAAM,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,IAA2B;YAC3C,OAAO,OAAO,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC;QACpD,CAAC;QACD,KAAK,CAAC,WAAW,CAAC,OAAe,EAAE,IAA6B;YAC9D,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;YAChC,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;YACrC,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,SAAS,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;YAC/G,CAAC;iBAAM,CAAC;gBACN,MAAM,aAAa,CAAC,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QACD,QAAQ,CAA8B,OAAe;YACnD,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;YACpC,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;YACrC,OAAO,SAAS;gBACd,CAAC,CAAC,SAAS,CAAC,IAAI,CAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC;gBAC9F,CAAC,CAAC,YAAY,CAAI,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACxD,CAAC;QACD,UAAU;YACR,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAK,CAAC;QAC/B,CAAC;KACF,CAAiB,CAAC;AACrB,CAAC"}
1
+ {"version":3,"file":"linear.js","sourceRoot":"","sources":["../src/linear.ts"],"names":[],"mappings":"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"}