a25209bbb2
v0.42.58.0 fix(ai): provider-agnostic gateway — env clobber, base-URL /v1, embedding dims ( #1249 #1250 #1292 #2271 #2209 ) ( #2627 )
...
* fix(ai): drop empty-string env values before merge so they can't clobber config keys (#1249 )
Claude Code injects ANTHROPIC_API_KEY='' to neuter subprocess LLM calls; an
unconditional process.env spread let that empty string override a valid
config.json key, breaking every gateway op with NO_ANTHROPIC_API_KEY. Filter
'' / undefined before the merge; '0' and 'false' are preserved.
* fix(ai): normalize native provider base URLs + replace embedding guard with a dims-presence check (#1250 , #1292 )
#1250 : createAnthropic/createOpenAI were called with no baseURL, so an
env-injected bare host (e.g. ANTHROPIC_BASE_URL without /v1) 404'd. Add a
shared resolveNativeBaseUrl and pass a normalized baseURL at all anthropic +
openai native sites (google deferred until its suffix is verified).
#1292/D6: the user_provided_model_unset guard was structurally unreachable as
a no-model check (parseModelId throws on a bare provider) and only ever
false-positived for litellm:<model>, silently disabling vector search. Replace
it with a real dims-presence check for user-provided/zero-default recipes and
delete the dead branch in both consumers. Also stop configureGateway from
fabricating a default embedding_dimensions, so 'no dims set' stays honest.
* fix(ai): trust user-declared embedding dims for local recipes + litellm /v1 hint (#2271 , #2209 )
#2271 : a new trust_custom_dims flag adds a passthrough tier so ollama /
llama-server / litellm accept a user-supplied --embedding-dimensions instead of
being hard-rejected. Fail-closed for fixed-dim providers (openai/voyage/
zeroentropy) and excludes openrouter (declares dims_options). Register modern
ollama embed model names.
#2209 : litellm setup_hint now states the /v1 path convention and the docs
pointer is corrected to docs/integrations/embedding-providers.md.
* docs+test(ai): KEY_FILES current-state for provider-agnostic gateway + embed-preflight dims-unset test (#1249 , #1250 , #1292 )
* fix(ai): point user_provided_dims_unset remediation at 'gbrain init' (config set rejects it) + coverage
Pre-landing adversarial review (P1): the new dims-unset guard told users to run
'gbrain config set embedding_dimensions <N>', which config.ts hard-rejects (it's a
schema-sizing field). Both consumer messages now point at 'gbrain init
--embedding-dimensions'. Adds: pgvector-cap-still-fires regression for the
trust_custom_dims passthrough, and a configureGateway backfill-invariant test.
* chore: bump version and changelog (v0.42.57.0)
Provider-agnostic plumbing wave: #1249 empty-env clobber, #1250 native baseURL
normalization, #1292 embedding dims-presence guard, #2271 trust_custom_dims
passthrough, #2209 litellm /v1 hint.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* docs: sync embedding-providers guide for provider-agnostic gateway wave (v0.42.57.0)
Post-ship doc drift fix for the v0.42.57.0 AI-gateway wave:
- LiteLLM section now names the /v1 base-URL convention (#2209 ).
- Ollama section lists the newly-registered modern embedders qwen3-embed-8b
+ snowflake-arctic-embed-l-v2, and notes dims-trust for local recipes (#2271 ).
- llama-server section notes gbrain trusts the user-declared dimension (#2271 ).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
* docs: post-ship doc sweep for v0.42.57.0 provider-agnostic gateway wave
- KEY_FILES.md types.ts entry: document EmbeddingTouchpoint.trust_custom_dims
(#2271 passthrough tier, runs after dims_options + Matryoshka allowlists)
- ENGINES.md: embedding design-choice note now names the provider-agnostic
gateway delegation instead of the stale OpenAI-only parenthetical
- embedding-providers.md: drop an exact-duplicate doctor-8c paragraph
- llms-full.txt regenerated (ENGINES.md is inlined in the bundle)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
* docs: apply codex doc-review findings for v0.42.57.0 (base-URL env note, litellm multimodal)
- embedding-providers.md OpenAI section: document OPENAI_BASE_URL /
ANTHROPIC_BASE_URL bare-host /v1 normalization (#1250 user-facing surface)
- TL;DR table: litellm multimodal is backend-permitting (recipe declares
supports_multimodal: true, routed via the openai-compat multimodal path),
not "no"
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
* test: pin engine-find-trajectory schema to 1536 + stop gateway-state leaks across shard files
CI shard 5 failed 7 findTrajectory tests with 'expected 1280 dimensions, not
1536': engine-find-trajectory hardcodes 1536-d vectors but sizes its schema
from AMBIENT gateway state in beforeAll — which runs before the
legacy-embedding-preload's per-test 1536 restore. A preceding file that ends
with a dimensionless configureGateway (facts-extract-silent-no-op) or a bare
resetGateway poisons the next fresh initSchema down to 1280-d columns. The
new test files in this PR reshuffled shard bin-packing and exposed the trap.
- engine-find-trajectory: pin OpenAI/1536 explicitly before initSchema (the
pattern bunfig's preload documents) — deterministic regardless of neighbors
- facts-extract-silent-no-op, diagnose-embedding-dims, embed-preflight:
restore the legacy 1536 pin in afterAll instead of ending reset/dimensionless
Reproduced: synthetic dimensionless-gateway file + old victim = the exact 7
CI failures; with the pin = 0. Verified in-process pair runs both orders.
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-10 10:05:23 +09:00
..
2026-07-10 10:05:23 +09: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-06-17 14:02:47 -07:00
2026-06-07 08:05:34 -07:00
2026-06-01 21:54:13 -07:00
2026-07-02 08:00:58 -07:00
2026-06-01 22:13:19 -07:00
2026-06-03 07:09:20 -07:00
2026-07-02 10:48:54 -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-17 14:02:47 -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-06-16 22:45:22 -07:00
2026-06-16 22:45:22 -07:00
2026-06-16 22:45:22 -07:00
2026-06-16 22:45:22 -07:00
2026-06-21 06:36:43 -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-06-21 06:36:43 -07:00
2026-06-21 06:36:43 -07:00
2026-06-21 06:36:43 -07:00
2026-06-21 06:36:43 -07:00
2026-05-22 21:04:30 -07:00
2026-06-21 06:36:43 -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-06-17 06:41:37 -07:00
2026-05-10 20:50:40 -07:00
2026-06-17 06:41:37 -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-06-24 06:05:16 -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-21 06:36:43 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -07:00
2026-07-02 10:48:54 -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-06-21 06:36:43 -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-06-17 06:58:07 -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-06-21 06:36:43 -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-06-17 14:02:47 -07:00
2026-06-17 14:02:47 -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-06-17 06:41:37 -07: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-07-10 10:05:23 +09: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-07-10 10:05:23 +09: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-07-10 10:05:23 +09: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-07-02 10:48:54 -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-07-10 10:05:23 +09: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-16 22:32:38 -07:00
2026-06-21 06:36:43 -07:00
2026-06-17 06:41:37 -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-07-02 10:48:54 -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-07-02 08:00:58 -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-21 06:36:43 -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-07-02 08:00:58 -07:00
2026-07-02 10:48:54 -07:00
2026-05-27 06:30:46 -07:00
2026-06-17 14:02:47 -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-06-17 06:58:07 -07:00
2026-06-17 14:02:47 -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-07-02 08:00:58 -07: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-07-06 02:38:37 -07:00
2026-07-06 02:38:37 -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-06-16 22:45:22 -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-06-17 14:02:47 -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-07-02 10:48:54 -07:00
2026-05-22 13:38:07 -07:00
2026-07-02 10:48:54 -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-06-16 22:45:22 -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-06-16 22:45:22 -07:00
2026-05-19 18:12:01 -07:00
2026-04-30 23:17:54 -07:00
2026-06-16 22:45:22 -07:00
2026-05-18 12:53:01 -07:00
2026-06-16 22:45:22 -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-06-21 06:36:43 -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-21 06:36:43 -07:00
2026-06-03 15:24:00 -07:00
2026-06-21 06:36:43 -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-21 06:36:43 -07:00
2026-05-18 19:34:44 -07:00
2026-05-30 10:56:46 -07:00
2026-06-17 14:02:47 -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-21 06:36:43 -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-17 14:02:47 -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-07-02 08:00:58 -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