@pome-sh/checks 0.4.1 → 0.4.2
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/CHANGELOG.md +8 -0
- package/README.md +33 -64
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @pome-sh/checks
|
|
2
2
|
|
|
3
|
+
## 0.4.2 — 2026-09-15
|
|
4
|
+
|
|
5
|
+
Version-only release: publish-relevant paths changed and no `## Unreleased`
|
|
6
|
+
entry was supplied, so this heading is the whole record. `@pome-sh/checks`'s bytes
|
|
7
|
+
moved under `packages/checks/`.
|
|
8
|
+
|
|
9
|
+
- 0cc9708 Simplify user-facing documentation (#537)
|
|
10
|
+
|
|
3
11
|
## 0.4.1 — 2026-09-01
|
|
4
12
|
|
|
5
13
|
Doc-only: a build-config comment no longer references the removed
|
package/README.md
CHANGED
|
@@ -1,88 +1,57 @@
|
|
|
1
1
|
# `@pome-sh/checks`
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
the **seed schemas** and the **default seeds**, plus the **check DSL** they are
|
|
5
|
-
written in.
|
|
3
|
+
`@pome-sh/checks` contains the check declarations and seed contracts for Pome digital twins. It also exports the check DSL.
|
|
6
4
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
twin start github`) or pull the twin's container image — this package cannot
|
|
11
|
-
start one and does not try to.
|
|
5
|
+
This package does not contain a twin server, database, HTTP route, or MCP dispatcher. Use [`@pome-sh/cli`](https://www.npmjs.com/package/@pome-sh/cli) to run a twin.
|
|
6
|
+
|
|
7
|
+
## Install
|
|
12
8
|
|
|
13
9
|
```bash
|
|
14
10
|
npm install @pome-sh/checks zod
|
|
15
11
|
```
|
|
16
12
|
|
|
17
|
-
`zod` is a
|
|
18
|
-
seed schemas are zod values, and two copies of zod in one process means two
|
|
19
|
-
schema identities — `instanceof` fails and parsed results stop being
|
|
20
|
-
interchangeable. One zod, one identity.
|
|
21
|
-
|
|
22
|
-
## What it is for
|
|
23
|
-
|
|
24
|
-
A Pome task scores an agent with criteria. A `[code]` criterion is graded by a
|
|
25
|
-
**check**: a declared, templated assertion over the twin's final state, its seed
|
|
26
|
-
compared against its final state, or the recorded tape of tool calls. This
|
|
27
|
-
package is where those declarations live, so the thing that grades a run and the
|
|
28
|
-
twin that produced it agree on the vocabulary rather than each keeping its own
|
|
29
|
-
copy of it.
|
|
13
|
+
Node.js 24 or later is required. `zod` is a peer dependency and is not bundled.
|
|
30
14
|
|
|
31
15
|
## Use
|
|
32
16
|
|
|
33
|
-
|
|
17
|
+
Import all twin declarations from the package root:
|
|
34
18
|
|
|
35
19
|
```ts
|
|
36
20
|
import { GITHUB_CHECKS, TWIN_CHECKS, parseGitHubSeed, renderCheck } from "@pome-sh/checks";
|
|
37
21
|
|
|
38
|
-
const check = GITHUB_CHECKS.find((
|
|
22
|
+
const check = GITHUB_CHECKS.find((candidate) => candidate.id === "github.issue-state");
|
|
39
23
|
```
|
|
40
24
|
|
|
41
|
-
|
|
25
|
+
Import one twin through its subpath when you need its unprefixed seed exports:
|
|
42
26
|
|
|
43
27
|
```ts
|
|
44
28
|
import { GITHUB_CHECKS, parseSeed, seedSchema } from "@pome-sh/checks/github";
|
|
45
29
|
```
|
|
46
30
|
|
|
47
|
-
|
|
48
|
-
for the DSL alone.
|
|
31
|
+
Available subpaths are `./github`, `./gmail`, `./linear`, `./slack`, `./stripe`, and `./dsl`.
|
|
49
32
|
|
|
50
|
-
|
|
33
|
+
## Main exports
|
|
34
|
+
|
|
35
|
+
| Export | Purpose |
|
|
51
36
|
| --- | --- |
|
|
52
|
-
| `GITHUB_CHECKS`, `
|
|
53
|
-
| `TWIN_CHECKS` |
|
|
54
|
-
| `CHECKS_TWIN_NAMES`, `ChecksTwinName` |
|
|
55
|
-
| `parse<Twin>Seed`, `<twin>SeedSchema`, `default<Twin>Seed` |
|
|
56
|
-
| `defineCheck`, `parseCheck`, `renderCheck`, `checkPattern`, `checksDigest
|
|
57
|
-
| `
|
|
58
|
-
| `
|
|
59
|
-
| `
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
-
|
|
73
|
-
a pattern, internal implementation swaps behind an unchanged surface.
|
|
74
|
-
|
|
75
|
-
A grading vocabulary is a contract in a stricter sense than a normal library: a
|
|
76
|
-
renamed check id does not break a build, it silently stops binding, and a
|
|
77
|
-
criterion that stops binding scores nothing. Treat every id as public.
|
|
78
|
-
|
|
79
|
-
## Where the source lives
|
|
80
|
-
|
|
81
|
-
Nowhere in this package. Every declaration is re-exported from the twin that
|
|
82
|
-
owns it (`packages/twin-*/src/check-*.ts`) and the DSL from
|
|
83
|
-
`packages/sdk/src/checks.ts`, all in
|
|
84
|
-
[pome-sh/digital-twins](https://github.com/pome-sh/digital-twins). Their
|
|
85
|
-
compiled output is inlined here at build time, so this package declares no
|
|
86
|
-
`@pome-sh/*` dependency and there is no second copy to drift.
|
|
87
|
-
|
|
88
|
-
Licence: Apache-2.0.
|
|
37
|
+
| `GITHUB_CHECKS`, `GMAIL_CHECKS`, `LINEAR_CHECKS`, `SLACK_CHECKS`, `STRIPE_CHECKS` | Check declarations for each twin |
|
|
38
|
+
| `TWIN_CHECKS` | Check arrays keyed by twin ID |
|
|
39
|
+
| `CHECKS_TWIN_NAMES`, `ChecksTwinName` | Supported twin IDs and their type |
|
|
40
|
+
| `parse<Twin>Seed`, `<twin>SeedSchema`, `default<Twin>Seed` | Prefixed seed exports |
|
|
41
|
+
| `defineCheck`, `parseCheck`, `renderCheck`, `checkPattern`, `checksDigest` | Core check DSL |
|
|
42
|
+
| `statePath`, `childStatePath`, `templateSlots` | DSL helpers |
|
|
43
|
+
| `GitHubCheck`, `GmailCheck`, `LinearCheck`, `SlackCheck`, `StripeCheck` | Twin-specific check types |
|
|
44
|
+
| `CheckDefinition`, `Check...State` | Generic check and state types |
|
|
45
|
+
| `VACUITY_SENTINEL`, `VACUITY_SENTINEL_NUMBER`, `VACUITY_SENTINEL_SNAKE` | Values that no state can satisfy |
|
|
46
|
+
|
|
47
|
+
`applySeed` and `loadSeedFromEnv` are not exported. They modify runtime state or read process configuration.
|
|
48
|
+
|
|
49
|
+
## Source and packaging
|
|
50
|
+
|
|
51
|
+
The source declarations remain with their owning twins in `packages/twin-*/src/check*.ts`. The DSL source is in [`packages/sdk/src/checks.ts`](../sdk/src/checks.ts).
|
|
52
|
+
|
|
53
|
+
The build bundles those declarations into this package. The published manifest has no runtime `@pome-sh/*` dependencies.
|
|
54
|
+
|
|
55
|
+
Check IDs are public contract values. A renamed ID can stop a criterion from binding without a type error.
|
|
56
|
+
|
|
57
|
+
License: Apache-2.0.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pome-sh/checks",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.2",
|
|
4
4
|
"description": "Pome's grading vocabulary — the check declarations, seed schemas and default seeds of all five digital twins, plus the check DSL they are written in. Declarations only: no twin server, no database, no routes, no tools.",
|
|
5
5
|
"private": false,
|
|
6
6
|
"type": "module",
|