fix: repair post-merge storage and Runtime Host contracts - #3796
Merged
M4n5ter merged 2 commits intoAug 25, 2026
Conversation
This was referenced Aug 25, 2026
Generated-by: Codex
Generated-by: Codex
liugddx
force-pushed
the
fix/session-migration-30-convergence
branch
from
August 25, 2026 12:31
1b59330 to
cfda259
Compare
14 tasks
M4n5ter
approved these changes
Aug 25, 2026
M4n5ter
left a comment
Member
There was a problem hiding this comment.
Reviewed the typed-request migration and the version-30 schema convergence. The changes preserve the affected test semantics, cover every known merged version-30 shape, and keep initialization failure cleanup bounded. Current CI is green and later main commits do not overlap these files.
yunaremaia
added a commit
to yunaremaia/maka
that referenced
this pull request
Aug 25, 2026
This was referenced Aug 25, 2026
37 tasks
6 tasks
M4n5ter
pushed a commit
to yunaremaia/maka
that referenced
this pull request
Aug 26, 2026
M4n5ter
pushed a commit
to yunaremaia/maka
that referenced
this pull request
Aug 26, 2026
M4n5ter
pushed a commit
to yunaremaia/maka
that referenced
this pull request
Aug 26, 2026
M4n5ter
pushed a commit
to yunaremaia/maka
that referenced
this pull request
Aug 26, 2026
Astro-Han
added a commit
that referenced
this pull request
Aug 28, 2026
* fix(core): add DeepSeek V4 Flash Vision to model metadata deepseek-v4-flash-vision-exp is returned by the first-party /models endpoint but was absent from STATIC_MODEL_METADATA, causing Maka to classify it as text-only and filter image attachments before the request reaches the provider. Add the model ID with vision capability to both STATIC_MODEL_METADATA and CURATED_CATALOG_FALLBACK_MODELS so the existing DeepSeek adapter passes image content through. Fixes: #3417 Signed-off-by: Yunare Maia <yunare@gmail.com> * style: apply biome formatting to model metadata (CI fix) * fix(core): include 'low' effort for deepseek-v4-flash-vision-exp Per review: models.dev (refreshed 2026-08-21), the official Thinking Mode guide, and the deepseek-v4-pro entry all confirm low/high/max. The pinned ['high','max'] was inherited from the stale pre-0731 sibling entry. * fix(core): declare text/image modalities for deepseek-v4-flash-vision-exp Add the explicit modalities entry suggested in review so attachment routing sees image input without relying on generated snapshots, and add a focused regression test covering vision resolution, input modalities, and fallback-catalog presence for the bare model id. Co-authored-by: Yunare Maia <yunare@gmail.com> * chore: re-trigger CI after upstream main repair (#3796) * fix(core): add displayName, description, lastUpdated for deepseek-v4-flash-vision-exp Addresses reviewer feedback on #3605: adds displayName, description, and lastUpdated fields to the STATIC_MODEL_METADATA entry so the model picker shows a friendly name instead of the bare model ID. Co-authored-by: Astro-Han <Astro-Han@users.noreply.github.com> * style(core): biome format model-metadata.ts (description line wrap) * test(core): add regression tests for DeepSeek V4 Flash Vision metadata - Added tests to verify vision support, modalities, and metadata lookup - Added catalog test for V4 vision model display metadata - Fixes reviewer feedback on #3605 * fix(test): remove buildConnectionModelCatalogEntries import from model-metadata.test.ts The function is exported from model-catalog.ts, not model-metadata.ts. Local vitest runs pass because it compiles differently than tsc. --------- Signed-off-by: Yunare Maia <yunare@gmail.com> Co-authored-by: Astro-Han <Astro-Han@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Repair two independent post-merge regressions that currently form a required-CI bootstrap loop on
main:Mapconstruction silently retained only the later migration, so current-main databases record version 30 without creatingmessage_admissions.RuntimeHostConnectionaliases but left three queue-test calls onqueryTurn,stopTurn, andstartTurn, so current main does not build.The fixes remain separate commits in this PR.
Migration compatibility
Schema version advances to 31. Migration 30 retains the admission-table authority introduced by #3721. Migration 31 uses guarded creation to converge every version-30 shape that may already exist:
Fresh/older databases run 30 then 31 and reach the same schema. Module initialization now verifies that migration keys cover every version exactly once by rejecting duplicate-or-missing
Mapentries.The session metadata constructor also closes a newly opened
DatabaseSyncwhen schema configuration or migration rejects, so a newer-schema refusal does not leak its handle on Windows.Runtime Host test migration
The three stale calls are migrated to the existing typed operations without changing inputs or assertions:
turn.queryturn.stopturn.startVerification
git diff --check: passed.Fixes #3788. Fixes #3790.
AI use
Codex diagnosed the semantic merge collision, implemented the compatibility migration and stale-call updates, and ran the listed checks.
Checklist
git diff --checkpasstestpassed before the trailer-only history rewrite; a fresh check was triggered for the new headDoes this PR entail a change in behavior?