Commit Graph
71 Commits
Author SHA1 Message Date
time a4e052d248 ledger: 1 calls, $0.00 2026-10-19 20:08:03 +00:00
time 99a9230d27 ledger: 1 calls, $0.00 2026-10-19 18:13:24 +00:00
time 2e2329dd86 ledger: 39 calls, $0.71 2026-10-19 18:12:13 +00:00
time da2ea2d6a8 ledger: 41 calls, $1.14 2026-10-19 17:12:51 +00:00
time 157c91f06d ledger: 1 calls, $0.17
time/worker-run python3 /tmp/p.py && git diff --stat && cd .github/time && python3 test_time.py 2>&1 | tail -12
2026-10-19 16:47:53 +00:00
teahubxyzandClaude Opus 5.5 1a2ae6bc7e The cloud lane: cloud sessions build cards on the cloud-session credit (#197)
ci / test (push) Successful in 45s
sync / sync (push) Successful in 5s
The cloud lane: cloud sessions build cards on the cloud-session credit (#197)

Astra labels the best M cards `cloud` (up to 3 in the lane); the launcher on hb-5 starts a claude --cloud session per card on the GitHub copy; sync brings the branch home as a PR that closes the card and moves it cloud -> ready; the heartbeat adopts and the council lands it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017K4vyY3yUD3GsvoZaAtKkD
2026-10-19 16:46:15 +00:00
time 608510afde ledger: 14 calls, $0.09 2026-10-19 16:15:24 +00:00
time 26f64e2f00 ledger: 1 calls, $0.00 2026-10-19 16:14:01 +00:00
time 73d6995df3 ledger: 34 calls, $0.87 2026-10-19 16:12:20 +00:00
time 5b1843521f ledger: 36 calls, $0.51 2026-10-19 15:12:24 +00:00
time 5aefa807be ledger: 47 calls, $0.93
time/worker-run git branch -a; git ls-tree -r --name-only origin/gh-pages 2>&1 | grep -i havre | head; ls; ls ventur
2026-10-19 14:13:57 +00:00
time 815649f59f ledger: 15 calls, $0.24
time/worker-run cd .github/time; cat > /tmp/p.py <<'EOF' import re p = ".github/time/time.py" s = open(p).read() #
2026-10-19 13:57:46 +00:00
time 8fdb2f9469 ledger: 1 calls, $0.18 2026-10-19 13:50:29 +00:00
teahubxyzandClaude Opus 5.5 5a0ffcfee6 router: live
ci / test (push) Successful in 37s
sync / sync (push) Successful in 4s
Two dry rankings (2026-10-19 01:02 and 13:14 UTC) put the right cards on top (#135, #175), dropped blocked #84 once it was known stale, and kept L cards out. The two gaps they showed are fixed: money left is the worker's pool (#181, closes #175) and repeat cards aren't written (#181); the stall that kept promotion from happening at all is fixed (#183, closes #135).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017K4vyY3yUD3GsvoZaAtKkD
2026-10-19 13:48:28 +00:00
time 2efe67c9a9 ledger: 1 calls, $0.16 2026-10-19 13:14:08 +00:00
teahubxyzandClaude Opus 5.5 745231844f sync: secret names Gitea accepts (SYNC_GITHUB_KEY, SYNC_GITHUB_TOKEN) (#179)
ci / test (push) Successful in 36s
sync / sync (push) Successful in 4s
sync: secret names Gitea accepts (SYNC_GITHUB_KEY, SYNC_GITHUB_TOKEN) (#179)

Gitea refuses secret names starting GITHUB_ or GITEA_, so the GitHub copy's deploy key is in SYNC_GITHUB_KEY.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017K4vyY3yUD3GsvoZaAtKkD
2026-10-19 04:03:20 +00:00
teahubxyzandClaude Opus 5.5 e34994bbc6 Sync: the GitHub copy over SSH with a deploy key (host keys pinned) (#178)
ci / test (push) Successful in 35s
sync / sync (push) Successful in 2s
Sync: the GitHub copy over SSH with a deploy key, host keys pinned (#178)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017K4vyY3yUD3GsvoZaAtKkD
2026-10-19 03:33:59 +00:00
teahubxyzandClaude Opus 5.5 ab3c5f5200 Sync: a repo's copies on other forges follow its home (GitHub first, for cloud sessions) (#177)
ci / test (push) Successful in 36s
sync / sync (push) Successful in 3s
Sync: a repo's copies on other forges follow its home (#177)

sync.py + time/sync.json + the sync workflow. One home per repo, one writer per branch: main goes out to every copy
fast-forward only (a diverged copy is a needs-human issue, never overwritten, unless forced once); a copy's claude/*
branches come home as PRs for the council. First copy: github.com/teahubxyz/time, skipped until GITHUB_MIRROR_TOKEN.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017K4vyY3yUD3GsvoZaAtKkD
2026-10-19 03:18:50 +00:00
time 896fd3c872 ledger: 1 calls, $0.00 2026-10-19 03:07:58 +00:00
time 17c2fa0377 ledger: 35 calls, $1.72 2026-10-19 02:21:30 +00:00
teahubxyzandClaude Opus 5.5 b7bd03c6fd pools: pace Claude spend to the Anthropic credit ($161.49 left on 2026-10-19, lapses 2026-11-08)
ci / test (push) Successful in 36s
time/worker-run cd .github/time; grep -n "stuck_h =\|auto_max =\|TIME_AUTO_RETRY" time.py | head | cut -c1-220; sed
The owner's credit: $200 granted 2026-10-13, $162.22 left on the 18th by the console, expiring 2026-11-08. The ledger
books $38.51 of Claude spend since the grant, so $161.49 as of the 19th. Paced over the 20 days left that is about
$8/day for the anthropic route; the $100 monthly cap stays hard and binds first in October.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017K4vyY3yUD3GsvoZaAtKkD
2026-10-19 01:10:37 +00:00
teahubxyzandClaude Opus 5.5 ec043b2985 Adaptive budget: pace spend to each capacity pool (re-cut of #167 onto main) (#174)
ci / test (push) Successful in 36s
Adaptive budget: pace spend to each capacity pool (#174, re-cut of #167)

The worker's #82 change (sonnet via Time): budget_check(route) paces each call to its capacity pool in
time/pools.json (expiring credit spread over the days left, refilling windows, or TIME_DAILY_USD without a pool);
the monthly cap stays hard. pools.json is read through the API once per run, since every workflow checks out only
.github/time. Ships empty: nothing changes until it is filled in. Closes #82.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017K4vyY3yUD3GsvoZaAtKkD
2026-10-19 01:10:09 +00:00
time 463a6fecbb ledger: 1 calls, $0.00 2026-10-19 01:07:54 +00:00
time 0fdce2c58f ledger: 1 calls, $0.18 2026-10-19 01:02:01 +00:00
teahubxyzandClaude Opus 5.5 b8d52252f4 Router v1: the factory ranks its own next work (dry to start) (#169)
ci / test (push) Successful in 34s
Router v1: the factory ranks its own next work, dry to start (#169)

Astra's seat judges every candidate (kind, value, size); router.py ranks them with the owner's weights per kind
(time/router.json), a restless boost and card age. dry posts the table; live queues from the top within the day's
money and the heartbeat promotes queued cards in ranked order. Astra reads the last 14 days of its log. Closes #168.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017K4vyY3yUD3GsvoZaAtKkD
2026-10-19 01:00:17 +00:00
time b8041955ab ledger: 19 calls, $0.55 2026-10-19 00:10:39 +00:00
time ef00a80f7f ledger: 1 calls, $0.00 2026-10-19 00:07:41 +00:00
time 4512c59c8f ledger: 10 calls, $0.75 2026-10-18 18:32:22 +00:00
time 3f81c2cfa9 ledger: 37 calls, $3.43 2026-10-18 18:17:46 +00:00
time facd11d390 ledger: 2 calls, $0.01 2026-10-18 17:52:37 +00:00
time a7c92b6497 ledger: 27 calls, $0.72 2026-10-18 17:52:02 +00:00
time 80f21b58ea ledger: 45 calls, $3.17
time/worker-run cat > /tmp/patch.py <<'EOF' import re p = ".github/time/time.py" s = open(p).read() def sub(old, new
2026-10-18 17:46:45 +00:00
time 4b521f7a86 ledger: 2 calls, $0.01 2026-10-18 17:24:27 +00:00
time 8c0d93db9d ledger: 1 calls, $0.00 2026-10-18 17:18:58 +00:00
time 9abd17f979 ledger: 1 calls, $0.01 2026-10-18 17:16:19 +00:00
time 5fac881ec5 ledger: 1 calls, $0.01 2026-10-18 16:59:59 +00:00
time 429595a543 ledger: 1 calls, $0.00 2026-10-18 16:22:14 +00:00
time 501192977d ledger: 1 calls, $0.00 2026-10-18 08:07:52 +00:00
time 61e0712f63 ledger: 25 calls, $0.85 2026-10-18 07:25:26 +00:00
time 0cf097c1c3 ledger: 51 calls, $1.40 2026-10-18 07:16:17 +00:00
time e6bee7ccfe ledger: 4 calls, $0.01
time/worker-run python3 - <<'EOF' p = "/tmp/p/tests_new.py" s = open(p).read() s = s.replace(' and w.posted == w.pos
2026-10-18 06:08:18 +00:00
time cbd9d7536b ledger: 62 calls, $1.72 2026-10-18 05:15:05 +00:00
time a6f4542203 ledger: 1 calls, $0.00 2026-10-18 04:59:28 +00:00
time 2bfaf6f672 ledger: 3 calls, $0.01 2026-10-18 04:50:46 +00:00
time b8bd19eaf8 ledger: 23 calls, $3.30 2026-10-18 04:47:35 +00:00
time 31ae884fe1 ledger: 8 calls, $0.14 2026-10-18 04:27:32 +00:00
time 183e09332d ledger: 2 calls, $0.00 2026-10-18 04:16:22 +00:00
time 97e863b9fb ledger: 31 calls, $3.10 2026-10-18 04:14:42 +00:00
time 999abbf590 ledger: 95 calls, $5.01
time/worker-run cat > /tmp/p.py <<'EOF' import re p = ".github/time/time.py" s = open(p).read() old = ''' gh(
2026-10-18 02:10:37 +00:00
time 0d893d7fc5 ledger: 40 calls, $2.52 2026-10-17 20:24:01 +00:00