Skip to content

merge: upstream 0b7403c (token speed + M3.1 Flash fallback) — en attente du fix upstream - #80

Merged
tournierjc merged 3 commits into
mainfrom
merge/upstream-0b7403c
Sep 28, 2026
Merged

tournierjc merged 3 commits into
mainfrom
merge/upstream-0b7403c

Conversation

@tournierjc

@tournierjc tournierjc commented Sep 28, 2026 •

Copy link
Copy Markdown
Collaborator

Sync amont 0b7403c (MiniMax-AI/minimax-code, 28/09)

⚠️ En attente du fix upstream — ne pas merger (décision JC). Cette PR reste ouverte pour revue.

Commits amont intégrés (2)

  • 51ac3b2 fix: measure token speed over model generation time (fix: measure token speed over model generation time MiniMax-AI/minimax-code#373) — pris. La vitesse affichée (ligne d'activité et résumé de tour) est le nombre de tokens de sortie divisé par le temps de génération du modèle, hors attente du premier token et hors exécution d'outils. docs/tui-capabilities.md reçoit la section « Output speed » sans réintroduire le libellé MCode : les titres de terminal restent « Kinetick Code ».
  • 0b7403c feat(config): add M3.1 Flash Preview to the fallback catalog (feat(config): add M3.1 Flash Preview to the fallback catalog MiniMax-AI/minimax-code#375) — pris. Ajoute MiniMax-M3.1-Flash-Preview au catalogue de repli MINIMAX_MODELS (fenêtre de contexte, effort, capabilities fichiers) et le test builtin-model-fallback.test.ts. Donnée de catalogue, pas une fonctionnalité réservée au produit MiniMax.

Commit amont ignoré (1)

Déjà dans main (ne pas réappliquer)

Crible télémétrie / identité

Aucun commit de télémétrie dans cet intervalle. Invariants du fork conservés : pas de docs/telemetry.md, pas de requireTelemetry / createTuiBusinessEventTracker, pas de réintroduction de minimax-code, mcode (identité produit), MiniMax Code ou @minimax/code. Versions racine et TUI inchangées (0.6.6). Le test de catalogue reprend les conventions déjà utilisées par le fork (MINIMAX_DATA_DIR, __MAVIS_RUNTIME_DATA_DIR, préfixe temporaire mcode-model-fallback-, comme mcode-config-permissions-).

Conflits résolus

  • test/vitest-suites.json : union des suites fork (copilot, headless exit, session cost, status metrics, etc.) et des nouveaux tests amont (decode-timing, stream-events, turn-output-rate, content-timing, builtin-model-fallback).
  • release/public-source.json : union des chemins, puis régénération via node scripts/source-inventory.mjs --write (4296 fichiers).
  • docs/tui-capabilities.md, chat-controller.ts et son test : merge automatique. Le wording Kinetick Code / KCODE_DEFAULT_AGENT_NAME du fork est conservé ; seul le calcul de débit de tokens vient de l'amont.
  • packages/config/src/config.ts : merge automatique de l'entrée de modèle, sans toucher BRAND (.kinetick) ni la version.

Change

Mesure du débit de tokens sur le temps de génération réel, et ajout de MiniMax-M3.1-Flash-Preview au catalogue de repli de premier lancement. Pas de changement de version ni d'identité produit.

9628780 corrige le verify Ubuntu déjà rouge sur main : le test de troncature bash à sortie d'erreur large quitte via process.exitCode pour que Node 24 vide stderr avant la fin du processus.

  • PR labels: non appliqués ici (sync amont, en attente de revue JC).

Validation

  • Checks run and results: pnpm verify (profil full) PASS — 15/15 gates sur c9b95cb, Linux, Node.js 22.22.2, pnpm 9.12.0.
    • check:source PASS (4296 fichiers)
    • check:tsconfig PASS (129 exports)
    • export source preview PASS
    • test:release-tools PASS (50 pass / 1 skip / 0 fail)
    • lint:tui PASS
    • typecheck PASS
    • build PASS
    • check:standalone PASS
    • check:egress PASS
    • test:artifact PASS
    • test:capabilities PASS (207 fichiers, 5350 passés, 15 skipped, 0 failed)
    • test:status-contract PASS (9)
    • test:smoke PASS (20 pass / 1 skip / 0 fail)
    • test:byok PASS (4/4)
    • test:policy PASS (142)
    • git diff --check propre
  • GitHub CI sur le sync c9b95cb (run 36386311146) : verify (macos-latest, 24) PASS ; verify (ubuntu-latest, 24) FAIL sur packages/agent-tools/test/desktop/local-bash-output.test.ts (« caps a large nonzero-exit result… », error-row-399 absent, original_bytes=32020). Même échec déjà présent sur main a80e00c (run 36344499821, original_bytes=32125).
  • Correctif 9628780 : le fixture appelait process.exit(7). Sur Node 24, cet appel revient avant que stderr (pipe) soit entièrement vidé. Un runner Ubuntu chargé ne recevait qu'environ 32 KiB, donc la preview head/tail s'arrêtait vers error-row-305 et l'assertion error-row-399 échouait. Le script fixe maintenant process.exitCode = 7, ce qui laisse le runtime vider stdout et stderr. L'assertion head/tail est inchangée. Contrôle local Node 24.21.0 : 15/15 puis 5/5 sous charge CPU sur packages/agent-tools/test/desktop/local-bash-output.test.ts.
  • Performance: basic. Le changement mesure le débit déjà affiché ; il ne modifie pas le traitement d'historique, le stockage ou l'exécution d'outils au-delà du chronométrage de génération. Le workflow Performance de la PR est vert.
  • NOT RUN localement : test:windows, test:sandbox (macOS) et test:release-package (archive npm). Pas d'appel fournisseur réel.

Publication and contribution checks

  • I have permission to contribute these changes under the existing licenses applicable to the changed files/packages; imported material and its provenance are identified and existing notices are preserved.
  • No credentials, account data, real user content, internal source history or private review material is included.
  • Added/removed source files were reviewed before regenerating release/public-source.json; new tests are declared in test/vitest-suites.json where applicable.
  • Shared English/Chinese documentation and capability/verification records are updated where applicable. Mock/offline results are not described as live-service acceptance.

Maintainer handoff

Publication scope or license changes (if any): none.

Shared-source port: this PR is the reviewed fork port of upstream 51ac3b2 and 0b7403c. 836580e is intentionally not ported. 9628780 is a fork-side CI fix for the Node 24 stderr flush race; it is not an upstream port.

Open in Web Open in Cursor 

hetaoBackend and others added 3 commits September 28, 2026 06:22
(cherry picked from commit 51ac3b2)

Co-authored-by: tournierjc <tournierjc@users.noreply.github.com>
…-AI#375)

Include context window and effort controls in the first-run catalog while preserving existing managed snapshots.

Docs-Impact: Existing model selection workflow is unchanged.

Assisted-by: codex-cli reason:m31-flash-fallback-sync
(cherry picked from commit 0b7403c)
Node 24's process.exit() returns before a piped stderr stream is fully
flushed. On a busy Ubuntu runner the desktop bash truncation test then
captured about 32KiB and missed the tail row. Exit via process.exitCode
so the runtime drains both streams before the command ends.

Co-authored-by: tournierjc <tournierjc@users.noreply.github.com>
@tournierjc
tournierjc merged commit 1a270ba into main Sep 28, 2026
7 checks passed
@tournierjc
tournierjc deleted the merge/upstream-0b7403c branch September 28, 2026 21:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants