@superbee/core 0.2.0-pre.21 → 0.2.0-pre.23

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 (51) hide show
  1. package/README.md +56 -2
  2. package/dist/connector-request.d.ts +87 -0
  3. package/dist/connector-request.d.ts.map +1 -0
  4. package/dist/connector-request.js +370 -0
  5. package/dist/connector-request.js.map +1 -0
  6. package/dist/connectors.d.ts +32 -0
  7. package/dist/connectors.d.ts.map +1 -1
  8. package/dist/connectors.js +30 -1
  9. package/dist/connectors.js.map +1 -1
  10. package/dist/recipe-lifecycle/evolution.d.ts.map +1 -1
  11. package/dist/recipe-lifecycle/evolution.js +49 -13
  12. package/dist/recipe-lifecycle/evolution.js.map +1 -1
  13. package/dist/recipe-lifecycle/install.d.ts.map +1 -1
  14. package/dist/recipe-lifecycle/install.js +2 -2
  15. package/dist/recipe-lifecycle/install.js.map +1 -1
  16. package/dist/recipe-lifecycle/stamp.d.ts +2 -0
  17. package/dist/recipe-lifecycle/stamp.d.ts.map +1 -1
  18. package/dist/recipe-lifecycle/stamp.js +5 -1
  19. package/dist/recipe-lifecycle/stamp.js.map +1 -1
  20. package/dist/source-engine/guard.d.ts +4 -8
  21. package/dist/source-engine/guard.d.ts.map +1 -1
  22. package/dist/source-engine/guard.js +32 -5
  23. package/dist/source-engine/guard.js.map +1 -1
  24. package/dist/source-engine/index.d.ts +2 -0
  25. package/dist/source-engine/index.d.ts.map +1 -1
  26. package/dist/source-engine/index.js +1 -0
  27. package/dist/source-engine/index.js.map +1 -1
  28. package/dist/source-engine/observe.d.ts.map +1 -1
  29. package/dist/source-engine/observe.js +29 -7
  30. package/dist/source-engine/observe.js.map +1 -1
  31. package/dist/source-engine/overlay.d.ts +49 -0
  32. package/dist/source-engine/overlay.d.ts.map +1 -0
  33. package/dist/source-engine/overlay.js +114 -0
  34. package/dist/source-engine/overlay.js.map +1 -0
  35. package/dist/source-engine/types.d.ts +2 -0
  36. package/dist/source-engine/types.d.ts.map +1 -1
  37. package/dist/source-harness/conformance.d.ts.map +1 -1
  38. package/dist/source-harness/conformance.js +13 -12
  39. package/dist/source-harness/conformance.js.map +1 -1
  40. package/dist/source-harness/fixture.d.ts.map +1 -1
  41. package/dist/source-harness/fixture.js +30 -18
  42. package/dist/source-harness/fixture.js.map +1 -1
  43. package/dist/source-profiles/index.d.ts +31 -0
  44. package/dist/source-profiles/index.d.ts.map +1 -0
  45. package/dist/source-profiles/index.js +206 -0
  46. package/dist/source-profiles/index.js.map +1 -0
  47. package/dist/source-profiles/link-header.d.ts +6 -0
  48. package/dist/source-profiles/link-header.d.ts.map +1 -0
  49. package/dist/source-profiles/link-header.js +131 -0
  50. package/dist/source-profiles/link-header.js.map +1 -0
  51. package/package.json +6 -1
@@ -45,7 +45,7 @@ const CREDENTIAL_PROBES = Object.freeze([
45
45
  { name: "an undeclared host", url: `https://${OUTSIDE_HOST}/collect`, credentialHost: true },
46
46
  { name: "the credential host over http", url: `http://${CREDENTIAL_HOST}/repos/octo/probe/issues`, credentialHost: true },
47
47
  { name: "a host starting with the credential host", url: `https://${CREDENTIAL_HOST}.${OUTSIDE_HOST}/x`, credentialHost: true },
48
- { name: "a host ending with the credential host without a dot", url: `https://evil${CREDENTIAL_HOST}/x`, credentialHost: true },
48
+ { name: "a host ending with the credential host without a dot", url: `https://evil${CREDENTIAL_HOST}/repos/octo/probe/issues`, credentialHost: true },
49
49
  { name: "the credential host with a trailing dot", url: `https://${CREDENTIAL_HOST}./x`, credentialHost: true },
50
50
  { name: "the credential host as userinfo", url: `https://${CREDENTIAL_HOST}@${OUTSIDE_HOST}/x`, credentialHost: true },
51
51
  { name: "the credential host on another port", url: `https://${CREDENTIAL_HOST}:8443/x`, credentialHost: true },
@@ -76,7 +76,7 @@ function probeWorld() {
76
76
  const registry = buildKindRegistry([{ id: "conventions/probe", body: "", frontmatter: { type: "Convention", title: "Probe", governs: "Probe", fields: { required: ["title"] } } }], [], { okfVersion: "0.2" });
77
77
  const parsed = parseConnectorDoc({ id: "connectors/conformance", body: "", frontmatter: {
78
78
  type: "Connector", title: "Transport conformance probe", auth: { kind: "token", provider: "github" }, domains: [KEYLESS_HOST],
79
- record_sources: [{ name: "probe", profile: PROBE, target_kind: "Probe", identity: { resource: `https://${CREDENTIAL_HOST}/repos/{owner}/{repo}`, id: "{id}" }, fields: { title: "title" }, completeness: "complete" }],
79
+ record_sources: [{ name: "probe", profile: PROBE, request: { host: CREDENTIAL_HOST, method: "GET", path: "/repos/{owner}/{repo}/issues", items: "" }, target_kind: "Probe", identity: { resource: `https://${CREDENTIAL_HOST}/repos/{owner}/{repo}`, id: "{id}" }, fields: { title: "title" }, completeness: "complete" }],
80
80
  } }, { kinds: registry });
81
81
  if (!parsed.ok)
82
82
  throw new Error(`conformance connector refused: ${parsed.errors.map((e) => e.code).join(", ")}`);
@@ -119,9 +119,10 @@ const answer = (routes) => (request) => {
119
119
  };
120
120
  async function throughEngine(target, credential, routes, spec, maxBytes) {
121
121
  const { connector, bound } = probeWorld();
122
+ const scopedBound = { ...bound, source: { ...bound.source, request: { ...bound.source.request, host: new URL(spec.url).hostname } } };
122
123
  const peer = new ScriptedPeer(answer(routes));
123
124
  const receipt = await observeSource({
124
- connector, bound, profile: probe, spec, transport: target.create(peer, credential), state: new MemoryMachineState(), identity: IDENTITY,
125
+ connector, bound: scopedBound, profile: probe, spec, transport: target.create(peer, credential), state: new MemoryMachineState(), identity: IDENTITY,
125
126
  mode: "complete", budget: { requests: 20, ...(maxBytes !== undefined ? { maxBytes } : {}) }, commit: async () => { },
126
127
  });
127
128
  return { receipt, peer };
@@ -143,7 +144,7 @@ const CHECKS = {
143
144
  const sent = peer.received[0]?.headers[credential.header.toLowerCase()];
144
145
  if (sent !== credential.value)
145
146
  problems.push(`the ${credential.header} credential did not reach ${CREDENTIAL_HOST}`);
146
- const { peer: engine } = await throughEngine(target, credential, { [`https://${CREDENTIAL_HOST}/x`]: { status: 200, body: "{}" } }, { url: `https://${CREDENTIAL_HOST}/x` });
147
+ const { peer: engine } = await throughEngine(target, credential, { [`https://${CREDENTIAL_HOST}/repos/octo/probe/issues`]: { status: 200, body: "{}" } }, { url: `https://${CREDENTIAL_HOST}/repos/octo/probe/issues` });
147
148
  if (engine.received[0]?.headers[credential.header.toLowerCase()] !== credential.value)
148
149
  problems.push(`behind the engine the ${credential.header} credential did not reach ${CREDENTIAL_HOST}`);
149
150
  }
@@ -183,10 +184,10 @@ const CHECKS = {
183
184
  async "cross-host-redirect-refused"(target) {
184
185
  const problems = [];
185
186
  const cases = [
186
- { name: "credential host to an undeclared host", from: `https://${CREDENTIAL_HOST}/x`, to: `https://${OUTSIDE_HOST}/steal` },
187
- { name: "keyless host to an undeclared host", from: `https://${KEYLESS_HOST}/x`, to: `https://${OUTSIDE_HOST}/steal` },
188
- { name: "credential host to a declared keyless host", from: `https://${CREDENTIAL_HOST}/x`, to: `https://${KEYLESS_HOST}/y`, also: [KEYLESS_HOST] },
189
- { name: "declared keyless host to the credential host", from: `https://${KEYLESS_HOST}/x`, to: `https://${CREDENTIAL_HOST}/y`, also: [CREDENTIAL_HOST] },
187
+ { name: "credential host to an undeclared host", from: `https://${CREDENTIAL_HOST}/repos/octo/probe/issues`, to: `https://${OUTSIDE_HOST}/steal` },
188
+ { name: "keyless host to an undeclared host", from: `https://${KEYLESS_HOST}/repos/octo/probe/issues`, to: `https://${OUTSIDE_HOST}/steal` },
189
+ { name: "credential host to a declared keyless host", from: `https://${CREDENTIAL_HOST}/repos/octo/probe/issues`, to: `https://${KEYLESS_HOST}/repos/octo/probe/issues`, also: [KEYLESS_HOST] },
190
+ { name: "declared keyless host to the credential host", from: `https://${KEYLESS_HOST}/repos/octo/probe/issues`, to: `https://${CREDENTIAL_HOST}/y`, also: [CREDENTIAL_HOST] },
190
191
  ];
191
192
  for (const credential of CREDENTIALS()) {
192
193
  for (const c of cases) {
@@ -213,17 +214,17 @@ const CHECKS = {
213
214
  const over = "é".repeat(600);
214
215
  const exact = "a".repeat(1000);
215
216
  const peer = new ScriptedPeer(answer({
216
- [`https://${CREDENTIAL_HOST}/over`]: { status: 200, body: over },
217
+ [`https://${CREDENTIAL_HOST}/repos/octo/probe/issues`]: { status: 200, body: over },
217
218
  [`https://${CREDENTIAL_HOST}/exact`]: { status: 200, body: exact },
218
219
  }));
219
220
  const transport = target.create(peer, credential);
220
- const refused = await direct(transport, `https://${CREDENTIAL_HOST}/over`, { maxBytes: 1000, credentialHost: true });
221
+ const refused = await direct(transport, `https://${CREDENTIAL_HOST}/repos/octo/probe/issues`, { maxBytes: 1000, credentialHost: true });
221
222
  if (refused instanceof Error || refused.ok || refused.refused !== "too_large")
222
223
  problems.push("a 1200-byte body under a 1000-byte bound was not refused as too_large");
223
224
  const admitted = await direct(transport, `https://${CREDENTIAL_HOST}/exact`, { maxBytes: 1000, credentialHost: true });
224
225
  if (admitted instanceof Error || !admitted.ok || admitted.body !== exact || admitted.bytes !== 1000)
225
226
  problems.push("a body exactly at the bound was not returned whole");
226
- const { receipt } = await throughEngine(target, credential, { [`https://${CREDENTIAL_HOST}/over`]: { status: 200, body: over } }, { url: `https://${CREDENTIAL_HOST}/over` }, 1000);
227
+ const { receipt } = await throughEngine(target, credential, { [`https://${CREDENTIAL_HOST}/repos/octo/probe/issues`]: { status: 200, body: over } }, { url: `https://${CREDENTIAL_HOST}/repos/octo/probe/issues` }, 1000);
227
228
  if (receipt.outcome !== "too_large")
228
229
  problems.push(`behind the engine the run ended ${receipt.outcome}, not too_large`);
229
230
  return problems;
@@ -231,7 +232,7 @@ const CHECKS = {
231
232
  async "private-redirect-refused"(target) {
232
233
  const [credential] = CREDENTIALS();
233
234
  const problems = [];
234
- for (const from of [`https://${CREDENTIAL_HOST}/x`, `https://${KEYLESS_HOST}/x`]) {
235
+ for (const from of [`https://${CREDENTIAL_HOST}/repos/octo/probe/issues`, `https://${KEYLESS_HOST}/repos/octo/probe/issues`]) {
235
236
  for (const to of PRIVATE_TARGETS) {
236
237
  const { receipt, peer } = await throughEngine(target, credential, { [from]: { status: 302, headers: { location: to }, body: "" } }, { url: from });
237
238
  const toUrl = new URL(to);
@@ -1 +1 @@
1
- {"version":3,"file":"conformance.js","sourceRoot":"","sources":["../../src/source-harness/conformance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conformance.js","sourceRoot":"","sources":["../../src/source-harness/conformance.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fixture.d.ts","sourceRoot":"","sources":["../../src/source-harness/fixture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fixture.d.ts","sourceRoot":"","sources":["../../src/source-harness/fixture.ts"],"names":[],"mappings":"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"}
@@ -8,10 +8,8 @@ import { bindSourceFeed, credentialHosts } from "../connectors.js";
8
8
  import { mutateDocument } from "../document-mutation.js";
9
9
  import { loadKinds } from "../kinds-load.js";
10
10
  import { MemoryBackend } from "../memory-backend.js";
11
- import { HOLD_STORE, RETRYABLE } from "../record-overlay/errors.js";
12
- import { planFindings } from "../record-overlay/findings.js";
13
- import { applyRecordOverlay } from "../record-overlay/apply.js";
14
- import { planRecordOverlay } from "../record-overlay/plan.js";
11
+ import { buildSourceIndex } from "../record-overlay/source-index.js";
12
+ import { createSourceOverlayAdapter } from "../source-engine/overlay.js";
15
13
  import { MemoryMachineState } from "../source-engine/machine-state.js";
16
14
  import { observeSource } from "../source-engine/observe.js";
17
15
  import { fetchIdentity } from "../source-engine/robots.js";
@@ -74,6 +72,7 @@ export async function runSourceScenario(fixture, scenario) {
74
72
  const overlay = { bundle, registry, okfVersion: "0.2" };
75
73
  const bound = bindSourceFeed(fixture.connector, (await backend.read(fixture.feed)).doc, registry, { okfVersion: "0.2" });
76
74
  const state = new MemoryMachineState();
75
+ let accepted = { v: 1, entries: [] };
77
76
  const spec = scenario.spec !== undefined ? scenario.spec : fixture.spec;
78
77
  const slug = `${fixture.feed.split("/").pop().replace(/[^a-z0-9-]+/gi, "-").toLowerCase()}-source`;
79
78
  const result = {
@@ -94,28 +93,41 @@ export async function runSourceScenario(fixture, scenario) {
94
93
  const stateBefore = (await state.read(fixture.feed))?.state ?? null;
95
94
  const changes = [];
96
95
  const overlayReceipts = [];
96
+ const adapter = createSourceOverlayAdapter({ content: overlay, policy: bound.policy, actor: SOURCE_ACTOR,
97
+ overlays: await buildSourceIndex(bundle), accepted, slug });
98
+ if (stateBefore) {
99
+ await adapter.reconcile(stateBefore, at);
100
+ accepted = adapter.stagedSnapshot();
101
+ adapter.consume();
102
+ }
103
+ const jointState = {
104
+ read: state.read.bind(state),
105
+ async write(key, value, expected) {
106
+ try {
107
+ const version = await state.write(key, value, expected);
108
+ accepted = adapter.stagedSnapshot() ?? adapter.snapshot();
109
+ adapter.consume();
110
+ return version;
111
+ }
112
+ catch (error) {
113
+ adapter.discard();
114
+ throw error;
115
+ }
116
+ },
117
+ };
97
118
  const receipt = await observeSource({
98
- connector: fixture.connector, bound, profile: fixture.profile, spec, state, identity: fixture.identity ?? FIXTURE_IDENTITY,
119
+ connector: fixture.connector, bound, profile: fixture.profile, spec, state: jointState, identity: fixture.identity ?? FIXTURE_IDENTITY,
99
120
  transport: peerTransport(peer, fixture.credential ? { credential: fixture.credential } : {}),
100
121
  mode: script.mode ?? "incremental", signal: controller.signal, now: () => new Date(at),
101
122
  ...(script.budget ? { budget: script.budget } : {}),
102
123
  commit: async (page) => {
124
+ const applied = await adapter.commit(page);
103
125
  changes.push(...page.changes);
104
- const plan = await planRecordOverlay({
105
- content: overlay, ops: overlay, policy: bound.policy, changes: page.changes, observedAt: page.observed_at,
106
- records: page.records, sameBundle: true, observation: { baseline: page.baseline },
107
- });
108
- const applied = await applyRecordOverlay(plan, { content: overlay, ops: overlay, policy: bound.policy, actor: SOURCE_ACTOR });
109
- overlayReceipts.push(applied);
110
- const refused = applied.results.filter((r) => r.outcome === "refused" && r.code !== undefined);
111
- return {
112
- retry: refused.filter((r) => RETRYABLE.has(r.code)).map((r) => r.external_id),
113
- hold: refused.filter((r) => HOLD_STORE.has(r.code) && !RETRYABLE.has(r.code)).map((r) => r.external_id),
114
- };
126
+ overlayReceipts.push(applied.receipt);
127
+ return applied;
115
128
  },
116
129
  });
117
- const steps = await planFindings({ ops: overlay, provider: bound.policy.provider, feed: fixture.feed, slug, findings: receipt.findings, observedAt: at });
118
- const findings = await applyRecordOverlay({ feed: fixture.feed, provider: bound.policy.provider, observed_at: at, steps, refusals: [] }, { content: overlay, ops: overlay, policy: bound.policy, actor: SOURCE_ACTOR });
130
+ const findings = await adapter.applyFindings(receipt.findings, at);
119
131
  const documents = {};
120
132
  for (const id of await backend.list())
121
133
  documents[id] = (await backend.read(id)).doc.frontmatter;
@@ -1 +1 @@
1
- {"version":3,"file":"fixture.js","sourceRoot":"","sources":["../../src/source-harness/fixture.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fixture.js","sourceRoot":"","sources":["../../src/source-harness/fixture.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ /** Credential-free declarative profiles. All requests go through the source engine's transport. */
2
+ import { nextLinkTarget } from "./link-header.js";
3
+ import type { ConnectorSource } from "../connectors.js";
4
+ import type { SourceProfile } from "../source-engine/types.js";
5
+ import { unsupportedContent } from "../source-engine/index.js";
6
+ export interface RestJsonCursor {
7
+ token?: string;
8
+ url?: string;
9
+ page?: number;
10
+ offset?: number;
11
+ watermark?: string;
12
+ /** The watermark at the beginning of a pass; stable while that pass pages. */
13
+ since?: string;
14
+ }
15
+ export declare const restJsonProfile: SourceProfile<ConnectorSource, RestJsonCursor>;
16
+ /** Contract-1 composition helpers for explicitly trusted standalone source plugins. */
17
+ export declare const SOURCE_PLUGIN_CORE_VERSION = "0.2.0-pre.23";
18
+ export interface SourcePluginHelpers {
19
+ readonly restJsonProfile: typeof restJsonProfile;
20
+ readonly nextLinkTarget: typeof nextLinkTarget;
21
+ readonly unsupportedContent: typeof unsupportedContent;
22
+ }
23
+ export { nextLinkTarget };
24
+ export declare const SOURCE_PROFILES: readonly Readonly<{
25
+ id: string;
26
+ version: number;
27
+ kind: "generic" | "extension";
28
+ }>[];
29
+ /** Inert lookup. Extensions are explicit caller imports, never discovered or executed here. */
30
+ export declare function getSourceProfile(id: string): SourceProfile<ConnectorSource, RestJsonCursor> | undefined;
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/source-profiles/index.ts"],"names":[],"mappings":"AAAA,mGAAmG;AACnG,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAkB,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE/D,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAuCD,eAAO,MAAM,eAAe,EAAE,aAAa,CAAC,eAAe,EAAE,cAAc,CAuGzE,CAAC;AAEH,uFAAuF;AACvF,eAAO,MAAM,0BAA0B,iBAAiB,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,eAAe,EAAE,OAAO,eAAe,CAAC;IACjD,QAAQ,CAAC,cAAc,EAAE,OAAO,cAAc,CAAC;IAC/C,QAAQ,CAAC,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;CACxD;AACD,OAAO,EAAE,cAAc,EAAE,CAAC;AAE1B,eAAO,MAAM,eAAe;;;;IAAiI,CAAC;AAC9J,+FAA+F;AAC/F,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,GAAG,aAAa,CAAC,eAAe,EAAE,cAAc,CAAC,GAAG,SAAS,CAEvG"}
@@ -0,0 +1,206 @@
1
+ /** Credential-free declarative profiles. All requests go through the source engine's transport. */
2
+ import { nextLinkTarget } from "./link-header.js";
3
+ import { validateConnectorRequest, readSourcePath, renderRequestValue } from "../connectors.js";
4
+ import { unsupportedContent } from "../source-engine/index.js";
5
+ const object = (v) => v !== null && typeof v === "object" && !Array.isArray(v);
6
+ const scalar = (v) => v === null || typeof v === "string" || typeof v === "boolean" || typeof v === "number" && Number.isFinite(v);
7
+ function put(record, path, value) {
8
+ const names = path.split(".");
9
+ let next = record;
10
+ for (const name of names.slice(0, -1)) {
11
+ if (!object(next[name]))
12
+ next[name] = {};
13
+ next = next[name];
14
+ }
15
+ next[names[names.length - 1]] = value;
16
+ }
17
+ function transform(value, type) {
18
+ if (value === undefined || value === null || type === undefined)
19
+ return value;
20
+ if (!scalar(value))
21
+ unsupportedContent("transform requires a scalar");
22
+ switch (type) {
23
+ case "text": return String(value);
24
+ case "integer": {
25
+ if (typeof value === "boolean" || !/^-?\d+$/.test(String(value)) || !Number.isSafeInteger(Number(value)))
26
+ unsupportedContent("invalid integer");
27
+ return Number(value);
28
+ }
29
+ case "date":
30
+ case "epoch-date": {
31
+ const ms = type === "epoch-date" ? Number(value) * 1000 : Date.parse(String(value));
32
+ if (!Number.isFinite(ms))
33
+ unsupportedContent("invalid date");
34
+ try {
35
+ return new Date(ms).toISOString();
36
+ }
37
+ catch {
38
+ unsupportedContent("invalid date");
39
+ }
40
+ }
41
+ case "url": {
42
+ try {
43
+ const url = new URL(String(value));
44
+ if (url.protocol !== "https:" && url.protocol !== "http:" || url.username || url.password)
45
+ unsupportedContent("invalid URL");
46
+ return url.href;
47
+ }
48
+ catch {
49
+ unsupportedContent("invalid URL");
50
+ }
51
+ }
52
+ default: unsupportedContent("unknown transform");
53
+ }
54
+ }
55
+ export const restJsonProfile = Object.freeze({
56
+ id: "rest-json",
57
+ version: 1,
58
+ kind: "generic",
59
+ validateSpec(value) {
60
+ if (!object(value) || !object(value.identity) || typeof value.identity.resource !== "string" || !object(value.request))
61
+ return { ok: false, errors: [{ path: "/request", message: "rest-json requires a source with identity and request" }] };
62
+ const source = value;
63
+ const errors = validateConnectorRequest(source);
64
+ if (source.request?.graphql)
65
+ errors.push({ path: "/request/graphql", message: "use graphql-cursor for GraphQL" });
66
+ return errors.length ? { ok: false, errors } : { ok: true, spec: JSON.parse(JSON.stringify(source)) };
67
+ },
68
+ hostsFor: (source) => [source.request.host],
69
+ async observe(ctx) {
70
+ const { spec, bound, transport, resumed, mode } = ctx;
71
+ const r = spec.request;
72
+ const paging = r.paging;
73
+ const previous = ctx.cursor;
74
+ const validCursor = (value) => value === null || object(value) && Object.entries(value).every(([key, v]) => ["token", "url", "watermark", "since"].includes(key) ? typeof v === "string" : ["page", "offset"].includes(key) && typeof v === "number");
75
+ if (!validCursor(previous))
76
+ unsupportedContent("invalid cursor");
77
+ const numeric = paging?.kind === "page-number" || paging?.kind === "offset";
78
+ const start = mode === "complete" && previous === null;
79
+ const page = numeric && resumed ? 1 : previous?.page ?? 1;
80
+ const offset = numeric && resumed ? 0 : previous?.offset ?? 0;
81
+ if (!Number.isSafeInteger(page) || page < 1 || !Number.isSafeInteger(offset) || offset < 0)
82
+ unsupportedContent("invalid numeric cursor");
83
+ let since = previous?.since;
84
+ if (since === undefined && previous?.watermark && r.watermark && !start) {
85
+ const ms = Date.parse(previous.watermark) - r.watermark.overlap_seconds * 1000;
86
+ if (!Number.isFinite(ms))
87
+ unsupportedContent("invalid watermark");
88
+ since = new Date(ms).toISOString();
89
+ }
90
+ const dynamic = { cursor: previous?.token ?? "", page: String(paging?.kind === "offset" ? offset : page), watermark: since ?? "" };
91
+ const render = (v) => renderRequestValue(v, bound.parameters, dynamic);
92
+ const path = r.path.replace(/\{([A-Za-z][A-Za-z0-9_]*)\}/g, (_, name) => {
93
+ const value = bound.parameters[name] ?? dynamic[name];
94
+ if (value === undefined || value === "." || value === "..")
95
+ unsupportedContent("missing request binding");
96
+ return encodeURIComponent(value);
97
+ });
98
+ const target = new URL(`https://${r.host}${path}`);
99
+ for (const [name, value] of Object.entries(r.query ?? {})) {
100
+ if (value === "{cursor}" && !previous?.token || value === "{watermark}" && !since)
101
+ continue;
102
+ target.searchParams.set(name, String(render(value)));
103
+ }
104
+ if (paging?.size_param && paging.size)
105
+ target.searchParams.set(paging.size_param, String(paging.size));
106
+ if (paging?.kind === "page-number")
107
+ target.searchParams.set(paging.page_param, String(page));
108
+ if (paging?.kind === "offset")
109
+ target.searchParams.set(paging.offset_param, String(offset));
110
+ if (r.watermark && since)
111
+ target.searchParams.set(r.watermark.param, since);
112
+ const headers = Object.fromEntries(Object.entries(r.headers ?? { accept: "application/json" }).map(([k, v]) => [k, String(render(v))]));
113
+ if (ctx.validators && mode === "incremental")
114
+ for (const [k, v] of Object.entries(ctx.validators))
115
+ headers[k] = v;
116
+ const body = r.body ? JSON.stringify(Object.fromEntries(Object.entries(r.body).map(([k, v]) => [k, render(v)]))) : undefined;
117
+ // Provider URLs are never rendered as templates. The engine checks the provider's listed paging forms.
118
+ const response = await transport.request({ url: numeric && resumed ? target.href : previous?.url ?? target.href, method: r.method, headers, ...(body !== undefined ? { body } : {}) });
119
+ if (response.status === 304)
120
+ return { records: [], nextCursor: previous, more: false, complete: false };
121
+ let parsed;
122
+ try {
123
+ parsed = JSON.parse(response.body);
124
+ }
125
+ catch {
126
+ unsupportedContent("invalid_json");
127
+ }
128
+ const items = readSourcePath(parsed, r.items);
129
+ if (!Array.isArray(items) || !items.every(object))
130
+ unsupportedContent("items must be an array of records");
131
+ let watermark = previous?.watermark;
132
+ let skipped = 0;
133
+ const records = [];
134
+ for (const item of items) {
135
+ if (r.watermark) {
136
+ const value = readSourcePath(item, r.watermark.field);
137
+ if (typeof value !== "string" || !Number.isFinite(Date.parse(value)))
138
+ unsupportedContent("invalid record watermark");
139
+ if (!watermark || Date.parse(value) > Date.parse(watermark))
140
+ watermark = new Date(value).toISOString();
141
+ }
142
+ if (r.skip?.some(rule => readSourcePath(item, rule.path) !== undefined)) {
143
+ skipped++;
144
+ continue;
145
+ }
146
+ const normalized = JSON.parse(JSON.stringify(item));
147
+ for (const [name, field] of Object.entries(r.fields ?? {})) {
148
+ const value = Object.hasOwn(field, "const") ? field.const : transform(readSourcePath(item, field.from), field.type);
149
+ if (value !== undefined)
150
+ put(normalized, name, value);
151
+ }
152
+ records.push(normalized);
153
+ }
154
+ let token;
155
+ let url;
156
+ let more = false;
157
+ if (paging?.kind === "link-header") {
158
+ url = nextLinkTarget(response.headers.link ?? "", response.url);
159
+ more = url !== undefined;
160
+ }
161
+ else if (paging?.kind === "cursor") {
162
+ const next = readSourcePath(parsed, paging.next_path ?? paging.cursor_path);
163
+ if (next !== undefined && next !== null && next !== "") {
164
+ if (typeof next !== "string")
165
+ unsupportedContent("cursor must be a string");
166
+ if (paging.next_path) {
167
+ try {
168
+ url = new URL(next, response.url).href;
169
+ }
170
+ catch {
171
+ unsupportedContent("invalid next URL");
172
+ }
173
+ }
174
+ else
175
+ token = next;
176
+ more = true;
177
+ }
178
+ }
179
+ else if (numeric)
180
+ more = items.length >= paging.size;
181
+ const nextCursor = {
182
+ ...(token !== undefined ? { token } : {}), ...(url !== undefined ? { url } : {}),
183
+ ...(numeric && more ? paging.kind === "page-number" ? { page: page + 1 } : { offset: offset + paging.size } : {}),
184
+ ...(watermark ? { watermark } : {}), ...(more ? { since: since ?? "" } : {}),
185
+ };
186
+ const declaredComplete = r.complete === "always" || object(r.complete) && readSourcePath(parsed, r.complete.when_path) === r.complete.equals;
187
+ const validators = {};
188
+ if (response.headers.etag)
189
+ validators["if-none-match"] = response.headers.etag;
190
+ if (response.headers["last-modified"])
191
+ validators["if-modified-since"] = response.headers["last-modified"];
192
+ return { records, nextCursor: Object.keys(nextCursor).length ? nextCursor : null, more, complete: !more && declaredComplete && !resumed,
193
+ ...(skipped ? { diagnostics: [{ code: "records_skipped", message: "records skipped by declared presence rule", count: skipped }] } : {}),
194
+ ...(Object.keys(validators).length ? { validators } : {}),
195
+ };
196
+ },
197
+ });
198
+ /** Contract-1 composition helpers for explicitly trusted standalone source plugins. */
199
+ export const SOURCE_PLUGIN_CORE_VERSION = "0.2.0-pre.23";
200
+ export { nextLinkTarget };
201
+ export const SOURCE_PROFILES = Object.freeze([restJsonProfile].map(profile => Object.freeze({ id: profile.id, version: profile.version, kind: profile.kind })));
202
+ /** Inert lookup. Extensions are explicit caller imports, never discovered or executed here. */
203
+ export function getSourceProfile(id) {
204
+ return id === restJsonProfile.id ? restJsonProfile : undefined;
205
+ }
206
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/source-profiles/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * RFC 8288 sections 3 and 3.3, with quoted-pairs from RFC 7230 section 3.2.6.
3
+ * Malformed or unsupported input refuses the page, rather than establishing terminal completeness.
4
+ */
5
+ export declare function nextLinkTarget(header: string, base: string): string | undefined;
6
+ //# sourceMappingURL=link-header.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-header.d.ts","sourceRoot":"","sources":["../../src/source-profiles/link-header.ts"],"names":[],"mappings":"AAQA;;;GAGG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CA0F/E"}