@oneharness/sdk 0.12.0 → 0.12.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.
@@ -127,8 +127,9 @@ export type ExecutionTelemetry = {
127
127
  *
128
128
  * - **Tool events.** A recorded tool call is the harness acting on the task.
129
129
  * - **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition
130
- * `signals::record_reports_work` classifies a raw harness record with, so the
131
- * two readings of "billed" are one contract with one implementation.
130
+ * `signals::record_work_evidence` reads a raw harness record with, and it answers
131
+ * in this same type, so the two readings of "billed" are one contract with one
132
+ * implementation.
132
133
  *
133
134
  * It is also a **published reading**, not only an internal one: a run that
134
135
  * failed with nothing to classify carries it as [`RunResult::work`] and in its
@@ -324,13 +325,16 @@ export interface FallbackReport {
324
325
  * [`RunResult::work`] read [`RunWork::None`] on a failure no classifier
325
326
  * recognized.
326
327
  *
327
- * The chain still stops there, deliberately: re-running a task that may
328
- * genuinely have failed for free would burn the next identity's quota on
329
- * the same failure, which is worse than stopping (see
328
+ * The chain still stops there, deliberately — decided, not inherited:
329
+ * empty accounting is the absence of work evidence, not proof nothing was
330
+ * spent, so handing the candidate on could bill a task twice (the decision
331
+ * and its reasoning are stated once, at
330
332
  * [`crate::domain::fallback::startup_failure_reason`]). What this flag adds
331
333
  * is the *attribution* — without it a candidate that never got started reads
332
334
  * in the report exactly like one that tried the task and failed it, and the
333
- * remaining candidates look untried for a reason nobody can name.
335
+ * remaining candidates look untried for a reason nobody can name — and the
336
+ * failure summary carries the candidate's own words beside it, so the
337
+ * reader left holding that one line can act on the cause.
334
338
  *
335
339
  * `false` whenever `ran` is `null` (no candidate ran at all — every one is
336
340
  * in `fell_through`, each with its reason).
@@ -377,8 +377,9 @@ export type PermissionMode = "read-only" | "plan" | "default" | "edit" | "auto"
377
377
  *
378
378
  * - **Tool events.** A recorded tool call is the harness acting on the task.
379
379
  * - **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition
380
- * `signals::record_reports_work` classifies a raw harness record with, so the
381
- * two readings of "billed" are one contract with one implementation.
380
+ * `signals::record_work_evidence` reads a raw harness record with, and it answers
381
+ * in this same type, so the two readings of "billed" are one contract with one
382
+ * implementation.
382
383
  *
383
384
  * It is also a **published reading**, not only an internal one: a run that
384
385
  * failed with nothing to classify carries it as [`RunResult::work`] and in its
@@ -1279,8 +1279,9 @@ export type Status = "ok" | "nonzero" | "timeout" | "cancelled" | "spawn-error"
1279
1279
  *
1280
1280
  * - **Tool events.** A recorded tool call is the harness acting on the task.
1281
1281
  * - **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition
1282
- * `signals::record_reports_work` classifies a raw harness record with, so the
1283
- * two readings of "billed" are one contract with one implementation.
1282
+ * `signals::record_work_evidence` reads a raw harness record with, and it answers
1283
+ * in this same type, so the two readings of "billed" are one contract with one
1284
+ * implementation.
1284
1285
  *
1285
1286
  * It is also a **published reading**, not only an internal one: a run that
1286
1287
  * failed with nothing to classify carries it as [`RunResult::work`] and in its
@@ -1350,8 +1350,9 @@ export type Status = "ok" | "nonzero" | "timeout" | "cancelled" | "spawn-error"
1350
1350
  *
1351
1351
  * - **Tool events.** A recorded tool call is the harness acting on the task.
1352
1352
  * - **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition
1353
- * `signals::record_reports_work` classifies a raw harness record with, so the
1354
- * two readings of "billed" are one contract with one implementation.
1353
+ * `signals::record_work_evidence` reads a raw harness record with, and it answers
1354
+ * in this same type, so the two readings of "billed" are one contract with one
1355
+ * implementation.
1355
1356
  *
1356
1357
  * It is also a **published reading**, not only an internal one: a run that
1357
1358
  * failed with nothing to classify carries it as [`RunResult::work`] and in its
@@ -1336,8 +1336,9 @@ export type Status = "ok" | "nonzero" | "timeout" | "cancelled" | "spawn-error"
1336
1336
  *
1337
1337
  * - **Tool events.** A recorded tool call is the harness acting on the task.
1338
1338
  * - **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition
1339
- * `signals::record_reports_work` classifies a raw harness record with, so the
1340
- * two readings of "billed" are one contract with one implementation.
1339
+ * `signals::record_work_evidence` reads a raw harness record with, and it answers
1340
+ * in this same type, so the two readings of "billed" are one contract with one
1341
+ * implementation.
1341
1342
  *
1342
1343
  * It is also a **published reading**, not only an internal one: a run that
1343
1344
  * failed with nothing to classify carries it as [`RunResult::work`] and in its
@@ -144,8 +144,9 @@ export type ExecutionTelemetry = {
144
144
  *
145
145
  * - **Tool events.** A recorded tool call is the harness acting on the task.
146
146
  * - **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition
147
- * `signals::record_reports_work` classifies a raw harness record with, so the
148
- * two readings of "billed" are one contract with one implementation.
147
+ * `signals::record_work_evidence` reads a raw harness record with, and it answers
148
+ * in this same type, so the two readings of "billed" are one contract with one
149
+ * implementation.
149
150
  *
150
151
  * It is also a **published reading**, not only an internal one: a run that
151
152
  * failed with nothing to classify carries it as [`RunResult::work`] and in its
@@ -398,13 +399,16 @@ export interface FallbackReport {
398
399
  * [`RunResult::work`] read [`RunWork::None`] on a failure no classifier
399
400
  * recognized.
400
401
  *
401
- * The chain still stops there, deliberately: re-running a task that may
402
- * genuinely have failed for free would burn the next identity's quota on
403
- * the same failure, which is worse than stopping (see
402
+ * The chain still stops there, deliberately — decided, not inherited:
403
+ * empty accounting is the absence of work evidence, not proof nothing was
404
+ * spent, so handing the candidate on could bill a task twice (the decision
405
+ * and its reasoning are stated once, at
404
406
  * [`crate::domain::fallback::startup_failure_reason`]). What this flag adds
405
407
  * is the *attribution* — without it a candidate that never got started reads
406
408
  * in the report exactly like one that tried the task and failed it, and the
407
- * remaining candidates look untried for a reason nobody can name.
409
+ * remaining candidates look untried for a reason nobody can name — and the
410
+ * failure summary carries the candidate's own words beside it, so the
411
+ * reader left holding that one line can act on the cause.
408
412
  *
409
413
  * `false` whenever `ran` is `null` (no candidate ran at all — every one is
410
414
  * in `fell_through`, each with its reason).
@@ -1945,7 +1945,7 @@
1945
1945
  ]
1946
1946
  },
1947
1947
  "stopped_without_work": {
1948
- "description": "Whether the candidate named by `ran` stopped the chain **having shown no\nevidence it did the task's work, and with nothing to say why** — its\n[`RunResult::work`] read [`RunWork::None`] on a failure no classifier\nrecognized.\n\nThe chain still stops there, deliberately: re-running a task that may\ngenuinely have failed for free would burn the next identity's quota on\nthe same failure, which is worse than stopping (see\n[`crate::domain::fallback::startup_failure_reason`]). What this flag adds\nis the *attribution* — without it a candidate that never got started reads\nin the report exactly like one that tried the task and failed it, and the\nremaining candidates look untried for a reason nobody can name.\n\n`false` whenever `ran` is `null` (no candidate ran at all — every one is\nin `fell_through`, each with its reason).",
1948
+ "description": "Whether the candidate named by `ran` stopped the chain **having shown no\nevidence it did the task's work, and with nothing to say why** — its\n[`RunResult::work`] read [`RunWork::None`] on a failure no classifier\nrecognized.\n\nThe chain still stops there, deliberately — decided, not inherited:\nempty accounting is the absence of work evidence, not proof nothing was\nspent, so handing the candidate on could bill a task twice (the decision\nand its reasoning are stated once, at\n[`crate::domain::fallback::startup_failure_reason`]). What this flag adds\nis the *attribution* — without it a candidate that never got started reads\nin the report exactly like one that tried the task and failed it, and the\nremaining candidates look untried for a reason nobody can name — and the\nfailure summary carries the candidate's own words beside it, so the\nreader left holding that one line can act on the cause.\n\n`false` whenever `ran` is `null` (no candidate ran at all — every one is\nin `fell_through`, each with its reason).",
1949
1949
  "type": "boolean",
1950
1950
  "default": false
1951
1951
  }
@@ -2257,7 +2257,7 @@
2257
2257
  ]
2258
2258
  },
2259
2259
  "RunWork": {
2260
- "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_reports_work` classifies a raw harness record with, so the\n two readings of \"billed\" are one contract with one implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
2260
+ "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_work_evidence` reads a raw harness record with, and it answers\n in this same type, so the two readings of \"billed\" are one contract with one\n implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
2261
2261
  "oneOf": [
2262
2262
  {
2263
2263
  "description": "The candidate ran the task, whatever its terminal record then said.",
@@ -3016,7 +3016,7 @@
3016
3016
  ]
3017
3017
  },
3018
3018
  "stopped_without_work": {
3019
- "description": "Whether the candidate named by `ran` stopped the chain **having shown no\nevidence it did the task's work, and with nothing to say why** — its\n[`RunResult::work`] read [`RunWork::None`] on a failure no classifier\nrecognized.\n\nThe chain still stops there, deliberately: re-running a task that may\ngenuinely have failed for free would burn the next identity's quota on\nthe same failure, which is worse than stopping (see\n[`crate::domain::fallback::startup_failure_reason`]). What this flag adds\nis the *attribution* — without it a candidate that never got started reads\nin the report exactly like one that tried the task and failed it, and the\nremaining candidates look untried for a reason nobody can name.\n\n`false` whenever `ran` is `null` (no candidate ran at all — every one is\nin `fell_through`, each with its reason).",
3019
+ "description": "Whether the candidate named by `ran` stopped the chain **having shown no\nevidence it did the task's work, and with nothing to say why** — its\n[`RunResult::work`] read [`RunWork::None`] on a failure no classifier\nrecognized.\n\nThe chain still stops there, deliberately — decided, not inherited:\nempty accounting is the absence of work evidence, not proof nothing was\nspent, so handing the candidate on could bill a task twice (the decision\nand its reasoning are stated once, at\n[`crate::domain::fallback::startup_failure_reason`]). What this flag adds\nis the *attribution* — without it a candidate that never got started reads\nin the report exactly like one that tried the task and failed it, and the\nremaining candidates look untried for a reason nobody can name — and the\nfailure summary carries the candidate's own words beside it, so the\nreader left holding that one line can act on the cause.\n\n`false` whenever `ran` is `null` (no candidate ran at all — every one is\nin `fell_through`, each with its reason).",
3020
3020
  "type": "boolean",
3021
3021
  "default": false
3022
3022
  }
@@ -3492,7 +3492,7 @@
3492
3492
  ]
3493
3493
  },
3494
3494
  "RunWork": {
3495
- "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_reports_work` classifies a raw harness record with, so the\n two readings of \"billed\" are one contract with one implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
3495
+ "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_work_evidence` reads a raw harness record with, and it answers\n in this same type, so the two readings of \"billed\" are one contract with one\n implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
3496
3496
  "oneOf": [
3497
3497
  {
3498
3498
  "description": "The candidate ran the task, whatever its terminal record then said.",
@@ -5955,7 +5955,7 @@
5955
5955
  ]
5956
5956
  },
5957
5957
  "RunWork": {
5958
- "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_reports_work` classifies a raw harness record with, so the\n two readings of \"billed\" are one contract with one implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
5958
+ "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_work_evidence` reads a raw harness record with, and it answers\n in this same type, so the two readings of \"billed\" are one contract with one\n implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
5959
5959
  "oneOf": [
5960
5960
  {
5961
5961
  "description": "The candidate ran the task, whatever its terminal record then said.",
@@ -8903,7 +8903,7 @@
8903
8903
  ]
8904
8904
  },
8905
8905
  "RunWork": {
8906
- "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_reports_work` classifies a raw harness record with, so the\n two readings of \"billed\" are one contract with one implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
8906
+ "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_work_evidence` reads a raw harness record with, and it answers\n in this same type, so the two readings of \"billed\" are one contract with one\n implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
8907
8907
  "oneOf": [
8908
8908
  {
8909
8909
  "description": "The candidate ran the task, whatever its terminal record then said.",
@@ -12003,7 +12003,7 @@
12003
12003
  ]
12004
12004
  },
12005
12005
  "RunWork": {
12006
- "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_reports_work` classifies a raw harness record with, so the\n two readings of \"billed\" are one contract with one implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
12006
+ "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_work_evidence` reads a raw harness record with, and it answers\n in this same type, so the two readings of \"billed\" are one contract with one\n implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
12007
12007
  "oneOf": [
12008
12008
  {
12009
12009
  "description": "The candidate ran the task, whatever its terminal record then said.",
@@ -14957,7 +14957,7 @@
14957
14957
  ]
14958
14958
  },
14959
14959
  "RunWork": {
14960
- "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_reports_work` classifies a raw harness record with, so the\n two readings of \"billed\" are one contract with one implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
14960
+ "description": "Whether a candidate's normalized result carries **evidence it did the task's\nwork** — the first thing [`startup_failure_reason`] consults.\n\nTwo independent witnesses, either of which is decisive:\n\n- **Tool events.** A recorded tool call is the harness acting on the task.\n- **Usage accounting.** [`Usage::reports_billed_work`][billed] — the same definition\n `signals::record_work_evidence` reads a raw harness record with, and it answers\n in this same type, so the two readings of \"billed\" are one contract with one\n implementation.\n\nIt is also a **published reading**, not only an internal one: a run that\nfailed with nothing to classify carries it as [`RunResult::work`] and in its\nhistory record, because there the question \"did this candidate do anything?\"\nis the only one left. One type for both, so the value a reader sees is the\nsame value the fall-through verdict consulted.\n\n[billed]: crate::domain::signals::Usage::reports_billed_work",
14961
14961
  "oneOf": [
14962
14962
  {
14963
14963
  "description": "The candidate ran the task, whatever its terminal record then said.",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@oneharness/sdk",
3
- "version": "0.12.0",
3
+ "version": "0.12.2",
4
4
  "description": "Typed Node.js SDK for oneharness",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -19,7 +19,7 @@
19
19
  "node": ">=20"
20
20
  },
21
21
  "dependencies": {
22
- "oneharness-cli": "0.12.0",
22
+ "oneharness-cli": "0.12.2",
23
23
  "zod": "^4.4.3"
24
24
  }
25
25
  }