@karmaniverous/jeeves-meta 0.18.0 → 0.20.0-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.
- package/README.md +26 -4
- package/dist/cli/jeeves-meta/index.js +28677 -1420
- package/package.json +22 -16
package/README.md
CHANGED
|
@@ -24,7 +24,7 @@ HTTP service for the Jeeves knowledge synthesis engine. Provides a Fastify API,
|
|
|
24
24
|
- **Config hot-reload** — all synthesis parameters reload without restart; restart-required fields (port, URLs) warn on change
|
|
25
25
|
- **Auto-seed policy** — config-driven declarative `.meta/` creation via `autoSeed` rules
|
|
26
26
|
- **Token tracking** — per-step counts with exponential moving averages
|
|
27
|
-
- **CLI** — `status`, `list`, `detail`, `preview`, `synthesize`, `seed`, `unlock`, `config`, `abort`, `prune
|
|
27
|
+
- **CLI** — `status`, `list`, `detail`, `preview`, `synthesize`, `seed`, `unlock`, `config`, `abort`, `prune` (no API route yet, [#69](https://github.com/karmaniverous/jeeves-meta/issues/69)), `queue`, `service` commands, built on the SDK
|
|
28
28
|
- **Zod schemas** — validated meta.json and config with open schema support
|
|
29
29
|
|
|
30
30
|
## Install
|
|
@@ -57,8 +57,8 @@ jeeves-meta service install --config /path/to/jeeves-meta/config.json
|
|
|
57
57
|
| Method | Path | Description |
|
|
58
58
|
| --- | --- | --- |
|
|
59
59
|
| GET | `/status` | Service health, queue state, dependency checks, phase-state summary |
|
|
60
|
-
| GET | `/metas` | List metas with summary stats and per-meta projection. Response includes `
|
|
61
|
-
| GET | `/metas/:path` | Full detail for a single meta, with optional archive history. Response includes `
|
|
60
|
+
| GET | `/metas` | List metas with summary stats and per-meta projection. Response includes `phaseState` and `owedPhase` per meta. |
|
|
61
|
+
| GET | `/metas/:path` | Full detail for a single meta, with optional archive history. Response includes `phaseState`, `owedPhase` and `crossRefs`. |
|
|
62
62
|
| GET | `/preview` | Dry-run: preview inputs for next synthesis |
|
|
63
63
|
| POST | `/synthesize` | Enqueue synthesis (stalest or specific path) |
|
|
64
64
|
| POST | `/synthesize/abort` | Abort the currently running synthesis |
|
|
@@ -66,9 +66,31 @@ jeeves-meta service install --config /path/to/jeeves-meta/config.json
|
|
|
66
66
|
| POST | `/unlock` | Remove `.lock` file from a meta entity |
|
|
67
67
|
| GET | `/config` | Query sanitized config with optional JSONPath (`?path=$.schedule`) |
|
|
68
68
|
| POST | `/config/apply` | Apply a config patch (merge or replace) |
|
|
69
|
-
| GET | `/queue` | Queue state: current (with phase), overrides, automatic
|
|
69
|
+
| GET | `/queue` | Queue state: `current` (with phase), `pending` overrides, `automatic` candidates |
|
|
70
70
|
| POST | `/queue/clear` | Remove all override queue entries |
|
|
71
71
|
| PATCH | `/metas/:path` | Update user-settable reserved properties (`_steer`, `_emphasis`, `_depth`, `_crossRefs`, `_disabled`) |
|
|
72
|
+
| GET | `/openapi.json` | The OpenAPI 3.1 document of every route above |
|
|
73
|
+
|
|
74
|
+
Every route is defined in `META_CATALOG` (`@karmaniverous/jeeves-meta-core`) and validated against it: a malformed request is answered 400 `FST_ERR_VALIDATION`. Every route except `/config`, `/config/apply` and `/openapi.json` answers 503 `META_NOT_READY` while the service starts. Use [`@karmaniverous/jeeves-meta-sdk`](../sdk/README.md) for a typed client.
|
|
75
|
+
|
|
76
|
+
### Errors
|
|
77
|
+
|
|
78
|
+
Every non-2xx response is Fastify's standard body, `{ statusCode, code?, error, message }`. Branch on `code`:
|
|
79
|
+
|
|
80
|
+
| `code` | Status | When |
|
|
81
|
+
| --- | --- | --- |
|
|
82
|
+
| `META_INVALID_JSONPATH` | 400 | `GET /config?path=` with a JSONPath that cannot be evaluated |
|
|
83
|
+
| `META_NOT_FOUND` | 404 | No meta at the path given to `GET`/`PATCH /metas/:path` or `GET /preview` |
|
|
84
|
+
| `META_ALREADY_EXISTS` | 409 | `POST /seed` where a `.meta/` already exists |
|
|
85
|
+
| `META_NOT_LOCKED` | 409 | `POST /unlock` with no lock file |
|
|
86
|
+
| `META_CONFIG_UNAVAILABLE` | 500 | `POST /config/apply` on a service started without a config file |
|
|
87
|
+
| `META_WATCHER_UNAVAILABLE` | 503 | `GET /metas`, `GET /preview` or `POST /synthesize` could not reach jeeves-watcher; retry later |
|
|
88
|
+
| `META_NOT_READY` | 503 | The service is starting; retry shortly |
|
|
89
|
+
| `FST_ERR_VALIDATION` | 400 | The request failed the route's schema |
|
|
90
|
+
| `JEEVES_CONFIG_INVALID` | 400 | `POST /config/apply`: the merged config is invalid |
|
|
91
|
+
| `JEEVES_RESPONSE_VALIDATION` | 500 | The service's own reply failed its schema (a bug; report it) |
|
|
92
|
+
|
|
93
|
+
An unexpected failure is a 500 with no `code` and a generic message; the cause is in the service log. No response carries `Retry-After`. Upgrading from 0.19: see [Migrating to 0.20](guides/migrating-to-0.20.md).
|
|
72
94
|
|
|
73
95
|
## Configuration
|
|
74
96
|
|