carthagent 1.1.0-beta.2 → 1.1.0-beta.4

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.
@@ -0,0 +1,79 @@
1
+ # Beta.2 release acceptance
2
+
3
+ November 2, 2026. Immutable tag `v1.1.0-beta.2` points to
4
+ `e14aeb17c213a927a27e9522da65db5928219647`.
5
+
6
+ ## Completed
7
+
8
+ - Native onboarding PR #238 and first-task guidance PR #239 merged. Release PR
9
+ #240 merged with tag ancestry preserved at `fc5382364f41b1563ed137ed0db0c5711e041a83`.
10
+ - Five-platform prebuild [41505735348](https://github.com/B-icy/Carthagent/actions/runs/41505735348)
11
+ passed. Local manifest regeneration verified all archive/executable hashes and
12
+ embedded provenance against the pinned runtime recipe.
13
+ - Release CI [41509102387](https://github.com/B-icy/Carthagent/actions/runs/41509102387)
14
+ passed across Linux, macOS and Windows, including installed-package acceptance.
15
+ - Final draft acceptance [41511681097](https://github.com/B-icy/Carthagent/actions/runs/41511681097)
16
+ passed against the exact tag, assets and main ancestry.
17
+ - GitHub prerelease is public with five runtime archives, the manifest and
18
+ combined checksums. Independent anonymous verification of all five public
19
+ archives passed.
20
+ - Release workflow [41512736590](https://github.com/B-icy/Carthagent/actions/runs/41512736590)
21
+ passed anonymous installed-package acceptance and reports successful npm
22
+ publication with signed provenance (transparency log index 3648230788).
23
+ - Backend onboarding #178 and retention reporting #179 are deployed. Live
24
+ authenticated account identity and read-only plan terms were verified earlier.
25
+
26
+ ## npm publication verified
27
+
28
+ After the workflow reported `+ carthagent@1.1.0-beta.2`, public registry requests
29
+ from the acceptance environment still returned 404 for that exact version.
30
+ Both npm CLI and cache-bypassed package metadata initially reported
31
+ `next=1.1.0-beta.1`, `latest=1.0.7`. Registry visibility subsequently converged;
32
+ no repeat publication was attempted.
33
+
34
+ The public beta.2 tarball's SHA-512 matches registry integrity and the provenance
35
+ subject digest. Sigstore verification passed for the GitHub Actions issuer and
36
+ the repository's `release.yml@refs/heads/main` identity. The statement identifies
37
+ release workflow 41512736590, and package `gitHead` matches the immutable tag.
38
+ Verified tags: `next=1.1.0-beta.2`, `latest=1.0.7`.
39
+ Evidence: `/tmp/opencode/beta2-npm-acceptance.json`.
40
+
41
+ ## Installed update verified
42
+
43
+ The website command `npm install -g carthagent@next` installed beta.2 into an
44
+ isolated Linux x64 home/prefix. Default runtime acquisition resolved the pinned
45
+ CTG-owned executable with SHA-256
46
+ `8a34735274c0b62049f6ae882dc955016fde54458efc18822fbcedb2e8eddeda`.
47
+ The beta update check reported the installed version as current.
48
+ Evidence: `/tmp/opencode/beta2-clean-install-acceptance.json`.
49
+
50
+ An isolated npm installation of beta.1 detected beta.2 with
51
+ `ctg update --channel beta --check`. Running `ctg update --channel beta` upgraded
52
+ it to beta.2; a profile sentinel remained byte-for-byte intact. This used a
53
+ disposable home and global npm prefix, not the user's normal installation.
54
+ Evidence: `/tmp/opencode/beta2-update-acceptance.json`.
55
+
56
+ ## Remaining acceptance
57
+
58
+ Stripe sandbox access subsequently became available. Real purchases, upgrades,
59
+ SCA, renewal, failed renewal and cancellation were exercised separately against
60
+ the isolated backend (see backend `docs/stripe-sandbox-acceptance.md`).
61
+
62
+ An isolated published beta.2 login connected the authorized existing Cloud account.
63
+ A real range-fix task passed four independent tests. Continuing that same session
64
+ hit its persistent elapsed-time budget; beta.2 showed only an unexplained interrupt.
65
+ The follow-up source fix adds actionable budget diagnostics and explicit
66
+ `--reset-budget` support. With that source launcher and the same installed runtime,
67
+ profile and session, continuation added an ascending-across-zero regression and
68
+ passed all five independent tests. This launcher fix is not part of immutable beta.2.
69
+ Execution budgets are not billing credit and never reset on payment or ordinary
70
+ continuation. Evidence: `/tmp/opencode/stripe-acceptance/live-continuation-fixed.log`.
71
+
72
+ Full task continuation across a genuine payment boundary remains incomplete:
73
+ the real model task used existing Cloud credit and sandbox payments used a separate
74
+ backend without a model upstream. Screenshot approval is not claimed. Local terminal timing failures
75
+ were followed by passing full local, CI and draft acceptance; this does not prove
76
+ that every terminal timing issue is resolved.
77
+
78
+ The normal installed profile and Invest-With-Friends files were not changed by
79
+ these release checks. Stable npm `latest` remains 1.0.7.
@@ -0,0 +1,75 @@
1
+ # Beta.3 release acceptance
2
+
3
+ November 2, 2026. Immutable tag `v1.1.0-beta.3` resolves to
4
+ `ee2fa3f039c296aa4ca613c474eb460e27a23ff2`. Release PR #243 merged at
5
+ `0964ce7331eb749183131d6031823137d068afa9`, preserving tag ancestry.
6
+
7
+ ## Verified release gates
8
+
9
+ - Five-platform prebuild [41537249365](https://github.com/B-icy/Carthagent/actions/runs/41537249365)
10
+ passed from reviewed main `c11103f8b57c6b3254473a78d535a404bea9a84a`.
11
+ Local regeneration verified archive/executable hashes and embedded provenance;
12
+ the candidate, packaged and uploaded manifests match exactly.
13
+ - Local quality passed lint/build and 1,132 tests, five skipped. An initial run
14
+ before candidate installation correctly rejected the temporary package/manifest
15
+ version mismatch.
16
+ - PR CI [41539253388](https://github.com/B-icy/Carthagent/actions/runs/41539253388)
17
+ passed on attempt 2 across Linux, macOS and Windows, browser and package gates.
18
+ Initial failed jobs ran before draft asset uploads completed.
19
+ - Local installed-package acceptance passed all 28 probes/scenarios with the
20
+ default isolated acquisition path. Earlier local acquisition attempts used an
21
+ unsupported `gh auth token` command; the acceptance shell was corrected to use
22
+ this older CLI's supported credential lookup. No product workaround was used.
23
+ - Final draft acceptance [41541394653](https://github.com/B-icy/Carthagent/actions/runs/41541394653)
24
+ passed against the immutable tag, assets and main ancestry.
25
+ - The GitHub prerelease is public. Anonymous downloads of all five archives
26
+ matched the packaged checksums.
27
+ - Release workflow [41542206810](https://github.com/B-icy/Carthagent/actions/runs/41542206810)
28
+ passed anonymous installed-package acceptance and reported npm publication
29
+ with signed provenance (transparency log index 3652108243).
30
+
31
+ ## Public npm availability
32
+
33
+ The first public exact-version requests returned 404 after the workflow reported
34
+ successful publication. Registry visibility subsequently converged without repeat
35
+ publication. Verified tags are `next=1.1.0-beta.3`, `latest=1.0.7`.
36
+
37
+ The public tarball's SHA-512 matches npm integrity and the provenance subject.
38
+ Sigstore verification passed for the GitHub Actions issuer and repository
39
+ `release.yml@refs/heads/main` identity. The statement identifies workflow
40
+ 41542206810; package `gitHead` equals the immutable tag. Private receipt:
41
+ `/tmp/opencode/beta3-npm-acceptance.json`.
42
+
43
+ ## Public install and update
44
+
45
+ `npm install -g carthagent@next` installed beta.3 into a disposable Linux x64
46
+ profile. A separate beta.2 installation detected and upgraded to beta.3 using
47
+ `ctg update --channel beta`. Both acquired the CTG-owned runtime with executable
48
+ SHA-256 `f9ad13d8aad76bf1d16334712f0060b886757f5cdabddacce42f9805d4482c1c`,
49
+ preserved profile sentinels, displayed `--reset-budget` and billing-refresh help,
50
+ and reported beta.3 as current. Private receipt:
51
+ `/tmp/opencode/beta3-public-acceptance/evidence.json`.
52
+
53
+ The continuation-budget regression passed when run from the publicly installed
54
+ package: exhausted continuation reports the reason, ordinary continuation does
55
+ not reset/retry, and explicit reset targets the same session before prompting.
56
+ This is an offline regression, not another real-model/payment journey.
57
+
58
+ The first public-install script used an overly literal help assertion expecting
59
+ `billing refresh`; actual help correctly lists `billing [checkout|portal|refresh]`.
60
+ The assertion was corrected and both complete install/update scenarios passed.
61
+
62
+ ## Journey evidence and boundary
63
+
64
+ Backend PRs #180–181 are deployed. Fresh sandbox evidence covers automatic
65
+ partial-refund revocation, initial and upgrade 3DS2, declined-upgrade recovery on
66
+ the same invoice and preserved renewal anchors. Scheduled cancellation retains
67
+ paid access and displays the end date accurately. Backend PR #182 records these
68
+ results in `docs/stripe-sandbox-acceptance.md`.
69
+
70
+ The real production Cloud task and exact-session continuation with the source
71
+ launcher passed five independent project tests. A single task crossing a real
72
+ payment boundary remains unverified: model execution used production credit,
73
+ while payments used the isolated sandbox without a model upstream.
74
+
75
+ Normal installed profile and Invest-With-Friends work were preserved.
@@ -0,0 +1,135 @@
1
+ # Cloud fresh-install acceptance (in progress)
2
+
3
+ ## Public installed baseline
4
+
5
+ On November 3, 2026, the normal global `carthagent@1.1.0-beta.2` installation
6
+ was uninstalled. Absence of `ctg` on PATH was verified, then
7
+ `npm install -g carthagent@next` installed public `1.1.0-beta.3`.
8
+
9
+ The normal profile was moved out before installation. A real tmux terminal
10
+ running bare `ctg` showed no selected provider and only a generic connection
11
+ action. `/login` put Cloud under Services, after OpenAI, Anthropic and Gemini.
12
+
13
+ ## Restart and backup incident
14
+
15
+ The original profile was moved to a private directory under `/tmp/opencode`,
16
+ which was erased during the harness/server restart. This was an inadequate
17
+ backup location. The original normal profile has not been recovered. The
18
+ Invest-With-Friends workspace and its `.harness` directory still exist; they
19
+ were not moved or edited by the reinstall. Separate older native test profiles
20
+ survive but are not replacements for the lost normal profile.
21
+
22
+ Subsequent acceptance state is stored in a private durable directory under
23
+ `~/.local/share/carthagent-acceptance/`. The public beta installation and source
24
+ changes survived. The old isolated payment sandbox, local receipts and disposable
25
+ task under `/tmp/opencode` did not. Previously committed acceptance documents
26
+ remain the record of those earlier runs.
27
+
28
+ ## Candidate changes
29
+
30
+ - Home names Carthagent Cloud and offers direct sign-in when no model is selected.
31
+ - The connection picker lists Cloud first, under Recommended.
32
+ - `/login` targets Cloud; `/connect` retains the provider picker.
33
+ - Terminal `ctg login` accepts Enter for its displayed recommended default.
34
+
35
+ ## Candidate validation
36
+
37
+ The Linux candidate was compiled from pinned upstream source
38
+ `843a6c514e606b436a7fe713422ace0a93ad3d61` and combined-v6 patch
39
+ `31e15c7f92f82177bf1b6106732926951c4d751bde36b61f3e1e283818ea5631`.
40
+ Its executable SHA-256 is
41
+ `c35f0d340b9f38e30daf5ad78c945e46e90b1d2470241033cdd4e7b8271aa346`.
42
+ The patch applies cleanly to the pinned upstream tree.
43
+
44
+ Real tmux launches at 110 and 60 columns visibly show the Cloud action.
45
+ `/login` goes directly to Cloud device authorization. `/connect` lists Cloud
46
+ first under Recommended. Terminal `ctg login` lists Cloud first and pressing
47
+ Enter starts its authorization. Email authorization completed and the model
48
+ became available without manual provider configuration.
49
+
50
+ The runtime TUI typecheck, 11 integration-dialog tests, two narrow/wide
51
+ onboarding render tests, native plugin typecheck and launcher tests pass.
52
+ The full quality gate passes with 1,133 tests passing and five skipped, including
53
+ the additional headless-continuation fixes. The focused CLI/provider suite passes
54
+ 59/59, including foreign-workspace rejection before a headless model switch.
55
+
56
+ ## Combined real-model / Stripe-test journey
57
+
58
+ The durable isolated backend uses the real Cloud control plane, gateway and
59
+ ledger, a real OpenRouter model upstream, and Stripe test-mode Checkout and
60
+ signed webhooks. This is not production-upstream acceptance. Neither prices
61
+ nor usage consumption were mocked to cross the payment boundary.
62
+
63
+ Session `ses_e60d2dab0ffe6wz3L7236pcXer` started a Node.js streaming CSV expense
64
+ report CLI task. Eleven real Sonnet requests consumed $0.664548 of its $1
65
+ starter grant. A subsequent request received `provider.quota` / HTTP 429:
66
+ the remaining $0.335452 could not cover its required reservation. Nine files,
67
+ including source, tests and delivery evidence, were preserved and hashed.
68
+
69
+ Builder Checkout displayed $1 due today, then $10/month. One test-card payment
70
+ completed and signed `checkout.session.completed` and `invoice.paid` events
71
+ activated Builder. The task remained idle, all nine hashes stayed identical,
72
+ and request count remained 11 until explicit continuation after `billing refresh`.
73
+ The same session then made new real model calls using paid allowance.
74
+
75
+ Sonnet hit Builder's $0.50 daily reservation limit, so the same test subscription
76
+ was upgraded to Max through the ordinary confirmation page. The $49 prorated
77
+ test charge activated Max, retained the December 3 renewal date and preserved
78
+ consumption. Sonnet later hit Max's reservation ceiling too; a lower-cost real
79
+ DeepSeek V3.2 model was added to the sandbox to finish the existing task without
80
+ altering allowances or resetting consumed usage.
81
+
82
+ This uncovered two launcher defects addressed in this branch:
83
+
84
+ - Explicit headless `--session ... --model ...` must switch the existing
85
+ session model before submitting the continuation, just as the TUI path does.
86
+ - A fixed two-minute transport observation timeout interrupted useful tasks
87
+ despite a larger session execution budget. The launcher now allows at least
88
+ 30 minutes of observation, extending it for a larger explicit time budget.
89
+ Persistent host execution budgets still apply; `--reset-budget` is explicit.
90
+
91
+ ## Task result and remaining acceptance
92
+
93
+ PR #245 merged as `521675b77f156461ed829ef328d892f78797604c` after all Linux,
94
+ macOS and Windows Node 22/24 checks, native-package, native-navigation and
95
+ browser checks passed. The release candidate prebuild selects combined-v6;
96
+ the public package remains beta.3 until publication.
97
+
98
+ Beta.4 prebuild run `41569547389` succeeded from reviewed source
99
+ `67035d0758321901ef56a71c3a8e7561274dfd38`. All five downloaded archives and
100
+ embedded executable hashes passed independent local acquisition verification.
101
+ The final package manifest uses those exact candidate hashes and combined-v6.
102
+ The Linux release executable SHA-256 is
103
+ `9f998cb2d23e2c18258a5bcb9a9588228e6fef9f089b13bb2f74b80d8ee8d7f6`;
104
+ it differs from the earlier locally compiled candidate recorded above.
105
+
106
+ The same task implemented parser, validator, aggregator, exporter and CLI
107
+ source, with 78 self-authored tests passing during continuation. Independent
108
+ probes found defects: invalid sign-only money accepted, unsafe integer cents,
109
+ incorrect record line numbers, split UTF-8/BOM corruption, malformed quote
110
+ acceptance, cross-currency summary totals, nondeterministic timestamps, and
111
+ missing CSV field quoting. CLI tests, fixtures and README were unfinished.
112
+ **The expense task is not accepted as complete.** These findings were submitted
113
+ to the same session for repair, rather than silently fixed outside the task.
114
+
115
+ Further continuation encountered tunnel 502s and the local Node 26 upstream
116
+ HTTP/2 pool's `ERR_HTTP2_INVALID_SESSION`. The sandbox switched to HTTP/1.1
117
+ and direct localhost access to the same Cloud backend. Unknown-outcome requests
118
+ retained their reservations. At the recorded checkpoint, paid consumption was
119
+ $3.120214780 and outstanding reservations $0.819894980 against the $4 daily
120
+ limit; five requests required reconciliation. No reservations or consumed usage
121
+ were erased. Reducing the model's request envelope was also tried and reverted:
122
+ the gateway cap counts request bytes, and the smaller envelope rejected this
123
+ existing conversation. Full task completion remains blocked.
124
+
125
+ Durable private receipts include `task-interim-result.json`, file hashes,
126
+ signed payment event IDs and `independent-audit.md`. The evidence establishes
127
+ fresh sign-in, genuine quota rejection, Stripe-test activation, no automatic
128
+ restart, and explicit real-model paid continuation on the exact same session.
129
+ It does not establish independently verified task success or production
130
+ inference acceptance.
131
+
132
+ The normal installation remains public beta.3, reauthenticated to the production
133
+ test account. Its prior local session history and settings have not been recovered.
134
+ An additional backup search found production Voyages backups, which are unrelated
135
+ to the lost local profile.
@@ -1,7 +1,10 @@
1
- # Cloud onboarding — unreleased implementation
1
+ # Cloud onboarding — beta.2 implementation
2
2
 
3
- November 2, 2026. This branch is not published beta acceptance. npm `next` remains
4
- 1.1.0-beta.1 and `latest` remains 1.0.7.
3
+ November 2, 2026. Beta.2 is published on GitHub and npm `next`; `latest` remains
4
+ 1.0.7. See [published acceptance](beta2-published-acceptance.md) for final CI,
5
+ draft/public runtime gates, signed npm provenance, Linux clean installation and
6
+ isolated beta.1 → beta.2 update evidence. Historical preparation notes below do
7
+ not supersede that release record.
5
8
 
6
9
  Native PR #238 merged at `a5ad2164d056fee7f7183579ce6cc97305bae53b` after CI
7
10
  41504674623 passed. First-task guidance is tracked in PR #239. Beta.2 runtime