hypernix 0.72.5.dev3__tar.gz → 0.72.5.post3__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 (665) hide show
  1. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/ios.yml +100 -4
  2. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/public-release.yml +68 -5
  3. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/release.yml +8 -0
  4. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/PKG-INFO +211 -21
  5. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/README.md +210 -20
  6. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/bin/hypernix-t1 +49 -1
  7. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/install-t1.sh +135 -4
  8. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/pyproject.toml +9 -1
  9. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/setup.cfg +1 -1
  10. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/__init__.py +1 -1
  11. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyped_pro.js +139 -0
  12. hypernix-0.72.5.post3/src/hypernix/hyperlink/catalogue.py +426 -0
  13. hypernix-0.72.5.post3/src/hypernix/hyperlink/compaction.py +295 -0
  14. hypernix-0.72.5.post3/src/hypernix/hyperlink/generation.py +193 -0
  15. hypernix-0.72.5.post3/src/hypernix/hyperlink/inference.py +176 -0
  16. hypernix-0.72.5.post3/src/hypernix/hyperlink/managed.py +548 -0
  17. hypernix-0.72.5.post3/src/hypernix/hyperlink/memory.py +413 -0
  18. hypernix-0.72.5.post3/src/hypernix/hyperlink/preferences.py +392 -0
  19. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/sessions.py +171 -0
  20. hypernix-0.72.5.post3/src/hypernix/hyperlink/toolloop.py +276 -0
  21. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/cli.py +103 -3
  22. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/hyped_pro_bridge.py +73 -2
  23. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/hyped_pro_gui.py +158 -0
  24. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/noodle/__init__.py +12 -0
  25. hypernix-0.72.5.post3/src/hypernix/interfaces/noodle/hyped.py +521 -0
  26. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/noodle/tools.py +234 -0
  27. hypernix-0.72.5.post3/src/hypernix/monitoring/cctvtop.py +263 -0
  28. hypernix-0.72.5.post3/src/hypernix/monitoring/remote_desktop.py +647 -0
  29. hypernix-0.72.5.post3/src/hypernix/monitoring/stale_log.py +596 -0
  30. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/tvtoppro.py +374 -3
  31. hypernix-0.72.5.post3/src/hypernix/monitoring/tvtoppro_modules.py +724 -0
  32. hypernix-0.72.5.post3/src/hypernix/quant/dflash1.py +400 -0
  33. hypernix-0.72.5.post3/src/hypernix/quant/dflash1_cli.py +140 -0
  34. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/dflash2.py +49 -39
  35. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/gguf.py +6 -0
  36. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/ggufcheck.py +12 -11
  37. hypernix-0.72.5.post3/src/hypernix/quant/hyprslug.py +1253 -0
  38. hypernix-0.72.5.post3/src/hypernix/quant/hyprslug_cli.py +615 -0
  39. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/lowbit.py +55 -1
  40. hypernix-0.72.5.post3/src/hypernix/quant/multiquant.py +702 -0
  41. hypernix-0.72.5.post3/src/hypernix/quant/multiquant_cli.py +173 -0
  42. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/steamroller.py +17 -0
  43. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/security/keymaster.py +89 -4
  44. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/__init__.py +5 -4
  45. hypernix-0.72.5.post3/src/hypernix/system/blanking.py +300 -0
  46. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/config.py +79 -3
  47. hypernix-0.72.5.post3/src/hypernix/system/hardware.py +360 -0
  48. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/nettrust.py +30 -3
  49. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/outage.py +77 -49
  50. hypernix-0.72.5.post3/src/hypernix/system/protect.py +284 -0
  51. hypernix-0.72.5.post3/src/hypernix/t1api/accounts.py +803 -0
  52. hypernix-0.72.5.post3/src/hypernix/t1api/accounts_cli.py +313 -0
  53. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/app.py +60 -1
  54. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/config.py +59 -0
  55. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/deps.py +87 -1
  56. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/modelindex.py +39 -0
  57. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/modelindex_cli.py +43 -8
  58. hypernix-0.72.5.post3/src/hypernix/t1api/pricing.py +270 -0
  59. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/__init__.py +25 -0
  60. hypernix-0.72.5.post3/src/hypernix/t1api/routers/accounts.py +705 -0
  61. hypernix-0.72.5.post3/src/hypernix/t1api/routers/compact.py +214 -0
  62. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/hyperlink.py +691 -24
  63. hypernix-0.72.5.post3/src/hypernix/t1api/routers/memory.py +150 -0
  64. hypernix-0.72.5.post3/src/hypernix/t1api/routers/noodle.py +224 -0
  65. hypernix-0.72.5.post3/src/hypernix/t1api/routers/runner.py +257 -0
  66. hypernix-0.72.5.post3/src/hypernix/t1api/runner_cli.py +261 -0
  67. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/schemas.py +273 -0
  68. hypernix-0.72.5.post3/src/hypernix/t1api/upgrade.py +248 -0
  69. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/version.py +3 -3
  70. hypernix-0.72.5.post3/src/hypernix/t1api/webauth.py +357 -0
  71. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/timing/spinner.py +69 -0
  72. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix.egg-info/SOURCES.txt +58 -0
  73. hypernix-0.72.5.post3/tests/conftest.py +152 -0
  74. hypernix-0.72.5.post3/tests/test_chat_compaction.py +346 -0
  75. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_cli_json_output.py +13 -6
  76. hypernix-0.72.5.post3/tests/test_cli_unknown_command.py +164 -0
  77. hypernix-0.72.5.post3/tests/test_conftest_rails.py +182 -0
  78. hypernix-0.72.5.post3/tests/test_generation_stop.py +357 -0
  79. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ggufcheck.py +9 -3
  80. hypernix-0.72.5.post3/tests/test_hyperlink_ios_wiring.py +998 -0
  81. hypernix-0.72.5.post3/tests/test_hyperlink_keyless.py +216 -0
  82. hypernix-0.72.5.post3/tests/test_hyperlink_pt3_wiring.py +735 -0
  83. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hypernix_t1_service.py +79 -0
  84. hypernix-0.72.5.post3/tests/test_hyprslug_protected_tensors.py +269 -0
  85. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyprslug_row_blocks.py +66 -12
  86. hypernix-0.72.5.post3/tests/test_inference_backend.py +272 -0
  87. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_install_script.py +344 -0
  88. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ios_llama_link.py +201 -0
  89. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_lint_regressions.py +4 -1
  90. hypernix-0.72.5.post3/tests/test_managed_runner.py +327 -0
  91. hypernix-0.72.5.post3/tests/test_memory.py +395 -0
  92. hypernix-0.72.5.post3/tests/test_message_editing.py +294 -0
  93. hypernix-0.72.5.post3/tests/test_model_catalogue.py +281 -0
  94. hypernix-0.72.5.post3/tests/test_model_pricing.py +261 -0
  95. hypernix-0.72.5.post3/tests/test_multiquant.py +551 -0
  96. hypernix-0.72.5.post3/tests/test_noodle_api.py +301 -0
  97. hypernix-0.72.5.post3/tests/test_noodle_hyped.py +560 -0
  98. hypernix-0.72.5.post3/tests/test_preferences.py +304 -0
  99. hypernix-0.72.5.post3/tests/test_protect_blanking.py +310 -0
  100. hypernix-0.72.5.post3/tests/test_remote_desktop.py +428 -0
  101. hypernix-0.72.5.post3/tests/test_runner_cli.py +276 -0
  102. hypernix-0.72.5.post3/tests/test_security_fixes.py +364 -0
  103. hypernix-0.72.5.post3/tests/test_server_hardware.py +221 -0
  104. hypernix-0.72.5.post3/tests/test_server_upgrade.py +203 -0
  105. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_subbit_quantization.py +26 -3
  106. hypernix-0.72.5.post3/tests/test_t1_accounts.py +747 -0
  107. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1_v1_0_26_core.py +3 -3
  108. hypernix-0.72.5.post3/tests/test_tool_loop.py +361 -0
  109. hypernix-0.72.5.post3/tests/test_tvtoppro_features.py +488 -0
  110. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/CLI.md +80 -5
  111. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Changelog.md +720 -0
  112. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Home.md +1 -1
  113. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/HyprSlug.md +50 -7
  114. hypernix-0.72.5.post3/wiki/Model-Training-Guide.md +391 -0
  115. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Release-Timeline.md +69 -0
  116. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Roadmap.md +48 -19
  117. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Training.md +4 -0
  118. hypernix-0.72.5.dev3/src/hypernix/monitoring/cctvtop.py +0 -162
  119. hypernix-0.72.5.dev3/src/hypernix/quant/hyprslug.py +0 -734
  120. hypernix-0.72.5.dev3/src/hypernix/quant/hyprslug_cli.py +0 -302
  121. hypernix-0.72.5.dev3/src/hypernix/system/protect.py +0 -178
  122. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/build.yml +0 -0
  123. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/ci.yml +0 -0
  124. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/codacy.yml +0 -0
  125. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/codeql.yml +0 -0
  126. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/deploy-docs.yml +0 -0
  127. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/update-json-stats.yml +0 -0
  128. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/.github/workflows/update-readme.yml +0 -0
  129. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/LICENSE +0 -0
  130. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/MANIFEST.in +0 -0
  131. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/banner-hero.svg +0 -0
  132. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo/Gemini_Generated_Image_nxfdm1nxfdm1nxfd-removebg-preview.png +0 -0
  133. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo/Gemini_Generated_Image_nxfdm1nxfdm1nxfd.png +0 -0
  134. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/apple-touch-icon.png +0 -0
  135. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/favicon-16.png +0 -0
  136. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/favicon-32.png +0 -0
  137. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/favicon-48.png +0 -0
  138. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/hypernix-favicon.svg +0 -0
  139. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/hypernix-icon-dark.svg +0 -0
  140. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/hypernix-icon-mono.svg +0 -0
  141. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/hypernix-icon-ondark.svg +0 -0
  142. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/hypernix-icon-white.svg +0 -0
  143. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/hypernix-icon.svg +0 -0
  144. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/hypernix-lockup-dark.svg +0 -0
  145. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/hypernix-lockup-light.svg +0 -0
  146. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/icon-192.png +0 -0
  147. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo-new/icon-512.png +0 -0
  148. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo.png +0 -0
  149. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/assets/logo1.png +0 -0
  150. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/bin/_hypernix_python.sh +0 -0
  151. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/bin/hyped+ +0 -0
  152. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/bin/hyped-pro +0 -0
  153. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/bin/hyped-pro-gui +0 -0
  154. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/curriculum_eval_v0_70_4.py +0 -0
  155. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/custom_arch.py +0 -0
  156. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/hypernix_run.json +0 -0
  157. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/hyprslug-headers/README.md +0 -0
  158. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/hyprslug-headers/serve.sh +0 -0
  159. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/hyprslug-headers/wrap-for-lmstudio.sh +0 -0
  160. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/quickstart.py +0 -0
  161. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/resilient_finetune_v0_70_4.py +0 -0
  162. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/run_hypernix.py +0 -0
  163. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/.env.example +0 -0
  164. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/API-EXAMPLES.md +0 -0
  165. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/Dockerfile +0 -0
  166. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/README.md +0 -0
  167. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/config/.gitkeep +0 -0
  168. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/docker-compose.yml +0 -0
  169. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/hypernix-t1api.service +0 -0
  170. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/nginx.conf +0 -0
  171. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/openapi.json +0 -0
  172. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/run_local.sh +0 -0
  173. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/t1api/run_tailscale.sh +0 -0
  174. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/train hypernix 1 5 gtx1080.py +0 -0
  175. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/train_hypernix_0_1_5_evaluator.py +0 -0
  176. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/train_hypernix_1_5_gtx1080.py +0 -0
  177. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/tvtoppro/README.md +0 -0
  178. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/tvtoppro/dracula.theme +0 -0
  179. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/tvtoppro/gruvbox-dark.theme +0 -0
  180. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/tvtoppro/hypernix.theme +0 -0
  181. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/tvtoppro/mono.theme +0 -0
  182. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/tvtoppro/monokai.theme +0 -0
  183. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/tvtoppro/nord.theme +0 -0
  184. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/tvtoppro/tokyo-night.theme +0 -0
  185. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/examples/upload_to_hub.py +0 -0
  186. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/pytest.ini +0 -0
  187. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/ruff.toml +0 -0
  188. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/README.md +0 -0
  189. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/apply_hypernix_fixes.py +0 -0
  190. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/autofix +0 -0
  191. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/autofix-B +0 -0
  192. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/autofix-E +0 -0
  193. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/autofix-F +0 -0
  194. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/autofix_scope.py +0 -0
  195. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/benchmark_v5.py +0 -0
  196. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/benchmark_v5s.py +0 -0
  197. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/benchmark_v6.py +0 -0
  198. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/ci/fake_model_server.py +0 -0
  199. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/ci/integration_probe.py +0 -0
  200. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/ci/wait_for_http.py +0 -0
  201. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/install_deps.sh +0 -0
  202. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/install_macos_legacy.sh +0 -0
  203. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/measure_optimizer_memory.py +0 -0
  204. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/quantize_i7_7660u.sh +0 -0
  205. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/t1api_examples.py +0 -0
  206. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/scripts/update_json_stats.py +0 -0
  207. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/setup.py +0 -0
  208. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/__main__.py +0 -0
  209. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/audio/__init__.py +0 -0
  210. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/audio/audiofile.py +0 -0
  211. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/audio/features.py +0 -0
  212. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/audio/wakeup.py +0 -0
  213. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/audio/wakeup_cli.py +0 -0
  214. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/bridge/__init__.py +0 -0
  215. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/bridge/lmstudio.py +0 -0
  216. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/chat/__init__.py +0 -0
  217. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/chat/cookbook.py +0 -0
  218. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/chat/countertop.py +0 -0
  219. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/chat/flour.py +0 -0
  220. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/chat/injection.py +0 -0
  221. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/chat/menu.py +0 -0
  222. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/__init__.py +0 -0
  223. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/blender.py +0 -0
  224. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/cardboard_box.py +0 -0
  225. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/cutting_board.py +0 -0
  226. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/food_processor.py +0 -0
  227. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/gather.py +0 -0
  228. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/gather_cli.py +0 -0
  229. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/lunchbox.py +0 -0
  230. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/mediocre_fridge.py +0 -0
  231. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/pans.py +0 -0
  232. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/pepper_shaker.py +0 -0
  233. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/qa.py +0 -0
  234. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/salt_shaker.py +0 -0
  235. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/scavenger.py +0 -0
  236. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/sink.py +0 -0
  237. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/strainer.py +0 -0
  238. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/toaster.py +0 -0
  239. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/data/tupperware.py +0 -0
  240. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/evaluation/__init__.py +0 -0
  241. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/evaluation/espresso_maker.py +0 -0
  242. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/evaluation/industrial_range.py +0 -0
  243. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/evaluation/new_fridge.py +0 -0
  244. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/evaluation/new_range.py +0 -0
  245. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/evaluation/old_range.py +0 -0
  246. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/evaluation/vera.py +0 -0
  247. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/__init__.py +0 -0
  248. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/discovery.py +0 -0
  249. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/files.py +0 -0
  250. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/hfdownload.py +0 -0
  251. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/hfmerge.py +0 -0
  252. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/identity.py +0 -0
  253. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/notify.py +0 -0
  254. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/ondevice.py +0 -0
  255. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/pairing.py +0 -0
  256. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/peers.py +0 -0
  257. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/search.py +0 -0
  258. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/hyperlink/sync.py +0 -0
  259. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/__init__.py +0 -0
  260. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/assistant.py +0 -0
  261. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/hyped.py +0 -0
  262. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/hyped_pro.py +0 -0
  263. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/hyped_pro_core.py +0 -0
  264. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/hyped_pro_tools.py +0 -0
  265. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/noodle/agent.py +0 -0
  266. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/noodle/cli.py +0 -0
  267. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/noodle/hpo.py +0 -0
  268. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/noodle/providers.py +0 -0
  269. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/noodle/swarm.py +0 -0
  270. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/noodle/validate.py +0 -0
  271. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/version_launcher.py +0 -0
  272. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/websearch.py +0 -0
  273. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/interfaces/wiki_cli.py +0 -0
  274. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/__init__.py +0 -0
  275. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/arch.py +0 -0
  276. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/brewer_adapter.py +0 -0
  277. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/download.py +0 -0
  278. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/generate.py +0 -0
  279. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/ggufrun.py +0 -0
  280. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/hnxdevice.py +0 -0
  281. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/hnxrun.py +0 -0
  282. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/hnxtokenizer.py +0 -0
  283. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/hnxtorch.py +0 -0
  284. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/microwave.py +0 -0
  285. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/multilama.py +0 -0
  286. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/nano_nano.py +0 -0
  287. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/neo_oven.py +0 -0
  288. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/old_oven.py +0 -0
  289. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/stml.py +0 -0
  290. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/whisk.py +0 -0
  291. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/models/workshop.py +0 -0
  292. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/__init__.py +0 -0
  293. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/hyper_log.py +0 -0
  294. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/livestream.py +0 -0
  295. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/map.py +0 -0
  296. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/plasma.py +0 -0
  297. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/table.py +0 -0
  298. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/thermometer.py +0 -0
  299. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/tv.py +0 -0
  300. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/tvtop.py +0 -0
  301. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/monitoring/tvtop_plus_plus.py +0 -0
  302. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/__init__.py +0 -0
  303. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/optimizer_framework.py +0 -0
  304. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/pressure_cooker.py +0 -0
  305. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/pressure_cooker_v3.py +0 -0
  306. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/pressure_cooker_v4.py +0 -0
  307. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/pressure_cooker_v5.py +0 -0
  308. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/pressure_cooker_v5s.py +0 -0
  309. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/pressure_cooker_v6.py +0 -0
  310. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/pressure_cooker_v6v.py +0 -0
  311. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/optimizers/sixbit.py +0 -0
  312. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/package-lock.json +0 -0
  313. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/package.json +0 -0
  314. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/py.typed +0 -0
  315. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/__init__.py +0 -0
  316. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/convert.py +0 -0
  317. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/dflash2_cli.py +0 -0
  318. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/fetcher.py +0 -0
  319. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/formats.py +0 -0
  320. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/hyprslug_headers.py +0 -0
  321. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/hyprslug_headers_cli.py +0 -0
  322. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/hyprslug_server.py +0 -0
  323. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/imatrix.py +0 -0
  324. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/imatrix_cli.py +0 -0
  325. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/llamaquants.py +0 -0
  326. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/qat.py +0 -0
  327. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/quantize.py +0 -0
  328. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/runtime_bridge.py +0 -0
  329. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/runtime_bridge_cli.py +0 -0
  330. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/steamroller_cli.py +0 -0
  331. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/subbit.py +0 -0
  332. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/quant/upload.py +0 -0
  333. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/scriptgen/__init__.py +0 -0
  334. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/scriptgen/app.py +0 -0
  335. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/scriptgen/cli.py +0 -0
  336. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/scriptgen/params.py +0 -0
  337. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/scriptgen/templates.py +0 -0
  338. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/scriptgen/theme.py +0 -0
  339. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/scriptgen/widgets.py +0 -0
  340. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/security/__init__.py +0 -0
  341. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/security/gatekeeper.py +0 -0
  342. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/security/gkey_cli.py +0 -0
  343. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/security/keyconfig.py +0 -0
  344. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/security/keyversions.py +0 -0
  345. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/security/t2keys.py +0 -0
  346. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/compactor.py +0 -0
  347. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/deprecation.py +0 -0
  348. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/deps.py +0 -0
  349. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/dishwasher.py +0 -0
  350. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/doctor.py +0 -0
  351. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/ethanol.py +0 -0
  352. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/freezer.py +0 -0
  353. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/fusebox.py +0 -0
  354. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/fusebox_cli.py +0 -0
  355. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/gpus.py +0 -0
  356. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/launcher.py +0 -0
  357. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/net.py +0 -0
  358. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/old_fridge.py +0 -0
  359. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/pascal.py +0 -0
  360. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/pathfix.py +0 -0
  361. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/release.py +0 -0
  362. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/torch_compat.py +0 -0
  363. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/ups.py +0 -0
  364. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/utils.py +0 -0
  365. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/system/vram.py +0 -0
  366. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/__init__.py +0 -0
  367. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/audit.py +0 -0
  368. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/auth.py +0 -0
  369. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/authhistory.py +0 -0
  370. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/backup.py +0 -0
  371. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/billing.py +0 -0
  372. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/billingkeys.py +0 -0
  373. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/bootstrap.py +0 -0
  374. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/cost.py +0 -0
  375. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/data/model_registry.example.json +0 -0
  376. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/data/routing_policies.example.json +0 -0
  377. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/db.py +0 -0
  378. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/deploy.py +0 -0
  379. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/errors.py +0 -0
  380. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/events.py +0 -0
  381. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/jobs.py +0 -0
  382. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/keys.py +0 -0
  383. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/launchscript_cli.py +0 -0
  384. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/modules.py +0 -0
  385. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/mtls.py +0 -0
  386. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/netpolicy.py +0 -0
  387. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/ratelimit.py +0 -0
  388. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/registry.py +0 -0
  389. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/audit.py +0 -0
  390. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/auth.py +0 -0
  391. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/authundo.py +0 -0
  392. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/backup.py +0 -0
  393. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/billing.py +0 -0
  394. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/bridge.py +0 -0
  395. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/config.py +0 -0
  396. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/events.py +0 -0
  397. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/health.py +0 -0
  398. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/inference.py +0 -0
  399. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/jobs.py +0 -0
  400. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/keys.py +0 -0
  401. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/models.py +0 -0
  402. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/modules.py +0 -0
  403. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/security.py +0 -0
  404. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/servers.py +0 -0
  405. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/training.py +0 -0
  406. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routers/usage.py +0 -0
  407. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/routing.py +0 -0
  408. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/security.py +0 -0
  409. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/servers.py +0 -0
  410. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/storage.py +0 -0
  411. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/training_cli.py +0 -0
  412. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/transport.py +0 -0
  413. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1api/usage.py +0 -0
  414. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1sdk/__init__.py +0 -0
  415. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1sdk/client.py +0 -0
  416. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1sdk/errors.py +0 -0
  417. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1sdk/models.py +0 -0
  418. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/t1sdk/transport.py +0 -0
  419. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/timing/__init__.py +0 -0
  420. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/timing/bell.py +0 -0
  421. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/timing/coffee_maker.py +0 -0
  422. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/timing/smoke_alarm.py +0 -0
  423. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/timing/timer.py +0 -0
  424. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/__init__.py +0 -0
  425. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/abbicus.py +0 -0
  426. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/apron.py +0 -0
  427. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/brewer.py +0 -0
  428. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/cake_pan.py +0 -0
  429. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/camouflage.py +0 -0
  430. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/compute_framework.py +0 -0
  431. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/deep_fryer.py +0 -0
  432. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/fizzle.py +0 -0
  433. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/instant_pot.py +0 -0
  434. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/lazy_suzan.py +0 -0
  435. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/monitor.py +0 -0
  436. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/mtp.py +0 -0
  437. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/recipe_book.py +0 -0
  438. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/smoker.py +0 -0
  439. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/training/train.py +0 -0
  440. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/tsconfig.json +0 -0
  441. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/waiter/__init__.py +0 -0
  442. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/waiter/cli.py +0 -0
  443. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/waiter/client.py +0 -0
  444. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/waiter/diagnose.py +0 -0
  445. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/waiter/discovery.py +0 -0
  446. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/waiter/local_config.py +0 -0
  447. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/waiter/smoke.py +0 -0
  448. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/src/hypernix/waiter/tui.py +0 -0
  449. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/shell_support.py +0 -0
  450. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_alarms_and_presets.py +0 -0
  451. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_arch_mapping.py +0 -0
  452. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_assistant.py +0 -0
  453. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_autofix_scripts.py +0 -0
  454. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_billing_keys.py +0 -0
  455. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_bootstrap_key.py +0 -0
  456. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_brewer_adapter.py +0 -0
  457. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_brewer_causality.py +0 -0
  458. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ci_integration_jobs.py +0 -0
  459. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_cli_integration.py +0 -0
  460. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_coverage_beef.py +0 -0
  461. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_decoder_agreement.py +0 -0
  462. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_deprecation.py +0 -0
  463. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_deps_and_windows.py +0 -0
  464. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_dflash2.py +0 -0
  465. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_effective_bitrate.py +0 -0
  466. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ethanol.py +0 -0
  467. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_fetcher.py +0 -0
  468. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_freezer.py +0 -0
  469. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_fridges.py +0 -0
  470. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_fusebox.py +0 -0
  471. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_gather.py +0 -0
  472. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ggml_hnx.py +0 -0
  473. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_gguf_inference.py +0 -0
  474. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_gkey_key_versions.py +0 -0
  475. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_gpu_migration.py +0 -0
  476. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_gpus.py +0 -0
  477. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hnx_device_placement.py +0 -0
  478. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hnx_devices.py +0 -0
  479. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hnxrun.py +0 -0
  480. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyped_pro_bridge_cancel.py +0 -0
  481. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyped_pro_t1api.py +0 -0
  482. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyperlink_api_post9.py +0 -0
  483. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyperlink_discovery.py +0 -0
  484. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyperlink_notify.py +0 -0
  485. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyperlink_ondevice.py +0 -0
  486. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyperlink_ondevice_mirror.py +0 -0
  487. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyperlink_reachability.py +0 -0
  488. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyperlink_search.py +0 -0
  489. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyperlink_sync.py +0 -0
  490. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyprslug_field_reports.py +0 -0
  491. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyprslug_headers.py +0 -0
  492. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_hyprslug_recipes.py +0 -0
  493. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_imatrix.py +0 -0
  494. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_inference_endpoints.py +0 -0
  495. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_install_pin.py +0 -0
  496. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ios_appicon.py +0 -0
  497. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ios_concurrency.py +0 -0
  498. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ios_version_wiring.py +0 -0
  499. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_kitchen_v044.py +0 -0
  500. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_kitchen_v045.py +0 -0
  501. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_launch_script.py +0 -0
  502. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_lazy_suzan.py +0 -0
  503. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_llama_quants.py +0 -0
  504. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_low_bit_types.py +0 -0
  505. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_lunchbox.py +0 -0
  506. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_map.py +0 -0
  507. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_model_registry_discovery.py +0 -0
  508. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_module_layout.py +0 -0
  509. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_neo_oven.py +0 -0
  510. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_neo_oven_generation.py +0 -0
  511. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_nettrust.py +0 -0
  512. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_new_archs_v035.py +0 -0
  513. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_nix_fallback.py +0 -0
  514. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_old_oven.py +0 -0
  515. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_pathfix.py +0 -0
  516. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_pressure_cooker_v048.py +0 -0
  517. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_pressure_cooker_v3.py +0 -0
  518. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_pressure_cooker_v6.py +0 -0
  519. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_qat.py +0 -0
  520. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_quantize_v0703.py +0 -0
  521. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ranges.py +0 -0
  522. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_runtime_bridge.py +0 -0
  523. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_shakers_and_torchcompat.py +0 -0
  524. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_snapshot_roundtrip.py +0 -0
  525. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_sspkid_and_key_config.py +0 -0
  526. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_studio_core.py +0 -0
  527. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_studio_local.py +0 -0
  528. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_subsystem_map.py +0 -0
  529. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1_model_index.py +0 -0
  530. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1_v1_0_26_8_1_1.py +0 -0
  531. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1_v1_0_26_http.py +0 -0
  532. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_auth.py +0 -0
  533. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_beta3_core.py +0 -0
  534. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_beta3_http.py +0 -0
  535. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_beta3_security.py +0 -0
  536. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_beta4_usage_report.py +0 -0
  537. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_billing.py +0 -0
  538. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_core.py +0 -0
  539. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_events.py +0 -0
  540. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_example_scripts.py +0 -0
  541. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_http.py +0 -0
  542. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_http_beta2.py +0 -0
  543. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_jobs.py +0 -0
  544. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_modules.py +0 -0
  545. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_routing.py +0 -0
  546. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_security.py +0 -0
  547. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t1api_servers.py +0 -0
  548. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_t2s_errors.py +0 -0
  549. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_tool_consent_gate.py +0 -0
  550. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_training_admin.py +0 -0
  551. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_trusted_network.py +0 -0
  552. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_tupperware.py +0 -0
  553. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_tvtop_plus_plus_comprehensive.py +0 -0
  554. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_tvtoppro.py +0 -0
  555. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_ups.py +0 -0
  556. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v031_chat_and_archs.py +0 -0
  557. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v047_deep_fryer_cake_pan_presets.py +0 -0
  558. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v050.py +0 -0
  559. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v051.py +0 -0
  560. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v051_1.py +0 -0
  561. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v051_3.py +0 -0
  562. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v051_4.py +0 -0
  563. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v052_5.py +0 -0
  564. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v052_6.py +0 -0
  565. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v060.py +0 -0
  566. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v061_1.py +0 -0
  567. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v061_2.py +0 -0
  568. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v061_b1.py +0 -0
  569. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0703_additional.py +0 -0
  570. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0704_features.py +0 -0
  571. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0704_tvtop_plus_plus.py +0 -0
  572. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0704b11_features.py +0 -0
  573. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0704b12_cctvtop.py +0 -0
  574. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0705_all.py +0 -0
  575. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0710_gatekeeper_keymaster.py +0 -0
  576. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0711_border_fix.py +0 -0
  577. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0712_hyped_countertop.py +0 -0
  578. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0714_config_provider_keys.py +0 -0
  579. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0714_cpu_presets.py +0 -0
  580. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0714_hyped_pro_bridge.py +0 -0
  581. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0714_hyped_pro_core.py +0 -0
  582. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0714_hyped_pro_launcher.py +0 -0
  583. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0714_hyped_pro_tools.py +0 -0
  584. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0714_multilama.py +0 -0
  585. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0721_api_waiter.py +0 -0
  586. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0721_modules.py +0 -0
  587. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_v0721_t2_keys.py +0 -0
  588. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_vera.py +0 -0
  589. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_version_guard.py +0 -0
  590. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_version_launcher.py +0 -0
  591. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_vram_optimizations.py +0 -0
  592. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_waiter.py +0 -0
  593. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_waiter_diagnose.py +0 -0
  594. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_wakeup.py +0 -0
  595. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/tests/test_website_mobile.py +0 -0
  596. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Abbicus.md +0 -0
  597. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Alarms.md +0 -0
  598. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Apron.md +0 -0
  599. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Architectures.md +0 -0
  600. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Bell.md +0 -0
  601. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Blender.md +0 -0
  602. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/CakePan.md +0 -0
  603. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Camouflage.md +0 -0
  604. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Changelog-guide.md +0 -0
  605. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/CoffeeMaker.md +0 -0
  606. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Convert.md +0 -0
  607. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Cookbook.md +0 -0
  608. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Countertop.md +0 -0
  609. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/CuttingBoard.md +0 -0
  610. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Dashboards.md +0 -0
  611. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/DeepFryer.md +0 -0
  612. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Devices.md +0 -0
  613. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Dflash2.md +0 -0
  614. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Download.md +0 -0
  615. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/EspressoMaker.md +0 -0
  616. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Flour.md +0 -0
  617. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/FoodProcessor.md +0 -0
  618. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Frameworks.md +0 -0
  619. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Freezer.md +0 -0
  620. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Fridges.md +0 -0
  621. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/FuseBox.md +0 -0
  622. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Gather.md +0 -0
  623. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/HnxRun.md +0 -0
  624. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/HuggingFace-Models.md +0 -0
  625. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/HyperLink-OnDevice.md +0 -0
  626. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/HyperLink-Sync.md +0 -0
  627. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/HyperLog.md +0 -0
  628. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/HyprSlug-Headers.md +0 -0
  629. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Imatrix.md +0 -0
  630. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Kitchen.md +0 -0
  631. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/LowBit.md +0 -0
  632. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Lunchbox.md +0 -0
  633. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/MTP.md +0 -0
  634. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Menu.md +0 -0
  635. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Microwave.md +0 -0
  636. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/ModelIndex.md +0 -0
  637. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Optimizers.md +0 -0
  638. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Ovens.md +0 -0
  639. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Pans.md +0 -0
  640. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Pascal.md +0 -0
  641. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/PipelineMechanics.md +0 -0
  642. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Pressure-Cooker-V3.md +0 -0
  643. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Pressure-Cooker-V4.md +0 -0
  644. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Pressure-Cooker-V5.md +0 -0
  645. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Pressure-Cooker-V6.md +0 -0
  646. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Quantization.md +0 -0
  647. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Ranges.md +0 -0
  648. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/RecipeBook.md +0 -0
  649. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Runtime.md +0 -0
  650. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/STML.md +0 -0
  651. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Scavenger.md +0 -0
  652. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Shakers.md +0 -0
  653. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Smoker.md +0 -0
  654. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/T1-API-Security-Checklist.md +0 -0
  655. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/T1-API.md +0 -0
  656. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Toaster.md +0 -0
  657. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Tupperware.md +0 -0
  658. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/TvTopPro.md +0 -0
  659. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/VRAM.md +0 -0
  660. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Vera.md +0 -0
  661. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Waiter-TUI.md +0 -0
  662. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/WakeUp.md +0 -0
  663. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Whisk.md +0 -0
  664. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/Workshop.md +0 -0
  665. {hypernix-0.72.5.dev3 → hypernix-0.72.5.post3}/wiki/macOS-legacy.md +0 -0
@@ -49,7 +49,12 @@ on:
49
49
  local_engine:
50
50
  description: "Build llama.cpp into the app so it can run models on-device."
51
51
  type: boolean
52
- default: false
52
+ # True for a *called* build, unlike the dispatch default below.
53
+ # The only reason to call this workflow is to ship the result,
54
+ # and an IPA that cannot run a model is not worth shipping. The
55
+ # expensive default is the safe one here; the cheap default
56
+ # belongs on the PR path, where it is.
57
+ default: true
53
58
  version:
54
59
  description: "Marketing version to stamp into the build"
55
60
  type: string
@@ -131,8 +136,50 @@ jobs:
131
136
  # macOS runner and is not worth paying on a PR that touched a
132
137
  # view. Without it the app builds and ships with EchoRunner,
133
138
  # which tells the user this build has no local engine.
139
+ # Every trigger gets a stated answer, because the obvious
140
+ # expression does not have one.
141
+ #
142
+ # `if: ${{ inputs.local_engine }}` was the whole engine-skipping
143
+ # bug, and it looks correct. The `inputs` context exists *only*
144
+ # for `workflow_dispatch` and `workflow_call`; on a `push` or a
145
+ # `pull_request` it is not populated at all, so
146
+ # `inputs.local_engine` is null, null is falsy, and the step was
147
+ # skipped on every single commit to main -- silently, with a grey
148
+ # "skipped" in the log that looks exactly like a deliberate one.
149
+ # `--require-engine` was gated on the same expression, so the
150
+ # guard that exists to catch this was switched off by it too.
151
+ #
152
+ # Every commit to main therefore shipped an app whose on-device
153
+ # inference was EchoRunner. That is the "it always skips the
154
+ # inference engine build" report, and setting the workflow_call
155
+ # default to true (which fixed the release path) could not have
156
+ # fixed it: the release path was never the one skipping.
157
+ - name: Decide whether to build the engine
158
+ id: engine
159
+ env:
160
+ REQUESTED: ${{ inputs.local_engine }}
161
+ EVENT: ${{ github.event_name }}
162
+ run: |
163
+ set -euo pipefail
164
+ # REQUESTED is "true", "false", or empty when there is no
165
+ # `inputs` context to read. Empty is the case that has to be
166
+ # decided here rather than defaulted to false by accident.
167
+ case "$REQUESTED" in
168
+ true) want=true ;;
169
+ false) want=false ;;
170
+ *)
171
+ # No input: the trigger decides. main is what people
172
+ # install from and it gets a real engine; a pull request
173
+ # does not, because 15-25 minutes on every push is what
174
+ # makes somebody turn this off permanently.
175
+ if [ "$EVENT" = "push" ]; then want=true; else want=false; fi
176
+ ;;
177
+ esac
178
+ echo "Engine requested: '${REQUESTED:-<no inputs context>}' on $EVENT -> $want"
179
+ echo "build=$want" >> "$GITHUB_OUTPUT"
180
+
134
181
  - name: Build the inference engine
135
- if: ${{ inputs.local_engine }}
182
+ if: steps.engine.outputs.build == 'true'
136
183
  working-directory: ios
137
184
  run: |
138
185
  set -euo pipefail
@@ -151,7 +198,11 @@ jobs:
151
198
  # XcodeGen cannot make that call: its `optional: true` means
152
199
  # weak linking, not "skip when absent", so a spec that always
153
200
  # names the framework fails to build on a checkout without it.
154
- python3 scripts/prepare_project.py
201
+ # --require-engine when the build asked for one, so a failed
202
+ # or skipped engine step fails here instead of shipping an IPA
203
+ # in which every on-device feature quietly does nothing.
204
+ python3 scripts/prepare_project.py \
205
+ ${{ steps.engine.outputs.build == 'true' && '--require-engine' || '' }}
155
206
  xcodegen generate --spec project.generated.yml
156
207
  ls -la HyperLink.xcodeproj
157
208
 
@@ -186,6 +237,21 @@ jobs:
186
237
  fi
187
238
  echo "Testing on simulator $device"
188
239
  set -o pipefail
240
+ # The whole log to a file, and only a summary to the console.
241
+ #
242
+ # This used to be `| tail -60`, which discards exactly what is
243
+ # needed when the build fails: xcodebuild prints a short
244
+ # "Testing failed:" summary of *deduplicated* messages and
245
+ # then the per-file errors with their line numbers, and the
246
+ # tail keeps the wrong end. A compile failure would report six
247
+ # unique messages and one file:line, so fixing it took a round
248
+ # trip per error.
249
+ #
250
+ # Now every `error:` line is echoed first, in full, and the
251
+ # complete log is uploaded as an artifact.
252
+ # The redirect below needs the directory to exist first.
253
+ mkdir -p build
254
+ set +e
189
255
  xcodebuild test \
190
256
  -project HyperLink.xcodeproj \
191
257
  -scheme HyperLink \
@@ -193,7 +259,28 @@ jobs:
193
259
  -destination "id=$device" \
194
260
  -resultBundlePath build/TestResults.xcresult \
195
261
  CODE_SIGNING_ALLOWED=NO \
196
- | tail -60
262
+ > build/xcodebuild.log 2>&1
263
+ status=$?
264
+ set -e
265
+
266
+ if [ "$status" -ne 0 ]; then
267
+ echo "::group::Every compiler error"
268
+ # Sorted and deduplicated: a batch build repeats the same
269
+ # error once per file that triggered it, and forty copies of
270
+ # one message buries the other five.
271
+ grep -E "(error|warning): " build/xcodebuild.log \
272
+ | sed 's|/Users/runner/work/HyperNix-pip/HyperNix-pip/||' \
273
+ | sort -u \
274
+ | head -200 || true
275
+ echo "::endgroup::"
276
+ echo "::group::The last 200 lines"
277
+ tail -200 build/xcodebuild.log
278
+ echo "::endgroup::"
279
+ echo "::error::xcodebuild failed — see the groups above, or the ios-build-log artifact"
280
+ else
281
+ tail -20 build/xcodebuild.log
282
+ fi
283
+ exit "$status"
197
284
 
198
285
  - name: Archive
199
286
  working-directory: ios
@@ -315,6 +402,15 @@ jobs:
315
402
  if-no-files-found: error
316
403
  retention-days: 90
317
404
 
405
+ - name: Upload the build log
406
+ if: always() && inputs.run_tests != false
407
+ uses: actions/upload-artifact@v4
408
+ with:
409
+ name: ios-build-log-${{ github.run_number }}
410
+ path: ios/build/xcodebuild.log
411
+ if-no-files-found: ignore
412
+ retention-days: 7
413
+
318
414
  - name: Upload the test results
319
415
  if: always() && inputs.run_tests != false
320
416
  uses: actions/upload-artifact@v4
@@ -184,6 +184,19 @@ jobs:
184
184
 
185
185
  init = Path("src/hypernix/__init__.py")
186
186
  init.write_text(re.sub(r'__version__ = "[^"]+"', f'__version__ = "{v}"', init.read_text(), count=1))
187
+
188
+ # The fourth place a version string lives. install-t1.sh bakes
189
+ # one as the `curl | bash` fallback, for the case where there
190
+ # is no checkout to read and no hypernix installed yet to ask
191
+ # -- and a release that bumped the other three without this one
192
+ # shipped an installer whose banner announced the previous
193
+ # version over a correct install. tests/test_install_script.py
194
+ # fails when they drift, which is how this came to be here.
195
+ installer = Path("install-t1.sh")
196
+ installer.write_text(
197
+ re.sub(r'^VERSION="[^"]+"$', f'VERSION="{v}"',
198
+ installer.read_text(), count=1, flags=re.M)
199
+ )
187
200
  PY
188
201
  echo "--- pyproject.toml version line"
189
202
  grep '^version' pyproject.toml
@@ -191,6 +204,8 @@ jobs:
191
204
  grep '^version' setup.cfg
192
205
  echo "--- __init__.py version line"
193
206
  grep __version__ src/hypernix/__init__.py
207
+ echo "--- install-t1.sh version line"
208
+ grep '^VERSION=' install-t1.sh
194
209
 
195
210
  - name: Lint
196
211
  run: ruff check src/hypernix
@@ -328,15 +343,63 @@ jobs:
328
343
 
329
344
  - name: Commit version bump
330
345
  if: ${{ !inputs.dry_run }}
346
+ env:
347
+ BRANCH: ${{ github.ref_name }}
348
+ VERSION: ${{ inputs.version }}
331
349
  run: |
332
350
  git config user.name "github-actions[bot]"
333
351
  git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
334
- git add pyproject.toml setup.cfg src/hypernix/__init__.py wiki/Release-Timeline.md
352
+
353
+ # Every file `Bump versions in source` writes. install-t1.sh
354
+ # is the one that was missing: the bump edited it and this
355
+ # list did not stage it, so the change was written, discarded,
356
+ # and the installer drifted back to the previous version on the
357
+ # very next release -- the bug the bump step was added to fix.
358
+ # tests/test_install_script.py checks the two lists agree.
359
+ git add \
360
+ pyproject.toml \
361
+ setup.cfg \
362
+ src/hypernix/__init__.py \
363
+ install-t1.sh \
364
+ wiki/Release-Timeline.md
365
+
335
366
  if git diff --cached --quiet; then
336
- echo "::notice::no version change to commit (already at v${{ inputs.version }})"
337
- else
338
- git commit -m "hypernix v${{ inputs.version }} [skip ci]"
339
- git push origin HEAD:${{ github.ref_name }}
367
+ echo "::notice::no version change to commit (already at v$VERSION)"
368
+ exit 0
369
+ fi
370
+ git commit -m "hypernix v$VERSION [skip ci]"
371
+
372
+ # Rebase and retry rather than failing outright.
373
+ #
374
+ # Minutes pass between checkout and here -- a full test suite,
375
+ # a build, a twine check -- and anything that lands on the
376
+ # branch in that window makes a plain push fail with "fetch
377
+ # first". That failure is expensive and badly timed: the
378
+ # artifacts are built and the *tag* step has not run, so the
379
+ # release ends up published with no tag pointing at it.
380
+ #
381
+ # The commit is one commit touching version files, so rebasing
382
+ # it onto whatever arrived is exactly right. A conflict means
383
+ # somebody else bumped the version concurrently, which is not
384
+ # something to resolve automatically -- that stops, loudly.
385
+ pushed=""
386
+ for attempt in 1 2 3 4 5; do
387
+ if git push origin HEAD:"$BRANCH"; then
388
+ pushed=yes
389
+ break
390
+ fi
391
+ echo "::warning::push $attempt rejected; rebasing onto origin/$BRANCH"
392
+ git fetch origin "$BRANCH"
393
+ if ! git rebase "origin/$BRANCH"; then
394
+ git rebase --abort || true
395
+ echo "::error::the version bump conflicts with $BRANCH -- another release may be in flight"
396
+ exit 1
397
+ fi
398
+ sleep $((attempt * 3))
399
+ done
400
+ if [ -z "$pushed" ]; then
401
+ echo "::error::could not push the version bump after 5 attempts"
402
+ exit 1
340
403
  fi
341
404
 
342
405
  - name: Tag and push
@@ -50,6 +50,14 @@ jobs:
50
50
  uses: ./.github/workflows/ios.yml
51
51
  with:
52
52
  run_tests: true
53
+ # A release IPA has to be able to run a model. Without this the
54
+ # build links no llama.cpp and ships EchoRunner, so every
55
+ # on-device feature is inert in the artifact people install --
56
+ # and nothing said so, because falling back is the correct
57
+ # behaviour for a PR build and the release used the same default.
58
+ # It costs 15-25 minutes and it is the difference between an app
59
+ # and a demo.
60
+ local_engine: true
53
61
  version: ""
54
62
  secrets: inherit
55
63
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hypernix
3
- Version: 0.72.5.dev3
3
+ Version: 0.72.5.post3
4
4
  Summary: Download and quantize the HyperNix PyTorch model to GGUF (fp32/fp16/Q8_0/Q6_K/Q4_K_M). and train models with a massive ai toolkit
5
5
  Home-page: https://github.com/trail-b1az3r/hypernix-pip
6
6
  Author: HyperNix contributors
@@ -78,7 +78,7 @@ Dynamic: license-file
78
78
  </p>
79
79
 
80
80
  <p align="center">
81
- <img alt="PyPI" src="https://img.shields.io/badge/PyPI-v0.72.4.post20-ff2d55?style=for-the-badge&logo=pypi&logoColor=white" />
81
+ <img alt="PyPI" src="https://img.shields.io/badge/PyPI-v0.72.5.post1-ff2d55?style=for-the-badge&logo=pypi&logoColor=white" />
82
82
  <img alt="Python" src="https://img.shields.io/badge/Python-3.10--3.14-00c9ff?style=for-the-badge&logo=python&logoColor=white" />
83
83
  <img alt="License" src="https://img.shields.io/badge/License-HOS%20/%20LLU-00c853?style=for-the-badge" />
84
84
  </p>
@@ -87,12 +87,15 @@ Dynamic: license-file
87
87
  **End-to-end toolkit for training ai models on modern or old devices, originaly for converting hypernix.1 into gguf, now for all around training**
88
88
 
89
89
  ## What's fixed in this update
90
- See [Changelog.md](/wiki/Changelog.md)
91
- for most updates
90
+
91
+ The section below covers what 0.72.5 adds.
92
+ [`wiki/Changelog.md`](wiki/Changelog.md) is the canonical per-release
93
+ history, and [`wiki/Roadmap.md`](wiki/Roadmap.md) says what is next.
92
94
 
93
95
  ## Table of contents
94
96
 
95
97
  - [What's fixed in this update](#whats-fixed-in-this-update)
98
+ - [What's new: 0.72.5 — drafts, bundles, accounts, and a car](#whats-new-0725--drafts-bundles-accounts-and-a-car)
96
99
  - [What's new: 0.72.3.post2 — sub-bit models you can actually run](#whats-new-0723post2--sub-bit-models-you-can-actually-run)
97
100
  - [What's new: 0.72.3 — T1 v1.0.2026.8.1.1](#whats-new-0723--t1-v102026811)
98
101
  - [Package layout](#package-layout)
@@ -116,6 +119,150 @@ for most updates
116
119
 
117
120
  Cross-platform: Linux, macOS, Windows. Python 3.10 - 3.14.
118
121
 
122
+ ## What's new: 0.72.5 — drafts, bundles, accounts, and a car
123
+
124
+ **Speculative decoding, in both shapes.** `hyprslug` produced a
125
+ quantised model and `dflash2` could attach a draft somebody else had
126
+ made. Now it makes the draft:
127
+
128
+ ```bash
129
+ dflash2 attach model.gguf -o model+draft.gguf --quant q4_m # embedded, one file
130
+ dflash1 model.gguf -o draft.gguf --quant int8 # for --model-draft
131
+ ```
132
+
133
+ `dflash2` writes the draft into the base GGUF under a `dflash2.` prefix,
134
+ which is where the speed-up is: one file, one download, and a runtime
135
+ that has never heard of Dflash2 reads the base model straight through.
136
+ `dflash1` writes it as its own file for `llama-cli --model-draft`,
137
+ renumbering the kept blocks from zero and rewriting `<arch>.block_count`
138
+ to match — a draft that claims 32 blocks and ships 6 loads, and then
139
+ reads past the end of its own tensor table. It refuses a base with no
140
+ tokenizer rather than writing a draft nothing can sample from.
141
+
142
+ Both take nine targets: `q8`, `int8`, `fp16`, `bf16`, `fp32`, `IQ0.5`,
143
+ `Q6_K`, `Q4_M`, `int2` — and anything else `hyprslug` writes, because
144
+ they plan through it rather than keeping their own list. A draft at a
145
+ given tier is the same packing as a model at it.
146
+
147
+ **Several quantisations in one GGUF.**
148
+
149
+ ```bash
150
+ hnx-bundle build model.gguf q8,q4_m,iq0.5 -o all.gguf
151
+ hnx-bundle list all.gguf
152
+ hnx-bundle extract all.gguf q4_m -o just-q4m.gguf
153
+ ```
154
+
155
+ Variants live under `hnxq.<slug>.`, and the default one keeps the
156
+ ordinary tensor names — a stock llama.cpp opens the file and runs it
157
+ with nothing unusual happening. A bundle is roughly its variants added
158
+ together: what is stored once is the tensors every variant left
159
+ untouched byte for byte, which for most tiers is the 1-D norms rather
160
+ than the bulk. The point is not compression — it is one download
161
+ instead of five, one page cache instead of five, and switching tiers on
162
+ a served model without fetching anything.
163
+
164
+ **Five new quant targets.** `INT8` and `INT2` join the fixed-codebook
165
+ family; `FP32` / `FP16` / `BF16` are element widths and take their own
166
+ path. BF16 rounds to nearest even. FP16 saturates an overflow to 65504
167
+ only when the input was *finite*, so an infinity stays an infinity
168
+ instead of quietly becoming a large number that looks like data.
169
+
170
+ INT2 was expected to lose to FP2 and does not — 0.384 relRMS against
171
+ 0.397 over twelve seeds, because ~40% of a weight tensor sits near zero
172
+ and INT2 spends a codeword there. Measurement in
173
+ [LowBit](wiki/LowBit.md).
174
+
175
+ **`tvtoppro` gets an intro, modules, and a watchdog.** `tvtop-older`'s
176
+ animated "decoding" startup text and the spinner, in tvtoppro's
177
+ presentation; a module system, so a new stat is a file that registers
178
+ itself rather than a patch to the renderer; and a stall detector —
179
+ `train.log` untouched for over a week means the run being watched is not
180
+ the run that is happening, so it finds the busiest Python process on the
181
+ machine and reads *its* logs and progress instead.
182
+
183
+ ```bash
184
+ tvtoppro --find-run # go looking, rather than waiting on a dead log
185
+ ```
186
+
187
+ **`cctvtop`'s Remote Desktop panel works.** It called a session live
188
+ whenever *something* held the port. The probe completes an RFB handshake
189
+ now, so a stale listener, a tunnel with nothing behind it and a real
190
+ desktop are three different answers — and when there is no session it
191
+ says which of four reasons applies rather than "unavailable".
192
+
193
+ **`noodle` runs inside `hyped-pro`.** `/noodle` in the TUI. It adopts
194
+ vendor keys already stored in the HyperNix config, with the environment
195
+ always winning over the stored copy, so a session that works in `hyped`
196
+ is not configured twice.
197
+
198
+ **The `hypernix` CLI says what was wrong.** An unknown subcommand used to
199
+ print usage and exit 0. It now goes to stderr, exits 2, and suggests the
200
+ nearest real command:
201
+
202
+ ```
203
+ $ hypernix quantise
204
+ hypernix: unknown command 'quantise'
205
+
206
+ You want: hypernix quantize
207
+
208
+ hypernix --help every subcommand
209
+ ```
210
+
211
+ **T1 v1.0.26.9.2.3 — an account without already having a key.** Sign-up
212
+ and browser sign-in, served four ways: from localhost, over Tailscale,
213
+ from the operator's own site, or from a prebuilt Cloudflare site hosted
214
+ by the API host.
215
+
216
+ ```bash
217
+ t1-accounts create mason --admin # password prompted, never an argument
218
+ t1-accounts modes # what the four are, and what each needs
219
+
220
+ T1_ACCOUNTS_ENABLED=1 T1_ACCOUNTS_MODE=tailscale hypernix-t1 start
221
+ ```
222
+
223
+ scrypt for passwords, constant-time comparison, CSRF on every form,
224
+ SameSite cookies, lockout after repeated failures, and `Secure` coupled
225
+ to whether the connection is actually TLS. A keyless caller never gets
226
+ administrator rights, in any of the four modes.
227
+
228
+ **Two security fixes.** The config file holding API keys was
229
+ world-readable; it is now written `0600` into a `0700` directory through
230
+ a temporary file and `os.replace`, and an existing file is tightened on
231
+ load. And key authentication compared key *strings*, in a loop whose
232
+ position depended on the prefix — a timing oracle for the stored keys.
233
+ Keys are indexed by digest and compared with `hmac.compare_digest`; the
234
+ measured 60x spread across probe keys is flat.
235
+
236
+ **HyperLink in a car, and out loud.** The iOS app gets a CarPlay scene,
237
+ four Siri intents, eight themes, an attachment menu that offers all four
238
+ ways in, and renaming.
239
+
240
+ - CarPlay shows a conversation list, `CPVoiceControlTemplate` dictation
241
+ and six canned replies — and a keyboard **only when the car reports it
242
+ will allow one**, read from `CPSessionConfiguration.limitedUserInterfaces`
243
+ on every use and rebuilt from its delegate, because the answer changes
244
+ while the app is running.
245
+ - "Siri, ask HyperLink what's the weather", "Siri, load the model Gemma 4
246
+ E2B on blazeindustries in HyperLink", "Siri, read me the HyperLink
247
+ chat". None of the four intents opens the app; the point of asking from
248
+ a car dock is that the phone stays where it is.
249
+ - Every theme's text clears WCAG AA against its own bubble, the two
250
+ bubbles are told apart by luminance, and so are "connected" and
251
+ "failed" — checked in `tests/test_hyperlink_ios_wiring.py`, which found
252
+ three that were not.
253
+ - A chat can be renamed. The server has taken a title on
254
+ `PATCH /hyperlink/sessions/{id}` since HyperLink shipped, and nothing
255
+ on the phone ever sent one.
256
+
257
+ CarPlay needs `com.apple.developer.carplay-communication`, which Apple
258
+ grants per app on request rather than with a paid account. Everything
259
+ else builds and runs without it.
260
+
261
+ **Docs.** Issue templates for bugs and for feature requests, and
262
+ [Model-Training-Guide](wiki/Model-Training-Guide.md) — which of these do
263
+ I use, and in what order. Every API in that guide was run against the
264
+ package rather than written from memory; six were wrong.
265
+
119
266
  ## What's new: 0.72.3.post2 — sub-bit models you can actually run
120
267
 
121
268
  **The error this release is about.** LM Studio, opening a model this
@@ -237,21 +384,26 @@ directory:
237
384
 
238
385
  | Directory | Modules | Contents |
239
386
  |---|---|---|
387
+ | `hypernix/audio/` | 4 | Wake words, audio files and speech plumbing. |
240
388
  | `hypernix/chat/` | 5 | Chat templating, prompt presets and multi-turn session state. |
241
- | `hypernix/data/` | 15 | Datasets: collection, cleaning, splitting, packing and augmentation. |
389
+ | `hypernix/data/` | 17 | Datasets: collection, cleaning, splitting, packing and augmentation. |
242
390
  | `hypernix/evaluation/` | 6 | Scoring, rubric labelling, judging and module verification. |
243
- | `hypernix/interfaces/` | 11 | Human-facing front ends: CLIs, TUIs, GUIs and launchers. |
244
- | `hypernix/models/` | 11 | Architectures, snapshot loading, generation and model utilities. |
245
- | `hypernix/monitoring/` | 9 | Live dashboards, logging, telemetry and hardware sampling. |
246
- | `hypernix/optimizers/` | 8 | The Pressure Cooker optimizer family and optimizer plumbing. |
247
- | `hypernix/quant/` | 4 | The GGUF pipeline: convert, quantize, fetch tooling and upload. |
248
- | `hypernix/security/` | 3 | API keys, quotas and request gating. |
249
- | `hypernix/system/` | 15 | Environment, dependencies, hardware and housekeeping. |
391
+ | `hypernix/hyperlink/` | 12 | The [HyperLink](wiki/HyperLink-Sync.md) server side: sessions, attachments, pairing, push. |
392
+ | `hypernix/interfaces/` | 19 | Human-facing front ends: CLIs, TUIs, GUIs, launchers and `noodle`. |
393
+ | `hypernix/models/` | 17 | Architectures, snapshot loading, generation and model utilities. |
394
+ | `hypernix/monitoring/` | 14 | Live dashboards, logging, telemetry and hardware sampling. |
395
+ | `hypernix/optimizers/` | 9 | The Pressure Cooker optimizer family and optimizer plumbing. |
396
+ | `hypernix/quant/` | 28 | The GGUF pipeline: convert, quantise, the sub-bit tiers, the draft builders, bundles, fetch tooling and upload. |
397
+ | `hypernix/scriptgen/` | 6 | The training-script builder behind `hnx-scriptgen`. |
398
+ | `hypernix/security/` | 6 | API keys, quotas and request gating. |
399
+ | `hypernix/system/` | 24 | Environment, dependencies, hardware and housekeeping. |
250
400
  | `hypernix/timing/` | 5 | Timers, alarms, cadence control and progress animation. |
251
- | `hypernix/training/` | 14 | Training entry points, schedules and weight perturbation. |
252
- | `hypernix/t1api/` | | The [T1 API](wiki/T1-API.md) server: registry, routing, quota, billing, audit, rate limiting, mTLS, deployment. |
253
- | `hypernix/t1sdk/` | | The T1 API client SDK — typed, stdlib-only, no server extra needed. |
254
- | `hypernix/waiter/` | | [`waiter`](wiki/Waiter-TUI.md), the official T1 API TUI/CLI. |
401
+ | `hypernix/training/` | 15 | Training entry points, schedules and weight perturbation. |
402
+ | `hypernix/t1api/` | 57 | The [T1 API](wiki/T1-API.md) server: registry, routing, quota, billing, audit, rate limiting, mTLS, accounts, web auth, deployment. |
403
+ | `hypernix/t1sdk/` | 4 | The T1 API client SDK — typed, stdlib-only, no server extra needed. |
404
+ | `hypernix/waiter/` | 7 | [`waiter`](wiki/Waiter-TUI.md), the official T1 API TUI/CLI. |
405
+
406
+ Counts are `.py` files excluding `__init__.py`, as of 0.72.5.
255
407
 
256
408
  **Every module keeps its old import path.** `hypernix.timer` and
257
409
  `hypernix.timing.timer` return the same module object, so nothing that
@@ -413,12 +565,9 @@ Eleven major additions:
413
565
  - **tvtop++ fixes** — Eliminated border flicker (layout built once), added `_block_history_bar` re-export, implemented `small_mode`, fixed self-process filtering.
414
566
  - **New wiki pages** — [Pressure-Cooker-V5](wiki/Pressure-Cooker-V5.md), [MTP](wiki/MTP.md), [Scavenger](wiki/Scavenger.md)
415
567
  - **Kitchen.md updated** — Added scavenger, MTP, and QAT sections
416
- - **Training benefits chart** — See below
417
568
 
418
569
  ### Training Benefits vs Complexity
419
570
 
420
- ![HyperNix Training Features](docs/public/training-benefits-chart.png)
421
-
422
571
  > **Key insight**: MTP + Speculative Decoding offer the highest benefit-to-cost ratio. Int8-quantized momentum cuts the momentum buffer's own memory by 75% versus fp32, and PressureCookerV5/V5S's factored curvature keeps the rest of the optimizer state small too -- measured optimizer-state memory lands around 12-13% of AdamW's (see the [efficiency paper](pressure_cooker_v5_v5s_paper.md) for the exact numbers and methodology). The trade-offs -- including step-time overhead on some hardware -- are real and are covered in the paper rather than summarized as a single percentage here.
423
572
 
424
573
  ## What's new in v0.70.4
@@ -599,6 +748,10 @@ new_fridge.plot_loss_curve(new_fridge.parse_training_log(log), "loss.png")
599
748
 
600
749
  ## CLI reference
601
750
 
751
+ `hypernix --help` prints the authoritative list — this is the shape of
752
+ it. An unknown subcommand exits 2 on stderr and suggests the nearest
753
+ real one rather than printing usage and claiming success.
754
+
602
755
  ```
603
756
  hypernix <subcommand> [options]
604
757
 
@@ -618,11 +771,39 @@ hypernix <subcommand> [options]
618
771
  generate sample text from a local snapshot
619
772
  oven code-generation wrapper (preheat + complete / fill)
620
773
  chat interactive chat REPL against any supported model
621
- hyped+ / hyped-pro Node.js TUI agent CLI w/ real cloud+local model dispatch, /gui desktop mode
622
- (/t1api routes through a local or remote HyperNix T1 API server)
774
+ brew custom architecture builder and training suite
775
+ fizzle fuse models and LoRAs (fiz)
776
+ fusebox GPU thermal governor: pace a run, trip on heat
777
+ devices what accelerators this machine has, and what they do
778
+ wakeup train a trigger phrase, then listen for it
779
+ websearch the search backend behind chat and the assistant
780
+ gather crawl a site into a corpus (robots-aware)
781
+ runtime use HyperNix's llama.cpp from LM Studio and friends
782
+ hyprslug-headers self-describing GGUF headers, and the sub-bit server
623
783
  stml VRAM trained context length calculator
624
784
  ```
625
785
 
786
+ The rest are their own console scripts, because each is a program rather
787
+ than a step in the pipeline:
788
+
789
+ | Command | What it is |
790
+ |---|---|
791
+ | `hyped` / `hyped-pro` | The TUI agent CLI. `/gui` for a desktop window, `/t1api` to route through a T1 server, `/noodle` for the autonomous executor. |
792
+ | `hyprslug` (`doomslug`, `dstd`) | The quantiser, including the sub-bit tiers. |
793
+ | `dflash2` / `dflash1` | Speculative-decoding drafts: embedded in the base GGUF, or standalone for `--model-draft`. |
794
+ | `hnx-bundle` (`multiquant`) | Several quantisations in one GGUF. |
795
+ | `hnx-imatrix` | Importance matrices. |
796
+ | `steamroller` | The descending llama.cpp quantiser. |
797
+ | `tvtoppro` / `cctvtop` / `tvtop-old` / `tvtop-older` | The dashboards, newest to oldest. |
798
+ | `hnx-map` | The steampunk schematic TUI. |
799
+ | `hnx-scriptgen` | The training-script builder. |
800
+ | `waiter` | The T1 API's client TUI/CLI. Needs no server extra. |
801
+ | `t1-accounts` | Web accounts for a T1 server: create, reset, unlock, and the four deployment modes. |
802
+ | `gkey` | Gatekeeper + Keymaster, in one place. |
803
+ | `multilama` | One interface over vanilla llama.cpp, ik_llama.cpp, PrismML and KoboldCpp. |
804
+ | `noodle` | The autonomous multi-agent executor, standalone. |
805
+ | `eth` / `ups` | Ethanol, and the UPS monitor. |
806
+
626
807
  `train run` accepts curriculum / context management flags:
627
808
 
628
809
  ```bash
@@ -723,6 +904,15 @@ Topic-focused reference guides live in the `wiki/` directory:
723
904
  - [`wiki/Pressure-Cooker-V5.md`](wiki/Pressure-Cooker-V5.md) — Pressure Cooker V5 / V5+ / V5S with QAT and MTP
724
905
  - [`wiki/MTP.md`](wiki/MTP.md) — Multi-Token Prediction guide
725
906
  - [`wiki/Scavenger.md`](wiki/Scavenger.md) — HuggingFace dataset discovery
907
+ - [`wiki/Model-Training-Guide.md`](wiki/Model-Training-Guide.md) — which of these do I use, and in what order
908
+ - [`wiki/HyprSlug.md`](wiki/HyprSlug.md) — the sub-bit quantiser
909
+ - [`wiki/HyprSlug-Headers.md`](wiki/HyprSlug-Headers.md) — self-describing headers, the compat export, the sub-bit server
910
+ - [`wiki/LowBit.md`](wiki/LowBit.md) — the fixed-codebook tiers and the measurements behind them
911
+ - [`wiki/Dflash2.md`](wiki/Dflash2.md) — speculative-decoding drafts
912
+ - [`wiki/TvTopPro.md`](wiki/TvTopPro.md) — the dashboard, its themes and its modules
913
+ - [`wiki/T1-API.md`](wiki/T1-API.md) — the T1 API server
914
+ - [`wiki/HyperLink-Sync.md`](wiki/HyperLink-Sync.md) — the phone app and what it talks to
915
+ - [`wiki/Roadmap.md`](wiki/Roadmap.md) — what is planned, and what landed
726
916
 
727
917
  ## How the GGUF pipeline works
728
918