5c49225e4b
v0.42.45.0 feat(sync): delta-aware cost estimator — stop wedging the daily cron ( #2139 ) ( #2224 )
...
* feat(core): shared computeSyncDelta + spend-posture module (#2139 )
sync-delta.ts: ONE implementation of "what changed since last_commit",
consumed by both the sync executor and the inline cost estimator so the
gate's dollar figure can't drift from what the sync imports.
spend-posture.ts: spend.posture config + parseUsdLimit/formatUsdLimit
off-switch parsing (off/unlimited/none → Infinity; undefined at the budget
boundary so ledger rows never serialize null).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* feat(sync): delta-aware cost estimator + non-TTY auto-defer + per-source failure acks (#2139 )
The inline-embed cost gate was a ~400x phantom: it priced the entire tree
whenever the working tree was dirty (always, on an active brain), then blocked
the daily cron with exit 2. Now:
- performSyncInner + the estimator both route through computeSyncDelta, so the
estimate mirrors execution (fetch-first delta; dirty-but-caught-up tree → $0).
- shouldBlockSync is posture-aware; non-TTY above floor AUTO-DEFERS embeds to
capped backfill jobs (exit 0) instead of wedging — single shared
runInlineCostGate on both --all and single-source paths.
- --full prices delta + stale backlog (full sync sweeps it inline).
- off/unlimited on the cost knobs; tokenmax bypasses the backfill cap (still
ledgered) but never the cooldown.
- --skip-failed/--retry-failed scoped per source; the D15 parallel refusal is
lifted (the #1939 ledger is per-source + lock-serialized).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* feat(config): register spend-control keys + validate spend.posture (#2139 )
Adds spend.posture + the five previously --force-only spend knobs to
KNOWN_CONFIG_KEYS so `config set` accepts them directly (removes the
archaeology the issue complained about), and rejects invalid spend.posture
values at set time with a paste-ready hint.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* feat(reindex,enrich,onboard): spend.posture across the remaining cost gates (#2139 )
reindex-code: tokenmax makes the cost gate informational; --max-cost accepts
off/unlimited. enrich + onboard --auto: tokenmax lifts the refuse-without-cap
guardrail and runs UNCAPPED (spend still ledgered by BudgetTracker). Explicit
--max-usd always wins over posture.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* test: cost-gate, delta estimator, spend-posture, off-switch coverage (#2139 )
New sync-delta + sync-cost-estimate unit suites; rewritten cost-gate serial
tests (auto-defer instead of exit 2, posture, off-switch, format split,
single-source); parseUsdLimit/posture-aware shouldBlockSync; backfill cap-off
+ tokenmax-bypass + cooldown-still-refuses; config known-key acceptance.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* docs(spend-controls): single spend-control surface + ref-map + follow-up TODOs (#2139 )
New docs/operations/spend-controls.md (every gate, key, default, off switch,
posture interaction); CLAUDE.md reference-map row; two P3 follow-up TODOs
(measured chunk-count gating, per-source defer granularity). llms bundles
regenerated.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* fix(spend): SSRF-harden estimator fetch + complete off/uncapped across reindex/enrich/onboard (#2139 )
Ship-stage codex pre-landing review caught four P1s in the secondary cost gates:
- The delta estimator's fetch-first ran `git fetch` through the plain git()
helper, bypassing the GIT_SSRF_FLAGS + GIT_TERMINAL_PROMPT=0 hardening that
real sync uses. Added `fetchRemote()` to git-remote.ts (same flags as
pullRepo) and route the estimator through it — a cost preview / dry-run can
no longer hit a remote through a less-protected path.
- `reindex --max-cost off`, `enrich --max-usd off`, `onboard --auto --max-usd
off` were parsed but didn't actually proceed/uncap. Now: explicit off (and
spend.posture=tokenmax) proceed past the confirmation/missing-cap refusal AND
run uncapped. enrich threads an Infinity sentinel mapped to "no BudgetTracker
ceiling" (never raw Infinity → no null in audit rows); reindex/onboard use
their native undefined=uncapped path. Spend still ledgered.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* chore: bump version and changelog (v0.42.45.0)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* docs(KEY_FILES): update sync/embedding/git-remote/reindex entries to post-#2139 truth
document-release pass: the cost-gate entries described the pre-#2139 behavior
(full-tree-ceiling estimator, --skip-failed-rejects-under-parallel, exit-2
confirmation gate). Updated to current truth — delta-aware estimator via the
shared computeSyncDelta, per-source failure acks under parallel, non-TTY
auto-defer (no exit 2), posture-aware shouldBlockSync. Added entries for the
two new core modules (sync-delta.ts, spend-posture.ts) + fetchRemote on
git-remote.ts + reindex --max-cost off.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-16 15:08:47 -07:00
..
2026-06-12 06:05:34 -07:00
2026-06-03 07:27:34 -07:00
2026-05-24 21:50:08 -07:00
2026-05-30 09:14:14 -07:00
2026-05-24 09:30:57 -07:00
2026-05-14 19:13:14 -07:00
2026-05-22 21:18:09 -07:00
2026-06-14 09:32:58 -07:00
2026-05-29 07:06:08 -07:00
2026-06-07 08:05:34 -07:00
2026-06-01 21:54:13 -07:00
2026-06-14 09:32:58 -07:00
2026-06-01 22:13:19 -07:00
2026-06-03 07:09:20 -07:00
2026-05-27 07:16:30 -07:00
2026-05-27 08:27:05 -07:00
2026-06-12 07:28:13 -07:00
2026-05-20 20:25:41 -07:00
2026-06-07 08:05:34 -07:00
2026-05-26 18:29:03 -07:00
2026-05-22 09:10:20 -07:00
2026-05-26 17:31:48 -07:00
2026-05-22 22:37:15 -07:00
2026-05-27 08:27:05 -07:00
2026-06-03 05:50:21 -07:00
2026-06-12 06:05:34 -07:00
2026-06-03 08:09:21 -07:00
2026-06-07 08:12:50 -07:00
2026-05-22 13:38:07 -07:00
2026-05-22 09:10:20 -07:00
2026-05-18 20:55:57 -07:00
2026-05-22 09:10:20 -07:00
2026-04-29 23:46:36 -07:00
2026-05-07 21:52:58 -07:00
2026-05-10 20:06:31 -07:00
2026-06-03 23:00:11 -07:00
2026-05-18 20:55:57 -07:00
2026-05-18 20:55:57 -07:00
2026-05-02 08:41:11 -07:00
2026-05-22 13:38:07 -07:00
2026-05-18 21:11:02 -07:00
2026-05-11 22:54:35 -07:00
2026-05-23 08:49:28 -07:00
2026-06-01 19:09:15 -07:00
2026-05-25 09:57:30 -07:00
2026-06-01 21:54:13 -07:00
2026-06-03 07:27:34 -07:00
2026-05-18 20:55:57 -07:00
2026-05-22 21:04:30 -07:00
2026-05-22 21:04:30 -07:00
2026-05-22 21:04:30 -07:00
2026-05-18 20:55:57 -07:00
2026-05-21 08:29:55 -07:00
2026-05-24 21:50:08 -07:00
2026-05-21 08:29:55 -07:00
2026-04-21 18:35:45 -07:00
2026-06-03 06:20:03 -07:00
2026-06-01 22:01:14 -07:00
2026-05-08 13:25:48 -07:00
2026-05-08 13:25:48 -07:00
2026-05-25 14:56:38 -07:00
2026-05-18 20:55:57 -07:00
2026-04-14 19:41:34 -10:00
2026-05-18 21:11:02 -07:00
2026-05-27 07:16:30 -07:00
2026-05-24 21:50:08 -07:00
2026-04-22 01:34:22 -07:00
2026-05-14 19:13:14 -07:00
2026-05-14 19:13:14 -07:00
2026-05-07 21:52:58 -07:00
2026-06-03 06:20:03 -07:00
2026-05-14 20:15:29 -07:00
2026-04-30 20:47:32 -07:00
2026-06-07 19:12:50 -07:00
2026-05-10 20:50:40 -07:00
2026-05-02 22:01:05 -07:00
2026-05-21 18:57:05 -07:00
2026-05-25 10:39:09 -07:00
2026-05-23 18:43:10 -07:00
2026-05-22 09:29:59 -07:00
2026-05-22 09:29:59 -07:00
2026-05-22 21:18:09 -07:00
2026-05-22 11:53:11 -07:00
2026-05-24 11:37:03 -07:00
2026-06-03 05:50:21 -07:00
2026-05-25 14:56:38 -07:00
2026-06-07 22:05:31 -07:00
2026-05-18 19:34:44 -07:00
2026-05-20 09:19:18 -07:00
2026-05-22 13:38:07 -07:00
2026-05-22 21:18:09 -07:00
2026-05-22 21:18:09 -07:00
2026-04-25 12:25:34 -07:00
2026-05-25 20:00:03 -07:00
2026-05-25 13:58:26 -07:00
2026-05-25 20:00:03 -07:00
2026-05-24 09:30:57 -07:00
2026-06-03 06:20:03 -07:00
2026-04-09 12:25:04 -10:00
2026-06-03 14:14:13 -07:00
2026-04-25 12:25:34 -07:00
2026-05-14 19:13:14 -07:00
2026-04-25 12:25:34 -07:00
2026-05-11 22:54:35 -07:00
2026-04-29 23:46:36 -07:00
2026-05-18 20:55:57 -07:00
2026-05-09 19:47:56 -07:00
2026-05-25 19:53:59 -07:00
2026-06-14 09:32:58 -07:00
2026-06-12 07:28:13 -07:00
2026-06-12 07:28:13 -07:00
2026-06-14 09:32:58 -07:00
2026-05-22 21:18:09 -07:00
2026-05-07 13:41:46 -07:00
2026-05-23 10:01:08 -07:00
2026-06-14 09:32:58 -07:00
2026-05-02 08:41:11 -07:00
2026-05-07 10:03:38 -07:00
2026-05-30 12:07:38 -07:00
2026-06-14 09:32:58 -07:00
2026-05-25 20:00:03 -07:00
2026-04-25 12:25:34 -07:00
2026-05-30 14:58:40 -07:00
2026-04-25 12:25:34 -07:00
2026-04-25 12:25:34 -07:00
2026-06-03 06:43:11 -07:00
2026-05-14 19:50:50 -04:00
2026-05-30 14:58:40 -07:00
2026-05-13 13:14:58 -04:00
2026-05-19 13:12:40 -07:00
2026-06-12 06:05:34 -07:00
2026-05-09 22:58:19 -07:00
2026-06-16 15:08:47 -07:00
2026-05-13 13:14:58 -04:00
2026-06-01 23:03:09 -07:00
2026-06-01 19:09:15 -07:00
2026-05-25 12:48:55 -07:00
2026-06-12 06:05:34 -07:00
2026-05-23 10:57:32 -07:00
2026-05-18 21:11:02 -07:00
2026-05-24 10:49:56 -07:00
2026-06-07 19:22:33 -07:00
2026-05-11 21:49:57 -07:00
2026-05-23 08:49:28 -07:00
2026-05-23 08:49:28 -07:00
2026-05-23 08:49:28 -07:00
2026-05-26 17:31:48 -07:00
2026-05-30 10:30:56 -07:00
2026-05-18 19:34:44 -07:00
2026-05-06 20:39:56 -07:00
2026-05-06 20:39:56 -07:00
2026-05-06 20:39:56 -07:00
2026-05-21 22:11:00 -07:00
2026-06-12 06:05:34 -07:00
2026-05-19 17:14:53 -07:00
2026-06-09 22:28:44 -07:00
2026-06-09 22:28:44 -07:00
2026-05-27 06:30:46 -07:00
2026-05-23 18:43:10 -07:00
2026-05-22 21:04:30 -07:00
2026-05-24 22:56:21 -07:00
2026-04-30 01:23:29 -07:00
2026-05-22 21:04:30 -07:00
2026-05-25 12:48:55 -07:00
2026-05-25 14:56:38 -07:00
2026-05-09 20:46:34 -07:00
2026-05-11 23:02:03 -07:00
2026-05-27 08:52:36 -07:00
2026-04-14 19:41:34 -10:00
2026-05-28 19:04:48 -07:00
2026-06-03 06:43:11 -07:00
2026-05-24 11:37:03 -07:00
2026-06-09 22:28:44 -07:00
2026-05-25 14:43:12 -07:00
2026-05-23 10:21:59 -07:00
2026-06-09 22:28:44 -07:00
2026-05-08 13:25:48 -07:00
2026-04-22 16:24:23 -07:00
2026-05-03 20:41:39 -07:00
2026-04-29 22:21:07 -07:00
2026-05-22 13:38:07 -07:00
2026-05-26 23:15:44 -07:00
2026-05-23 18:43:10 -07:00
2026-05-26 23:47:05 -07:00
2026-05-18 19:34:44 -07:00
2026-05-26 23:47:05 -07:00
2026-06-03 07:27:34 -07:00
2026-05-18 20:55:57 -07:00
2026-05-23 18:43:10 -07:00
2026-05-22 21:04:30 -07:00
2026-05-22 21:04:30 -07:00
2026-05-25 15:10:23 -07:00
2026-06-01 22:01:14 -07:00
2026-05-27 08:27:05 -07:00
2026-06-14 09:32:58 -07:00
2026-04-20 21:54:36 +08:00
2026-05-22 09:29:59 -07:00
2026-06-03 06:28:21 -07:00
2026-05-26 23:47:05 -07:00
2026-06-01 22:28:20 -07:00
2026-04-26 15:49:48 -07:00
2026-05-25 14:56:38 -07:00
2026-06-03 07:27:34 -07:00
2026-05-21 22:11:00 -07:00
2026-05-21 18:57:05 -07:00
2026-06-10 22:00:36 -07:00
2026-05-26 23:47:05 -07:00
2026-05-13 13:14:58 -04:00
2026-06-03 06:20:03 -07:00
2026-05-24 11:37:03 -07:00
2026-05-27 06:30:46 -07:00
2026-05-21 08:29:55 -07:00
2026-05-26 17:31:48 -07:00
2026-06-03 14:14:13 -07:00
2026-06-03 07:27:34 -07:00
2026-05-21 22:11:00 -07:00
2026-06-02 16:33:06 -07:00
2026-05-24 22:56:21 -07:00
2026-06-03 07:27:34 -07:00
2026-05-30 14:58:40 -07:00
2026-05-27 08:52:36 -07:00
2026-05-13 13:14:58 -04:00
2026-04-20 21:54:36 +08:00
2026-05-14 19:13:14 -07:00
2026-05-07 21:52:58 -07:00
2026-06-16 15:08:47 -07:00
2026-06-07 08:12:50 -07:00
2026-06-12 06:05:34 -07:00
2026-05-19 17:14:53 -07:00
2026-05-31 08:20:25 -07:00
2026-05-24 10:49:56 -07:00
2026-05-27 07:01:28 -07:00
2026-06-07 08:12:50 -07:00
2026-05-23 08:49:28 -07:00
2026-06-12 06:05:34 -07:00
2026-06-12 06:05:34 -07:00
2026-05-15 18:54:36 -07:00
2026-05-30 10:30:56 -07:00
2026-05-07 21:52:58 -07:00
2026-04-11 00:01:09 -10:00
2026-05-22 22:37:15 -07:00
2026-05-22 22:37:15 -07:00
2026-05-27 07:01:28 -07:00
2026-05-07 10:03:38 -07:00
2026-05-10 06:34:40 -07:00
2026-06-01 22:13:19 -07:00
2026-05-22 13:38:07 -07:00
2026-04-14 19:41:34 -10:00
2026-05-11 23:02:03 -07:00
2026-05-17 08:51:33 -07:00
2026-05-22 22:37:15 -07:00
2026-05-24 11:37:03 -07:00
2026-04-25 12:25:34 -07:00
2026-05-01 09:02:43 -07:00
2026-06-12 07:28:13 -07:00
2026-05-01 09:02:43 -07:00
2026-05-01 09:02:43 -07:00
2026-05-13 13:14:58 -04:00
2026-05-17 08:32:03 -07:00
2026-05-17 08:32:03 -07:00
2026-05-18 19:34:44 -07:00
2026-05-11 22:42:54 -07:00
2026-05-17 08:32:03 -07:00
2026-05-11 22:42:54 -07:00
2026-05-17 08:32:03 -07:00
2026-05-17 08:32:03 -07:00
2026-05-17 08:32:03 -07:00
2026-05-11 22:42:54 -07:00
2026-05-17 08:32:03 -07:00
2026-05-11 22:42:54 -07:00
2026-05-17 08:32:03 -07:00
2026-05-17 08:32:03 -07:00
2026-05-17 08:32:03 -07:00
2026-05-17 08:32:03 -07:00
2026-05-26 17:31:48 -07:00
2026-05-26 18:29:03 -07:00
2026-05-01 09:02:43 -07:00
2026-05-24 21:50:08 -07:00
2026-05-25 15:46:25 -07:00
2026-05-25 15:46:25 -07:00
2026-05-01 09:02:43 -07:00
2026-05-22 22:16:25 -07:00
2026-05-24 21:50:08 -07:00
2026-05-01 09:02:43 -07:00
2026-05-30 12:07:38 -07:00
2026-05-13 13:14:58 -04:00
2026-05-22 13:38:07 -07:00
2026-05-10 06:34:40 -07:00
2026-06-03 07:09:20 -07:00
2026-05-10 06:34:40 -07:00
2026-05-10 06:34:40 -07:00
2026-05-10 06:34:40 -07:00
2026-06-03 23:00:11 -07:00
2026-05-10 06:34:40 -07:00
2026-05-10 06:34:40 -07:00
2026-05-10 06:34:40 -07:00
2026-05-10 06:34:40 -07:00
2026-05-10 06:34:40 -07:00
2026-05-10 06:34:40 -07:00
2026-05-10 06:34:40 -07:00
2026-05-17 18:52:38 -07:00
2026-05-24 22:56:21 -07:00
2026-05-12 14:33:29 -07:00
2026-04-13 21:03:40 -10:00
2026-05-17 14:27:31 -07:00
2026-05-22 13:38:07 -07:00
2026-06-09 22:28:44 -07:00
2026-06-03 07:27:34 -07:00
2026-06-03 07:27:34 -07:00
2026-05-25 15:10:23 -07:00
2026-05-27 06:30:46 -07:00
2026-05-25 14:56:38 -07:00
2026-05-26 18:29:03 -07:00
2026-05-25 15:21:59 -07:00
2026-05-02 22:01:05 -07:00
2026-05-18 20:55:57 -07:00
2026-05-11 19:25:48 -07:00
2026-06-02 16:33:06 -07:00
2026-04-29 10:12:10 -07:00
2026-05-21 08:29:55 -07:00
2026-06-03 08:00:57 -07:00
2026-05-10 06:34:40 -07:00
2026-05-06 21:14:34 -07:00
2026-05-26 18:29:03 -07:00
2026-05-09 20:46:34 -07:00
2026-05-25 15:21:59 -07:00
2026-05-27 08:27:05 -07:00
2026-05-22 21:18:09 -07:00
2026-05-30 12:07:38 -07:00
2026-05-31 08:20:25 -07:00
2026-05-10 12:49:14 -07:00
2026-05-17 08:51:33 -07:00
2026-05-09 16:57:47 -07:00
2026-05-10 12:49:14 -07:00
2026-05-09 16:57:47 -07:00
2026-05-10 12:49:14 -07:00
2026-05-09 16:57:47 -07:00
2026-05-10 12:49:14 -07:00
2026-05-27 06:30:46 -07:00
2026-05-10 20:06:31 -07:00
2026-05-10 12:49:14 -07:00
2026-05-10 12:49:14 -07:00
2026-05-17 18:52:38 -07:00
2026-05-11 19:25:48 -07:00
2026-05-11 19:25:48 -07:00
2026-05-09 16:57:47 -07:00
2026-05-09 16:57:47 -07:00
2026-05-09 16:57:47 -07:00
2026-05-28 19:04:48 -07:00
2026-05-09 16:57:47 -07:00
2026-05-09 16:57:47 -07:00
2026-06-12 06:05:34 -07:00
2026-05-09 16:57:47 -07:00
2026-05-09 16:57:47 -07:00
2026-04-20 07:30:00 +08:00
2026-05-23 10:21:59 -07:00
2026-04-14 21:40:48 -10:00
2026-04-25 12:25:34 -07:00
2026-05-17 08:51:33 -07:00
2026-04-09 10:17:13 -07:00
2026-04-13 07:49:13 -10:00
2026-04-16 23:03:15 -07:00
2026-04-13 07:49:13 -10:00
2026-04-23 19:34:27 -07:00
2026-05-25 14:20:19 -07:00
2026-06-14 09:32:58 -07:00
2026-06-12 07:28:13 -07:00
2026-05-22 22:37:15 -07:00
2026-04-29 23:46:36 -07:00
2026-04-29 23:46:36 -07:00
2026-05-18 20:55:57 -07:00
2026-05-21 09:26:37 -07:00
2026-06-08 21:19:25 -07:00
2026-06-08 21:19:25 -07:00
2026-05-18 21:26:12 -07:00
2026-06-03 05:50:21 -07:00
2026-05-24 11:37:03 -07:00
2026-06-03 06:20:03 -07:00
2026-06-08 21:19:25 -07:00
2026-05-26 23:47:05 -07:00
2026-05-17 08:00:29 -07:00
2026-05-18 19:34:44 -07:00
2026-05-18 19:34:44 -07:00
2026-05-21 08:29:55 -07:00
2026-05-18 19:34:44 -07:00
2026-05-30 12:34:43 -07:00
2026-05-23 10:21:59 -07:00
2026-04-29 22:13:05 -07:00
2026-05-25 09:57:30 -07:00
2026-05-25 15:46:25 -07:00
2026-05-13 13:14:58 -04:00
2026-05-14 20:51:11 -07:00
2026-06-12 06:05:34 -07:00
2026-05-25 19:53:59 -07:00
2026-06-01 23:03:09 -07:00
2026-05-30 14:56:26 -07:00
2026-05-07 10:03:38 -07:00
2026-05-14 20:51:11 -07:00
2026-05-30 10:30:56 -07:00
2026-05-21 08:29:55 -07:00
2026-04-12 07:48:47 -10:00
2026-04-25 12:25:34 -07:00
2026-05-22 13:38:07 -07:00
2026-06-03 06:43:11 -07:00
2026-05-21 18:57:05 -07:00
2026-05-07 22:56:22 -07:00
2026-04-18 16:57:38 +08:00
2026-05-13 13:14:58 -04:00
2026-05-21 18:57:05 -07:00
2026-05-11 19:25:48 -07:00
2026-06-10 21:12:33 -07:00
2026-04-16 23:03:15 -07:00
2026-04-22 01:34:22 -07:00
2026-05-13 13:14:58 -04:00
2026-05-30 14:58:40 -07:00
2026-06-03 15:24:00 -07:00
2026-06-03 07:09:20 -07:00
2026-05-24 11:37:03 -07:00
2026-04-25 12:25:34 -07:00
2026-05-25 14:20:19 -07:00
2026-05-24 11:37:03 -07:00
2026-06-08 21:19:25 -07:00
2026-05-24 22:56:21 -07:00
2026-05-21 18:57:05 -07:00
2026-04-25 12:25:34 -07:00
2026-06-10 22:00:36 -07:00
2026-05-22 13:38:07 -07:00
2026-06-07 19:12:50 -07:00
2026-06-10 22:00:36 -07:00
2026-06-01 23:03:09 -07:00
2026-04-26 20:45:05 -07:00
2026-06-01 22:01:14 -07:00
2026-04-11 21:25:44 -10:00
2026-06-12 06:05:34 -07:00
2026-05-19 17:14:53 -07:00
2026-05-22 09:10:20 -07:00
2026-05-25 15:10:23 -07:00
2026-05-22 22:37:15 -07:00
2026-05-22 22:37:15 -07:00
2026-05-07 19:49:46 -07:00
2026-05-24 09:30:57 -07:00
2026-05-22 08:00:42 -07:00
2026-05-21 09:26:37 -07:00
2026-06-07 19:22:33 -07:00
2026-05-09 19:47:56 -07:00
2026-05-07 22:56:22 -07:00
2026-05-04 21:11:15 -07:00
2026-05-30 12:07:38 -07:00
2026-05-17 08:00:29 -07:00
2026-05-13 13:14:58 -04:00
2026-05-08 13:25:48 -07:00
2026-05-25 14:43:12 -07:00
2026-06-14 09:32:58 -07:00
2026-05-30 14:56:26 -07:00
2026-04-26 20:45:05 -07:00
2026-05-10 12:49:14 -07:00
2026-05-09 20:46:34 -07:00
2026-05-09 20:46:34 -07:00
2026-05-11 22:54:35 -07:00
2026-04-18 16:57:38 +08:00
2026-04-18 16:57:38 +08:00
2026-04-18 18:16:18 +08:00
2026-04-19 07:14:24 +08:00
2026-05-30 14:56:26 -07:00
2026-05-30 14:56:26 -07:00
2026-04-20 07:30:00 +08:00
2026-04-29 23:46:36 -07:00
2026-05-30 14:56:26 -07:00
2026-04-25 12:25:34 -07:00
2026-04-25 12:25:34 -07:00
2026-05-22 09:29:59 -07:00
2026-05-07 10:03:38 -07:00
2026-05-11 19:25:48 -07:00
2026-05-10 06:34:40 -07:00
2026-05-24 22:56:21 -07:00
2026-05-26 17:31:48 -07:00
2026-05-24 11:37:03 -07:00
2026-04-22 01:34:22 -07:00
2026-05-19 13:12:40 -07:00
2026-05-19 13:12:40 -07:00
2026-05-19 13:12:40 -07:00
2026-04-24 01:09:28 -07:00
2026-06-07 08:12:50 -07:00
2026-05-23 08:49:28 -07:00
2026-05-27 07:16:30 -07:00
2026-06-01 21:54:13 -07:00
2026-06-03 23:00:11 -07:00
2026-05-25 10:39:09 -07:00
2026-05-25 10:39:09 -07:00
2026-05-02 22:01:05 -07:00
2026-05-23 08:49:28 -07:00
2026-05-10 13:33:05 -07:00
2026-05-03 20:41:39 -07:00
2026-06-03 15:24:00 -07:00
2026-05-22 22:16:25 -07:00
2026-05-10 12:49:14 -07:00
2026-05-18 19:34:44 -07:00
2026-06-12 06:05:34 -07:00
2026-05-25 09:57:30 -07:00
2026-05-09 19:47:56 -07:00
2026-06-12 06:05:34 -07:00
2026-05-27 08:27:05 -07:00
2026-05-27 06:30:46 -07:00
2026-06-08 06:16:34 -07:00
2026-05-18 21:11:02 -07:00
2026-05-14 19:13:14 -07:00
2026-04-30 01:23:29 -07:00
2026-05-30 13:11:25 -07:00
2026-05-18 21:26:12 -07:00
2026-05-25 15:10:23 -07:00
2026-05-25 19:53:59 -07:00
2026-05-23 16:46:01 -07:00
2026-05-23 18:43:10 -07:00
2026-05-25 14:56:38 -07:00
2026-05-29 07:06:08 -07:00
2026-05-17 14:02:45 -07:00
2026-05-27 08:50:53 -07:00
2026-05-06 21:14:34 -07:00
2026-05-22 13:38:07 -07:00
2026-05-03 20:41:39 -07:00
2026-05-23 10:21:59 -07:00
2026-04-25 12:25:34 -07:00
2026-04-08 23:26:11 -10:00
2026-05-09 20:46:34 -07:00
2026-06-12 07:28:13 -07:00
2026-06-12 07:28:13 -07:00
2026-05-25 14:20:19 -07:00
2026-06-12 06:05:34 -07:00
2026-06-12 06:05:34 -07:00
2026-05-26 18:29:03 -07:00
2026-05-18 06:22:12 -07:00
2026-06-09 22:28:44 -07:00
2026-05-18 06:22:12 -07:00
2026-06-01 22:13:19 -07:00
2026-04-23 19:34:27 -07:00
2026-05-02 08:41:11 -07:00
2026-04-20 07:30:00 +08:00
2026-06-09 22:28:44 -07:00
2026-06-03 08:59:39 -07:00
2026-06-09 22:28:44 -07:00
2026-04-21 18:35:45 -07:00
2026-06-03 22:40:12 -07:00
2026-05-09 20:46:34 -07:00
2026-05-25 13:15:11 -07:00
2026-05-11 19:25:48 -07:00
2026-05-25 14:43:12 -07:00
2026-06-03 08:00:57 -07:00
2026-06-03 08:00:57 -07:00
2026-04-29 23:46:36 -07:00
2026-04-30 20:47:32 -07:00
2026-05-27 08:27:05 -07:00
2026-05-21 18:57:05 -07:00
2026-05-22 08:00:42 -07:00
2026-04-12 13:23:55 -10:00
2026-05-14 19:13:14 -07:00
2026-05-28 19:04:48 -07:00
2026-04-25 12:25:34 -07:00
2026-06-01 23:03:09 -07:00
2026-06-01 23:03:09 -07:00
2026-05-27 08:50:53 -07:00
2026-05-31 08:20:25 -07:00
2026-05-18 21:11:02 -07:00
2026-05-07 10:03:38 -07:00
2026-05-07 21:52:58 -07:00
2026-05-07 21:52:58 -07:00
2026-04-16 23:03:15 -07:00
2026-04-22 01:34:22 -07:00
2026-06-03 14:14:13 -07:00
2026-06-03 22:40:12 -07:00
2026-05-24 11:37:03 -07:00
2026-04-22 01:34:22 -07:00
2026-05-24 00:00:39 -07:00
2026-05-11 23:20:17 -07:00
2026-05-18 19:34:44 -07:00
2026-05-11 23:20:17 -07:00
2026-05-07 21:52:58 -07:00
2026-05-07 21:52:58 -07:00
2026-05-03 20:16:15 -07:00
2026-05-30 14:56:26 -07:00
2026-05-22 21:04:30 -07:00
2026-04-23 19:34:27 -07:00
2026-05-22 11:53:11 -07:00
2026-05-21 08:59:29 -07:00
2026-05-21 08:59:29 -07:00
2026-05-21 08:59:29 -07:00
2026-06-03 07:09:20 -07:00
2026-05-21 08:29:55 -07:00
2026-05-30 14:56:26 -07:00
2026-05-23 08:49:28 -07:00
2026-06-07 22:05:31 -07:00
2026-06-07 22:05:31 -07:00
2026-06-07 22:05:31 -07:00
2026-06-07 22:05:31 -07:00
2026-05-23 08:49:28 -07:00
2026-04-19 07:14:24 +08:00
2026-05-18 12:53:01 -07:00
2026-04-11 21:25:44 -10:00
2026-04-25 12:25:34 -07:00
2026-05-15 06:48:36 -07:00
2026-04-21 18:35:45 -07:00
2026-05-25 20:00:03 -07:00
2026-04-24 01:39:58 -07:00
2026-05-17 08:00:29 -07:00
2026-05-06 16:32:11 -07:00
2026-05-30 12:07:38 -07:00
2026-06-14 09:32:58 -07:00
2026-05-25 19:43:20 -07:00
2026-06-08 06:16:34 -07:00
2026-04-30 23:17:54 -07:00
2026-04-23 19:34:27 -07:00
2026-06-07 22:05:31 -07:00
2026-06-01 22:01:14 -07:00
2026-05-07 21:52:58 -07:00
2026-04-29 23:46:36 -07:00
2026-06-01 22:28:20 -07:00
2026-05-22 13:38:07 -07:00
2026-05-27 08:27:05 -07:00
2026-06-07 19:12:50 -07:00
2026-05-23 16:46:01 -07:00
2026-05-27 07:01:28 -07:00
2026-05-27 07:01:28 -07:00
2026-05-27 07:01:28 -07:00
2026-05-30 14:56:26 -07:00
2026-05-25 15:46:25 -07:00
2026-05-22 13:38:07 -07:00
2026-05-24 22:56:21 -07:00
2026-05-23 16:46:01 -07:00
2026-05-27 07:01:28 -07:00
2026-05-23 16:46:01 -07:00
2026-05-27 07:01:28 -07:00
2026-05-27 07:01:28 -07:00
2026-05-23 16:46:01 -07:00
2026-05-23 16:46:01 -07:00
2026-05-22 13:38:07 -07:00
2026-05-27 07:01:28 -07:00
2026-05-27 07:01:28 -07:00
2026-05-23 16:46:01 -07:00
2026-05-27 08:27:05 -07:00
2026-05-22 13:38:07 -07:00
2026-05-27 07:01:28 -07:00
2026-04-27 22:59:08 -07:00
2026-05-22 09:10:20 -07:00
2026-05-22 21:18:09 -07:00
2026-05-22 09:10:20 -07:00
2026-06-12 06:05:34 -07:00
2026-05-19 17:14:53 -07:00
2026-05-26 18:29:03 -07:00
2026-04-25 12:25:34 -07:00
2026-04-16 23:03:15 -07:00
2026-06-12 06:05:34 -07:00
2026-05-13 13:14:58 -04:00
2026-05-25 15:10:23 -07:00
2026-05-17 15:41:43 -07:00
2026-05-25 14:20:19 -07:00
2026-04-30 20:47:32 -07:00
2026-05-24 11:37:03 -07:00
2026-06-03 06:20:03 -07:00
2026-06-03 06:20:03 -07:00
2026-05-18 20:55:57 -07:00
2026-05-25 09:57:30 -07:00
2026-05-07 13:17:27 -07:00
2026-05-25 09:57:30 -07:00
2026-06-01 19:09:15 -07:00
2026-05-14 20:15:29 -07:00
2026-04-09 10:17:13 -07:00
2026-05-20 13:55:12 -07:00
2026-06-08 21:19:25 -07:00
2026-05-30 13:11:25 -07:00
2026-05-30 13:11:25 -07:00
2026-05-30 13:11:25 -07:00
2026-04-23 19:34:27 -07:00
2026-05-25 20:00:03 -07:00
2026-04-22 02:07:00 -07:00
2026-05-06 20:39:56 -07:00
2026-05-18 12:53:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-18 12:53:01 -07:00
2026-04-18 16:57:38 +08:00
2026-05-18 12:53:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-18 12:53:01 -07:00
2026-05-18 12:53:01 -07:00
2026-05-18 12:53:01 -07:00
2026-05-19 18:12:01 -07:00
2026-04-30 23:17:54 -07:00
2026-05-19 18:12:01 -07:00
2026-05-18 12:53:01 -07:00
2026-05-18 12:53:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-18 12:53:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-18 12:53:01 -07:00
2026-05-18 12:53:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-19 18:12:01 -07:00
2026-05-19 18:12:01 -07:00
2026-04-14 19:41:34 -10:00
2026-05-11 22:54:35 -07:00
2026-05-14 20:51:11 -07:00
2026-05-23 10:21:59 -07:00
2026-05-30 10:56:46 -07:00
2026-05-18 20:55:57 -07:00
2026-05-14 19:13:14 -07:00
2026-05-22 21:04:30 -07:00
2026-05-22 21:04:30 -07:00
2026-05-25 19:53:59 -07:00
2026-05-25 19:53:59 -07:00
2026-04-29 22:21:07 -07:00
2026-06-08 21:19:25 -07:00
2026-05-23 10:21:59 -07:00
2026-05-14 19:13:14 -07:00
2026-06-07 21:43:28 -07:00
2026-06-07 21:43:28 -07:00
2026-05-23 08:49:28 -07:00
2026-05-23 10:21:59 -07:00
2026-04-22 16:24:23 -07:00
2026-05-06 11:54:06 -07:00
2026-06-16 15:08:47 -07:00
2026-06-07 08:05:34 -07:00
2026-06-03 06:28:21 -07:00
2026-05-19 17:14:53 -07:00
2026-05-26 23:47:05 -07:00
2026-04-22 16:24:23 -07:00
2026-04-29 22:21:07 -07:00
2026-04-29 22:21:07 -07:00
2026-04-29 22:21:07 -07:00
2026-04-29 22:21:07 -07:00
2026-05-17 14:02:45 -07:00
2026-04-13 07:49:13 -10:00
2026-05-17 08:51:33 -07:00
2026-04-21 21:14:17 -07:00
2026-04-21 21:14:17 -07:00
2026-05-24 11:37:03 -07:00
2026-05-08 17:07:51 -07:00
2026-04-22 01:34:22 -07:00
2026-05-22 09:10:20 -07:00
2026-05-22 09:10:20 -07:00
2026-05-30 10:30:56 -07:00
2026-04-09 10:17:13 -07:00
2026-06-01 22:01:14 -07:00
2026-06-03 15:24:00 -07:00
2026-06-07 19:12:50 -07:00
2026-06-03 15:24:00 -07:00
2026-05-06 11:54:06 -07:00
2026-06-03 14:14:13 -07:00
2026-06-01 22:01:14 -07:00
2026-05-18 19:34:44 -07:00
2026-05-30 10:56:46 -07:00
2026-05-26 16:58:18 -07:00
2026-05-24 09:30:57 -07:00
2026-04-29 22:53:41 -07:00
2026-06-16 15:08:47 -07:00
2026-06-16 15:08:47 -07:00
2026-06-16 15:08:47 -07:00
2026-05-27 08:50:53 -07:00
2026-05-27 08:50:53 -07:00
2026-06-16 15:08:47 -07:00
2026-06-07 19:22:33 -07:00
2026-06-16 15:08:47 -07:00
2026-06-03 08:00:57 -07:00
2026-06-01 22:28:20 -07:00
2026-05-25 19:53:59 -07:00
2026-05-25 19:53:59 -07:00
2026-06-01 22:28:20 -07:00
2026-06-03 07:47:21 -07:00
2026-05-27 08:50:53 -07:00
2026-06-03 07:47:21 -07:00
2026-05-25 19:53:59 -07:00
2026-04-25 12:25:34 -07:00
2026-05-26 16:58:18 -07:00
2026-05-23 10:21:59 -07:00
2026-05-21 08:29:55 -07:00
2026-05-09 21:18:53 -07:00
2026-06-08 05:43:23 -07:00
2026-05-10 06:34:40 -07:00
2026-05-24 11:37:03 -07:00
2026-05-20 09:19:18 -07:00
2026-05-07 23:07:00 -07:00
2026-05-09 20:46:34 -07:00
2026-05-07 23:07:00 -07:00
2026-05-10 06:34:40 -07:00
2026-05-10 06:34:40 -07:00
2026-06-07 08:05:34 -07:00
2026-05-20 09:19:18 -07:00
2026-05-10 06:34:40 -07:00
2026-06-10 22:00:36 -07:00
2026-05-11 23:20:17 -07:00
2026-05-23 10:01:08 -07:00
2026-05-18 19:34:44 -07:00
2026-05-22 22:37:15 -07:00
2026-06-01 21:54:13 -07:00
2026-05-22 22:37:15 -07:00
2026-06-07 08:05:34 -07:00
2026-05-22 22:37:15 -07:00
2026-05-22 22:37:15 -07:00
2026-05-18 19:34:44 -07:00
2026-06-12 06:05:34 -07:00
2026-06-12 06:05:34 -07:00
2026-05-25 14:43:12 -07:00
2026-05-23 10:21:59 -07:00
2026-05-13 13:14:58 -04:00
2026-05-22 22:37:15 -07:00
2026-04-29 23:46:36 -07:00
2026-04-14 19:41:34 -10:00
2026-05-07 21:52:58 -07:00
2026-04-20 23:14:38 +08:00
2026-05-04 21:11:15 -07:00
2026-04-25 12:25:34 -07:00
2026-05-18 19:34:44 -07:00
2026-05-22 09:10:20 -07:00
2026-05-08 13:25:48 -07:00
2026-05-11 22:54:35 -07:00
2026-05-18 12:53:01 -07:00
2026-05-18 20:55:57 -07:00
2026-05-08 13:25:48 -07:00
2026-04-19 18:23:02 +08:00
2026-05-07 21:52:58 -07:00
2026-05-21 22:11:00 -07:00
2026-05-26 18:59:17 -07:00
2026-05-22 13:38:07 -07:00
2026-05-08 13:25:48 -07:00
2026-05-18 19:34:44 -07:00
2026-06-14 09:32:58 -07:00
2026-05-07 13:41:46 -07:00
2026-05-13 12:21:21 -04:00
2026-04-22 01:34:22 -07:00
2026-06-14 09:32:58 -07:00
2026-06-14 09:32:58 -07:00
2026-05-06 21:14:34 -07:00
2026-05-18 20:55:57 -07:00
2026-05-12 14:33:29 -07:00
2026-05-28 08:20:58 -07:00
2026-05-28 08:20:58 -07:00
2026-06-03 07:27:34 -07:00
2026-05-26 18:29:03 -07:00
2026-06-03 15:24:00 -07:00
2026-05-14 21:06:42 -07:00
2026-05-06 11:54:06 -07:00
2026-06-03 14:14:13 -07:00
2026-06-01 22:01:14 -07:00
2026-06-12 06:05:34 -07:00
2026-04-20 07:30:00 +08:00
2026-04-09 10:17:13 -07:00
2026-05-18 21:11:02 -07:00
2026-05-25 15:10:23 -07:00
2026-05-06 11:54:06 -07:00