@calliopelabs/cli 3.7.0 → 3.8.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 +13 -0
- package/dist/approvals/request.d.ts.map +1 -1
- package/dist/approvals/request.js +10 -0
- package/dist/approvals/request.js.map +1 -1
- package/dist/auth/chatgpt/fallback.d.ts +31 -0
- package/dist/auth/chatgpt/fallback.d.ts.map +1 -0
- package/dist/auth/chatgpt/fallback.js +111 -0
- package/dist/auth/chatgpt/fallback.js.map +1 -0
- package/dist/auth/chatgpt/index.d.ts +6 -0
- package/dist/auth/chatgpt/index.d.ts.map +1 -0
- package/dist/auth/chatgpt/index.js +6 -0
- package/dist/auth/chatgpt/index.js.map +1 -0
- package/dist/auth/chatgpt/login.d.ts +4 -0
- package/dist/auth/chatgpt/login.d.ts.map +1 -0
- package/dist/auth/chatgpt/login.js +82 -0
- package/dist/auth/chatgpt/login.js.map +1 -0
- package/dist/auth/chatgpt/protocol.d.ts +24 -0
- package/dist/auth/chatgpt/protocol.d.ts.map +1 -0
- package/dist/auth/chatgpt/protocol.js +71 -0
- package/dist/auth/chatgpt/protocol.js.map +1 -0
- package/dist/auth/chatgpt/session.d.ts +24 -0
- package/dist/auth/chatgpt/session.d.ts.map +1 -0
- package/dist/auth/chatgpt/session.js +101 -0
- package/dist/auth/chatgpt/session.js.map +1 -0
- package/dist/auth/chatgpt/store.d.ts +28 -0
- package/dist/auth/chatgpt/store.d.ts.map +1 -0
- package/dist/auth/chatgpt/store.js +75 -0
- package/dist/auth/chatgpt/store.js.map +1 -0
- package/dist/auth/cli.d.ts +2 -0
- package/dist/auth/cli.d.ts.map +1 -0
- package/dist/auth/cli.js +38 -0
- package/dist/auth/cli.js.map +1 -0
- package/dist/auth/index.d.ts +2 -0
- package/dist/auth/index.d.ts.map +1 -0
- package/dist/auth/index.js +2 -0
- package/dist/auth/index.js.map +1 -0
- package/dist/bin.d.ts.map +1 -1
- package/dist/bin.js +25 -0
- package/dist/bin.js.map +1 -1
- package/dist/brain/exchange.d.ts.map +1 -1
- package/dist/brain/exchange.js +3 -1
- package/dist/brain/exchange.js.map +1 -1
- package/dist/brain/kg-export.d.ts +1 -1
- package/dist/brain/kg.d.ts +1 -1
- package/dist/brain/kg.d.ts.map +1 -1
- package/dist/brain/kg.js +3 -1
- package/dist/brain/kg.js.map +1 -1
- package/dist/build-metadata.json +1 -1
- package/dist/config.d.ts +7 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +7 -2
- package/dist/config.js.map +1 -1
- package/dist/delegation/claude.d.ts +28 -0
- package/dist/delegation/claude.d.ts.map +1 -0
- package/dist/delegation/claude.js +107 -0
- package/dist/delegation/claude.js.map +1 -0
- package/dist/delegation/index.d.ts +2 -0
- package/dist/delegation/index.d.ts.map +1 -0
- package/dist/delegation/index.js +2 -0
- package/dist/delegation/index.js.map +1 -0
- package/dist/execution/attribution.d.ts +3 -0
- package/dist/execution/attribution.d.ts.map +1 -1
- package/dist/execution/attribution.js.map +1 -1
- package/dist/execution/delegated.d.ts.map +1 -1
- package/dist/execution/delegated.js +5 -2
- package/dist/execution/delegated.js.map +1 -1
- package/dist/execution/ledger-cli.d.ts.map +1 -1
- package/dist/execution/ledger-cli.js +9 -7
- package/dist/execution/ledger-cli.js.map +1 -1
- package/dist/execution/ledger-server.d.ts +6 -0
- package/dist/execution/ledger-server.d.ts.map +1 -1
- package/dist/execution/ledger-server.js +39 -4
- package/dist/execution/ledger-server.js.map +1 -1
- package/dist/execution/quote.d.ts +1 -1
- package/dist/execution/quote.d.ts.map +1 -1
- package/dist/execution/quote.js +4 -2
- package/dist/execution/quote.js.map +1 -1
- package/dist/execution/remote-ledger.d.ts +7 -0
- package/dist/execution/remote-ledger.d.ts.map +1 -1
- package/dist/execution/remote-ledger.js +22 -5
- package/dist/execution/remote-ledger.js.map +1 -1
- package/dist/health/target.d.ts.map +1 -1
- package/dist/health/target.js +8 -1
- package/dist/health/target.js.map +1 -1
- package/dist/improvement/cli.d.ts +1 -1
- package/dist/improvement/cli.d.ts.map +1 -1
- package/dist/improvement/cli.js +4 -4
- package/dist/improvement/cli.js.map +1 -1
- package/dist/improvement/host-capabilities.d.ts +134 -1
- package/dist/improvement/host-capabilities.d.ts.map +1 -1
- package/dist/improvement/host-capabilities.js +8 -1
- package/dist/improvement/host-capabilities.js.map +1 -1
- package/dist/improvement/index.d.ts +2 -0
- package/dist/improvement/index.d.ts.map +1 -1
- package/dist/improvement/index.js +2 -0
- package/dist/improvement/index.js.map +1 -1
- package/dist/improvement/task-feedback-contract.d.ts +41 -0
- package/dist/improvement/task-feedback-contract.d.ts.map +1 -0
- package/dist/improvement/task-feedback-contract.js +83 -0
- package/dist/improvement/task-feedback-contract.js.map +1 -0
- package/dist/improvement/task-feedback.d.ts +149 -0
- package/dist/improvement/task-feedback.d.ts.map +1 -0
- package/dist/improvement/task-feedback.js +117 -0
- package/dist/improvement/task-feedback.js.map +1 -0
- package/dist/improvement/task-outcomes.d.ts +2 -2
- package/dist/improvement/task-outcomes.d.ts.map +1 -1
- package/dist/improvement/task-outcomes.js +2 -3
- package/dist/improvement/task-outcomes.js.map +1 -1
- package/dist/model-detection.d.ts +0 -5
- package/dist/model-detection.d.ts.map +1 -1
- package/dist/model-detection.js +5 -5
- package/dist/model-detection.js.map +1 -1
- package/dist/orchestration/coordinator-types.d.ts +4 -1
- package/dist/orchestration/coordinator-types.d.ts.map +1 -1
- package/dist/orchestration/execution-journal.d.ts.map +1 -1
- package/dist/orchestration/execution-journal.js +10 -3
- package/dist/orchestration/execution-journal.js.map +1 -1
- package/dist/orchestration/execution.d.ts +3 -1
- package/dist/orchestration/execution.d.ts.map +1 -1
- package/dist/orchestration/execution.js +1 -1
- package/dist/orchestration/execution.js.map +1 -1
- package/dist/orchestration/reviewed-ledger.d.ts +42 -0
- package/dist/orchestration/reviewed-ledger.d.ts.map +1 -1
- package/dist/orchestration/reviewed-ledger.js +51 -9
- package/dist/orchestration/reviewed-ledger.js.map +1 -1
- package/dist/orchestration/routing.d.ts +2 -0
- package/dist/orchestration/routing.d.ts.map +1 -1
- package/dist/orchestration/routing.js +10 -1
- package/dist/orchestration/routing.js.map +1 -1
- package/dist/orchestration/task-configuration.d.ts +8 -0
- package/dist/orchestration/task-configuration.d.ts.map +1 -0
- package/dist/orchestration/task-configuration.js +23 -0
- package/dist/orchestration/task-configuration.js.map +1 -0
- package/dist/providers/chatgpt.d.ts +11 -0
- package/dist/providers/chatgpt.d.ts.map +1 -0
- package/dist/providers/chatgpt.js +156 -0
- package/dist/providers/chatgpt.js.map +1 -0
- package/dist/providers/index.d.ts +0 -5
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +10 -2
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/types.d.ts +5 -0
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/providers/types.js.map +1 -1
- package/dist/runlog.d.ts +1 -1
- package/dist/runlog.d.ts.map +1 -1
- package/dist/runtime/permissions.d.ts.map +1 -1
- package/dist/runtime/permissions.js +1 -0
- package/dist/runtime/permissions.js.map +1 -1
- package/dist/runtime/turn.d.ts.map +1 -1
- package/dist/runtime/turn.js +79 -12
- package/dist/runtime/turn.js.map +1 -1
- package/dist/sessions/execution-binding.d.ts +8 -3
- package/dist/sessions/execution-binding.d.ts.map +1 -1
- package/dist/sessions/execution-binding.js +13 -3
- package/dist/sessions/execution-binding.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/ui/components.d.ts.map +1 -1
- package/dist/ui/components.js +3 -5
- package/dist/ui/components.js.map +1 -1
- package/dist/ui/frame.js +3 -3
- package/dist/ui/frame.js.map +1 -1
- package/dist/ui/modals/tool-output.d.ts.map +1 -1
- package/dist/ui/modals/tool-output.js +5 -6
- package/dist/ui/modals/tool-output.js.map +1 -1
- package/dist/ui/state/use-terminal-width.d.ts.map +1 -1
- package/dist/ui/state/use-terminal-width.js +2 -13
- package/dist/ui/state/use-terminal-width.js.map +1 -1
- package/docs/chatgpt-plan.md +109 -0
- package/docs/claude-plan.md +58 -0
- package/docs/delegation-ledger.md +54 -3
- package/docs/improvement-cycles.md +5 -0
- package/docs/releases/3.8.0.md +65 -0
- package/docs/reviewed-provider-metadata.md +84 -0
- package/docs/task-feedback.md +77 -0
- package/package.json +17 -11
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Calliope CLI 3.8.0
|
|
2
|
+
|
|
3
|
+
This release adds explicit subscription access, native task-bound delegation and
|
|
4
|
+
reviewed feedback. It also tightens reviewed inference authority and reads
|
|
5
|
+
Mimwell portable knowledge graphs.
|
|
6
|
+
|
|
7
|
+
## Experimental subscription access
|
|
8
|
+
|
|
9
|
+
`calliope auth chatgpt login` selects ChatGPT-plan access for the OpenAI provider.
|
|
10
|
+
Account selection, private credential storage, refresh/revocation and live model
|
|
11
|
+
discovery are separate from API-key access. Streamed Responses and tool calls use
|
|
12
|
+
Calliope's existing permission loop. Expired sessions stop; quota exhaustion can
|
|
13
|
+
use an explicitly configured paid API-key fallback. Subscription requests refuse output-token
|
|
14
|
+
and USD enforcement that the service cannot provide; USD totals exclude this
|
|
15
|
+
consumption. See [ChatGPT plan access](../chatgpt-plan.md).
|
|
16
|
+
|
|
17
|
+
Quota and rate-limit circuits persist across processes. Opt-in API-key fallback
|
|
18
|
+
reserves every paid request against a shared project ceiling, preserves public
|
|
19
|
+
conversation/tool context and strips encrypted subscription state. Paid sessions
|
|
20
|
+
stay on their selected model; partial output, cancellation, logout and reviewed
|
|
21
|
+
execution stop automatic transitions. A depleted API account stops without
|
|
22
|
+
retrying or switching back. Missing live/reviewed billing bounds refuse payment.
|
|
23
|
+
|
|
24
|
+
`calliope claude -- <prompt>` delegates a complete session to the installed,
|
|
25
|
+
authenticated official Claude Code CLI. `calliope claude status` checks that local
|
|
26
|
+
setup. Claude owns permissions, tools, sessions and plan usage; Calliope's native
|
|
27
|
+
sandbox and budgets do not govern the delegated session. See
|
|
28
|
+
[local Claude plan delegation](../claude-plan.md).
|
|
29
|
+
|
|
30
|
+
These integrations ship as opt-in experimental features. Tests use synthetic
|
|
31
|
+
authentication and response fixtures; live account eligibility and subscription
|
|
32
|
+
prompt/tool round trips remain unqualified. Complete the user-operated checks in
|
|
33
|
+
the linked guides before relying on either route for unattended work.
|
|
34
|
+
|
|
35
|
+
## Reviewed task authority and feedback
|
|
36
|
+
|
|
37
|
+
Delegated headless and ACP execution can bind to an exact native task attempt,
|
|
38
|
+
including its owner, output cap and original accounting across host restarts.
|
|
39
|
+
Completed or mismatched attempts refuse new inference. Reviewed Smart routing
|
|
40
|
+
pools and provider endpoints now constrain new reservations; an endpoint change
|
|
41
|
+
requires new review, while prior admissions retain replay and settlement.
|
|
42
|
+
See [delegation ledger](../delegation-ledger.md).
|
|
43
|
+
|
|
44
|
+
Version-2 improvement host discovery exposes reviewed task feedback. Receipts bind
|
|
45
|
+
an assessment to the exact observed completed attempt and retain private journal
|
|
46
|
+
evidence. They neither mark a task accepted nor activate a learned policy. See
|
|
47
|
+
[task feedback](../task-feedback.md). External placement and disposable remote
|
|
48
|
+
parent/child acceptance remain tracked in #415; cross-run learned strategy
|
|
49
|
+
selection remains tracked in #413.
|
|
50
|
+
|
|
51
|
+
## Compatibility and runtime
|
|
52
|
+
|
|
53
|
+
- `brain import` accepts `mimwell-kg/v1` alongside existing graph formats; exports
|
|
54
|
+
continue using `calliope-kg/v1`.
|
|
55
|
+
- OpenAI SDK 7 stream capture handling now recognizes delivered completion events.
|
|
56
|
+
Runtime SDKs, Conf, Ink and supporting dependencies are updated; container builds
|
|
57
|
+
include the metadata builder.
|
|
58
|
+
- Node 24 or later is required. The stable ACP wire protocol remains version 1.
|
|
59
|
+
- Mistral/Hugging Face SDK 7 live qualification follow-up remains in #457; xAI is
|
|
60
|
+
explicitly deferred by the existing publication gate.
|
|
61
|
+
|
|
62
|
+
Performance budgets from #210 remain enforced for cold start, keystroke rendering
|
|
63
|
+
and retained-session heap growth. See [performance measurements](../performance.md).
|
|
64
|
+
|
|
65
|
+
Refs: #474, #467, #468, #415, #455, #463, #457.
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
# Reviewed metadata for bounded provider calls
|
|
2
|
+
|
|
3
|
+
Some providers discover model IDs without publishing capabilities, limits or
|
|
4
|
+
prices through their models API. An operator can supply the missing evidence for
|
|
5
|
+
bounded execution in a private billing file. This does not enable Smart routing,
|
|
6
|
+
change a provider/model pin, or add models to discovery. The selected model and
|
|
7
|
+
endpoint must still match recent live discovery.
|
|
8
|
+
|
|
9
|
+
Use `~/.calliope-cli/billing.json` or `CALLIOPE_BILLING_FILE`, outside the worker
|
|
10
|
+
project. Protect it with `chmod 600`. The existing reader rejects aliases,
|
|
11
|
+
symlinks, hardlinks, group/world write access, files over 128 KiB and more than
|
|
12
|
+
64 profiles. Profiles are operator authority; workers must never generate or
|
|
13
|
+
install them from their outputs.
|
|
14
|
+
|
|
15
|
+
```json
|
|
16
|
+
{
|
|
17
|
+
"version": 2,
|
|
18
|
+
"profiles": [{
|
|
19
|
+
"version": 2,
|
|
20
|
+
"provider": "deepseek",
|
|
21
|
+
"model": "<exact live-discovered model ID>",
|
|
22
|
+
"target": "<configured providerTarget(provider).key digest>",
|
|
23
|
+
"checkedAt": 0,
|
|
24
|
+
"expiresAt": 0,
|
|
25
|
+
"sources": ["https://api-docs.deepseek.com/quick_start/pricing/"],
|
|
26
|
+
"prices": {"input": 0, "output": 0},
|
|
27
|
+
"capabilities": {"chat": true, "tools": true, "streaming": true},
|
|
28
|
+
"limits": {"contextLength": 0, "maxOutputTokens": 0},
|
|
29
|
+
"admission": "reviewed-full-context-v1"
|
|
30
|
+
}]
|
|
31
|
+
}
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
The placeholders are intentionally invalid. Set positive token limits from
|
|
35
|
+
current provider documentation and epoch-millisecond timestamps, with expiry at
|
|
36
|
+
most seven days after review. Review the exact endpoint's billing terms: a
|
|
37
|
+
gateway may charge differently from its upstream provider. Prices are USD per
|
|
38
|
+
million tokens and must upper-bound applicable cache, reasoning and time/tier
|
|
39
|
+
rates on the adapter path. URL presence alone does not verify metadata. Include
|
|
40
|
+
no keys, private prompts or response content; source URLs must be HTTPS without
|
|
41
|
+
credentials, queries or fragments. Every configured provider can use this schema;
|
|
42
|
+
the CLI bundles no model or pricing catalogue.
|
|
43
|
+
|
|
44
|
+
## Conservative admission
|
|
45
|
+
|
|
46
|
+
Each request reserves the larger of reviewed and live input capacity, plus its
|
|
47
|
+
requested maximum output. This is a full-capacity allowance, not a tokenizer
|
|
48
|
+
estimate or consumed tokens. A tiny prompt to a large-context model may therefore
|
|
49
|
+
need substantial token headroom before dispatch; do not reduce the reviewed
|
|
50
|
+
capacity to make a budget fit. Successful usage reporting settles the reservation
|
|
51
|
+
to reported usage at the reserved rates. Failures, cancellation and missing usage
|
|
52
|
+
retain the reservation, and overruns stop subsequent requests.
|
|
53
|
+
|
|
54
|
+
The output maximum is the smaller of the reviewed and live limits. Prices use
|
|
55
|
+
the larger rate for each input/output direction. Reviewed capabilities fill only
|
|
56
|
+
unknown live fields; a live rejection always vetoes the request. Unknown required
|
|
57
|
+
capabilities in both sources fail closed. Live routing metadata remains unchanged,
|
|
58
|
+
including unknown prices used by Smart ranking. This profile does not request
|
|
59
|
+
Anthropic token counting, accept supplied input counts or admit multimodal input.
|
|
60
|
+
|
|
61
|
+
The provider/model/endpoint binding, original run/agent/project budgets, policy,
|
|
62
|
+
deadlines and cancellation checks still apply. The profile is re-read before
|
|
63
|
+
reservation and before dispatch; deletion, edits or expiry revoke admission.
|
|
64
|
+
Revocation after a durable reservation retains that reservation conservatively.
|
|
65
|
+
No automatic paid probe or retry can replenish the original allowance.
|
|
66
|
+
|
|
67
|
+
## Versioning and recovery
|
|
68
|
+
|
|
69
|
+
Version-2 billing files can contain these profiles together with unchanged
|
|
70
|
+
[legacy counted profiles](counted-admission.md). Version-1 files retain their
|
|
71
|
+
original format and hashes; no file or historical journal is migrated.
|
|
72
|
+
|
|
73
|
+
New quotes carry `quoteEvidence.version = 2`, including the reviewed profile and
|
|
74
|
+
digest, quote time, live observations and required capabilities. Execution
|
|
75
|
+
reservations carrying that proof use reservation event version 4, also supporting
|
|
76
|
+
existing request attribution. Replay reconstructs the conservative bounds from
|
|
77
|
+
the recorded proof and rejects inconsistent prices, limits or event versions.
|
|
78
|
+
Historical replay checks validity at quote time, without fetching metadata or
|
|
79
|
+
requiring a now-expired profile to be renewed.
|
|
80
|
+
|
|
81
|
+
Ordinary project-capped turns include the same proof in their existing hash-linked
|
|
82
|
+
policy audit event. Execution journals retain it with the reservation. Neither
|
|
83
|
+
contains prompt bytes, tool arguments or credentials. The outer headless JSON
|
|
84
|
+
envelope and existing ledger projections retain their versions.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# Reviewed task feedback
|
|
2
|
+
|
|
3
|
+
Hosts discover this interface explicitly through
|
|
4
|
+
`calliope improve host-capabilities --contract-version 2 --json` or the
|
|
5
|
+
`taskFeedbackCapabilities()` library API. Default/version-1 host discovery and
|
|
6
|
+
the existing execution capability contract retain their original shapes.
|
|
7
|
+
|
|
8
|
+
`recordTaskFeedback` records one native-policy-reviewed assessment of an exact
|
|
9
|
+
completed task attempt. It does not mark the task accepted, change a check,
|
|
10
|
+
allocate execution, award a numeric reward or activate a learned policy. A host's
|
|
11
|
+
claimed user/workflow identity is not independently authenticated by this API.
|
|
12
|
+
The trust boundary is the operator-owned native permission decision and store.
|
|
13
|
+
|
|
14
|
+
```ts
|
|
15
|
+
import {randomUUID} from 'node:crypto';
|
|
16
|
+
import {inspectTaskOutcome, recordTaskFeedback} from
|
|
17
|
+
'@calliopelabs/cli/dist/improvement/index.js';
|
|
18
|
+
|
|
19
|
+
const selection = {taskId, attempt, executionRevision};
|
|
20
|
+
const observation = await inspectTaskOutcome(cwd, runId, selection, options);
|
|
21
|
+
const result = await recordTaskFeedback(cwd, runId, {
|
|
22
|
+
version: 1,
|
|
23
|
+
id: randomUUID(),
|
|
24
|
+
selection,
|
|
25
|
+
observationHash: observation.hash,
|
|
26
|
+
assessment: {decision: 'accepted', reason: 'Reviewed against the requested result.'},
|
|
27
|
+
references: [{kind: 'workflow', id: workflowId, revision: workflowHash}],
|
|
28
|
+
}, options);
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
The caller first presents the native observation and assessment for review.
|
|
32
|
+
The request binds its exact observation hash and execution revision. The shared
|
|
33
|
+
permission resolver applies plan-mode denial, hooks, policy and mutation
|
|
34
|
+
confirmation. Missing confirmation denies by default. An operator may explicitly
|
|
35
|
+
provide the usual native noninteractive permission options; request data cannot
|
|
36
|
+
set its own trust or approval. The writer checks current run approval, ownership,
|
|
37
|
+
revision, retained artifact bytes and accounting again before commit.
|
|
38
|
+
|
|
39
|
+
Requests accept only the versioned identity, assessment and optional declared
|
|
40
|
+
workflow/skill/policy references. Each reference has a bounded ID and immutable
|
|
41
|
+
revision hash. Unknown fields, including reward, cost, check results and trust
|
|
42
|
+
flags, are rejected. The native configuration hash identifies the actual task,
|
|
43
|
+
agent and applied strategy at that attempt, including prior strategy restoration
|
|
44
|
+
after withdrawal. Declared external references are reviewed metadata; they do not
|
|
45
|
+
prove the content of an external workflow or skill.
|
|
46
|
+
|
|
47
|
+
## Persistence and inspection
|
|
48
|
+
|
|
49
|
+
The receipt is a version-12 event in the existing private execution journal.
|
|
50
|
+
Its source includes the native run, manifest, plan, approval, configuration,
|
|
51
|
+
graph, task/start/session and attempt identities. Older journal readers that
|
|
52
|
+
cannot read version 12 must refuse it. The previous journal versions are unchanged.
|
|
53
|
+
At most 64 receipts can be retained in one run, inside the existing journal byte
|
|
54
|
+
limits. Preserve the run when that limit is reached.
|
|
55
|
+
|
|
56
|
+
Identical request IDs and payloads return the same receipt after rechecking
|
|
57
|
+
native permission. Changed payloads cannot reuse an ID. A lost acknowledgement
|
|
58
|
+
does not append another event, reset the original clock or alter reservations.
|
|
59
|
+
|
|
60
|
+
`taskFeedbackHistory(cwd, runId, options)` returns recorded receipt history, with
|
|
61
|
+
an explicit notice that its outcome evidence has not been revalidated.
|
|
62
|
+
`inspectTaskFeedback(cwd, runId, feedbackId, options)` reuses `inspectTaskOutcome`
|
|
63
|
+
to verify native evidence and derive current checks, duration and accounting.
|
|
64
|
+
An active coordinator or altered artifact refuses inspection. A later native
|
|
65
|
+
outcome change, including explicit task acceptance, marks the old assessment
|
|
66
|
+
`stale`. Late billing settlement updates the observed accounting without
|
|
67
|
+
rewriting the assessment or converting unknown costs to zero.
|
|
68
|
+
|
|
69
|
+
Both inspection APIs return `{data, redacted}`. Known credentials are rejected
|
|
70
|
+
on write. Read-time redaction also protects strings that later become configured
|
|
71
|
+
credentials; redacted display data is not a byte-for-byte copy of the retained
|
|
72
|
+
receipt. No raw worker prose, tool logs or artifact contents are imported into
|
|
73
|
+
the assessment record.
|
|
74
|
+
|
|
75
|
+
Cross-run learned strategy selection, training data admission, reward weighting,
|
|
76
|
+
baseline/held-out evaluation and candidate activation/withdrawal remain separate
|
|
77
|
+
work under #413. This receipt API does not claim those capabilities.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@calliopelabs/cli",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.8.0",
|
|
4
4
|
"description": "The private-AI agent CLI - one terminal agent for any model backend, including the ones you run yourself",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai",
|
|
@@ -34,14 +34,19 @@
|
|
|
34
34
|
"files": [
|
|
35
35
|
"dist",
|
|
36
36
|
"README.md",
|
|
37
|
+
"docs/claude-plan.md",
|
|
37
38
|
"scripts/verify-runlog.mjs",
|
|
38
39
|
"docs/migration-*.md",
|
|
39
40
|
"docs/migration-example-*.json",
|
|
40
41
|
"docs/delegation-ledger.md",
|
|
41
42
|
"docs/improvement-cycles.md",
|
|
43
|
+
"docs/task-feedback.md",
|
|
42
44
|
"docs/acp.md",
|
|
43
45
|
"docs/releases/3.7.0.md",
|
|
44
|
-
"docs/releases/3.6.0.md"
|
|
46
|
+
"docs/releases/3.6.0.md",
|
|
47
|
+
"docs/chatgpt-plan.md",
|
|
48
|
+
"docs/releases/3.8.0.md",
|
|
49
|
+
"docs/reviewed-provider-metadata.md"
|
|
45
50
|
],
|
|
46
51
|
"scripts": {
|
|
47
52
|
"build": "tsc && node scripts/build-metadata.mjs && chmod +x dist/bin.js",
|
|
@@ -66,21 +71,22 @@
|
|
|
66
71
|
"capture:semantics": "npm run build && node scripts/conformance/capture-semantic.mjs"
|
|
67
72
|
},
|
|
68
73
|
"dependencies": {
|
|
69
|
-
"@agentclientprotocol/sdk": "2.0
|
|
70
|
-
"@anthropic-ai/sdk": "
|
|
71
|
-
"@aws-sdk/credential-provider-ini": "3.973.
|
|
72
|
-
"@aws-sdk/credential-provider-node": "3.972.
|
|
74
|
+
"@agentclientprotocol/sdk": "2.2.0",
|
|
75
|
+
"@anthropic-ai/sdk": "1.3.0",
|
|
76
|
+
"@aws-sdk/credential-provider-ini": "3.973.24",
|
|
77
|
+
"@aws-sdk/credential-provider-node": "3.972.91",
|
|
73
78
|
"@google/genai": "^2.22.0",
|
|
74
79
|
"@inquirer/prompts": "^8.5.2",
|
|
75
|
-
"conf": "
|
|
76
|
-
"ink": "
|
|
77
|
-
"
|
|
80
|
+
"conf": "16.0.0",
|
|
81
|
+
"ink": "8.0.0",
|
|
82
|
+
"jose": "6.2.15",
|
|
83
|
+
"openai": "7.43.0",
|
|
78
84
|
"react": "^19.2.3",
|
|
79
|
-
"sql.js": "1.15.
|
|
85
|
+
"sql.js": "1.15.2",
|
|
80
86
|
"string-width": "8.3.0",
|
|
81
87
|
"ws": "8.22.0",
|
|
82
88
|
"yaml": "^2.8.2",
|
|
83
|
-
"zod": "4.6.
|
|
89
|
+
"zod": "4.6.7"
|
|
84
90
|
},
|
|
85
91
|
"devDependencies": {
|
|
86
92
|
"@types/node": "^26.1.1",
|