@archmax-ai/harness 1.0.0 → 1.1.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.
Files changed (48) hide show
  1. package/README.md +11 -6
  2. package/dist/assembly/compose.js +3 -1
  3. package/dist/assembly/compose.js.map +1 -1
  4. package/dist/authoring-skill/archmax-harness/SKILL.md +5 -2
  5. package/dist/authoring-skill/archmax-harness/references/backend-integration.md +25 -13
  6. package/dist/authoring-skill/archmax-harness/references/workflow-schema.md +36 -6
  7. package/dist/authoring-skill/archmax-harness/references/workflow-yaml.md +3 -0
  8. package/dist/core/attachments.d.ts +2 -0
  9. package/dist/core/attachments.js +2 -1
  10. package/dist/core/attachments.js.map +1 -1
  11. package/dist/core/file-operations.d.ts +6 -0
  12. package/dist/core/file-operations.js +29 -0
  13. package/dist/core/file-operations.js.map +1 -1
  14. package/dist/index.d.ts +5 -1
  15. package/dist/index.js +4 -0
  16. package/dist/index.js.map +1 -1
  17. package/dist/machine/signature-pattern.d.ts +24 -0
  18. package/dist/machine/signature-pattern.js +67 -0
  19. package/dist/machine/signature-pattern.js.map +1 -0
  20. package/dist/machine/signature.d.ts +137 -35
  21. package/dist/machine/signature.js +476 -25
  22. package/dist/machine/signature.js.map +1 -1
  23. package/dist/machine/spec-schema.d.ts +202 -1
  24. package/dist/machine/spec-schema.js +143 -4
  25. package/dist/machine/spec-schema.js.map +1 -1
  26. package/dist/public/spec.d.ts +5 -1
  27. package/dist/public/spec.js +4 -0
  28. package/dist/public/spec.js.map +1 -1
  29. package/dist/workflow/control-tools.js +3 -1
  30. package/dist/workflow/control-tools.js.map +1 -1
  31. package/dist/workflow/file-values.d.ts +4 -1
  32. package/dist/workflow/file-values.js +2 -0
  33. package/dist/workflow/file-values.js.map +1 -1
  34. package/dist/workflow/middleware.d.ts +2 -0
  35. package/dist/workflow/middleware.js +1 -0
  36. package/dist/workflow/middleware.js.map +1 -1
  37. package/dist/workflow/render-prompt.js +7 -2
  38. package/dist/workflow/render-prompt.js.map +1 -1
  39. package/dist/workflow/signature-checks.d.ts +8 -3
  40. package/dist/workflow/signature-checks.js +17 -4
  41. package/dist/workflow/signature-checks.js.map +1 -1
  42. package/dist/workflow/sub-workflow.js +4 -1
  43. package/dist/workflow/sub-workflow.js.map +1 -1
  44. package/package.json +3 -2
  45. package/skills/archmax-harness/SKILL.md +5 -2
  46. package/skills/archmax-harness/references/backend-integration.md +25 -13
  47. package/skills/archmax-harness/references/workflow-schema.md +36 -6
  48. package/skills/archmax-harness/references/workflow-yaml.md +3 -0
package/README.md CHANGED
@@ -167,17 +167,22 @@ states:
167
167
  description: Refund one order and report what was refunded. # for callers, not the agent
168
168
  requires:
169
169
  - order_id # a bare name is untyped
170
- - { name: due, type: date, description: The day the refund is due. }
170
+ - { name: due, type: date, minimum: today, description: The day the refund is due. }
171
+ - { name: contact, type: string, format: email } # a rule beside the type
171
172
  returns:
172
- - { name: total, type: number, description: Refunded amount in EUR. }
173
+ - { name: total, type: number, minimum: 0, description: Refunded amount in EUR. }
173
174
  ```
174
175
 
175
- A start whose `due` is not a real `YYYY-MM-DD` day is refused before any model call, and a session
176
- that finishes with `total` not a number is rejected. One that finishes with `total` unset is
176
+ A start whose `due` is not a real `YYYY-MM-DD` day, or is in the past, or whose `contact` is not an
177
+ email address, is refused before any model call, and a session that finishes with `total` not a
178
+ non-negative number is rejected. Rules (`format`, `pattern`, `minLength`/`maxLength`, `enum`,
179
+ `minimum`/`maximum`, `minItems`/`maxItems`, `accept`, `maxSize`) are held wherever the type is, and a
180
+ `pattern` runs in a linear-time RE2 engine, never a backtracking `RegExp`. One that finishes with `total` unset is
177
181
  rejected too, unless it runs as a sub-workflow: then its caller gets `total` empty (`null`), plus a
178
182
  `note` naming it. A return is owed only when the session finishes, and a seed of one lands unlocked. `signatureJsonSchema` on
179
- `@archmax-ai/harness/spec` turns the same signature into a JSON Schema. See
180
- [triggers](https://harness.archmax.ai/guides/triggers/#typing-a-signature).
183
+ `@archmax-ai/harness/spec` turns the same signature, rules included, into a JSON Schema. See
184
+ [triggers](https://harness.archmax.ai/guides/triggers/#typing-a-signature) and
185
+ [rules](https://harness.archmax.ai/reference/machine-spec/#rules).
181
186
 
182
187
  An entry typed `file` takes a path from the workspace root. A host hands one in with
183
188
  `send(sessionId, { message, files: { invoice: { name, content } } })`, or the CLI with
@@ -3,7 +3,7 @@ import { createMiddleware, todoListMiddleware } from "langchain";
3
3
  import { createDeepAgent } from "deepagents";
4
4
  import { AGENT_DEFAULT_CONFIG } from "../agent.js";
5
5
  import { READ_FILE_IMAGES_LINE, READ_FILE_TEXT_ONLY_LINE, textOnlyReadFileDescription, } from "../core/binary-read.js";
6
- import { createFileOperationTools, workspaceEntryKind } from "../core/file-operations.js";
6
+ import { createFileOperationTools, workspaceEntryKind, workspaceEntrySize } from "../core/file-operations.js";
7
7
  import { createSessionFiles } from "../core/attachments.js";
8
8
  import { fileGovernance, runtimeReadDenial } from "../workflow/file-values.js";
9
9
  import { runWithToolContext } from "../core/tool-context.js";
@@ -333,6 +333,7 @@ export async function composeGoverned(ctx, input) {
333
333
  mountPrefixes: ctx.mountPrefixes,
334
334
  skills: ctx.skillTable,
335
335
  kind: (path) => workspaceEntryKind(ctx.backend, path),
336
+ size: (path) => workspaceEntrySize(ctx.backend, path),
336
337
  });
337
338
  const dispatcher = createSubWorkflowDispatcher({
338
339
  registry: input.registry,
@@ -385,6 +386,7 @@ export async function composeGoverned(ctx, input) {
385
386
  ...(input.child ? { child: true } : {}),
386
387
  // Through the workspace, bound to the turn's session: what a `file` value names.
387
388
  entryKind: (path) => workspaceEntryKind(ctx.backend, path),
389
+ entrySize: (path) => workspaceEntrySize(ctx.backend, path),
388
390
  });
389
391
  // Native Anthropic/Bedrock caching is LangChain's own middleware; the
390
392
  // OpenAI-compatible Claude path is marked by the workflow instrumentation.
@@ -1 +1 @@
1
- {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/assembly/compose.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compose.js","sourceRoot":"","sources":["../../src/assembly/compose.ts"],"names":[],"mappings":"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"}
@@ -70,8 +70,11 @@ then verify. Do not write a file, validate, and discover the next file.
70
70
  `description` for the caller and a `requires`/`returns` signature, typing an
71
71
  entry (`{ name, type, description }`; `string` `integer` `number` `boolean`
72
72
  `date` `date-time` `object` `array` `file`) where the caller must build or read the
73
- value. The runtime holds typed entries at start, at `archmax_set_variables`
74
- and at completion ([`references/workflow-schema.md`](references/workflow-schema.md)).
73
+ value, and adding **rules** where the value has a shape the type does not say
74
+ (`format: email`, `pattern`, `maxLength`, `enum`, `minimum`/`maximum`,
75
+ `minItems`/`maxItems`, `accept`/`maxSize` on a file). The runtime holds typed
76
+ entries and their rules at start, at `archmax_set_variables` and at completion
77
+ ([`references/workflow-schema.md`](references/workflow-schema.md)).
75
78
  Decide how the work can **fail**, too: the agent ends a session it cannot
76
79
  complete with `archmax_raise({ code, reason })`, always on and only for
77
80
  failure (a session that never raises is a success). Where a host branches
@@ -82,7 +82,7 @@ From `@archmax-ai/harness` (`src/index.ts`):
82
82
  | `workflowStateSchema`, `workflowPaths`, `sessionPaths`, `runArtifactPaths` | schema/fn | State schema + path helpers |
83
83
  | `runTests`, `RunTestsOptions`, `CaseResult` | fn/type | Run a workflow's cases — [against your own agent](#cases-against-your-agent) |
84
84
  | `toolsFromMap`, `AgentToolDescriptor`, `ToolContext`, `ToolPaths`, `PathAccess`, `ToolPathsError` | fn/type/class | Host tools: a `name → descriptor` map, each descriptor's declared `paths` and a handler handed the turn's workspace — [host tools](#host-tools) |
85
- | `SIGNATURE_TYPES`, `normalizeSignature`, `signatureForTrigger`, `signatureJsonSchema`, `signatureValueIssues` | const/fn | A trigger's typed signature as JSON Schema and its conformance rule — [exposing a workflow](#exposing-a-workflow-to-outside-callers); also on `@archmax-ai/harness/spec` |
85
+ | `SIGNATURE_TYPES`, `SIGNATURE_FORMATS`, `SIGNATURE_CONTENTS`, `normalizeSignature`, `signatureForTrigger`, `signatureJsonSchema`, `signatureValueIssues` | const/fn | A trigger's typed signature, rules included, as JSON Schema and its conformance rule — [exposing a workflow](#exposing-a-workflow-to-outside-callers); also on `@archmax-ai/harness/spec` |
86
86
 
87
87
  ## createAgent options
88
88
 
@@ -399,12 +399,22 @@ const outcome = await agent.workflow!.send(sessionId, { message: "Refund the ord
399
399
  - `signatureJsonSchema(entries)` → `{ type: "object", properties, required }`:
400
400
  one property per entry in declaration order, every name required,
401
401
  `date`/`date-time`/`file` as `{ type: "string", format }`, an untyped entry as `{}`,
402
- an entry's `description` carried over. It adds no `additionalProperties`; set
403
- it for your own ingress.
404
- - `signatureValueIssues(entries, values)` → one issue per missing name and per
405
- non-conforming value; `[]` means the turn boundary will not refuse the map for
406
- its signature. It **never coerces**: a form that collects text converts
407
- `"4"` to `4` before it validates or seeds.
402
+ an entry's `description` carried over. Rules map to their JSON Schema keywords:
403
+ `format: email` → `format: "email"`, `format: url` → `format: "uri"` plus
404
+ `pattern: "^https?://"`, `format: phone` → the E.164 `pattern`; `pattern`,
405
+ `minLength`/`maxLength`, `enum`, numeric `minimum`/`maximum` and
406
+ `minItems`/`maxItems` as themselves; `content` → `contentMediaType`. Date
407
+ bounds, `accept` and `maxSize` are not mapped (the runtime still enforces
408
+ them). It adds no `additionalProperties`; set it for your own ingress.
409
+ - `signatureValueIssues(entries, values, options?)` → one issue per missing name
410
+ and per non-conforming value; `[]` means the turn boundary will not refuse the
411
+ map for its signature. A value breaking a rule is an `invalid` issue carrying
412
+ `rule` (one per entry, the first rule broken), so code that filters
413
+ `kind === "invalid"` enforces rules unchanged. `options.now` pins the clock
414
+ for `today`/`now` (tests, a host's own clock). It is synchronous, pure and
415
+ browser-safe, and a `pattern` runs in RE2, so it is safe in a request path on
416
+ input from anyone. It **never coerces or trims**: a form that collects text
417
+ converts `"4"` to `4` before it validates or seeds.
408
418
  - A trigger's `description` is written for the caller. Use it as the MCP tool
409
419
  or operation description. The session's own model never sees it.
410
420
  - **A `file` entry** (`format: "file"` in the schema) takes a workspace path. To
@@ -417,13 +427,15 @@ const outcome = await agent.workflow!.send(sessionId, { message: "Refund the ord
417
427
  `InvalidTurnFileError`, before anything is written, for a bad variable or file
418
428
  name, a variable also given in `variables`, a session parked at a human state, or
419
429
  bytes the store cannot hold exactly (a non-text file needs a store with
420
- `uploadFiles`). `signatureValueIssues` checks only a `file` value's shape, so a
421
- start form validates the path the upload will produce, or skips the entry and
422
- lets `files` supply it.
430
+ `uploadFiles`). `signatureValueIssues` checks only a `file` value's shape and its
431
+ `accept` extensions, so a start form validates the path the upload will
432
+ produce, or skips the entry and lets `files` supply it; `maxSize` is checked by
433
+ the runtime at the turn boundary, against the placed file.
423
434
  - A host that reads specs itself must read `requires`/`returns` through
424
- `normalizeSignature` (both spellings → `{ name, type?, description? }[]`),
425
- never as `string[]`: an entry may be an object. Hosts must be on the release
426
- that introduced typed entries before any workspace they read uses them.
435
+ `normalizeSignature` (both spellings → `{ name, type?, description?, …rules }[]`,
436
+ `maxSize` in bytes, `today`/`now` kept symbolic), never as `string[]`: an entry
437
+ may be an object. Hosts must be on the release that introduced typed entries
438
+ (and, for rules, 1.1.0) before any workspace they read uses them.
427
439
 
428
440
  ## Lifecycle events
429
441
 
@@ -606,7 +606,8 @@ states:
606
606
  description: Enrich one order and say whether it is late. # for callers only
607
607
  requires: # a firing must supply these to start
608
608
  - order_id # bare name = untyped
609
- - { name: due, type: date, description: The day the order is due. }
609
+ - { name: due, type: date, minimum: today, description: The day the order is due. }
610
+ - { name: priority, type: string, enum: [low, normal, high] } # a rule
610
611
  returns: # the run guarantees these when it completes
611
612
  - enrichment_file
612
613
  - { name: delayed, type: boolean }
@@ -635,10 +636,11 @@ states:
635
636
  state through a code state that checks the returns and sends the work back
636
637
  with what is missing. Each entry is a bare
637
638
  run-variable name (**untyped**: any value, `null` included) or a strict object
638
- `{ name, type?, description? }` naming one; the spellings mix in one list and
639
+ `{ name, type?, description?, …rules }` naming one; the spellings mix in one list and
639
640
  names are distinct across both. What the agent must *do* to produce a
640
641
  variable still belongs in the `instructions` that set it. The names — with
641
- type and description when declared, as `name (type) — description` — are
642
+ type, rules and description when declared, as
643
+ `name (type; rule; rule) — description` — are
642
644
  rendered into the prompt under the trigger's entry state, so the agent is told
643
645
  what to produce before it can be failed for omitting it. A trigger's
644
646
  `requires:` also **guarantees** the variable for `${{…}}` guards, so `validate`
@@ -654,9 +656,37 @@ states:
654
656
  refused before any model call), **at the write** (`archmax_set_variables` of a
655
657
  mistyped typed return of the current trigger is a correctable refusal,
656
658
  nothing written) and **at completion** (a mistyped typed return rejects the
657
- run — in practice a code state's write). There are no enums, item or
658
- property schemas, ranges or optional inputs. An unknown `type`, an unknown
659
- entry key (`default:`) or an empty `description` fails load.
659
+ run — in practice a code state's write). There are no item or property
660
+ schemas and no optional inputs. An unknown `type`, an unknown entry key
661
+ (`default:`) or an empty `description` fails load.
662
+ - **Rules** say what a typed value must look like beyond its type, spelled as
663
+ JSON Schema keywords, and are held wherever the type is (start, write,
664
+ completion, a delegation call and its settle):
665
+
666
+ | Rule | On | Value |
667
+ | --- | --- | --- |
668
+ | `format` | `string` | `email` (WHATWG grammar, a domain with a TLD), `url` (absolute `http(s)://`, no credentials), `phone` (E.164, `+4930123456`) |
669
+ | `pattern` | `string` | a regex found anywhere in the value (anchor with `^…$`), ≤ 1,000 characters |
670
+ | `minLength`, `maxLength` | `string` | non-negative integers, counted in code points |
671
+ | `enum` | `string` | a non-empty list of distinct strings, matched exactly |
672
+ | `content` | `string` | `text`, `markdown` or `html`: a **declaration** for the host, never checked or sanitised |
673
+ | `minimum`, `maximum` | `integer`, `number` | numbers, inclusive |
674
+ | `minimum`, `maximum` | `date` | `YYYY-MM-DD` or `today` (UTC), inclusive |
675
+ | `minimum`, `maximum` | `date-time` | an RFC 3339 instant or `now`, inclusive |
676
+ | `minItems`, `maxItems` | `array` | non-negative integers |
677
+ | `accept` | `file` | extensions like `.pdf`, matched on the last extension, case-insensitively |
678
+ | `maxSize` | `file` | bytes, or `<n>KB` / `<n>MB` (1,000-based); checked where the file crosses a boundary |
679
+
680
+ Nothing is coerced or trimmed; a mistyped value reports its type, not a rule;
681
+ each entry reports only the first rule it breaks (`'quantity' must be at most
682
+ 100`). Load fails, naming the entry and key, for a rule on a type that does not
683
+ take it or on an untyped entry, `format` with `pattern`, a pattern that does not
684
+ compile or uses a lookaround or backreference, and inconsistent bounds (`min…`
685
+ above `max…`, an empty or repeated `enum`). A `pattern` runs in RE2 (linear
686
+ time, so no input can make it slow) and must also compile as an ECMA-262 `u`
687
+ regex, so RE2-only syntax like `(?i)` or `\pL` is refused. Add rules where a
688
+ caller outside the session supplies the value (a form, an MCP client), or where
689
+ the agent must produce a value of a set shape; the agent sees them in its prompt.
660
690
  - **A `file` value must name a readable file.** The pure rule checks only the
661
691
  path's shape (a host runs it in a browser). At the start, at the write, at
662
692
  completion and at a delegation call the runtime also requires a **file** (not a
@@ -59,9 +59,12 @@ states:
59
59
  requires: # variables a firing must supply (a caller's required params):
60
60
  - order_id # a bare name is untyped (any value, null included)
61
61
  - { name: due, type: date, description: The day it is due. } # typed: held at the boundary
62
+ - { name: contact, type: string, format: email } # a rule beside the type: held wherever the type is
62
63
  returns: [result_file] # variables the run guarantees on completion (a caller's result);
63
64
  # short of them: a child returns what it set + a `note`; a top-level run is rejected
64
65
  # entry types: string integer number boolean date date-time object array file
66
+ # rules: format pattern minLength maxLength enum content (string); minimum maximum
67
+ # (integer number date date-time); minItems maxItems (array); accept maxSize (file)
65
68
  instructions: >-
66
69
  Record the decision in scratchpad/refund.json, then archmax_advance to
67
70
  check-policy; never close the case yourself. If a note sends the case
@@ -51,6 +51,8 @@ export declare function placeAttachment(backend: BackendProtocolV2, sessionId: s
51
51
  export interface SessionFiles {
52
52
  /** What `path` names in `sessionId`'s workspace. */
53
53
  kind(sessionId: string, path: string): Promise<"file" | "directory" | "missing">;
54
+ /** How many bytes the file at `path` in `sessionId`'s workspace holds, or `undefined` when that cannot be told. */
55
+ size(sessionId: string, path: string): Promise<number | undefined>;
54
56
  /** One file's exact bytes from `sessionId`'s workspace, or why they cannot be read. */
55
57
  read(sessionId: string, path: string): Promise<{
56
58
  bytes: Uint8Array;
@@ -1,4 +1,4 @@
1
- import { readWorkspaceBytes, workspaceEntryKind, writeWorkspaceBytes } from "./file-operations.js";
1
+ import { readWorkspaceBytes, workspaceEntryKind, workspaceEntrySize, writeWorkspaceBytes } from "./file-operations.js";
2
2
  /** Where the runtime places the files it hands a session. */
3
3
  export const ATTACHMENTS_DIR = "scratchpad/attachments";
4
4
  /**
@@ -80,6 +80,7 @@ export function placeAttachment(backend, sessionId, fileName, bytes) {
80
80
  export function createSessionFiles(backend, bind) {
81
81
  return {
82
82
  kind: (sessionId, path) => bind(sessionId, () => workspaceEntryKind(backend, path)),
83
+ size: (sessionId, path) => bind(sessionId, () => workspaceEntrySize(backend, path)),
83
84
  read: (sessionId, path) => bind(sessionId, () => readWorkspaceBytes(backend, path)),
84
85
  place: (sessionId, fileName, bytes) => bind(sessionId, () => placeAttachment(backend, sessionId, fileName, bytes)),
85
86
  };
@@ -1 +1 @@
1
- {"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../src/core/attachments.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../src/core/attachments.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,12 @@ export type FileOperationResult = FileOperationDone | {
16
16
  * exists. A path that does not canonicalize names nothing.
17
17
  */
18
18
  export declare function workspaceEntryKind(backend: BackendProtocolV2, path: string): Promise<"file" | "directory" | "missing">;
19
+ /**
20
+ * How many bytes the file at `path` holds, or `undefined` when that cannot be
21
+ * told: the listing's size when the store reports one, else the length of the
22
+ * file's bytes. What a `file` entry's `maxSize` is checked against.
23
+ */
24
+ export declare function workspaceEntrySize(backend: BackendProtocolV2, path: string): Promise<number | undefined>;
19
25
  /**
20
26
  * One workspace file's exact bytes, or why they cannot be read — the refusals
21
27
  * `copy_file` meets, worded for a copy. The runtime's own cross-session copies
@@ -266,6 +266,35 @@ export async function workspaceEntryKind(backend, path) {
266
266
  }
267
267
  return "missing";
268
268
  }
269
+ /**
270
+ * How many bytes the file at `path` holds, or `undefined` when that cannot be
271
+ * told: the listing's size when the store reports one, else the length of the
272
+ * file's bytes. What a `file` entry's `maxSize` is checked against.
273
+ */
274
+ export async function workspaceEntrySize(backend, path) {
275
+ const resolved = canonicalizeRelPath(path);
276
+ if (resolved.escapes || resolved.path === "")
277
+ return undefined;
278
+ const at = resolved.path.lastIndexOf("/");
279
+ const parent = at < 0 ? "" : resolved.path.slice(0, at);
280
+ const name = resolved.path.slice(at + 1);
281
+ try {
282
+ const listing = await backend.ls(keyOf(parent));
283
+ for (const entry of listing.files ?? []) {
284
+ const trimmed = entry.path.replace(/\/+$/, "");
285
+ if (trimmed.slice(trimmed.lastIndexOf("/") + 1) !== name)
286
+ continue;
287
+ if (typeof entry.size === "number" && Number.isFinite(entry.size))
288
+ return entry.size;
289
+ break;
290
+ }
291
+ }
292
+ catch {
293
+ // Fall through to the bytes.
294
+ }
295
+ const read = await readWorkspaceBytes(backend, resolved.path);
296
+ return "bytes" in read ? read.bytes.byteLength : undefined;
297
+ }
269
298
  /**
270
299
  * One workspace file's exact bytes, or why they cannot be read — the refusals
271
300
  * `copy_file` meets, worded for a copy. The runtime's own cross-session copies
@@ -1 +1 @@
1
- {"version":3,"file":"file-operations.js","sourceRoot":"","sources":["../../src/core/file-operations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"file-operations.js","sourceRoot":"","sources":["../../src/core/file-operations.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -238,6 +238,10 @@ sessionIdForTrigger, } from "./machine/triggers.js";
238
238
  export {
239
239
  /** The types a signature entry may declare. */
240
240
  SIGNATURE_TYPES,
241
+ /** The formats a `string` entry's `format` rule names. */
242
+ SIGNATURE_FORMATS,
243
+ /** The kinds of text a `string` entry's `content` rule declares. */
244
+ SIGNATURE_CONTENTS,
241
245
  /** A `requires`/`returns` list as `{ name, type?, description? }` entries. */
242
246
  normalizeSignature,
243
247
  /** A trigger's normalized signature, read from a spec. */
@@ -246,7 +250,7 @@ signatureForTrigger,
246
250
  signatureJsonSchema,
247
251
  /** Each missing name and non-conforming value of a value map, as issues. */
248
252
  signatureValueIssues, } from "./machine/signature.js";
249
- export type { SignatureEntry, SignatureType, TriggerSignature, SignatureValueIssue, } from "./machine/signature.js";
253
+ export type { SignatureEntry, SignatureType, SignatureRules, SignatureRuleName, SignatureFormat, SignatureContent, TriggerSignature, SignatureValueIssue, SignatureValueOptions, } from "./machine/signature.js";
250
254
  /** Default workflow slug when none is named. */
251
255
  export { DEFAULT_WORKFLOW } from "./workflow/paths.js";
252
256
  export {
package/dist/index.js CHANGED
@@ -171,6 +171,10 @@ sessionIdForTrigger, } from "./machine/triggers.js";
171
171
  export {
172
172
  /** The types a signature entry may declare. */
173
173
  SIGNATURE_TYPES,
174
+ /** The formats a `string` entry's `format` rule names. */
175
+ SIGNATURE_FORMATS,
176
+ /** The kinds of text a `string` entry's `content` rule declares. */
177
+ SIGNATURE_CONTENTS,
174
178
  /** A `requires`/`returns` list as `{ name, type?, description? }` entries. */
175
179
  normalizeSignature,
176
180
  /** A trigger's normalized signature, read from a spec. */
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /** The longest pattern an entry may declare, in UTF-16 code units. */
2
+ export declare const PATTERN_MAX_LENGTH = 1000;
3
+ /** A pattern ready to match, or why it is not one, worded for a load error. */
4
+ export type CompiledPattern = {
5
+ ok: true;
6
+ test(value: string): boolean;
7
+ } | {
8
+ ok: false;
9
+ error: string;
10
+ };
11
+ /**
12
+ * A pattern compiled by RE2 once and cached. A failure quotes the engine's
13
+ * error. `test` is true when the pattern is found anywhere in the value — JSON
14
+ * Schema's semantics, so an author anchors with `^…$`.
15
+ */
16
+ export declare function compilePattern(pattern: string): CompiledPattern;
17
+ /**
18
+ * Why a JSON Schema validator could not read `pattern` — it does not compile
19
+ * as an ECMA-262 regular expression with the `u` flag, the way such validators
20
+ * read one — or `undefined` when it can. The parse's check, made once per
21
+ * declared pattern: the expression is compiled for its syntax and discarded,
22
+ * never executed, and nothing that checks a value calls this.
23
+ */
24
+ export declare function jsonSchemaPatternError(pattern: string): string | undefined;
@@ -0,0 +1,67 @@
1
+ /**
2
+ * The regular-expression engine behind a signature entry's `pattern` rule.
3
+ *
4
+ * An author writes the pattern, but it runs against text a stranger chose, and
5
+ * JavaScript's backtracking `RegExp` takes exponential time on `(a+)+$` against
6
+ * a long run of `a`s ended by `!`. So an authored pattern is never run through
7
+ * `RegExp`: it is matched by RE2 (`re2js`, pure JavaScript, so the spec subpath
8
+ * stays browser-safe), which is linear in the input whatever the pattern.
9
+ *
10
+ * Loading a spec also holds a pattern to ECMA-262 syntax
11
+ * ({@link jsonSchemaPatternError}), because RE2 accepts syntax (`(?i)`, `\pL`,
12
+ * `\z`, POSIX classes) that a JSON Schema validator reading the same `pattern`
13
+ * would refuse or read differently. That is an authoring check, made once at
14
+ * load, and it stays out of the matching path: no value check ever constructs
15
+ * a `RegExp` from a pattern.
16
+ */
17
+ import { RE2JS } from "re2js";
18
+ /** The longest pattern an entry may declare, in UTF-16 code units. */
19
+ export const PATTERN_MAX_LENGTH = 1000;
20
+ /** Compiled outcomes, by pattern. Bounded: patterns come from authors, but a host may load many specs. */
21
+ const cache = new Map();
22
+ const CACHE_LIMIT = 1000;
23
+ /**
24
+ * A pattern compiled by RE2 once and cached. A failure quotes the engine's
25
+ * error. `test` is true when the pattern is found anywhere in the value — JSON
26
+ * Schema's semantics, so an author anchors with `^…$`.
27
+ */
28
+ export function compilePattern(pattern) {
29
+ const cached = cache.get(pattern);
30
+ if (cached)
31
+ return cached;
32
+ const compiled = compile(pattern);
33
+ if (cache.size >= CACHE_LIMIT)
34
+ cache.delete(cache.keys().next().value);
35
+ cache.set(pattern, compiled);
36
+ return compiled;
37
+ }
38
+ function compile(pattern) {
39
+ if (pattern.length > PATTERN_MAX_LENGTH) {
40
+ return { ok: false, error: `it is ${pattern.length} characters long, over the limit of ${PATTERN_MAX_LENGTH}` };
41
+ }
42
+ let re2;
43
+ try {
44
+ re2 = RE2JS.compile(pattern);
45
+ }
46
+ catch (err) {
47
+ return { ok: false, error: err.message };
48
+ }
49
+ return { ok: true, test: (value) => re2.test(value) };
50
+ }
51
+ /**
52
+ * Why a JSON Schema validator could not read `pattern` — it does not compile
53
+ * as an ECMA-262 regular expression with the `u` flag, the way such validators
54
+ * read one — or `undefined` when it can. The parse's check, made once per
55
+ * declared pattern: the expression is compiled for its syntax and discarded,
56
+ * never executed, and nothing that checks a value calls this.
57
+ */
58
+ export function jsonSchemaPatternError(pattern) {
59
+ try {
60
+ new RegExp(pattern, "u");
61
+ return undefined;
62
+ }
63
+ catch (err) {
64
+ return `a JSON Schema validator cannot read it: ${err.message}`;
65
+ }
66
+ }
67
+ //# sourceMappingURL=signature-pattern.js.map