lobes-cli 0.78.3__tar.gz → 0.78.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (887) hide show
  1. lobes_cli-0.78.4/.devague/current +1 -0
  2. lobes_cli-0.78.4/.devague/frames/qwen3-8-flash-next-on-thor.json +301 -0
  3. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/CHANGELOG.md +11 -0
  4. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/PKG-INFO +1 -1
  5. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/experiments/README.md +1 -0
  6. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/experiments/qwen3.8-flash-next-gguf-llamacpp-vllm.md +13 -2
  7. lobes_cli-0.78.4/docs/experiments/qwen3.8-flash-next-nvfp4-thor-reference.md +285 -0
  8. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/pyproject.toml +1 -1
  9. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/uv.lock +1 -1
  10. lobes_cli-0.78.3/.devague/current +0 -1
  11. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.agex/data/pr/events.jsonl +0 -0
  12. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/ask-colleague/SKILL.md +0 -0
  13. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/ask-colleague/prompts/explore.md +0 -0
  14. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/ask-colleague/prompts/review.md +0 -0
  15. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/ask-colleague/prompts/write.md +0 -0
  16. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/ask-colleague/scripts/ask-colleague.sh +0 -0
  17. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/assign-to-workforce/SKILL.md +0 -0
  18. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/assign-to-workforce/scripts/assign-to-workforce.sh +0 -0
  19. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/challenge/SKILL.md +0 -0
  20. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/cicd/SKILL.md +0 -0
  21. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/cicd/scripts/_resolve-nick.sh +0 -0
  22. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/cicd/scripts/portability-lint.sh +0 -0
  23. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/cicd/scripts/pr-reply.sh +0 -0
  24. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/cicd/scripts/pr-status.sh +0 -0
  25. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/cicd/scripts/workflow.sh +0 -0
  26. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/communicate/SKILL.md +0 -0
  27. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/communicate/scripts/fetch-issues.sh +0 -0
  28. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/communicate/scripts/mesh-message.sh +0 -0
  29. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/communicate/scripts/post-comment.sh +0 -0
  30. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/communicate/scripts/post-issue.sh +0 -0
  31. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/communicate/scripts/templates/skill-update-brief.md +0 -0
  32. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/deviate/SKILL.md +0 -0
  33. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/doc-test-alignment/SKILL.md +0 -0
  34. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/doc-test-alignment/scripts/check.sh +0 -0
  35. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/model-runner/SKILL.md +0 -0
  36. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/model-runner/scripts/model-runner.sh +0 -0
  37. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/recall/SKILL.md +0 -0
  38. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/recall/scripts/recall.sh +0 -0
  39. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/remember/SKILL.md +0 -0
  40. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/remember/scripts/remember.sh +0 -0
  41. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/run-tests/SKILL.md +0 -0
  42. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/run-tests/scripts/test.sh +0 -0
  43. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/scope/SKILL.md +0 -0
  44. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/sonarclaude/SKILL.md +0 -0
  45. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/sonarclaude/scripts/sonar.sh +0 -0
  46. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/spec-to-plan/SKILL.md +0 -0
  47. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/spec-to-plan/scripts/spec-to-plan.sh +0 -0
  48. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/summarize-delivery/SKILL.md +0 -0
  49. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/think/SKILL.md +0 -0
  50. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/think/scripts/think.sh +0 -0
  51. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/validate-delivery/SKILL.md +0 -0
  52. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/version-bump/SKILL.md +0 -0
  53. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills/version-bump/scripts/bump.py +0 -0
  54. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.claude/skills.local.yaml.example +0 -0
  55. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/current_plan +0 -0
  56. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/capacity-relative-pool-routing.json +0 -0
  57. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/cortex-replica-pool-199.json +0 -0
  58. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/deployment-lock-per-box.json +0 -0
  59. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/dspark-speculation-on-the-spark-cortex.json +0 -0
  60. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/every-lobe-in-the-mesh-can-see-the-spark-reaches-t.json +0 -0
  61. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/hand-lobe-lfm2-5-1-2b.json +0 -0
  62. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/lightning-on-orin.json +0 -0
  63. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/lobes-capabilities-tells-you-where-a-lobe-is-serve.json +0 -0
  64. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/mesh-boot-window-and-capabilities-advert.json +0 -0
  65. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/mesh-brain-join.json +0 -0
  66. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/nemotron-lightning-worker.json +0 -0
  67. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/orin-associate-at-1m.json +0 -0
  68. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/qwen3-8-gguf-llamacpp.json +0 -0
  69. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/realtime-voice-to-voice-astro-test-site-151.json +0 -0
  70. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/reranker-calibration-227.json +0 -0
  71. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/thor-cortex-speculation.json +0 -0
  72. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/thor-worker-arm-qwen3-6-35b-a3b-recipes.json +0 -0
  73. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/deliveries/unsloth-qat-senses-first-class-orin-variation.json +0 -0
  74. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/capacity-relative-pool-routing.json +0 -0
  75. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/chatterbox-on-thor-sm-110.json +0 -0
  76. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/compose-chain-unification-init-repair-doctor-stale.json +0 -0
  77. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/cortex-replica-pool-199.json +0 -0
  78. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/deployment-lock-per-box.json +0 -0
  79. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/dspark-speculation-on-the-spark-cortex.json +0 -0
  80. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/every-lobe-in-the-mesh-can-see-the-spark-reaches-t.json +0 -0
  81. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/flash-next-on-vllm.json +0 -0
  82. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/hand-lobe-lfm2-5-1-2b.json +0 -0
  83. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lightning-on-orin.json +0 -0
  84. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lightning-on-thor.json +0 -0
  85. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-adds-a-third-middle-model-tier-and-pressure.json +0 -0
  86. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-capabilities-tells-you-where-a-lobe-is-serve.json +0 -0
  87. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-exposes-the-full-colleague-runtime-stack-as.json +0 -0
  88. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-fits-the-machine-it-lands-on-one-command-det.json +0 -0
  89. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-gateway-relays-sse-streams-frame-by-frame-th.json +0 -0
  90. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-never-advertises-a-capability-it-cannot-serv.json +0 -0
  91. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-now-defaults-to-a-spark-duo-the-qwen3-6-27b.json +0 -0
  92. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-preserves-qwen-thinking-traces-across-multi.json +0 -0
  93. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-serves-strict-grammar-constrained-tool-calls.json +0 -0
  94. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-serves-the-brain-shape-you-choose-machine-as.json +0 -0
  95. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-serves-the-mesh-brain-end-state-one-lobe-per.json +0 -0
  96. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-ships-a-custom-vllm-image-from-nvcr-io-nvidi.json +0 -0
  97. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-ships-a-minor-lobe-a-cheap-warm-co-resident.json +0 -0
  98. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-ships-a-per-lobe-benchmark-suite-speed-paral.json +0 -0
  99. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-tells-clients-the-truth-about-a-fleet-a-cons.json +0 -0
  100. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/lobes-unifies-its-generate-lane-on-one-vllm-nightl.json +0 -0
  101. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/mesh-boot-window-and-capabilities-advert.json +0 -0
  102. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/mesh-brain-join.json +0 -0
  103. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/model-gear-now-serves-an-embedding-gear-qwen3-embe-2.json +0 -0
  104. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/model-gear-now-serves-an-embedding-gear-qwen3-embe.json +0 -0
  105. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/model-gear-owns-the-audio-i-o-surface-end-to-end-m.json +0 -0
  106. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/nemotron-lightning-worker.json +0 -0
  107. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/orin-associate-at-1m.json +0 -0
  108. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/peer-only-replica-pools.json +0 -0
  109. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/proxy-lobes-pairwise-auth.json +0 -0
  110. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/quick-wins-finish-the-rename.json +0 -0
  111. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/qwen3-8-27b-gguf-on-the-spark.json +0 -0
  112. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/qwen3-8-cortex-upgrade.json +0 -0
  113. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/qwen3-8-flash-next-gguf-candidate.json +0 -0
  114. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/qwen3-8-gguf-llamacpp.json +0 -0
  115. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/realtime-voice-to-voice-astro-test-site-151.json +0 -0
  116. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/realtime-ws-server-vad-149.json +0 -0
  117. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/reranker-calibration-227.json +0 -0
  118. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/stt-readiness-truth-155.json +0 -0
  119. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/targeted-ops-and-honest-streams.json +0 -0
  120. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/the-gemma-4-12b-gear-gets-speculative-decoding-lob.json +0 -0
  121. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/thor-cortex-speculation.json +0 -0
  122. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/thor-worker-arm-qwen3-6-35b-a3b-recipes.json +0 -0
  123. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/thor-worker-lobe-qwen3-6-35b-a3b.json +0 -0
  124. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/under-pressure-lobes-tells-you-the-cortex-model-is.json +0 -0
  125. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/frames/unsloth-qat-senses-first-class-orin-variation.json +0 -0
  126. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/capacity-relative-pool-routing.json +0 -0
  127. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/compose-chain-unification-init-repair-doctor-stale.json +0 -0
  128. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/cortex-replica-pool-199.json +0 -0
  129. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/deployment-lock-per-box.json +0 -0
  130. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/dspark-speculation-on-the-spark-cortex.json +0 -0
  131. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/every-lobe-in-the-mesh-can-see-the-spark-reaches-t.json +0 -0
  132. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/hand-lobe-lfm2-5-1-2b.json +0 -0
  133. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lightning-on-orin.json +0 -0
  134. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-adds-a-third-middle-model-tier-and-pressure.json +0 -0
  135. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-capabilities-tells-you-where-a-lobe-is-serve.json +0 -0
  136. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-exposes-the-full-colleague-runtime-stack-as.json +0 -0
  137. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-fits-the-machine-it-lands-on-one-command-det.json +0 -0
  138. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-gateway-relays-sse-streams-frame-by-frame-th.json +0 -0
  139. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-never-advertises-a-capability-it-cannot-serv.json +0 -0
  140. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-now-defaults-to-a-spark-duo-the-qwen3-6-27b.json +0 -0
  141. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-preserves-qwen-thinking-traces-across-multi.json +0 -0
  142. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-serves-strict-grammar-constrained-tool-calls.json +0 -0
  143. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-serves-the-brain-shape-you-choose-machine-as.json +0 -0
  144. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-serves-the-mesh-brain-end-state-one-lobe-per.json +0 -0
  145. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-ships-a-custom-vllm-image-from-nvcr-io-nvidi.json +0 -0
  146. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-ships-a-minor-lobe-a-cheap-warm-co-resident.json +0 -0
  147. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-ships-a-per-lobe-benchmark-suite-speed-paral.json +0 -0
  148. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-tells-clients-the-truth-about-a-fleet-a-cons.json +0 -0
  149. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/lobes-unifies-its-generate-lane-on-one-vllm-nightl.json +0 -0
  150. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/mesh-boot-window-and-capabilities-advert.json +0 -0
  151. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/mesh-brain-join.json +0 -0
  152. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/model-gear-now-serves-an-embedding-gear-qwen3-embe-2.json +0 -0
  153. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/model-gear-owns-the-audio-i-o-surface-end-to-end-m.json +0 -0
  154. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/nemotron-lightning-worker.json +0 -0
  155. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/orin-associate-at-1m.json +0 -0
  156. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/peer-only-replica-pools.json +0 -0
  157. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/proxy-lobes-pairwise-auth.json +0 -0
  158. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/quick-wins-finish-the-rename.json +0 -0
  159. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/qwen3-8-cortex-upgrade.json +0 -0
  160. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/qwen3-8-flash-next-gguf-candidate.json +0 -0
  161. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/qwen3-8-gguf-llamacpp.json +0 -0
  162. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/realtime-voice-to-voice-astro-test-site-151.json +0 -0
  163. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/realtime-ws-server-vad-149.json +0 -0
  164. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/reranker-calibration-227.json +0 -0
  165. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/stt-readiness-truth-155.json +0 -0
  166. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/the-gemma-4-12b-gear-gets-speculative-decoding-lob.json +0 -0
  167. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/thor-cortex-speculation.json +0 -0
  168. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/thor-worker-arm-qwen3-6-35b-a3b-recipes.json +0 -0
  169. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/thor-worker-lobe-qwen3-6-35b-a3b.json +0 -0
  170. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/under-pressure-lobes-tells-you-the-cortex-model-is.json +0 -0
  171. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.devague/plans/unsloth-qat-senses-first-class-orin-variation.json +0 -0
  172. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.eidetic/memory/colleague__public.jsonl +0 -0
  173. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.eidetic/memory/default__public.jsonl +0 -0
  174. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.eidetic/memory/lobes__public.jsonl +0 -0
  175. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.flake8 +0 -0
  176. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.github/workflows/publish.yml +0 -0
  177. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.github/workflows/tests.yml +0 -0
  178. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.gitignore +0 -0
  179. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/.markdownlint-cli2.yaml +0 -0
  180. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/AGENTS.md +0 -0
  181. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/CLAUDE.md +0 -0
  182. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/LICENSE +0 -0
  183. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/README.md +0 -0
  184. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/culture.yaml +0 -0
  185. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/README.md +0 -0
  186. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/VARIATION.template.md +0 -0
  187. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/Dockerfile.gateway +0 -0
  188. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/Dockerfile.vllm-gemma4 +0 -0
  189. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/VARIATION.md +0 -0
  190. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/deployment.lock.toml +0 -0
  191. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/docker-compose.override.yml +0 -0
  192. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/docker-compose.shape.yml +0 -0
  193. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/docker-compose.yml +0 -0
  194. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/mg-logwrap.sh +0 -0
  195. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/qwen3_reranker.jinja +0 -0
  196. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/deployments/jetson-agx-thor__thor-worker/qwen3_thinking_tool_parser.py +0 -0
  197. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/chatterbox-tts.md +0 -0
  198. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/colleague-stack.md +0 -0
  199. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-07-16-proxy-lobes-pairwise-auth.md +0 -0
  200. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-07-21-realtime-voice-to-voice-astro-test-site-151.md +0 -0
  201. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-04-unsloth-qat-senses-first-class-orin-variation.md +0 -0
  202. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-10-hand-lobe-lfm2-5-1-2b.md +0 -0
  203. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-20-nemotron-lightning-worker.md +0 -0
  204. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-22-qwen3-8-gguf-llamacpp.md +0 -0
  205. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-23-qwen3-8-gguf-llamacpp-deviation-ledger.md +0 -0
  206. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-24-dspark-speculation-on-the-spark-cortex.md +0 -0
  207. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-25-cortex-replica-pool-199.md +0 -0
  208. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-25-lightning-on-orin.md +0 -0
  209. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-25-thor-cortex-speculation.md +0 -0
  210. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-29-deployment-lock-per-box.md +0 -0
  211. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-30-peer-only-replica-pools.md +0 -0
  212. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-08-31-quick-wins-finish-the-rename.md +0 -0
  213. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-09-10-thor-worker-arm-qwen3-6-35b-a3b-recipes.md +0 -0
  214. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-09-11-mesh-brain-join.md +0 -0
  215. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-09-12-mesh-boot-window-and-capabilities-advert.md +0 -0
  216. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deliveries/2026-09-13-orin-associate-at-1m.md +0 -0
  217. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deployment-lock.md +0 -0
  218. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/deployment-shapes.md +0 -0
  219. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/dspark-speculation.md +0 -0
  220. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/durable-logs.md +0 -0
  221. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-14-accept-referral-thor.txt +0 -0
  222. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-14-accept-spark-lobe-gb10.txt +0 -0
  223. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-14-accept-thor-lobe-live-referral-thor.txt +0 -0
  224. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-14-accept-thor-lobe-thor.txt +0 -0
  225. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-14-strict-tools-spark-lobe-spark.txt +0 -0
  226. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-16-proxy-lobes-live-spark-thor.txt +0 -0
  227. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-17-accept-muse-tool-calling-thor.txt +0 -0
  228. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-20-accept-embed-deep-gb10.txt +0 -0
  229. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-21-accept-realtime-spark.txt +0 -0
  230. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-21-accept-voice-loop-spark.txt +0 -0
  231. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-22-accept-realtime-voice-to-voice-spark.txt +0 -0
  232. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-25-accept-by-proxy-spark-f8a9.txt +0 -0
  233. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-31-accept-multimodal-cortex-spark.txt +0 -0
  234. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-31-accept-worker-proxy-spark.txt +0 -0
  235. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-07-31-accept-worker-thor.txt +0 -0
  236. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-04-accept-senses-unsloth-orin.txt +0 -0
  237. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-10-hand-lobe-budget-derivation.txt +0 -0
  238. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-10-partial-hand-orin.txt +0 -0
  239. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-10-partial-hand-spark.txt +0 -0
  240. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-19-accept-qwen38-1m-spark.txt +0 -0
  241. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-19-baseline-qwen3.6-cortex-spark.txt +0 -0
  242. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-19-spike-qwen3.8-official-nightly-spark.txt +0 -0
  243. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-accept-cortex-local-thor.txt +0 -0
  244. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-accept-cortex-repoint-orin.txt +0 -0
  245. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-accept-cortex-repoint-thor.txt +0 -0
  246. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-accept-dual-cortex-mesh.txt +0 -0
  247. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-accept-hand-spark.txt +0 -0
  248. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-accept-worker-hand-spark.txt +0 -0
  249. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-baseline-worker-qwen35b-thor.txt +0 -0
  250. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-hand-thor-blocked-reattributed.txt +0 -0
  251. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-spike-lightning-thor-no-go.txt +0 -0
  252. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-20-spike-nightly-sm110-thor.txt +0 -0
  253. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-21-measure-reasoning-effort-cortex-spark.txt +0 -0
  254. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-23-spike-qwen38-gguf-llamacpp-orin.txt +0 -0
  255. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-24-spike-dspark-cortex-spark.txt +0 -0
  256. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-25-accept-cortex-replica-pool-spark-thor.txt +0 -0
  257. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-25-accept-spark-lobe-dspark-render.txt +0 -0
  258. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-25-baseline-cortex-single-owner.txt +0 -0
  259. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-25-measure-associate-budget-orin.txt +0 -0
  260. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-25-orin-board-state-lightning-spikes.txt +0 -0
  261. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-25-spike-lightning-llamacpp-orin.txt +0 -0
  262. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-25-spike-lightning-vllm-orin.txt +0 -0
  263. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-25-spike-thor-cortex-speculation.txt +0 -0
  264. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-26-accept-orin-associate.txt +0 -0
  265. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-26-associate-gateway-auth-front.txt +0 -0
  266. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-28-accept-capacity-relative-pool-thor-spark.txt +0 -0
  267. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-30-accept-peer-only-pool-orin.txt +0 -0
  268. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-30-accept-reranker-template-spark.txt +0 -0
  269. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-30-baseline-orin-cortex-pinned.txt +0 -0
  270. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-08-30-baseline-reranker-untemplated-spark.txt +0 -0
  271. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-10-accept-nvidia-35b-a3b-thor.txt +0 -0
  272. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-10-accept-thor-worker-flip.txt +0 -0
  273. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-10-baseline-thor-cortex-pre-244.txt +0 -0
  274. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-10-spike-nvidia-35b-a3b-preboot-thor.txt +0 -0
  275. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-10-sweep-mtp-depth-nvidia-35b-a3b-thor.txt +0 -0
  276. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-10-thor-backup-and-rollback-dryrun-244.txt +0 -0
  277. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-10-thor-pressure-floor-244.txt +0 -0
  278. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-11-accept-thor-reranker-template-senses-unproxy.txt +0 -0
  279. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-11-accept-worker-proxy-spark-thor.txt +0 -0
  280. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-12-accept-mesh-boot-window-fleet.txt +0 -0
  281. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-12-accept-mesh-brain-join-fleet.txt +0 -0
  282. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-12-baseline-mesh-cutover.txt +0 -0
  283. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-13-accept-orin-associate-1m.txt +0 -0
  284. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-13-measure-associate-budget-orin-1m.txt +0 -0
  285. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/2026-09-13-spike-lightning-thor-v029.txt +0 -0
  286. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/README-dspark-arms.md +0 -0
  287. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/README-realtime-acceptance.md +0 -0
  288. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/arm-a16-dspark-262k.json +0 -0
  289. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/arm-a16-none-262k.json +0 -0
  290. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/arm-dspark-262k.json +0 -0
  291. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/arm-dspark-768k.json +0 -0
  292. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/arm-mtp-n2-262k.json +0 -0
  293. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/arm-mtp-n2-768k.json +0 -0
  294. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/arm-mtp-n2.json +0 -0
  295. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/arm-none-262k.json +0 -0
  296. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/evidence/arm-none-768k.json +0 -0
  297. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/gateway-fleet.md +0 -0
  298. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/gemma-4-12b-nvfp4.md +0 -0
  299. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/gemma-4-12b-qat-w4a16.md +0 -0
  300. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/gemma-4-31b-nvfp4.md +0 -0
  301. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/gemma4-mtp-draft.md +0 -0
  302. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/image-ledger.md +0 -0
  303. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/lfm2.5-1.2b-hand.md +0 -0
  304. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/machine-profiles.md +0 -0
  305. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/measuring-lane-performance.md +0 -0
  306. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/mistral-small-3.2-24b-nvfp4.md +0 -0
  307. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/model-switch-playbook.md +0 -0
  308. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/nemotron-3.5-lightning-30b-a3b-nvfp4.md +0 -0
  309. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/nvidia-qwen3.6-35b-a3b-nvfp4.md +0 -0
  310. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/openai-api.md +0 -0
  311. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/orin-associate-deployment.md +0 -0
  312. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/orin-profiles.md +0 -0
  313. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/parakeet-stt.md +0 -0
  314. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-06-12-model-gear-owns-the-audio-i-o-surface-end-to-end-m.md +0 -0
  315. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-06-19-model-gear-now-serves-an-embedding-gear-qwen3-embe-2.md +0 -0
  316. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-06-26-lobes-ships-a-minor-lobe-a-cheap-warm-co-resident.md +0 -0
  317. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-06-26-lobes-ships-a-per-lobe-benchmark-suite-speed-paral.md +0 -0
  318. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-06-29-lobes-adds-a-third-middle-model-tier-and-pressure.md +0 -0
  319. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-06-30-lobes-now-defaults-to-a-spark-duo-the-qwen3-6-27b.md +0 -0
  320. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-06-30-lobes-ships-a-custom-vllm-image-from-nvcr-io-nvidi.md +0 -0
  321. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-01-gemma-4-12b-gear-gets-speculative-decoding-draft.md +0 -0
  322. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-01-lobes-unifies-its-generate-lane-on-one-vllm-nightl.md +0 -0
  323. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-03-lobes-exposes-the-full-colleague-runtime-stack-as.md +0 -0
  324. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-03-under-pressure-lobes-tells-you-the-cortex-model-is.md +0 -0
  325. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-04-lobes-tells-clients-the-truth-about-a-fleet-a-cons.md +0 -0
  326. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-07-lobes-preserves-qwen-thinking-traces-across-multi.md +0 -0
  327. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-09-lobes-never-advertises-a-capability-it-cannot-serv.md +0 -0
  328. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-10-lobes-gateway-relays-sse-streams-frame-by-frame-th.md +0 -0
  329. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-13-lobes-fits-the-machine-it-lands-on-one-command-det.md +0 -0
  330. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-14-lobes-serves-strict-grammar-constrained-tool-calls.md +0 -0
  331. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-14-lobes-serves-the-brain-shape-you-choose-machine-as.md +0 -0
  332. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-14-lobes-serves-the-mesh-brain-end-state-one-lobe-per.md +0 -0
  333. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-16-proxy-lobes-pairwise-auth.md +0 -0
  334. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-17-compose-chain-unification-init-repair-doctor-stale.md +0 -0
  335. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-21-realtime-voice-to-voice-astro-test-site-151.md +0 -0
  336. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-21-realtime-ws-server-vad-149.md +0 -0
  337. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-24-stt-readiness-truth-155.md +0 -0
  338. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-25-lobes-capabilities-tells-you-where-a-lobe-is-serve.md +0 -0
  339. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-31-every-lobe-in-the-mesh-can-see-the-spark-reaches-t.md +0 -0
  340. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-07-31-thor-worker-lobe-qwen3-6-35b-a3b.md +0 -0
  341. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-04-unsloth-qat-senses-first-class-orin-variation.md +0 -0
  342. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-10-hand-lobe-lfm2-5-1-2b.md +0 -0
  343. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-19-qwen3-8-cortex-upgrade.md +0 -0
  344. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-20-nemotron-lightning-worker.md +0 -0
  345. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-22-qwen3-8-gguf-llamacpp.md +0 -0
  346. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-24-dspark-speculation-on-the-spark-cortex.md +0 -0
  347. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-25-cortex-replica-pool-199.md +0 -0
  348. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-25-lightning-on-orin.md +0 -0
  349. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-25-thor-cortex-speculation.md +0 -0
  350. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-27-capacity-relative-pool-routing.md +0 -0
  351. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-29-deployment-lock-per-box.md +0 -0
  352. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-30-peer-only-replica-pools.md +0 -0
  353. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-30-reranker-calibration-227.md +0 -0
  354. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-08-31-quick-wins-finish-the-rename.md +0 -0
  355. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-09-10-thor-worker-arm-qwen3-6-35b-a3b-recipes-split.md +0 -0
  356. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-09-10-thor-worker-arm-qwen3-6-35b-a3b-recipes.md +0 -0
  357. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-09-11-mesh-brain-join-split.md +0 -0
  358. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-09-11-mesh-brain-join.md +0 -0
  359. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-09-12-mesh-boot-window-and-capabilities-advert-split.md +0 -0
  360. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-09-12-mesh-boot-window-and-capabilities-advert.md +0 -0
  361. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-09-13-orin-associate-at-1m-split.md +0 -0
  362. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/plans/2026-09-13-orin-associate-at-1m.md +0 -0
  363. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3-14b-nvfp4.md +0 -0
  364. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3-32b-nvfp4.md +0 -0
  365. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3-embedding-0.6b.md +0 -0
  366. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3-embedding-4b.md +0 -0
  367. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3-reranker-0.6b.md +0 -0
  368. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3.5-4b-minor.md +0 -0
  369. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3.6-27b-nvfp4-multimodal.md +0 -0
  370. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3.6-27b-nvfp4.md +0 -0
  371. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3.6-27b-text-nvfp4-mtp.md +0 -0
  372. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3.6-35b-a3b-nvfp4.md +0 -0
  373. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3.8-27b-gguf-llamacpp.md +0 -0
  374. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen3.8-27b-nvfp4.md +0 -0
  375. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/qwen38-rollout-notes.md +0 -0
  376. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/realtime-pipeline.md +0 -0
  377. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/secret-rotation.md +0 -0
  378. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/skill-sources.md +0 -0
  379. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-06-12-model-gear-owns-the-audio-i-o-surface-end-to-end-m.md +0 -0
  380. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-06-19-model-gear-now-serves-an-embedding-gear-qwen3-embe-2.md +0 -0
  381. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-06-26-lobes-ships-a-minor-lobe-a-cheap-warm-co-resident.md +0 -0
  382. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-06-26-lobes-ships-a-per-lobe-benchmark-suite-speed-paral.md +0 -0
  383. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-06-29-lobes-adds-a-third-middle-model-tier-and-pressure.md +0 -0
  384. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-06-30-lobes-now-defaults-to-a-spark-duo-the-qwen3-6-27b.md +0 -0
  385. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-06-30-lobes-ships-a-custom-vllm-image-from-nvcr-io-nvidi.md +0 -0
  386. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-01-gemma-4-12b-gear-gets-speculative-decoding-draft.md +0 -0
  387. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-01-lobes-unifies-its-generate-lane-on-one-vllm-nightl.md +0 -0
  388. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-03-lobes-exposes-the-full-colleague-runtime-stack-as.md +0 -0
  389. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-03-under-pressure-lobes-tells-you-the-cortex-model-is.md +0 -0
  390. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-04-lobes-tells-clients-the-truth-about-a-fleet-a-cons.md +0 -0
  391. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-07-lobes-preserves-qwen-thinking-traces-across-multi.md +0 -0
  392. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-09-lobes-never-advertises-a-capability-it-cannot-serv.md +0 -0
  393. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-10-lobes-gateway-relays-sse-streams-frame-by-frame-th.md +0 -0
  394. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-13-lobes-fits-the-machine-it-lands-on-one-command-det.md +0 -0
  395. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-14-lobes-serves-strict-grammar-constrained-tool-calls.md +0 -0
  396. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-14-lobes-serves-the-brain-shape-you-choose-machine-as.md +0 -0
  397. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-14-lobes-serves-the-mesh-brain-end-state-one-lobe-per.md +0 -0
  398. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-16-proxy-lobes-pairwise-auth.md +0 -0
  399. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-17-compose-chain-unification-init-repair-doctor-stale.md +0 -0
  400. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-21-realtime-voice-to-voice-astro-test-site-151.md +0 -0
  401. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-21-realtime-ws-server-vad-149.md +0 -0
  402. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-24-stt-readiness-truth-155.md +0 -0
  403. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-25-lobes-capabilities-tells-you-where-a-lobe-is-serve.md +0 -0
  404. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-31-every-lobe-in-the-mesh-can-see-the-spark-reaches-t.md +0 -0
  405. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-07-31-thor-worker-lobe-qwen3-6-35b-a3b.md +0 -0
  406. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-04-unsloth-qat-senses-first-class-orin-variation.md +0 -0
  407. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-09-hand-lobe-lfm2-5-1-2b.md +0 -0
  408. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-19-qwen3-8-cortex-upgrade.md +0 -0
  409. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-20-nemotron-lightning-worker.md +0 -0
  410. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-22-qwen3-8-gguf-llamacpp.md +0 -0
  411. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-24-dspark-speculation-on-the-spark-cortex.md +0 -0
  412. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-25-cortex-replica-pool-199.md +0 -0
  413. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-25-lightning-on-orin.md +0 -0
  414. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-25-thor-cortex-speculation.md +0 -0
  415. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-27-capacity-relative-pool-routing.md +0 -0
  416. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-27-flash-next-on-vllm.md +0 -0
  417. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-27-qwen3-8-flash-next-gguf-candidate.md +0 -0
  418. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-29-deployment-lock-per-box.md +0 -0
  419. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-30-peer-only-replica-pools.md +0 -0
  420. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-30-reranker-calibration-227.md +0 -0
  421. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-08-31-quick-wins-finish-the-rename.md +0 -0
  422. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-09-10-thor-worker-arm-qwen3-6-35b-a3b-recipes.md +0 -0
  423. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-09-11-mesh-brain-join.md +0 -0
  424. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-09-12-mesh-boot-window-and-capabilities-advert.md +0 -0
  425. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/specs/2026-09-13-orin-associate-at-1m.md +0 -0
  426. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/superpowers/plans/2026-05-22-scaffold-cli-sibling.md +0 -0
  427. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/superpowers/specs/2026-05-22-scaffold-cli-sibling-design.md +0 -0
  428. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/tensorrt-llm-investigation.md +0 -0
  429. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/thor-worker-flip-rollout-notes.md +0 -0
  430. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/tuning-profiles.md +0 -0
  431. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/validate-tiers.md +0 -0
  432. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/vllm-nightly-migration.md +0 -0
  433. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/docs/worker-lightning-rollout-notes.md +0 -0
  434. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/examples/minor-evals/smoke.jsonl +0 -0
  435. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/__init__.py +0 -0
  436. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/__main__.py +0 -0
  437. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/_metrics.py +0 -0
  438. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/assess.py +0 -0
  439. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/bench/__init__.py +0 -0
  440. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/bench/cat_probe.py +0 -0
  441. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/bench/cat_score.py +0 -0
  442. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/bench/compare.py +0 -0
  443. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/bench/report.py +0 -0
  444. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/catalog.py +0 -0
  445. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/__init__.py +0 -0
  446. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/__init__.py +0 -0
  447. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/_role_probe.py +0 -0
  448. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/assess.py +0 -0
  449. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/benchmark.py +0 -0
  450. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/calibrate.py +0 -0
  451. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/capabilities.py +0 -0
  452. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/cli.py +0 -0
  453. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/doctor.py +0 -0
  454. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/eval.py +0 -0
  455. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/explain.py +0 -0
  456. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/fleet.py +0 -0
  457. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/init.py +0 -0
  458. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/learn.py +0 -0
  459. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/logs.py +0 -0
  460. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/measure.py +0 -0
  461. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/mesh.py +0 -0
  462. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/overview.py +0 -0
  463. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/route.py +0 -0
  464. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/run.py +0 -0
  465. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/serve.py +0 -0
  466. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/status.py +0 -0
  467. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/stop.py +0 -0
  468. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/switch.py +0 -0
  469. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/tunnel.py +0 -0
  470. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/up.py +0 -0
  471. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_commands/whoami.py +0 -0
  472. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_errors.py +0 -0
  473. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_live.py +0 -0
  474. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_output.py +0 -0
  475. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/cli/_runtime_ops.py +0 -0
  476. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/explain/__init__.py +0 -0
  477. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/explain/catalog.py +0 -0
  478. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/__init__.py +0 -0
  479. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/__main__.py +0 -0
  480. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_authlog.py +0 -0
  481. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_config.py +0 -0
  482. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_mesh_config.py +0 -0
  483. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_mesh_roster.py +0 -0
  484. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_mesh_routes.py +0 -0
  485. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_mesh_routing.py +0 -0
  486. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_mesh_wire.py +0 -0
  487. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_pressure_policy.py +0 -0
  488. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_readiness.py +0 -0
  489. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_realtime.py +0 -0
  490. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_replicas.py +0 -0
  491. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_routing.py +0 -0
  492. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_selection.py +0 -0
  493. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/_tier_request.py +0 -0
  494. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/gateway/server.py +0 -0
  495. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/machines/__init__.py +0 -0
  496. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/machines/_registry.py +0 -0
  497. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/machines/_strategy.py +0 -0
  498. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/machines/_traits.py +0 -0
  499. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/machines/blackwell.py +0 -0
  500. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/machines/generic.py +0 -0
  501. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/machines/orin.py +0 -0
  502. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/machines/spark.py +0 -0
  503. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/machines/thor.py +0 -0
  504. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/minor/__init__.py +0 -0
  505. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/minor/_client.py +0 -0
  506. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/minor/governance.py +0 -0
  507. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/__init__.py +0 -0
  508. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin/__init__.py +0 -0
  509. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin/base.toml +0 -0
  510. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin/orin.toml +0 -0
  511. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin/spark.toml +0 -0
  512. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin/thor.toml +0 -0
  513. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/__init__.py +0 -0
  514. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/gateway-only.toml +0 -0
  515. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/machine-as-brain.toml +0 -0
  516. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/orin-associate.toml +0 -0
  517. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/orin-cortex.toml +0 -0
  518. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/orin-lobe.toml +0 -0
  519. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/orin-small.toml +0 -0
  520. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/spark-lobe.toml +0 -0
  521. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/thor-lobe.toml +0 -0
  522. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/thor-muse.toml +0 -0
  523. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/builtin_shapes/thor-worker.toml +0 -0
  524. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/loader.py +0 -0
  525. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/render.py +0 -0
  526. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/schema.py +0 -0
  527. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/shape_render.py +0 -0
  528. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/profiles/shapes.py +0 -0
  529. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/__init__.py +0 -0
  530. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/__main__.py +0 -0
  531. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/_conversation.py +0 -0
  532. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/_floor.py +0 -0
  533. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/_pcm.py +0 -0
  534. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/_readiness.py +0 -0
  535. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/_segmenter.py +0 -0
  536. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/_session.py +0 -0
  537. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/_settings.py +0 -0
  538. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/_turn.py +0 -0
  539. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/_wire.py +0 -0
  540. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/app.py +0 -0
  541. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/audio_facade.py +0 -0
  542. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/chatterbox_server.py +0 -0
  543. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/protocol.py +0 -0
  544. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/realtime/tts_client.py +0 -0
  545. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/roles.py +0 -0
  546. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/roles_measure.py +0 -0
  547. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/__init__.py +0 -0
  548. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/_buildability.py +0 -0
  549. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/_compose.py +0 -0
  550. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/_detect.py +0 -0
  551. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/_env.py +0 -0
  552. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/_health.py +0 -0
  553. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/_lock.py +0 -0
  554. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/_parser.py +0 -0
  555. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/_pressure.py +0 -0
  556. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/runtime/_tunnel.py +0 -0
  557. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/__init__.py +0 -0
  558. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/cf-tunnel.env.example +0 -0
  559. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/docker-compose.yml +0 -0
  560. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/env.example +0 -0
  561. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/Dockerfile.chatterbox +0 -0
  562. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/Dockerfile.gateway +0 -0
  563. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/Dockerfile.parakeet +0 -0
  564. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/Dockerfile.realtime +0 -0
  565. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/Dockerfile.vllm-gemma4 +0 -0
  566. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/__init__.py +0 -0
  567. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/_readiness.py +0 -0
  568. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/docker-compose.audio.yml +0 -0
  569. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/docker-compose.yml +0 -0
  570. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/env.audio.example +0 -0
  571. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/env.example +0 -0
  572. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/listen_server.py +0 -0
  573. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/fleet/qwen3_reranker.jinja +0 -0
  574. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/templates/mg-logwrap.sh +0 -0
  575. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/variation.py +0 -0
  576. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/variation_catalog.py +0 -0
  577. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/vllm_plugins/__init__.py +0 -0
  578. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/lobes/vllm_plugins/qwen3_thinking_tool_parser.py +0 -0
  579. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/packaging/model-gear/README.md +0 -0
  580. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/packaging/model-gear/pyproject.toml +0 -0
  581. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/accept-by-proxy.sh +0 -0
  582. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/accept-shape.sh +0 -0
  583. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/audio-smoke.py +0 -0
  584. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/concurrency-probe.py +0 -0
  585. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/gen-api-key.py +0 -0
  586. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/live-check.sh +0 -0
  587. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/prefill-depth-curve.py +0 -0
  588. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/probe_reranker_calibration.py +0 -0
  589. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/realtime-smoke.py +0 -0
  590. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/realtime-voice-loop.py +0 -0
  591. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/scan_deployment_secrets.py +0 -0
  592. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/spec-arms.py +0 -0
  593. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/spike-preflight.sh +0 -0
  594. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/stream-measure.py +0 -0
  595. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/scripts/validate-tiers.sh +0 -0
  596. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/.env.example +0 -0
  597. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/.gitignore +0 -0
  598. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/.nvmrc +0 -0
  599. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/README.md +0 -0
  600. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/astro.config.mjs +0 -0
  601. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/package-lock.json +0 -0
  602. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/package.json +0 -0
  603. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/proxy/gateway-proxy.mjs +0 -0
  604. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/public/favicon.svg +0 -0
  605. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/public/worklets/pcm-capture-processor.js +0 -0
  606. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/components/ConnectionPanel.astro +0 -0
  607. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/components/EventStream.astro +0 -0
  608. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/components/Footer.astro +0 -0
  609. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/components/Header.astro +0 -0
  610. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/components/MicIsland.astro +0 -0
  611. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/components/SignalMesh.astro +0 -0
  612. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/layouts/Layout.astro +0 -0
  613. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/pages/dev-connection.astro +0 -0
  614. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/pages/dev-events.astro +0 -0
  615. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/pages/dev-mic.astro +0 -0
  616. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/pages/index.astro +0 -0
  617. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/audio-graph.ts +0 -0
  618. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/audio-playback.test.ts +0 -0
  619. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/audio-playback.ts +0 -0
  620. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/audio-test-doubles.ts +0 -0
  621. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/connection-panel.ts +0 -0
  622. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/dev-mic-harness.ts +0 -0
  623. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/event-fixtures.ts +0 -0
  624. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/event-icons.ts +0 -0
  625. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/event-log.test.ts +0 -0
  626. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/event-log.ts +0 -0
  627. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/mic-capture.test.ts +0 -0
  628. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/mic-capture.ts +0 -0
  629. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/mic-island.test.ts +0 -0
  630. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/mic-island.ts +0 -0
  631. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/no-mic-mute.test.ts +0 -0
  632. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/pcm-wire.test.ts +0 -0
  633. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/pcm-wire.ts +0 -0
  634. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/realtime-connection.ts +0 -0
  635. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/scripts/realtime-events.ts +0 -0
  636. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/src/styles/global.css +0 -0
  637. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/test/connection-panel.test.ts +0 -0
  638. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/test/gateway-proxy.test.ts +0 -0
  639. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/test/realtime-connection.test.ts +0 -0
  640. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/tsconfig.json +0 -0
  641. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/site/vitest.config.ts +0 -0
  642. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/sonar-project.properties +0 -0
  643. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/__init__.py +0 -0
  644. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/conftest.py +0 -0
  645. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card/Dockerfile.gateway +0 -0
  646. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card/VARIATION.md +0 -0
  647. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card/deployment.lock.toml +0 -0
  648. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card/docker-compose.override.yml +0 -0
  649. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card/docker-compose.yml +0 -0
  650. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card__fixture-shape/VARIATION.md +0 -0
  651. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card__fixture-shape/deployment.lock.toml +0 -0
  652. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card__fixture-shape/docker-compose.override.yml +0 -0
  653. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card__fixture-shape/docker-compose.shape.yml +0 -0
  654. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/deployments/fixture-card__fixture-shape/docker-compose.yml +0 -0
  655. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/upgrade_compat/README.md +0 -0
  656. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/upgrade_compat/fleet/docker-compose.yml +0 -0
  657. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/upgrade_compat/fleet/env.example +0 -0
  658. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/upgrade_compat/single/docker-compose.yml +0 -0
  659. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/fixtures/upgrade_compat/single/env.example +0 -0
  660. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/README.md +0 -0
  661. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/__init__.py +0 -0
  662. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/base.env +0 -0
  663. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/no-pool-gateway.json +0 -0
  664. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/orin.env +0 -0
  665. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/regen.py +0 -0
  666. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/gateway-only__base.env +0 -0
  667. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/gateway-only__orin.env +0 -0
  668. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/gateway-only__spark.env +0 -0
  669. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/gateway-only__thor.env +0 -0
  670. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-associate__base.env +0 -0
  671. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-associate__orin.env +0 -0
  672. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-associate__spark.env +0 -0
  673. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-associate__thor.env +0 -0
  674. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-cortex__base.env +0 -0
  675. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-cortex__orin.env +0 -0
  676. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-cortex__spark.env +0 -0
  677. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-cortex__thor.env +0 -0
  678. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-lobe__base.env +0 -0
  679. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-lobe__orin.env +0 -0
  680. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-lobe__spark.env +0 -0
  681. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-lobe__thor.env +0 -0
  682. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-small__base.env +0 -0
  683. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-small__orin.env +0 -0
  684. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-small__spark.env +0 -0
  685. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/orin-small__thor.env +0 -0
  686. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/spark-lobe__base.env +0 -0
  687. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/spark-lobe__orin.env +0 -0
  688. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/spark-lobe__spark.env +0 -0
  689. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/spark-lobe__thor.env +0 -0
  690. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-lobe__base.env +0 -0
  691. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-lobe__orin.env +0 -0
  692. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-lobe__spark.env +0 -0
  693. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-lobe__thor.env +0 -0
  694. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-muse__base.env +0 -0
  695. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-muse__orin.env +0 -0
  696. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-muse__spark.env +0 -0
  697. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-muse__thor.env +0 -0
  698. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-worker__base.env +0 -0
  699. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-worker__orin.env +0 -0
  700. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-worker__spark.env +0 -0
  701. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/shapes/thor-worker__thor.env +0 -0
  702. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/spark.env +0 -0
  703. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/switch-plans.txt +0 -0
  704. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/template-defaults.env +0 -0
  705. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/goldens/thor.env +0 -0
  706. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_assess.py +0 -0
  707. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_assess_perf.py +0 -0
  708. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_associate_compose.py +0 -0
  709. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_associate_exposure.py +0 -0
  710. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_associate_gateway_boundaries.py +0 -0
  711. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_associate_role.py +0 -0
  712. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_bench_compare.py +0 -0
  713. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_bench_report.py +0 -0
  714. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_benchmark_all_lobes.py +0 -0
  715. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_boundary_serves_only.py +0 -0
  716. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_buildability_guard.py +0 -0
  717. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_calibration_knee.py +0 -0
  718. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cat_probe.py +0 -0
  719. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cat_score.py +0 -0
  720. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_catalog.py +0 -0
  721. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_catalog_tiers.py +0 -0
  722. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_chatterbox_pcm16.py +0 -0
  723. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_chatterbox_readiness.py +0 -0
  724. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli.py +0 -0
  725. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_benchmark_profiles.py +0 -0
  726. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_calibrate.py +0 -0
  727. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_capabilities.py +0 -0
  728. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_capabilities_replicas.py +0 -0
  729. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_eval.py +0 -0
  730. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_eval_cat.py +0 -0
  731. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_fleet.py +0 -0
  732. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_gateway_auth.py +0 -0
  733. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_introspection.py +0 -0
  734. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_logs.py +0 -0
  735. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_measure.py +0 -0
  736. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_mesh.py +0 -0
  737. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_route.py +0 -0
  738. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_run.py +0 -0
  739. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_runtime.py +0 -0
  740. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_tunnel.py +0 -0
  741. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_up.py +0 -0
  742. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_cli_wiring.py +0 -0
  743. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_client_reasoning_roundtrip.py +0 -0
  744. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_colleague_contract.py +0 -0
  745. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_compose_chain.py +0 -0
  746. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_deployment_lock.py +0 -0
  747. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_deployment_lock_doc.py +0 -0
  748. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_detect.py +0 -0
  749. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_doctor.py +0 -0
  750. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_doctor_fix.py +0 -0
  751. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_doctor_machine_profile.py +0 -0
  752. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_doctor_mesh_retirement.py +0 -0
  753. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_doctor_passthrough.py +0 -0
  754. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_doctor_repin_version.py +0 -0
  755. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_doctor_role_command.py +0 -0
  756. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_doctor_role_probe.py +0 -0
  757. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_dropped_lobe_honesty.py +0 -0
  758. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_fleet_audio_vad_env.py +0 -0
  759. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_fleet_compose_mounts.py +0 -0
  760. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_fleet_minor.py +0 -0
  761. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_fleet_per_machine_knobs.py +0 -0
  762. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_fleet_secrets_env_file.py +0 -0
  763. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_fleet_template_gateway_env.py +0 -0
  764. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_audio_peer.py +0 -0
  765. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_audio_routing.py +0 -0
  766. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_auth.py +0 -0
  767. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_auth_rejection_log.py +0 -0
  768. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_busy_e2e.py +0 -0
  769. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_capabilities.py +0 -0
  770. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_config_proxy.py +0 -0
  771. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_config_replicas.py +0 -0
  772. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_config_wiring.py +0 -0
  773. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_embed_deep.py +0 -0
  774. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_env_passthrough_guard.py +0 -0
  775. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_feasibility.py +0 -0
  776. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_fleet_doc.py +0 -0
  777. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_force_strict.py +0 -0
  778. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_hand_adapters.py +0 -0
  779. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_peer_advert.py +0 -0
  780. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_peer_only_pool.py +0 -0
  781. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_pool.py +0 -0
  782. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_pool_capacity_wiring.py +0 -0
  783. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_pool_pressure.py +0 -0
  784. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_pool_saturation.py +0 -0
  785. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_proxy.py +0 -0
  786. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_readiness.py +0 -0
  787. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_realtime_ws.py +0 -0
  788. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_replicas.py +0 -0
  789. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_routing.py +0 -0
  790. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_selection.py +0 -0
  791. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_serve_mesh_wiring.py +0 -0
  792. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_server.py +0 -0
  793. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_status.py +0 -0
  794. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_stream_termination.py +0 -0
  795. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gateway_tiers.py +0 -0
  796. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gemma4_compose.py +0 -0
  797. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gemma4_dockerfile.py +0 -0
  798. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gen_api_key.py +0 -0
  799. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_gitignore_convention.py +0 -0
  800. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_init.py +0 -0
  801. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_init_coresidency.py +0 -0
  802. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_init_from_lock.py +0 -0
  803. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_init_gpu_access.py +0 -0
  804. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_init_profile.py +0 -0
  805. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_init_shape.py +0 -0
  806. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_live_capabilities.py +0 -0
  807. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_lock_drift.py +0 -0
  808. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_machines.py +0 -0
  809. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_config.py +0 -0
  810. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_flap_per_name.py +0 -0
  811. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_heartbeat_live.py +0 -0
  812. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_naming.py +0 -0
  813. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_roster.py +0 -0
  814. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_routes.py +0 -0
  815. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_routing.py +0 -0
  816. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_routing_wiring.py +0 -0
  817. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_templates.py +0 -0
  818. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_verify_reason.py +0 -0
  819. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_mesh_wire.py +0 -0
  820. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_minor_client.py +0 -0
  821. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_minor_governance.py +0 -0
  822. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_minor_integration.py +0 -0
  823. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_minor_logprobs.py +0 -0
  824. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_nightly_migration_doc.py +0 -0
  825. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_no_config_byte_identity.py +0 -0
  826. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_orin_associate_boot_order.py +0 -0
  827. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_orin_associate_shape.py +0 -0
  828. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_orin_cortex_shape.py +0 -0
  829. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_orin_gateway_read_timeout.py +0 -0
  830. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_orin_lobe_shape.py +0 -0
  831. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_overview_live.py +0 -0
  832. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_parser.py +0 -0
  833. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_peer_referral.py +0 -0
  834. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_preserve_thinking_diagnostic.py +0 -0
  835. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_pressure.py +0 -0
  836. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_pressure_policy.py +0 -0
  837. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_profile_goldens.py +0 -0
  838. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_profile_render.py +0 -0
  839. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_profile_schema.py +0 -0
  840. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_profiles.py +0 -0
  841. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_proxy_integration.py +0 -0
  842. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_readiness_peer_probe.py +0 -0
  843. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_audio_env_coverage.py +0 -0
  844. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_audio_facade.py +0 -0
  845. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_conversation.py +0 -0
  846. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_floor.py +0 -0
  847. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_imports.py +0 -0
  848. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_pcm.py +0 -0
  849. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_protocol.py +0 -0
  850. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_readiness.py +0 -0
  851. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_segmenter.py +0 -0
  852. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_session.py +0 -0
  853. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_settings.py +0 -0
  854. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_smoke_helpers.py +0 -0
  855. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_tts_gate.py +0 -0
  856. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_turn.py +0 -0
  857. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_realtime_wire.py +0 -0
  858. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_role_probes.py +0 -0
  859. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_roles.py +0 -0
  860. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_roles_proxied.py +0 -0
  861. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_roles_replicas.py +0 -0
  862. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_scan_deployment_secrets.py +0 -0
  863. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_senses_speculative_config.py +0 -0
  864. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_shape_budgets.py +0 -0
  865. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_shape_contract_matrix.py +0 -0
  866. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_shape_gateway_only.py +0 -0
  867. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_shape_goldens.py +0 -0
  868. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_shapes.py +0 -0
  869. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_smoke_duo.py +0 -0
  870. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_spec_arms.py +0 -0
  871. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_spike_preflight.py +0 -0
  872. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_status_fleet.py +0 -0
  873. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_status_pressure.py +0 -0
  874. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_switch_bf16.py +0 -0
  875. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_switch_plan_goldens.py +0 -0
  876. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_templates_preserve_thinking.py +0 -0
  877. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_tier_request.py +0 -0
  878. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_tool_parser_plugin.py +0 -0
  879. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_tts_pause_and_truncation.py +0 -0
  880. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_up_no_deps_isolation.py +0 -0
  881. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_upgrade_compat.py +0 -0
  882. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_variation.py +0 -0
  883. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_variation_catalog.py +0 -0
  884. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_vllm_plugin_thinking.py +0 -0
  885. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_wheel_excludes_deployments.py +0 -0
  886. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_worker_compose.py +0 -0
  887. {lobes_cli-0.78.3 → lobes_cli-0.78.4}/tests/test_worker_recipe_knobs.py +0 -0
@@ -0,0 +1 @@
1
+ qwen3-8-flash-next-on-thor
@@ -0,0 +1,301 @@
1
+ {
2
+ "slug": "qwen3-8-flash-next-on-thor",
3
+ "title": "qwen3.8 flash next on thor",
4
+ "schema_version": 6,
5
+ "status": "drafting",
6
+ "created": "2026-09-13T12:31:42Z",
7
+ "updated": "2026-09-13T12:42:53Z",
8
+ "claims": [
9
+ {
10
+ "id": "c1",
11
+ "kind": "announcement",
12
+ "text": "The NemoClaw-Thor recipe for Qwen3.8-Flash-Next (RadixArk NVFP4, 125B MoE) on a Jetson AGX Thor is recorded as a reference doc in this repo, with every measurement attributed to the recipe author \u2014 not built, booted, measured, or reproduced on any fleet box",
13
+ "origin": "user",
14
+ "status": "confirmed",
15
+ "honesty_conditions": [],
16
+ "hard_questions": [],
17
+ "links": [],
18
+ "instruction": "",
19
+ "revisions": [
20
+ {
21
+ "text": "The Jetson AGX Thor serves Qwen3.8-Flash-Next (RadixArk NVFP4, 125B MoE) on vLLM, reproduced from the NemoClaw-Thor fast recipe and measured in this fleet's own evidence",
22
+ "kind": "announcement",
23
+ "reason": "PR #267 Qodo 3999631524: the original announcement claimed a fleet reproduction that the operator decided against (2026-09-13, reference only)"
24
+ }
25
+ ]
26
+ },
27
+ {
28
+ "id": "c2",
29
+ "kind": "decision",
30
+ "text": "operator first authorized dropping the Thor's lobes lanes for this work, then (2026-09-13) chose reference-only: the Thor keeps serving worker and nothing is booted",
31
+ "origin": "user",
32
+ "status": "confirmed",
33
+ "honesty_conditions": [],
34
+ "hard_questions": [],
35
+ "links": [],
36
+ "instruction": "",
37
+ "revisions": [
38
+ {
39
+ "text": "operator authorizes dropping the Thor's lobes lanes for this work and raising them again as needed (user, this session: 'We can drop lobes and raise as needed on thor. You have ssh thor control')",
40
+ "kind": "decision",
41
+ "reason": "superseded by the operator's doc-only decision in the same session"
42
+ }
43
+ ]
44
+ },
45
+ {
46
+ "id": "c3",
47
+ "kind": "assumption",
48
+ "text": "the NemoClaw-Thor fast recipe (serving/docs/QWEN38-FLASH-NEXT-FAST-THOR.md, commit 9c9c0873, 2026-09-06) is the starting recipe: RadixArk/Qwen3.8-Flash-Next-NVFP4 @7b719225, gpu_mem_util 0.90, BF16 KV, max_model_len 262144, max_num_seqs 4, embedded MTP n=3, fused SM110a GDN CUDA decode, flashinfer_cutlass MoE, PLE mmap MADV_RANDOM + parallel reads; its reported numbers (34.98 tok/s single-stream mean, 677,323 KV tokens / 2.58x, 68.10 tok/s 4-way short) are the author's, NOT yet reproduced here",
49
+ "origin": "llm",
50
+ "status": "proposed",
51
+ "honesty_conditions": [],
52
+ "hard_questions": [],
53
+ "links": [],
54
+ "instruction": "",
55
+ "revisions": []
56
+ },
57
+ {
58
+ "id": "c4",
59
+ "kind": "requirement",
60
+ "text": "the served image is a 3-layer LOCAL build pinned by sha: blazux/qwen3.8-Flash-DGX @4b723de2 (DET_ARCH=110a) -> Dockerfile.qwen38-flash-next-sm110 (SM110 flashinfer_cutlass MoE gate patch) -> Dockerfile.qwen38-flash-next-gdn-sm110 (vLLM @082cf021 fused GDN decode kernel, PR #53835 merged 2026-09-05, + PLE I/O patch); every sha and the resulting image ID are recorded in docs/image-ledger.md, following the lobes/vllm-gemma4:local precedent",
61
+ "origin": "llm",
62
+ "status": "proposed",
63
+ "honesty_conditions": [],
64
+ "hard_questions": [],
65
+ "links": [],
66
+ "instruction": "",
67
+ "revisions": []
68
+ },
69
+ {
70
+ "id": "c5",
71
+ "kind": "boundary",
72
+ "text": "pin, don't follow upstream: blazux/qwen3.8-Flash-DGX main is already 32 commits past the recipe's 4b723de2 pin (pushed 2026-09-13, incl. a 'temporary' block-fp8 MTP shim pending vllm#55513); the reproduction uses the recipe's pins, and a re-pin is a separate measured change",
73
+ "origin": "llm",
74
+ "status": "proposed",
75
+ "honesty_conditions": [],
76
+ "hard_questions": [],
77
+ "links": [],
78
+ "instruction": "",
79
+ "revisions": []
80
+ },
81
+ {
82
+ "id": "c6",
83
+ "kind": "assumption",
84
+ "text": "the 2026-08-27 lobes conclusion that RadixArk/Qwen3.8-Flash-Next-NVFP4 cannot fit the Thor ('135 GB, SGLang-only, misses by ~13 GB'; VLLM_PLE_CPU_OFFLOAD a no-op on unified memory) is SUPERSEDED as a premise: the preview vLLM serves it with VLLM_PLE_MMAP=1 mapping the FP8 PLE table from NVMe, and HF reports the pinned revision at 126.0 GiB over 419 files",
85
+ "origin": "llm",
86
+ "status": "proposed",
87
+ "honesty_conditions": [],
88
+ "hard_questions": [],
89
+ "links": [],
90
+ "instruction": "",
91
+ "revisions": []
92
+ },
93
+ {
94
+ "id": "c7",
95
+ "kind": "requirement",
96
+ "text": "disk must be reclaimed before the checkpoint download: the Thor's single NVMe (WD SN5000S 1 TB) has 146 GB free against a 126 GiB checkpoint plus three new ~30 GB image layers; docker reports 105.9 GB reclaimable images and 52.7 GB reclaimable build cache",
97
+ "origin": "llm",
98
+ "status": "proposed",
99
+ "honesty_conditions": [],
100
+ "hard_questions": [],
101
+ "links": [],
102
+ "instruction": "",
103
+ "revisions": []
104
+ },
105
+ {
106
+ "id": "c8",
107
+ "kind": "boundary",
108
+ "text": "the non-lobes stack on the Thor (culture-nodes prod-api/worker/scheduler/notifier, postgres:17, minio, backup) is not part of this work and is not stopped; it holds ~0.6 GiB resident, which counts against the recipe's 0.90 util and its ~7.2 GiB post-run available-memory margin",
109
+ "origin": "llm",
110
+ "status": "proposed",
111
+ "honesty_conditions": [],
112
+ "hard_questions": [],
113
+ "links": [],
114
+ "instruction": "",
115
+ "revisions": []
116
+ },
117
+ {
118
+ "id": "c9",
119
+ "kind": "requirement",
120
+ "text": "dropping lobes on the Thor removes the mesh's only worker host: the Spark reaches model=worker by proxy to the Thor (validated 2026-09-11), so for the window model=worker is unavailable mesh-wide, and restoring it means re-raising the captured thor-worker deployment",
121
+ "origin": "llm",
122
+ "status": "proposed",
123
+ "honesty_conditions": [],
124
+ "hard_questions": [],
125
+ "links": [],
126
+ "instruction": "",
127
+ "revisions": []
128
+ },
129
+ {
130
+ "id": "c10",
131
+ "kind": "non_goal",
132
+ "text": "no new Colleague role and no role re-point in this scope: Flash-Next lands, if at all, as a catalog candidate; docs/colleague-stack.md says a different checkpoint is a catalog change and adding a role is effectively irreversible, and both 2026-08-27 specs recorded the same non-goal",
133
+ "origin": "llm",
134
+ "status": "proposed",
135
+ "honesty_conditions": [],
136
+ "hard_questions": [],
137
+ "links": [],
138
+ "instruction": "",
139
+ "revisions": []
140
+ },
141
+ {
142
+ "id": "c11",
143
+ "kind": "assumption",
144
+ "text": "integrating it as a lobes lane would touch: lobes/catalog.py (new engine=vllm candidate with moe_backend flashinfer_cutlass + MTP speculative_config; SupportedModel has no image field), lobes/templates/fleet/docker-compose.yml (vllm-primary has NO per-lane image override \u2014 only VLLM_NIGHTLY_IMAGE; vllm-worker has WORKER_IMAGE \u2014 and none passes the VLLM_PLE_*/VLLM_QSA_*/compile-cache env or -cc.splitting_ops), and a new solo Thor shape, since 0.90 util can't co-reside with thor-worker's lanes",
145
+ "origin": "llm",
146
+ "status": "proposed",
147
+ "honesty_conditions": [],
148
+ "hard_questions": [],
149
+ "links": [],
150
+ "instruction": "",
151
+ "revisions": []
152
+ }
153
+ ],
154
+ "open_vagueness": [
155
+ {
156
+ "id": "v1",
157
+ "text": "vision: the checkpoint declares vision_config / image-text-to-text, but the NemoClaw recipe never tested image input; whether the preview image serves it on sm_110 is unmeasured",
158
+ "kind": "unknown_nonblocking",
159
+ "claim_id": null,
160
+ "resolved": false,
161
+ "resolution": "",
162
+ "resolution_claim_id": null
163
+ },
164
+ {
165
+ "id": "v2",
166
+ "text": "restart stability: the recipe recorded one CUDA Xid 13 (illegal instruction) on restart with the serialized compile cache, worked around with VLLM_DISABLE_COMPILE_CACHE=1, explicitly not a restart soak \u2014 root cause unknown",
167
+ "kind": "unknown_nonblocking",
168
+ "claim_id": null,
169
+ "resolved": false,
170
+ "resolution": "",
171
+ "resolution_claim_id": null
172
+ },
173
+ {
174
+ "id": "v3",
175
+ "text": "mixed-length concurrent prefill OOM: upstream vLLM issue allocates a dense num_prefills x max_chunk PLE short-conv buffer; the recipe's 4-way mixed smoke passed with ~7.2 GiB available but is 'not a guarantee'",
176
+ "kind": "unknown_nonblocking",
177
+ "claim_id": null,
178
+ "resolved": false,
179
+ "resolution": "",
180
+ "resolution_claim_id": null
181
+ },
182
+ {
183
+ "id": "v4",
184
+ "text": "PLE read performance depends on NVMe: the recipe's Thor storage model is unstated; this Thor's WD SN5000S may read the PLE table slower or faster, which feeds decode tok/s directly",
185
+ "kind": "unknown_nonblocking",
186
+ "claim_id": null,
187
+ "resolved": false,
188
+ "resolution": "",
189
+ "resolution_claim_id": null
190
+ },
191
+ {
192
+ "id": "v5",
193
+ "text": "whether dropping every lobes lane frees enough for 0.90 on this Thor given the recipe's own ~7-10 GiB available-memory margin and this box's 7.3 GiB already-swapped pages; boot log KV capacity is authoritative",
194
+ "kind": "unknown_blocking",
195
+ "claim_id": null,
196
+ "resolved": true,
197
+ "resolution": "moot: operator chose not to run the recipe; the Thor stays the worker host (2026-09-13)",
198
+ "resolution_claim_id": null
199
+ }
200
+ ],
201
+ "scope_entries": [
202
+ {
203
+ "id": "s1",
204
+ "surface": "operator instruction (this session)",
205
+ "finding": "Thor lobes lanes may be stopped for the Flash-Next window and re-raised as needed; ssh thor@thor control granted",
206
+ "seeds": [
207
+ "c2"
208
+ ]
209
+ },
210
+ {
211
+ "id": "s2",
212
+ "surface": "NemoClaw-Thor serving/docs/QWEN38-FLASH-NEXT-FAST-THOR.md + serving/start-qwen38-flash-next-fast.sh",
213
+ "finding": "measured on a Thor 2026-09-05: 3-prompt coding probe, temp 0, thinking off, 512-token cap -> 34.98 tok/s mean (vs 24.97 Triton baseline); 19.58 GiB KV = 677,323 tokens; tool-call and 25,640-token retrieval smoke only; no full-256K request, no quality eval, no vision test",
214
+ "seeds": [
215
+ "c3"
216
+ ]
217
+ },
218
+ {
219
+ "id": "s3",
220
+ "surface": "NemoClaw-Thor serving/docker/Dockerfile.qwen38-flash-next{,-gdn}-sm110 + patches/",
221
+ "finding": "overlay 1 lifts vLLM's SM110 exclusion in flashinfer_cutlass_moe.py (refuses if gate text not found exactly once); overlay 2 ADDs 4 files from vllm@082cf021 and builds thor_gdn ops (build.py/install.py/patch_ple_io.py), sets VLLM_GDN_DECODE_KERNEL=cuda",
222
+ "seeds": [
223
+ "c4"
224
+ ]
225
+ },
226
+ {
227
+ "id": "s4",
228
+ "surface": "docs/image-ledger.md",
229
+ "finding": "no rule forbids an unpublished local image (lobes/vllm-gemma4:local precedent); registry pulls must be digest-pinned and source commits recorded",
230
+ "seeds": [
231
+ "c4"
232
+ ]
233
+ },
234
+ {
235
+ "id": "s5",
236
+ "surface": "github blazux/qwen3.8-Flash-DGX (gh api compare 4b723de2...main)",
237
+ "finding": "ahead_by 32; latest commit 2c5701d0 2026-09-13 notes patch 11 is temporary pending vllm#55513",
238
+ "seeds": [
239
+ "c5"
240
+ ]
241
+ },
242
+ {
243
+ "id": "s6",
244
+ "surface": "docs/specs/2026-08-27-flash-next-on-vllm.md + docs/experiments/qwen3.8-flash-next-gguf-llamacpp-vllm.md",
245
+ "finding": "both specs exported, execution deferred 2026-08-27 before stage 1; nothing ever booted; the NVFP4 was ruled out on footprint and the GGUF-via-vllm-gguf-plugin route chosen on paper; success bar there: >=25 tok/s single-stream at MAXN (~2x cortex's 12.1)",
246
+ "seeds": [
247
+ "c6"
248
+ ]
249
+ },
250
+ {
251
+ "id": "s7",
252
+ "surface": "HF API RadixArk/Qwen3.8-Flash-Next-NVFP4 @7b719225",
253
+ "finding": "126.0 GiB, 419 files, many model-plefp8-*.safetensors shards (4.84 GiB each); arch Qwen4ExpForConditionalGeneration, vision_config present, 48 layers, 512 experts, mtp_num_hidden_layers 1, max_position_embeddings 262144; ungated",
254
+ "seeds": [
255
+ "c6"
256
+ ]
257
+ },
258
+ {
259
+ "id": "s8",
260
+ "surface": "Thor host (ssh thor@thor: df, docker system df, lsblk)",
261
+ "finding": "/ 937G, 744G used, 146G free, 84%; images 212.5GB (105.9GB reclaimable); build cache 63.96GB (52.74GB reclaimable); lobes HF cache ~/.cache/huggingface = 73G, has no Flash-Next snapshot; recipe expects ~/thor-hf-cache",
262
+ "seeds": [
263
+ "c7"
264
+ ]
265
+ },
266
+ {
267
+ "id": "s9",
268
+ "surface": "Thor host (docker ps / docker stats)",
269
+ "finding": "running: model-gear-gateway, vllm-worker (8.29 GiB rss, WORKER util 0.45), vllm-embed, vllm-rerank (lobes 0.77.0.dev544, COMPOSE_PROFILES=worker, LOBES_MESH_NAME=thor) plus 7 prod-* culture-nodes/postgres/minio containers; MAXN; R38.2.2; 122 GiB RAM, 59.6 GiB swapfile 7.3 GiB used; passwordless sudo OK",
270
+ "seeds": [
271
+ "c8"
272
+ ]
273
+ },
274
+ {
275
+ "id": "s10",
276
+ "surface": "CLAUDE.md worker paragraph + deployments/jetson-agx-thor__thor-worker/deployment.lock.toml",
277
+ "finding": "Thor hosts worker via thor-worker shape (util 0.45, 262144, WORKER_MAX_NUM_SEQS=1); Spark proxies worker to it (docs/evidence/2026-09-11-accept-worker-proxy-spark-thor.txt); lock captured 2026-09-11 = rollback reference",
278
+ "seeds": [
279
+ "c9"
280
+ ]
281
+ },
282
+ {
283
+ "id": "s11",
284
+ "surface": "docs/colleague-stack.md ('adding a role is effectively irreversible') + lobes/roles.py",
285
+ "finding": "a new role costs a public /capabilities key, an alias, six per-role tables, every profile/shape and ~28 golden .env files; checkpoint swaps are catalog changes",
286
+ "seeds": [
287
+ "c10"
288
+ ]
289
+ },
290
+ {
291
+ "id": "s12",
292
+ "surface": "lobes/catalog.py:70-130 + lobes/templates/fleet/docker-compose.yml:53,1370-1401 + builtin_shapes/thor-worker.toml + profiles/builtin/thor.toml",
293
+ "finding": "per-lane *_IMAGE override pattern exists for worker/hand/multimodal/associate, not primary; serve args are one shell-lexed string; thor.toml already carries VLLM_GDN_DECODE_KERNEL=triton as a required cortex env (sm_110 MTP precedent)",
294
+ "seeds": [
295
+ "c11"
296
+ ]
297
+ }
298
+ ],
299
+ "lapses": [],
300
+ "obligations": []
301
+ }
@@ -4,6 +4,17 @@ All notable changes to this project are documented here. The format is based on
4
4
  [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project
5
5
  adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.78.4] - 2026-09-13
8
+
9
+ ### Added
10
+
11
+ - docs/experiments/qwen3.8-flash-next-nvfp4-thor-reference.md — a reference record (not reproduced here) of the external NemoClaw-Thor recipe that serves RadixArk/Qwen3.8-Flash-Next-NVFP4 on a Jetson AGX Thor: PLE table mmapped from NVMe, fused SM110a GDN decode kernel, SM110 FlashInfer CUTLASS MoE gate, embedded MTP n=3, util 0.90 at 262144; author-reported ~35 tok/s single-stream. Decision: the Thor keeps serving worker; nothing is booted.
12
+
13
+ ### Changed
14
+
15
+ - docs/experiments/qwen3.8-flash-next-gguf-llamacpp-vllm.md — correction note: the 2026-08-27 NVFP4 "misses by ~13 GB" premise assumed a resident PLE table; the table itself is kept as the evaluation record.
16
+ - docs/experiments/README.md — index row for the new reference doc.
17
+
7
18
  ## [0.78.3] - 2026-09-13
8
19
 
9
20
  ### Changed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: lobes-cli
3
- Version: 0.78.3
3
+ Version: 0.78.4
4
4
  Summary: lobes — run, assess, and switch the local vLLM model.
5
5
  Project-URL: Homepage, https://github.com/agentculture/lobes-cli
6
6
  Project-URL: Issues, https://github.com/agentculture/lobes-cli/issues
@@ -40,3 +40,4 @@ was made, and deleting it loses that.
40
40
  | doc | checkpoint | status |
41
41
  |---|---|---|
42
42
  | [`qwen3.8-flash-next-gguf-llamacpp-vllm.md`](qwen3.8-flash-next-gguf-llamacpp-vllm.md) | `unsloth/Qwen3.8-Flash-Next-GGUF` — 125B MoE + 51B n-gram, 6B active | **NOT SERVED** — deferred 2026-08-27; nothing native fits 122 GiB, llama.cpp costs ~25x on prefill, vLLM route has four open unknowns |
43
+ | [`qwen3.8-flash-next-nvfp4-thor-reference.md`](qwen3.8-flash-next-nvfp4-thor-reference.md) | `RadixArk/Qwen3.8-Flash-Next-NVFP4` @ `7b719225` — 126.0 GiB | **REFERENCE ONLY** — 2026-09-13; an external Thor recipe (NemoClaw-Thor) serves it on a preview vLLM by mmapping the PLE table from NVMe, author-reported ~35 tok/s; not reproduced here — the Thor stays the `worker` host |
@@ -57,8 +57,19 @@ table is the floor no expert-only quantization can go below — which is also wh
57
57
  `UD-IQ1_S` at 72.5 GB is not nearly as small as a 1-bit quant of 176B
58
58
  parameters should be.
59
59
 
60
- **So GGUF is currently the only format that fits.** Any engine choice here is a
61
- choice about *which engine reads a GGUF*, not about serving the native weights.
60
+ **As of 2026-08-27, GGUF was the only route identified that fits.** Any engine
61
+ choice here was a choice about *which engine reads a GGUF*, not about serving
62
+ the native weights. That is no longer the only known route — see the
63
+ correction below. The NVFP4 route it names is unverified on this fleet.
64
+
65
+ > **Correction (2026-09-13):** the NVFP4 row above assumes the PLE table must be
66
+ > resident. It does not have to be: an external Thor recipe serves
67
+ > `RadixArk/Qwen3.8-Flash-Next-NVFP4` (126.0 GiB at the pinned revision) on a
68
+ > preview vLLM by memory-mapping the table from NVMe, at util 0.90. That is
69
+ > author-reported and not reproduced on a fleet box. See
70
+ > [`qwen3.8-flash-next-nvfp4-thor-reference.md`](qwen3.8-flash-next-nvfp4-thor-reference.md#why-the-2026-08-27-doesnt-fit-was-wrong).
71
+ > The table above is kept as written, because it is the record of that
72
+ > evaluation.
62
73
 
63
74
  ## Route 1 — llama.cpp
64
75
 
@@ -0,0 +1,285 @@
1
+ # Qwen3.8-Flash-Next NVFP4 on a Thor — the NemoClaw-Thor reference recipe
2
+
3
+ **Status: REFERENCE ONLY. Not served, not reproduced here.** This fleet has not
4
+ built these images or booted this checkpoint. Every number below is **the
5
+ recipe author's own measurement on their own Jetson AGX Thor**, quoted from
6
+ [pastoriomarco/NemoClaw-Thor](https://github.com/pastoriomarco/NemoClaw-Thor)
7
+ at commit `9c9c0873` (2026-09-06). Per #108 none of it may be cited as
8
+ validated on a fleet box until a transcript lands under `docs/evidence/`.
9
+
10
+ **Decision (2026-09-13): record, don't run.** The Thor keeps serving `worker`
11
+ through the `thor-worker` shape. Running this recipe would mean stopping every
12
+ lobes lane there, which takes `model=worker` offline for the whole mesh, since
13
+ the Spark forwards `worker` to the Thor. The recipe is kept here so that
14
+ resuming it later needs no re-derivation.
15
+
16
+ Sibling doc:
17
+ [`qwen3.8-flash-next-gguf-llamacpp-vllm.md`](qwen3.8-flash-next-gguf-llamacpp-vllm.md),
18
+ the 2026-08-27 evaluation that ruled this checkpoint out. This doc **corrects
19
+ that doc's footprint premise** — see
20
+ [Why the 2026-08-27 "doesn't fit" was wrong](#why-the-2026-08-27-doesnt-fit-was-wrong).
21
+
22
+ ## Sources
23
+
24
+ | source | what it carries |
25
+ |---|---|
26
+ | `serving/docs/QWEN38-FLASH-NEXT-FAST-THOR.md` | the recommended recipe, measurements, caveats |
27
+ | `serving/docs/QWEN38-FLASH-NEXT-NVFP4-THOR.md` | the earlier Triton-GDN baseline the fast recipe supersedes |
28
+ | `serving/start-qwen38-flash-next-fast.sh` | the exact `docker run` / `vllm serve` invocation |
29
+ | `serving/docker/Dockerfile.qwen38-flash-next-sm110` | overlay 1: the SM110 MoE-backend gate |
30
+ | `serving/docker/Dockerfile.qwen38-flash-next-gdn-sm110` | overlay 2: the fused GDN decode kernel and PLE I/O |
31
+ | `serving/docker/patches/qwen38-flash-next-sm110-moe.py`, `patches/thor-gdn/` | the patches both overlays apply |
32
+ | [blazux/qwen3.8-Flash-DGX](https://github.com/blazux/qwen3.8-Flash-DGX) | the upstream DGX Spark preview vLLM build the recipe starts from |
33
+
34
+ All paths are in NemoClaw-Thor unless a link says otherwise.
35
+
36
+ ## The checkpoint
37
+
38
+ | fact | value | source |
39
+ |---|---|---|
40
+ | repo / revision | `RadixArk/Qwen3.8-Flash-Next-NVFP4` @ `7b719225242aacd3dbd3f9407468c2ee9a9d2594` | recipe pin; also HF HEAD as of 2026-09-13 |
41
+ | size | **126.0 GiB** over 419 files; the FP8 PLE table ships as `model-plefp8-*.safetensors` shards of 4.84 GiB | HF API, read 2026-09-13 |
42
+ | architecture | `Qwen4ExpForConditionalGeneration` — 48 layers, 512 experts, `mtp_num_hidden_layers: 1` | `config.json` at that revision |
43
+ | modality | `vision_config` present, pipeline `image-text-to-text` | `config.json`, HF API |
44
+ | context | `max_position_embeddings: 262144` | `config.json` |
45
+ | quantization | native NVFP4 routed experts, BF16 protected layers, FP8 PLE table | recipe |
46
+ | drafter | none needed — MTP is embedded in the checkpoint | recipe |
47
+ | access | ungated | HF API |
48
+
49
+ The recipe never tested vision. The checkpoint declares it; whether the preview
50
+ image serves it on sm_110 is unknown.
51
+
52
+ ## How it fits and runs: six mechanisms
53
+
54
+ ### 1. The PLE table is memory-mapped from NVMe, not held in memory
55
+
56
+ The checkpoint's n-gram PLE table is the part no expert-only quantization can
57
+ shrink. The preview vLLM maps it from disk (`VLLM_PLE_MMAP=1`, 14 reader
58
+ workers, no prewarm) and gathers only the rows a step actually needs. This is
59
+ why a 126 GiB checkpoint serves on a 122 GiB unified-memory board at
60
+ `gpu_memory_utilization=0.90`. The recipe accordingly requires **fast local
61
+ NVMe** for the model cache: the table is read during inference, not just at
62
+ load.
63
+
64
+ ### 2. PLE reads are tuned for random access
65
+
66
+ Overlay 2's `patch_ple_io.py` maps the table with `MADV_RANDOM`, which stops the
67
+ kernel's useless sequential read-ahead. `VLLM_PLE_MMAP_FAST_ROWS=0` routes decode
68
+ through the existing parallel-read path as well. The author's read-only
69
+ microprobe — 100 random 64-row gathers and one 32768-row gather, page cache
70
+ cleared between variants:
71
+
72
+ | mapping / gather | mean 64-row lookup | 32768-row lookup |
73
+ |---|---:|---:|
74
+ | original / serial small batches | 36.22 ms | 3561 ms |
75
+ | `MADV_RANDOM` / serial | 10.17 ms | 422 ms |
76
+ | `MADV_RANDOM` / parallel | 2.06 ms | 414 ms |
77
+
78
+ All variants returned byte-identical rows (same SHA256). This is an I/O probe,
79
+ not a tok/s result — and it depends on the author's NVMe, whose model the recipe
80
+ does not state.
81
+
82
+ ### 3. A fused GDN decode kernel compiled for SM110a
83
+
84
+ Three of every four layers are Gated DeltaNet. The preview image's fused CUDA
85
+ GDN MTP decode kernel ships **no SM110 code object**, so the first recipe fell
86
+ back to Triton (`VLLM_GDN_DECODE_KERNEL=triton`). This fleet hit the same gap
87
+ on the 27B cortex; `lobes/profiles/builtin/thor.toml` carries the same
88
+ `triton` conjunct.
89
+
90
+ Overlay 2 closes the gap. It takes four files from vLLM at `082cf021`, the
91
+ source associated with the merged
92
+ [vLLM PR #53835](https://github.com/vllm-project/vllm/pull/53835) ("Build fused
93
+ GDN MTP decode for SM110", merged 2026-09-05), and builds them with
94
+ `TORCH_CUDA_ARCH_LIST=11.0a`. The build registers them in a separate
95
+ `thor_gdn` op namespace and redirects only the Python dispatch. It then sets
96
+ `VLLM_GDN_DECODE_KERNEL=cuda`. The upstream numerical tests
97
+ (`test_fused_gdn_post_conv.py`, 22 of them, including recurrent-state rollback
98
+ and ragged batches) passed on the author's Thor. Those tests use numerical
99
+ tolerances; they are not a quality eval. GDN **prefill** and QSA stay on their
100
+ Triton implementations.
101
+
102
+ ### 4. The FlashInfer CUTLASS MoE backend is unblocked on SM110
103
+
104
+ The preview vLLM excludes compute capability 11.x from
105
+ `flashinfer_cutlass_moe.py` (citing flashinfer#3134), and its automatic backend
106
+ picked an SM100 vLLM CUTLASS kernel that failed on the Thor. Overlay 1's patch
107
+ adds `is_device_capability_family(110)` to that gate. It refuses to run unless
108
+ the expected gate text appears exactly once. The launcher then selects the
109
+ backend explicitly with `--moe-backend flashinfer_cutlass`. The patch's
110
+ rationale: bundled FlashInfer 0.6.17 already maps SM110 to its SM100 CUTLASS
111
+ path.
112
+
113
+ ### 5. Embedded MTP at n=3
114
+
115
+ `--speculative-config '{"method":"mtp","num_speculative_tokens":3}'` drafts from
116
+ the checkpoint's own head. MTP=3 is the default because it measured faster **per
117
+ request**. MTP=2 measured higher **aggregate throughput** (see below). The QSA
118
+ backend still rebuilds metadata between draft steps, so the preview does not
119
+ support fully fused multi-step drafting.
120
+
121
+ ### 6. Serialized compile cache bypassed
122
+
123
+ One restart failed with CUDA Xid 13 (illegal instruction) during sampler warmup
124
+ after loading an AOT artifact. It was not an OOM. The launcher now sets
125
+ `VLLM_DISABLE_COMPILE_CACHE=1` and keeps `VLLM_USE_AOT_COMPILE=1`. That bypasses
126
+ the serialized cache without going eager or losing CUDA graphs, at the cost of
127
+ extra compile work on every boot. The author calls it a verified workaround, not
128
+ a root cause, and has not soak-tested restarts.
129
+
130
+ ## The image: three local layers, every revision pinned
131
+
132
+ None of these is a published image. Each is built locally, in order:
133
+
134
+ | tag | built from | pin |
135
+ |---|---|---|
136
+ | `nemoclaw-thor/qwen38-flash-next-vllm:sm110` | `blazux/qwen3.8-Flash-DGX`, `--build-arg DET_ARCH=110a` | commit `4b723de2e2c465d866738b57ae64bde6e8c07744`; its Dockerfile pins its base by digest |
137
+ | `…:sm110-flashinfer-moe` | `Dockerfile.qwen38-flash-next-sm110` (mechanism 4) | NemoClaw-Thor `9c9c0873` |
138
+ | `…:sm110-gdn-cuda` | `Dockerfile.qwen38-flash-next-gdn-sm110` (mechanisms 2, 3) | vLLM `082cf021b7ef96e4819e386846ea34e5ef21c655` |
139
+
140
+ The author's final running image ID:
141
+ `sha256:c4800004609fffc26f9c5f6ed90671bee76ae918261e3b93824672d85303b462`.
142
+
143
+ **Upstream has moved past the pin.** As of 2026-09-13, `blazux/qwen3.8-Flash-DGX`
144
+ main is 32 commits ahead of `4b723de2`, including a block-fp8 MTP shim its own
145
+ docs call temporary (pending vllm#55513). A reproduction should use the recipe's
146
+ pins. Moving to a newer upstream commit is a separate, measured change.
147
+
148
+ If this fleet ever builds these images, `docs/image-ledger.md` is where the
149
+ shas and the resulting image ID go — `lobes/vllm-gemma4:local` is the precedent
150
+ for an unpublished local build.
151
+
152
+ ## The serve invocation
153
+
154
+ From `serving/start-qwen38-flash-next-fast.sh`, defaults shown:
155
+
156
+ ```bash
157
+ docker run -it --pull never --name qwen38-flash-next-fast \
158
+ --runtime nvidia --gpus all --ipc host --network host --shm-size 16g \
159
+ -v "$HF_CACHE:/hf" -v "$VLLM_CACHE:/root/.cache/vllm" \
160
+ -v "$TORCH_CACHE:/root/.cache/torch" -v "$FLASHINFER_CACHE:/root/.cache/flashinfer" \
161
+ -e HF_HOME=/hf -e HF_HUB_OFFLINE=1 \
162
+ -e VLLM_DISABLE_COMPILE_CACHE=1 -e VLLM_USE_AOT_COMPILE=1 \
163
+ -e CUTE_DSL_ARCH=sm_110a -e TORCH_CUDA_ARCH_LIST=11.0a \
164
+ -e VLLM_PLE_MMAP=1 -e VLLM_PLE_MMAP_WORKERS=14 -e VLLM_PLE_MMAP_PREWARM=0 \
165
+ -e VLLM_PLE_MMAP_MADV_RANDOM=1 -e VLLM_PLE_MMAP_FAST_ROWS=0 \
166
+ -e VLLM_QSA_DET_TOPK=1 -e VLLM_QSA_DET_LIB=/opt/llm/kernel-det/_C_det.so \
167
+ -e VLLM_QSA_EXACT_TOPK=0 -e VLLM_USE_FLASHINFER_SAMPLER=1 \
168
+ -e VLLM_GDN_DECODE_KERNEL=cuda \
169
+ --entrypoint vllm nemoclaw-thor/qwen38-flash-next-vllm:sm110-gdn-cuda \
170
+ serve "/hf/hub/models--RadixArk--Qwen3.8-Flash-Next-NVFP4/snapshots/7b719225242aacd3dbd3f9407468c2ee9a9d2594" \
171
+ --served-model-name qwen3.8-flash-next --host 0.0.0.0 --port 8050 \
172
+ --load-format safetensors --max-model-len 262144 \
173
+ --max-num-seqs 4 --gpu-memory-utilization 0.90 \
174
+ --enable-prefix-caching --enable-chunked-prefill --max-num-batched-tokens 8192 \
175
+ -cc.cudagraph_mode=PIECEWISE "-cc.splitting_ops=$split_ops" \
176
+ --no-enable-flashinfer-autotune --moe-backend flashinfer_cutlass \
177
+ --kv-cache-dtype auto --enable-auto-tool-choice \
178
+ --tool-call-parser qwen3_coder --reasoning-parser qwen3 \
179
+ --speculative-config '{"method":"mtp","num_speculative_tokens":3}'
180
+ ```
181
+
182
+ `$split_ops` is the launcher's JSON list of piecewise-CUDA-graph split points.
183
+ Beyond the usual attention/mamba ops, it names three Flash-Next-specific ops:
184
+ `vllm::qwen3_8_flash_next_ple_short_conv`, `vllm::qwen3_8_flash_next_qsa_with_output`
185
+ and `vllm::ple_mmap_lookup`. `VLLM_QSA_DET_TOPK=1` selects deterministic QSA
186
+ top-k, and the recipe also keeps its prefix-cache fixes. The recipe's own
187
+ prerequisites: JetPack 7.1, and stopping every other GPU model server first.
188
+
189
+ ## The author's measurements
190
+
191
+ Three fixed coding prompts, one request at a time, temperature 0, thinking off,
192
+ 512-token output cap, warmup excluded:
193
+
194
+ | configuration | per-request decode tok/s | mean |
195
+ |---|---|---:|
196
+ | Triton GDN, MTP=2, util 0.85, original PLE I/O | 23.96 / 22.99 / 27.96 | 24.97 |
197
+ | CUDA GDN, MTP=2, 0.85, original PLE I/O | 25.10 / 24.80 / 28.52 | 26.14 |
198
+ | CUDA GDN, MTP=2, 0.90, optimized PLE I/O | 33.84 / 31.31 / 33.81 | 32.99 |
199
+ | CUDA GDN, MTP=3, 0.90, optimized PLE I/O | 35.92 / 32.57 / 37.82 | 35.43 |
200
+ | **final: MTP=3, compile cache bypassed** | 35.77 / 32.20 / 36.96 | **34.98** |
201
+
202
+ The fused kernel alone was worth ~4.7%; most of the gain came from the PLE I/O
203
+ work plus util 0.90. The probe (`serving/benchmarks/flash-next-gdn-ab.py`)
204
+ excludes TTFT and approximates multi-token speculative SSE chunks.
205
+
206
+ | other figure | value |
207
+ |---|---|
208
+ | KV at the final boot (0.90, MTP=3, BF16 KV) | 19.58 GiB = **677,323 tokens**; KV-pool concurrency ceiling 2.58x at 262144 |
209
+ | KV at an MTP=2 boot | 711,119 tokens; KV-pool ceiling 2.71x |
210
+ | Triton baseline KV (0.85, MTP=2) | 12.45 GiB = 440,286 tokens; KV-pool ceiling 1.68x |
211
+ | 4 concurrent short prompts, 256 tokens each, MTP=3 | **68.10 tok/s** aggregate; 22.52 tok/s mean per request |
212
+ | same, MTP=2 | **73.44 tok/s** aggregate (+7.8%); 22.37 tok/s per request |
213
+ | 4 concurrent unequal prompts (68 / 2968 / 11595 / 27068 input tokens), incl. cold prefill + JIT | 28.41 tok/s aggregate, no failure |
214
+ | host memory available after the 4-way runs | ~10 GiB (short), ~7.2 GiB (unequal); swap unchanged |
215
+ | earlier MTP=2 draft acceptance (Triton baseline, live windows) | 49.52% weighted, mean length 2.03 |
216
+ | smoke | a parsed `read_file` tool call; a 25,640-token retrieval returned the right answer twice (13.28 s cold, 1.38 s prefix-cached) |
217
+
218
+ The `x` figures are **KV-pool concurrency ceilings**: KV tokens divided by
219
+ `max_model_len` (262144). They are arithmetic from the boot log, not measured
220
+ throughput, and must not be multiplied by a single-stream tok/s.
221
+
222
+ **Not tested by the author:** any full 256K request, four resident full-length
223
+ contexts, a sustained or multi-user load, a quality eval, or vision.
224
+
225
+ **For scale against this fleet's own measured numbers:** on the same board model,
226
+ the 27B cortex measured 12.1 tok/s at 1M
227
+ (`docs/evidence/2026-08-20-accept-cortex-local-thor.txt`), and the `worker` lane
228
+ (`nvidia/Qwen3.6-35B-A3B-NVFP4`) measured 196.6 tok/s
229
+ (`docs/nvidia-qwen3.6-35b-a3b-nvfp4.md`). The author's ~35 tok/s would clear
230
+ the ≥25 tok/s bar the 2026-08-27 spec set — but it is a different box, a
231
+ different workload, and not our measurement.
232
+
233
+ ## Why the 2026-08-27 "doesn't fit" was wrong
234
+
235
+ The sibling doc lists `RadixArk/Qwen3.8-Flash-Next-NVFP4` as "135 GB — **no,
236
+ misses by ~13 GB**", published for SGLang. It also ruled `VLLM_PLE_CPU_OFFLOAD`
237
+ a no-op on a unified-memory board, since host RAM and GPU RAM are one pool.
238
+ Both observations are correct as far as they go. The footprint conclusion
239
+ drawn from them is not:
240
+
241
+ - the footprint assumed the whole PLE table must be **resident** — mmapping it
242
+ from NVMe (mechanism 1) makes it disk-backed and paged in on demand, which is
243
+ a different axis from CPU offload;
244
+ - a preview vLLM (`blazux/qwen3.8-Flash-DGX`) serves this checkpoint; the
245
+ checkpoint is not SGLang-only in practice;
246
+ - the pinned revision measures 126.0 GiB on HF, not 135 GB.
247
+
248
+ So the GGUF-through-`vllm-gguf-plugin` route that spec chose on paper was not
249
+ the only route that fits. That spec's other open items — the vLLM version and
250
+ sm_110 kernel coverage — are exactly what this recipe's two overlays answer,
251
+ using a preview build instead of a release.
252
+
253
+ ## What running it on a fleet box would take
254
+
255
+ This was scoped read-only on 2026-09-13 and not pursued:
256
+
257
+ - **The Thor stops being the `worker` host** for the window. The recipe needs
258
+ 0.90 util with no other model servers running, and the captured deployment
259
+ `deployments/jetson-agx-thor__thor-worker/` is the rollback. This is the
260
+ reason for the decision above.
261
+ - **Disk**: the Thor's single 1 TB NVMe had 146 GB free, against 126 GiB of
262
+ weights plus three ~30 GB image layers. It would need a cleanup first.
263
+ - **Memory headroom** is the author's ~7–10 GiB available after load, before
264
+ counting anything else resident on the box.
265
+ - **As a lobes lane**, not a hand launcher, it would touch:
266
+ - `lobes/catalog.py` — a candidate entry; `SupportedModel` has no image field.
267
+ - The fleet compose template — `vllm-primary` has no per-lane image override,
268
+ and no lane passes through the `VLLM_PLE_*` / `VLLM_QSA_*` / compile-cache
269
+ env or `-cc.splitting_ops`.
270
+ - A solo Thor shape.
271
+ - It would be a **catalog change, not a new role**, per
272
+ `docs/colleague-stack.md`.
273
+
274
+ ## Open unknowns carried by the recipe itself
275
+
276
+ - **Mixed-length concurrent prefill OOM.** An upstream vLLM issue allocates a
277
+ dense `num_prefills x max_chunk_length` PLE short-conv buffer; this has OOMed
278
+ at util 0.85 even with low KV use. The 4-way unequal smoke passed, which the
279
+ author says is not a guarantee.
280
+ - **Restart stability** after the Xid 13 workaround (mechanism 6).
281
+ - **FP8 KV** for four resident full contexts is proposed in the baseline doc and
282
+ unvalidated. There is no FP4 KV in this stack.
283
+ - **Storage sensitivity.** Decode speed rides PLE read latency, which depends on
284
+ the NVMe.
285
+ - **Vision** is declared by the checkpoint and untested.
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "lobes-cli"
3
- version = "0.78.3"
3
+ version = "0.78.4"
4
4
  description = "lobes — run, assess, and switch the local vLLM model."
5
5
  readme = "README.md"
6
6
  license = "Apache-2.0"