Commit Graph

3621 Commits

Author SHA1 Message Date
copybot[bot] 516a6d3c75 copybot: live paper feed [skip ci] 2026-07-28 00:20:51 +00:00
copybot[bot] 8f7c3adda8 copybot: live paper feed [skip ci] 2026-07-28 00:00:42 +00:00
copybot[bot] 98ea64e145 copybot: live paper feed [skip ci] 2026-07-27 23:49:37 +00:00
jaxperro dd14eb4054 HANDOFF: live bot paused 2026-07-27 + the 5-share-minimum finding that motivated it
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 19:25:13 -04:00
copybot[bot] 9b2e534f7a copybot: live paper feed [skip ci] 2026-07-27 23:16:02 +00:00
copybot[bot] 4926cce987 copybot: live paper feed [skip ci] 2026-07-27 23:15:35 +00:00
jaxperro 3ecceda782 venue 5-share minimum: skip honestly instead of firing doomed orders; lag tile = median + basis
Polymarket rejects any order under 5 shares regardless of value ('Size
(1.47) lower than the minimum: 5'). That is a PRICE-dependent dollar
floor the $-only gate could not see: at the live book's $1 braked stake
only <=20c markets are reachable, so every 40-90c signal fired an order
that could not succeed (12 'invalid amount' + 13 size rejections in 3d).
gate_buy now blocks with the shares needed and the dollars required.
Lag tile: median not mean (one 269s rollout outlier made a 3s bot read
25s) + a 'basis' field so an empty 24h window is labeled lifetime.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 19:15:09 -04:00
copybot[bot] b833632fb1 copybot: live paper feed [skip ci] 2026-07-27 22:53:51 +00:00
copybot[bot] d6b2516e29 copybot: live paper feed [skip ci] 2026-07-27 22:52:51 +00:00
copybot[bot] fd7906aa7e copybot: live paper feed [skip ci] 2026-07-27 22:51:20 +00:00
copybot[bot] 99ca56adb1 copybot: live paper feed [skip ci] 2026-07-27 22:48:19 +00:00
copybot[bot] 9a2286c8d3 copybot: live paper feed [skip ci] 2026-07-27 22:39:31 +00:00
copybot[bot] 472032802d copybot: live paper feed [skip ci] 2026-07-27 22:37:44 +00:00
jaxperro f10b39ce6e T15 verdict: NO edge decay by age-in-set — churn is threshold jitter, not staleness; no age-based rotation rule
Cached-only grading (14% coverage) replaced an 84k-cond RPC treadmill that
five runs over five days never finished.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 18:29:00 -04:00
copybot[bot] 3754947e94 copybot: live paper feed [skip ci] 2026-07-27 22:04:11 +00:00
copybot[bot] 215c79c5ba copybot: live paper feed [skip ci] 2026-07-27 20:43:38 +00:00
copybot[bot] ff924b184f copybot: live paper feed [skip ci] 2026-07-27 20:39:51 +00:00
copybot[bot] 01dde03c59 copybot: live paper feed [skip ci] 2026-07-27 20:25:35 +00:00
copybot[bot] 173a52fec2 copybot: live paper feed [skip ci] 2026-07-27 20:06:39 +00:00
copybot[bot] 4379b0aff5 copybot: live paper feed [skip ci] 2026-07-27 20:05:27 +00:00
copybot[bot] 700becc314 copybot: live paper feed [skip ci] 2026-07-27 20:02:58 +00:00
copybot[bot] 0abc27d239 copybot: live paper feed [skip ci] 2026-07-27 20:02:05 +00:00
jaxperro 23e862afef first maker_set publish (1,533 screened wallets as-of 2026-07-27) — leanbot input 2026-07-27 15:37:33 -04:00
jaxperro e4a73f2d21 nightly: wire maker_set.py + grade_lean.py + lean ledger publish (#26)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 15:33:04 -04:00
jaxperro cf9465f38a #26 wwf-leanbot (Study C stage-2) + #27 v2 band arm + shared concentration guards
leanbot: orders_matched inventory tracking on the nightly-published
screened set (box never screens itself), frozen $150-500 one-sided
crossing, paper FAK $100 capped at print+3c, complement routing for
net-short leans, MAX_PER_EVENT=2, premium logged on every attempt.
guards.py: ex-best-day / ex-top5 / top-event share — the cuts that caught
both studies today, now machinery every grader reports nightly.
grade_lag: v2 band arm (15-40c, forward-only from V2_FREEZE_TS, bar +$8)
+ three report-only control bands.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 15:32:39 -04:00
jaxperro dcd4afb6f3 nightly ledgers: study C days 22-27, study D chain grade n=377 [skip ci] 2026-07-27 15:18:31 -04:00
copybot[bot] 140b3d47d0 copybot: live paper feed [skip ci] 2026-07-27 18:26:19 +00:00
copybot[bot] bc5ff7cc31 copybot: live paper feed [skip ci] 2026-07-27 17:59:37 +00:00
copybot[bot] 461e35efae copybot: live paper feed [skip ci] 2026-07-27 17:58:56 +00:00
copybot[bot] f98e511cc8 copybot: live paper feed [skip ci] 2026-07-27 17:19:52 +00:00
copybot[bot] e0c22c4d44 copybot: live paper feed [skip ci] 2026-07-27 17:16:01 +00:00
copybot[bot] 9540f801e4 copybot: live paper feed [skip ci] 2026-07-27 16:48:55 +00:00
copybot[bot] 4178184c71 copybot: live paper feed [skip ci] 2026-07-27 16:48:46 +00:00
copybot[bot] 7a540d91b0 copybot: live paper feed [skip ci] 2026-07-27 16:42:01 +00:00
copybot[bot] 4f5a3b6c57 copybot: live paper feed [skip ci] 2026-07-27 16:39:37 +00:00
jaxperro adec29b9f3 nightly lock: a pid-less lock ages out (6h) instead of being assumed stale
The first guard treated 'no pid file' as stale, so the launchd run stole a
live old-code lock and TWO nightlies scored concurrently (2026-07-27).
Ledger tolerated it (latest-per-day wins, no dupes) but the races are
avoidable. Conservative now: no pid -> skip unless the lock dir is >6h old.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 12:11:00 -04:00
copybot[bot] ad03bcc73b copybot: live paper feed [skip ci] 2026-07-27 15:39:05 +00:00
copybot[bot] 611d83a08a copybot: live paper feed [skip ci] 2026-07-27 15:36:42 +00:00
copybot[bot] 48788e3727 copybot: live paper feed [skip ci] 2026-07-27 15:34:57 +00:00
copybot[bot] 5015dfc400 copybot: live paper feed [skip ci] 2026-07-27 15:34:30 +00:00
jaxperro 48b51896ae nightly: stale-lock takeover via recorded PID; reconcile: wait out the tape-sync write lock
A killed nightly (pause/crash/reboot) left .nightly.lock.d behind — the
EXIT trap never fires on SIGKILL — and EVERY later run then skipped
silently (caught 2026-07-27: today's run exited in <1s). Lock now
records its PID and a run whose owner is gone takes it over.
Reconcile hit the 15-min tape-sync agent's single-writer lock and died;
now waits it out (20x30s).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 11:28:01 -04:00
jaxperro dbfc77bfe3 live: daily refresh — skilled + sharp wallets [skip ci] 2026-07-27 11:26:40 -04:00
jaxperro 7e579aca98 sync_tape: batch acks into one ssh call + make ack failures non-fatal
Per-file 'flyctl ssh console' acks ride WireGuard; travel networks throttle
it past the 120s timeout, and the raised TimeoutExpired killed whole
backlog runs mid-flight (52/64 files, twice). The delete invariant is
one-directional — the box may delete ONLY what the Mac acked — so a
MISSING ack is always safe. Batch at end, best-effort, log and continue.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-27 11:00:52 -04:00
copybot[bot] 2ad5018267 copybot: live paper feed [skip ci] 2026-07-27 14:32:48 +00:00
copybot[bot] 6666b706f0 copybot: live paper feed [skip ci] 2026-07-27 14:31:42 +00:00
copybot[bot] 7ab60e6569 copybot: live paper feed [skip ci] 2026-07-27 14:30:21 +00:00
copybot[bot] c6c1ab4459 copybot: live paper feed [skip ci] 2026-07-27 14:29:29 +00:00
copybot[bot] d21815c2b3 copybot: live paper feed [skip ci] 2026-07-27 14:27:19 +00:00
copybot[bot] 5ac3014df4 copybot: live paper feed [skip ci] 2026-07-27 13:59:54 +00:00
copybot[bot] 5769c52ce8 copybot: live paper feed [skip ci] 2026-07-27 13:54:23 +00:00