ltcai 11.1.0 → 11.4.0

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 (289) hide show
  1. package/README.md +47 -54
  2. package/docs/CHANGELOG.md +94 -0
  3. package/docs/COMMUNITY_AND_PLUGINS.md +1 -1
  4. package/docs/DEVELOPMENT.md +1 -1
  5. package/docs/FEATURE_AUDIT_v11.2.0.md +393 -0
  6. package/docs/LAYOUT_REBUILD_SPEC.md +9 -1
  7. package/docs/MULTI_AGENT_RUNTIME.md +1 -1
  8. package/docs/ONBOARDING.md +1 -1
  9. package/docs/OPERATIONS.md +6 -2
  10. package/docs/PERMISSION_MODE.md +1 -1
  11. package/docs/TRUST_MODEL.md +1 -1
  12. package/docs/WHY_LATTICE.md +1 -1
  13. package/docs/architecture.md +6 -2
  14. package/docs/kg-schema.md +2 -2
  15. package/docs/v11.3.0_PLAN.md +202 -0
  16. package/docs/v11.4.0_RUST_FOUNDATION_PLAN.md +176 -0
  17. package/lattice_brain/__init__.py +1 -1
  18. package/lattice_brain/gates.py +125 -0
  19. package/lattice_brain/graph/_kg_common/__init__.py +287 -0
  20. package/lattice_brain/graph/_kg_common/extraction.py +516 -0
  21. package/lattice_brain/graph/_kg_common/relations.py +161 -0
  22. package/lattice_brain/graph/_kg_common/text.py +479 -0
  23. package/lattice_brain/graph/discovery_index/__init__.py +35 -0
  24. package/lattice_brain/graph/discovery_index/cleanup.py +182 -0
  25. package/lattice_brain/graph/discovery_index/extract.py +137 -0
  26. package/lattice_brain/graph/discovery_index/scan.py +411 -0
  27. package/lattice_brain/graph/discovery_index/upsert.py +495 -0
  28. package/lattice_brain/graph/fusion.py +35 -4
  29. package/lattice_brain/graph/projection/__init__.py +42 -0
  30. package/lattice_brain/graph/projection/curation.py +500 -0
  31. package/lattice_brain/graph/{projection.py → projection/v2_schema.py} +81 -485
  32. package/lattice_brain/graph/retrieval/__init__.py +54 -0
  33. package/lattice_brain/graph/retrieval/context.py +197 -0
  34. package/lattice_brain/graph/retrieval/graph_view.py +319 -0
  35. package/lattice_brain/graph/retrieval/hybrid.py +488 -0
  36. package/lattice_brain/graph/retrieval/maintenance.py +121 -0
  37. package/lattice_brain/graph/retrieval/signals.py +95 -0
  38. package/lattice_brain/graph/retrieval_vector/__init__.py +42 -0
  39. package/lattice_brain/graph/retrieval_vector/fingerprint.py +97 -0
  40. package/lattice_brain/graph/retrieval_vector/indexing.py +347 -0
  41. package/lattice_brain/graph/retrieval_vector/search.py +560 -0
  42. package/lattice_brain/graph/retrieval_vector/status.py +374 -0
  43. package/lattice_brain/graph/schema.py +9 -0
  44. package/lattice_brain/graph/store.py +9 -0
  45. package/lattice_brain/graph/vector_index/selector.py +32 -2
  46. package/lattice_brain/ingestion/__init__.py +130 -0
  47. package/lattice_brain/ingestion/_contract.py +90 -0
  48. package/lattice_brain/ingestion/constants.py +127 -0
  49. package/lattice_brain/ingestion/folder_scan.py +57 -0
  50. package/lattice_brain/ingestion/folders.py +258 -0
  51. package/lattice_brain/ingestion/hashing.py +26 -0
  52. package/lattice_brain/ingestion/jobs_api.py +107 -0
  53. package/lattice_brain/ingestion/models.py +80 -0
  54. package/lattice_brain/ingestion/pipeline.py +486 -0
  55. package/lattice_brain/ingestion/quality.py +209 -0
  56. package/lattice_brain/ingestion/routing.py +295 -0
  57. package/lattice_brain/multimodal/__init__.py +164 -0
  58. package/lattice_brain/multimodal/audio.py +77 -0
  59. package/lattice_brain/multimodal/common.py +118 -0
  60. package/lattice_brain/{multimodal.py → multimodal/images.py} +22 -262
  61. package/lattice_brain/multimodal/ports.py +169 -0
  62. package/lattice_brain/multimodal/video.py +410 -0
  63. package/lattice_brain/portability/__init__.py +90 -0
  64. package/lattice_brain/portability/_contract.py +42 -0
  65. package/lattice_brain/portability/backups.py +338 -0
  66. package/lattice_brain/portability/bundles.py +136 -0
  67. package/lattice_brain/portability/constants.py +93 -0
  68. package/lattice_brain/portability/fsops.py +138 -0
  69. package/lattice_brain/portability/service.py +41 -0
  70. package/lattice_brain/portability/sharing.py +714 -0
  71. package/lattice_brain/runtime/__init__.py +1 -1
  72. package/lattice_brain/runtime/multi_agent.py +1 -1
  73. package/lattice_brain/sealed_box.py +244 -0
  74. package/lattice_brain/synthesis.py +24 -1
  75. package/latticeai/__init__.py +1 -1
  76. package/latticeai/api/brain_intelligence.py +4 -0
  77. package/latticeai/api/chat.py +11 -0
  78. package/latticeai/api/chat_helpers.py +16 -3
  79. package/latticeai/api/chat_hybrid.py +32 -1
  80. package/latticeai/api/chronicle.py +63 -0
  81. package/latticeai/api/features.py +70 -0
  82. package/latticeai/api/local_files.py +102 -0
  83. package/latticeai/api/portability.py +39 -4
  84. package/latticeai/api/review_queue.py +126 -0
  85. package/latticeai/api/search.py +16 -2
  86. package/latticeai/core/agent/__init__.py +93 -0
  87. package/latticeai/core/agent/_contract.py +79 -0
  88. package/latticeai/core/agent/context.py +57 -0
  89. package/latticeai/core/agent/deps.py +125 -0
  90. package/latticeai/core/agent/execution.py +622 -0
  91. package/latticeai/core/agent/planning.py +145 -0
  92. package/latticeai/core/agent/recovery.py +157 -0
  93. package/latticeai/core/agent/runtime.py +210 -0
  94. package/latticeai/core/agent/verification.py +231 -0
  95. package/latticeai/core/config.py +4 -1
  96. package/latticeai/core/context_builder.py +6 -3
  97. package/latticeai/core/embedding_providers/__init__.py +151 -0
  98. package/latticeai/core/embedding_providers/base.py +199 -0
  99. package/latticeai/core/embedding_providers/captions.py +162 -0
  100. package/latticeai/core/embedding_providers/profiles.py +126 -0
  101. package/latticeai/core/embedding_providers/text.py +350 -0
  102. package/latticeai/core/embedding_providers/vision.py +352 -0
  103. package/latticeai/core/file_generation/__init__.py +115 -0
  104. package/latticeai/core/file_generation/bundles.py +76 -0
  105. package/latticeai/core/file_generation/extraction.py +154 -0
  106. package/latticeai/core/file_generation/inference.py +235 -0
  107. package/latticeai/core/file_generation/orchestration.py +152 -0
  108. package/latticeai/core/file_generation/prompting.py +117 -0
  109. package/latticeai/core/file_generation/repair.py +114 -0
  110. package/latticeai/core/file_generation/sanitize.py +61 -0
  111. package/latticeai/core/file_generation/validation.py +201 -0
  112. package/latticeai/core/legacy_compatibility.py +1 -1
  113. package/latticeai/core/marketplace.py +1 -1
  114. package/latticeai/core/messages.py +152 -0
  115. package/latticeai/core/model_compat.py +73 -2
  116. package/latticeai/core/workspace_os_constants.py +1 -1
  117. package/latticeai/integrations/telegram_bot/__init__.py +123 -0
  118. package/latticeai/integrations/telegram_bot/__main__.py +17 -0
  119. package/latticeai/integrations/telegram_bot/config.py +86 -0
  120. package/latticeai/integrations/telegram_bot/dispatch.py +311 -0
  121. package/latticeai/integrations/telegram_bot/flows.py +478 -0
  122. package/latticeai/integrations/telegram_bot/helpers.py +322 -0
  123. package/latticeai/integrations/telegram_bot/screens.py +394 -0
  124. package/latticeai/models/model_providers.py +12 -4
  125. package/latticeai/models/router/__init__.py +88 -0
  126. package/latticeai/models/router/_contract.py +66 -0
  127. package/latticeai/models/router/branding.py +56 -0
  128. package/latticeai/models/router/catalog.py +69 -0
  129. package/latticeai/models/router/documents.py +199 -0
  130. package/latticeai/models/router/errors.py +37 -0
  131. package/latticeai/models/router/generation.py +258 -0
  132. package/latticeai/models/router/loading.py +291 -0
  133. package/latticeai/models/router/local_models.py +85 -0
  134. package/latticeai/models/router/registry.py +147 -0
  135. package/latticeai/runtime/build_phases/__init__.py +82 -0
  136. package/latticeai/runtime/build_phases/features.py +407 -0
  137. package/latticeai/runtime/build_phases/foundation.py +555 -0
  138. package/latticeai/runtime/build_phases/web.py +492 -0
  139. package/latticeai/runtime/chat_wiring.py +4 -0
  140. package/latticeai/runtime/feature_toggle_wiring.py +163 -0
  141. package/latticeai/runtime/router_registration.py +11 -0
  142. package/latticeai/runtime/runtime_context.py +1 -0
  143. package/latticeai/services/app_context.py +8 -0
  144. package/latticeai/services/architecture_readiness.py +48 -19
  145. package/latticeai/services/automation_intelligence.py +22 -2
  146. package/latticeai/services/brain_intelligence/__init__.py +58 -0
  147. package/latticeai/services/brain_intelligence/_contract.py +71 -0
  148. package/latticeai/services/brain_intelligence/consistency.py +193 -0
  149. package/latticeai/services/brain_intelligence/constants.py +47 -0
  150. package/latticeai/services/brain_intelligence/digest.py +258 -0
  151. package/latticeai/services/brain_intelligence/health.py +331 -0
  152. package/latticeai/services/brain_intelligence/proposals.py +264 -0
  153. package/latticeai/services/brain_intelligence/sampling.py +84 -0
  154. package/latticeai/services/brain_intelligence/service.py +48 -0
  155. package/latticeai/services/chronicle.py +557 -0
  156. package/latticeai/services/command_center.py +10 -4
  157. package/latticeai/services/feature_toggles.py +502 -0
  158. package/latticeai/services/folder_watch.py +122 -1
  159. package/latticeai/services/hybrid_chat.py +56 -5
  160. package/latticeai/services/interop_bridges.py +978 -0
  161. package/latticeai/services/memory_service/__init__.py +52 -0
  162. package/latticeai/services/memory_service/_contract.py +100 -0
  163. package/latticeai/services/memory_service/brief.py +431 -0
  164. package/latticeai/services/memory_service/constants.py +57 -0
  165. package/latticeai/services/memory_service/maintenance.py +138 -0
  166. package/latticeai/services/memory_service/manager.py +186 -0
  167. package/latticeai/services/memory_service/proof.py +136 -0
  168. package/latticeai/services/memory_service/recall.py +225 -0
  169. package/latticeai/services/memory_service/service.py +48 -0
  170. package/latticeai/services/memory_service/stores.py +110 -0
  171. package/latticeai/services/model_capability_registry.py +434 -261
  172. package/latticeai/services/model_catalog.py +95 -61
  173. package/latticeai/services/model_recommendation.py +18 -11
  174. package/latticeai/services/model_runtime/__init__.py +322 -0
  175. package/latticeai/services/model_runtime/cloud.py +87 -0
  176. package/latticeai/services/model_runtime/download.py +282 -0
  177. package/latticeai/services/model_runtime/engines.py +341 -0
  178. package/latticeai/services/model_runtime/loading.py +178 -0
  179. package/latticeai/services/model_runtime/service.py +129 -0
  180. package/latticeai/services/model_runtime/state.py +131 -0
  181. package/latticeai/services/model_runtime/status.py +255 -0
  182. package/latticeai/services/multimodal_ports.py +26 -1
  183. package/latticeai/services/obsidian_bridge.py +16 -25
  184. package/latticeai/services/product_readiness.py +15 -7
  185. package/latticeai/services/search_service.py +149 -2
  186. package/latticeai/services/tool_dispatch.py +4 -0
  187. package/latticeai/setup/auto_setup.py +27 -30
  188. package/latticeai/setup/wizard/__init__.py +126 -0
  189. package/latticeai/setup/wizard/catalog.py +172 -0
  190. package/latticeai/setup/wizard/detect.py +323 -0
  191. package/latticeai/setup/wizard/install.py +348 -0
  192. package/latticeai/setup/wizard/paths.py +168 -0
  193. package/latticeai/setup/wizard/plans.py +74 -0
  194. package/latticeai/setup/wizard/recommend.py +320 -0
  195. package/package.json +6 -2
  196. package/scripts/bump_version.py +14 -0
  197. package/scripts/capture_release_evidence.mjs +33 -21
  198. package/scripts/check_current_release_docs.mjs +1 -1
  199. package/scripts/check_i18n_namespace_coverage.mjs +41 -4
  200. package/scripts/check_max_file_lines.mjs +102 -0
  201. package/scripts/check_release_evidence_bound.mjs +30 -15
  202. package/scripts/check_screenshot_pixel_delta.py +34 -4
  203. package/scripts/check_server_i18n.mjs +2 -0
  204. package/scripts/generate_rust_parity_fixtures.py +562 -0
  205. package/scripts/lib/mock_server_fingerprint.mjs +94 -0
  206. package/scripts/release_screen_claims.json +44 -2
  207. package/scripts/verify_hf_model_registry.py +253 -218
  208. package/src-tauri/Cargo.lock +361 -3
  209. package/src-tauri/Cargo.toml +6 -1
  210. package/src-tauri/src/backend.rs +349 -0
  211. package/src-tauri/src/folder.rs +33 -0
  212. package/src-tauri/src/main.rs +97 -399
  213. package/src-tauri/tauri.conf.json +1 -1
  214. package/static/app/asset-manifest.json +41 -37
  215. package/static/app/assets/Act-yYpYnn0v.js +1 -0
  216. package/static/app/assets/AdminConsole-DL3Cr5pL.js +1 -0
  217. package/static/app/assets/{Brain-CzCsI1mi.js → Brain-C1HBN0Wf.js} +2 -2
  218. package/static/app/assets/BrainHome-DoXRhUUC.js +2 -0
  219. package/static/app/assets/BrainSignals-6yR6ir5t.js +1 -0
  220. package/static/app/assets/Capture-CFIRsFNE.js +1 -0
  221. package/static/app/assets/Chronicle-BZbEgiwN.js +1 -0
  222. package/static/app/assets/CommandPalette-D2pMxC2I.js +1 -0
  223. package/static/app/assets/Library-DwO3yZST.js +1 -0
  224. package/static/app/assets/{LivingBrain-BXMWIK_2.js → LivingBrain-Jn1GK0-S.js} +1 -1
  225. package/static/app/assets/ProductFlow-B-w1R4Oo.js +1 -0
  226. package/static/app/assets/ReviewCard-6B27X8Vg.js +3 -0
  227. package/static/app/assets/System-DW8F-2xL.js +1 -0
  228. package/static/app/assets/arrow-left-DXvKg9U6.js +1 -0
  229. package/static/app/assets/{bot-4BvN07ux.js → bot-IM_E_Y12.js} +1 -1
  230. package/static/app/assets/brain-Ci1CkWjM.js +1 -0
  231. package/static/app/assets/{button-CDjtnAoU.js → button-COwyqfHM.js} +1 -1
  232. package/static/app/assets/circle-check-DfInj-qD.js +1 -0
  233. package/static/app/assets/{circle-pause-D_RMn7tp.js → circle-pause-DEM4A1Y5.js} +1 -1
  234. package/static/app/assets/{circle-play-B5OpB8ae.js → circle-play-C9djDuLd.js} +1 -1
  235. package/static/app/assets/{cpu-BIlWInHf.js → cpu-DFdo1gw-.js} +1 -1
  236. package/static/app/assets/{download-BtjXfL3z.js → download-SnJL6oqk.js} +1 -1
  237. package/static/app/assets/{folder-open-DefMpxI2.js → folder-open-CqZeDkjE.js} +1 -1
  238. package/static/app/assets/{hard-drive-BQ8NZVkw.js → hard-drive-j1jJXYYf.js} +1 -1
  239. package/static/app/assets/{index-vtEfYvQY.css → index-BLPb5lmE.css} +1 -1
  240. package/static/app/assets/index-_u5iUHDr.js +10 -0
  241. package/static/app/assets/input-B0lPdRQZ.js +1 -0
  242. package/static/app/assets/link-2-CoFbooHS.js +1 -0
  243. package/static/app/assets/{permissionCopy-BqZ5tsgL.js → permissionCopy-BsyLxtao.js} +1 -1
  244. package/static/app/assets/primitives-DEbN-d6p.js +1 -0
  245. package/static/app/assets/search-BybIWPNd.js +1 -0
  246. package/static/app/assets/{share-2-D5zg_0fY.js → share-2-CVtZ_ewX.js} +1 -1
  247. package/static/app/assets/{shield-alert-B5pZzkUb.js → shield-alert-CBi2GNWM.js} +1 -1
  248. package/static/app/assets/{textarea-nEVIweKY.js → textarea-DNMpB5ih.js} +1 -1
  249. package/static/app/assets/{useFocusTrap-Cm99AHlz.js → useFocusTrap-C83t3GXF.js} +1 -1
  250. package/static/app/assets/useMutation-DtbJDoyz.js +1 -0
  251. package/static/app/assets/{useQuery-Dm__N6bL.js → useQuery-Dcp1OChy.js} +1 -1
  252. package/static/app/assets/utils-BlZr7Pd4.js +4 -0
  253. package/static/app/assets/workspace-jJY4RuAV.js +1 -0
  254. package/static/app/index.html +4 -4
  255. package/static/sw.js +1 -1
  256. package/lattice_brain/graph/_kg_common.py +0 -1331
  257. package/lattice_brain/graph/discovery_index.py +0 -1141
  258. package/lattice_brain/graph/retrieval.py +0 -1120
  259. package/lattice_brain/graph/retrieval_vector.py +0 -1293
  260. package/lattice_brain/ingestion.py +0 -1377
  261. package/lattice_brain/portability.py +0 -1210
  262. package/latticeai/core/agent.py +0 -1412
  263. package/latticeai/core/embedding_providers.py +0 -1196
  264. package/latticeai/core/file_generation.py +0 -1047
  265. package/latticeai/integrations/telegram_bot.py +0 -1390
  266. package/latticeai/models/router.py +0 -1007
  267. package/latticeai/runtime/build_phases.py +0 -1422
  268. package/latticeai/services/brain_intelligence.py +0 -967
  269. package/latticeai/services/memory_service.py +0 -1177
  270. package/latticeai/services/model_runtime.py +0 -1281
  271. package/latticeai/setup/wizard.py +0 -1277
  272. package/static/app/assets/Act-D0HWqtn0.js +0 -1
  273. package/static/app/assets/AdminConsole-D-QDW-A4.js +0 -1
  274. package/static/app/assets/BrainHome-Btns-_TA.js +0 -2
  275. package/static/app/assets/BrainSignals-2dHQNkns.js +0 -1
  276. package/static/app/assets/Capture-CT8v1StE.js +0 -1
  277. package/static/app/assets/CommandPalette-DoLXC2KH.js +0 -1
  278. package/static/app/assets/Library-DDoxFE5c.js +0 -1
  279. package/static/app/assets/ProductFlow-DOYf7JIs.js +0 -1
  280. package/static/app/assets/ReviewCard-COQsqidK.js +0 -3
  281. package/static/app/assets/System-BRllvYXd.js +0 -1
  282. package/static/app/assets/arrow-left-DnyMzss-.js +0 -1
  283. package/static/app/assets/brain-uMb_5hnO.js +0 -1
  284. package/static/app/assets/index-0AvoEBzJ.js +0 -10
  285. package/static/app/assets/input-B_5ZJ9oy.js +0 -1
  286. package/static/app/assets/primitives-CVwew78r.js +0 -1
  287. package/static/app/assets/search-DkhnOKZt.js +0 -1
  288. package/static/app/assets/utils-DcDMoZIe.js +0 -4
  289. package/static/app/assets/workspace-LtRRSKTf.js +0 -1
@@ -8,6 +8,18 @@ version = "2.0.1"
8
8
  source = "registry+https://github.com/rust-lang/crates.io-index"
9
9
  checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa"
10
10
 
11
+ [[package]]
12
+ name = "ahash"
13
+ version = "0.8.12"
14
+ source = "registry+https://github.com/rust-lang/crates.io-index"
15
+ checksum = "5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75"
16
+ dependencies = [
17
+ "cfg-if",
18
+ "once_cell",
19
+ "version_check",
20
+ "zerocopy",
21
+ ]
22
+
11
23
  [[package]]
12
24
  name = "aho-corasick"
13
25
  version = "1.1.4"
@@ -47,6 +59,17 @@ version = "1.0.102"
47
59
  source = "registry+https://github.com/rust-lang/crates.io-index"
48
60
  checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
49
61
 
62
+ [[package]]
63
+ name = "async-trait"
64
+ version = "0.1.92"
65
+ source = "registry+https://github.com/rust-lang/crates.io-index"
66
+ checksum = "82f6aeea286b8eb4dd3431a1be1b59d290ace00f5bfd8e2a159bc2a05e2c1667"
67
+ dependencies = [
68
+ "proc-macro2",
69
+ "quote",
70
+ "syn 3.0.3",
71
+ ]
72
+
50
73
  [[package]]
51
74
  name = "atk"
52
75
  version = "0.18.2"
@@ -82,6 +105,61 @@ version = "1.5.1"
82
105
  source = "registry+https://github.com/rust-lang/crates.io-index"
83
106
  checksum = "f2032f911046de80f0a198e0901378627c33f59ea0ac00e363d481118bd70a53"
84
107
 
108
+ [[package]]
109
+ name = "axum"
110
+ version = "0.7.9"
111
+ source = "registry+https://github.com/rust-lang/crates.io-index"
112
+ checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f"
113
+ dependencies = [
114
+ "async-trait",
115
+ "axum-core",
116
+ "bytes",
117
+ "futures-util",
118
+ "http",
119
+ "http-body",
120
+ "http-body-util",
121
+ "hyper",
122
+ "hyper-util",
123
+ "itoa",
124
+ "matchit",
125
+ "memchr",
126
+ "mime",
127
+ "percent-encoding",
128
+ "pin-project-lite",
129
+ "rustversion",
130
+ "serde",
131
+ "serde_json",
132
+ "serde_path_to_error",
133
+ "serde_urlencoded",
134
+ "sync_wrapper",
135
+ "tokio",
136
+ "tower",
137
+ "tower-layer",
138
+ "tower-service",
139
+ "tracing",
140
+ ]
141
+
142
+ [[package]]
143
+ name = "axum-core"
144
+ version = "0.4.5"
145
+ source = "registry+https://github.com/rust-lang/crates.io-index"
146
+ checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199"
147
+ dependencies = [
148
+ "async-trait",
149
+ "bytes",
150
+ "futures-util",
151
+ "http",
152
+ "http-body",
153
+ "http-body-util",
154
+ "mime",
155
+ "pin-project-lite",
156
+ "rustversion",
157
+ "sync_wrapper",
158
+ "tower-layer",
159
+ "tower-service",
160
+ "tracing",
161
+ ]
162
+
85
163
  [[package]]
86
164
  name = "base64"
87
165
  version = "0.21.7"
@@ -124,6 +202,15 @@ dependencies = [
124
202
  "serde_core",
125
203
  ]
126
204
 
205
+ [[package]]
206
+ name = "blake2"
207
+ version = "0.10.6"
208
+ source = "registry+https://github.com/rust-lang/crates.io-index"
209
+ checksum = "46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe"
210
+ dependencies = [
211
+ "digest",
212
+ ]
213
+
127
214
  [[package]]
128
215
  name = "block-buffer"
129
216
  version = "0.10.4"
@@ -539,6 +626,7 @@ checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292"
539
626
  dependencies = [
540
627
  "block-buffer",
541
628
  "crypto-common",
629
+ "subtle",
542
630
  ]
543
631
 
544
632
  [[package]]
@@ -711,6 +799,39 @@ dependencies = [
711
799
  "typeid",
712
800
  ]
713
801
 
802
+ [[package]]
803
+ name = "errno"
804
+ version = "0.3.14"
805
+ source = "registry+https://github.com/rust-lang/crates.io-index"
806
+ checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb"
807
+ dependencies = [
808
+ "libc",
809
+ "windows-sys 0.61.2",
810
+ ]
811
+
812
+ [[package]]
813
+ name = "fallible-iterator"
814
+ version = "0.3.0"
815
+ source = "registry+https://github.com/rust-lang/crates.io-index"
816
+ checksum = "2acce4a10f12dc2fb14a218589d4f1f62ef011b2d0cc4b3cb1bba8e94da14649"
817
+
818
+ [[package]]
819
+ name = "fallible-streaming-iterator"
820
+ version = "0.1.9"
821
+ source = "registry+https://github.com/rust-lang/crates.io-index"
822
+ checksum = "7360491ce676a36bf9bb3c56c1aa791658183a54d2744120f27285738d90465a"
823
+
824
+ [[package]]
825
+ name = "fancy-regex"
826
+ version = "0.14.0"
827
+ source = "registry+https://github.com/rust-lang/crates.io-index"
828
+ checksum = "6e24cb5a94bcae1e5408b0effca5cd7172ea3c5755049c5f3af4cd283a165298"
829
+ dependencies = [
830
+ "bit-set",
831
+ "regex-automata",
832
+ "regex-syntax",
833
+ ]
834
+
714
835
  [[package]]
715
836
  name = "fastrand"
716
837
  version = "2.4.1"
@@ -1168,12 +1289,30 @@ version = "0.12.3"
1168
1289
  source = "registry+https://github.com/rust-lang/crates.io-index"
1169
1290
  checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888"
1170
1291
 
1292
+ [[package]]
1293
+ name = "hashbrown"
1294
+ version = "0.14.5"
1295
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1296
+ checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
1297
+ dependencies = [
1298
+ "ahash",
1299
+ ]
1300
+
1171
1301
  [[package]]
1172
1302
  name = "hashbrown"
1173
1303
  version = "0.17.1"
1174
1304
  source = "registry+https://github.com/rust-lang/crates.io-index"
1175
1305
  checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a"
1176
1306
 
1307
+ [[package]]
1308
+ name = "hashlink"
1309
+ version = "0.9.1"
1310
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1311
+ checksum = "6ba4ff7128dee98c7dc9794b6a411377e1404dba1c97deb8d1a55297bd25d8af"
1312
+ dependencies = [
1313
+ "hashbrown 0.14.5",
1314
+ ]
1315
+
1177
1316
  [[package]]
1178
1317
  name = "heck"
1179
1318
  version = "0.4.1"
@@ -1241,6 +1380,12 @@ version = "1.10.1"
1241
1380
  source = "registry+https://github.com/rust-lang/crates.io-index"
1242
1381
  checksum = "6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87"
1243
1382
 
1383
+ [[package]]
1384
+ name = "httpdate"
1385
+ version = "1.0.3"
1386
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1387
+ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9"
1388
+
1244
1389
  [[package]]
1245
1390
  name = "hyper"
1246
1391
  version = "1.10.1"
@@ -1254,6 +1399,7 @@ dependencies = [
1254
1399
  "http",
1255
1400
  "http-body",
1256
1401
  "httparse",
1402
+ "httpdate",
1257
1403
  "itoa",
1258
1404
  "pin-project-lite",
1259
1405
  "smallvec",
@@ -1584,8 +1730,9 @@ dependencies = [
1584
1730
 
1585
1731
  [[package]]
1586
1732
  name = "lattice-ai-desktop"
1587
- version = "11.1.0"
1733
+ version = "11.4.0"
1588
1734
  dependencies = [
1735
+ "lattice-host",
1589
1736
  "plist",
1590
1737
  "serde",
1591
1738
  "serde_json",
@@ -1594,6 +1741,41 @@ dependencies = [
1594
1741
  "time",
1595
1742
  ]
1596
1743
 
1744
+ [[package]]
1745
+ name = "lattice-core"
1746
+ version = "11.4.0"
1747
+ dependencies = [
1748
+ "blake2",
1749
+ "rusqlite",
1750
+ "serde",
1751
+ "serde_json",
1752
+ ]
1753
+
1754
+ [[package]]
1755
+ name = "lattice-host"
1756
+ version = "11.4.0"
1757
+ dependencies = [
1758
+ "axum",
1759
+ "lattice-core",
1760
+ "lattice-retrieval",
1761
+ "libc",
1762
+ "reqwest 0.12.28",
1763
+ "serde",
1764
+ "serde_json",
1765
+ "tokio",
1766
+ ]
1767
+
1768
+ [[package]]
1769
+ name = "lattice-retrieval"
1770
+ version = "11.4.0"
1771
+ dependencies = [
1772
+ "fancy-regex",
1773
+ "lattice-core",
1774
+ "rusqlite",
1775
+ "serde",
1776
+ "serde_json",
1777
+ ]
1778
+
1597
1779
  [[package]]
1598
1780
  name = "libappindicator"
1599
1781
  version = "0.9.0"
@@ -1652,6 +1834,17 @@ dependencies = [
1652
1834
  "libc",
1653
1835
  ]
1654
1836
 
1837
+ [[package]]
1838
+ name = "libsqlite3-sys"
1839
+ version = "0.30.1"
1840
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1841
+ checksum = "2e99fb7a497b1e3339bc746195567ed8d3e24945ecd636e3619d20b9de9e9149"
1842
+ dependencies = [
1843
+ "cc",
1844
+ "pkg-config",
1845
+ "vcpkg",
1846
+ ]
1847
+
1655
1848
  [[package]]
1656
1849
  name = "litemap"
1657
1850
  version = "0.8.2"
@@ -1684,6 +1877,12 @@ dependencies = [
1684
1877
  "web_atoms",
1685
1878
  ]
1686
1879
 
1880
+ [[package]]
1881
+ name = "matchit"
1882
+ version = "0.7.3"
1883
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1884
+ checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94"
1885
+
1687
1886
  [[package]]
1688
1887
  name = "memchr"
1689
1888
  version = "2.8.2"
@@ -2367,6 +2566,41 @@ version = "0.8.11"
2367
2566
  source = "registry+https://github.com/rust-lang/crates.io-index"
2368
2567
  checksum = "d6f6ff9a378485b298a5286656da665ba74413d36db0979633275d2e708145d4"
2369
2568
 
2569
+ [[package]]
2570
+ name = "reqwest"
2571
+ version = "0.12.28"
2572
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2573
+ checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147"
2574
+ dependencies = [
2575
+ "base64 0.22.1",
2576
+ "bytes",
2577
+ "futures-core",
2578
+ "futures-util",
2579
+ "http",
2580
+ "http-body",
2581
+ "http-body-util",
2582
+ "hyper",
2583
+ "hyper-util",
2584
+ "js-sys",
2585
+ "log",
2586
+ "percent-encoding",
2587
+ "pin-project-lite",
2588
+ "serde",
2589
+ "serde_json",
2590
+ "serde_urlencoded",
2591
+ "sync_wrapper",
2592
+ "tokio",
2593
+ "tokio-util",
2594
+ "tower",
2595
+ "tower-http",
2596
+ "tower-service",
2597
+ "url",
2598
+ "wasm-bindgen",
2599
+ "wasm-bindgen-futures",
2600
+ "wasm-streams 0.4.2",
2601
+ "web-sys",
2602
+ ]
2603
+
2370
2604
  [[package]]
2371
2605
  name = "reqwest"
2372
2606
  version = "0.13.4"
@@ -2397,10 +2631,24 @@ dependencies = [
2397
2631
  "url",
2398
2632
  "wasm-bindgen",
2399
2633
  "wasm-bindgen-futures",
2400
- "wasm-streams",
2634
+ "wasm-streams 0.5.0",
2401
2635
  "web-sys",
2402
2636
  ]
2403
2637
 
2638
+ [[package]]
2639
+ name = "rusqlite"
2640
+ version = "0.32.1"
2641
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2642
+ checksum = "7753b721174eb8ff87a9a0e799e2d7bc3749323e773db92e0984debb00019d6e"
2643
+ dependencies = [
2644
+ "bitflags 2.13.0",
2645
+ "fallible-iterator",
2646
+ "fallible-streaming-iterator",
2647
+ "hashlink",
2648
+ "libsqlite3-sys",
2649
+ "smallvec",
2650
+ ]
2651
+
2404
2652
  [[package]]
2405
2653
  name = "rustc-hash"
2406
2654
  version = "2.1.2"
@@ -2422,6 +2670,12 @@ version = "1.0.22"
2422
2670
  source = "registry+https://github.com/rust-lang/crates.io-index"
2423
2671
  checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"
2424
2672
 
2673
+ [[package]]
2674
+ name = "ryu"
2675
+ version = "1.0.23"
2676
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2677
+ checksum = "9774ba4a74de5f7b1c1451ed6cd5285a32eddb5cccb8cc655a4e50009e06477f"
2678
+
2425
2679
  [[package]]
2426
2680
  name = "same-file"
2427
2681
  version = "1.0.6"
@@ -2583,6 +2837,17 @@ dependencies = [
2583
2837
  "zmij",
2584
2838
  ]
2585
2839
 
2840
+ [[package]]
2841
+ name = "serde_path_to_error"
2842
+ version = "0.1.20"
2843
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2844
+ checksum = "10a9ff822e371bb5403e391ecd83e182e0e77ba7f6fe0160b795797109d1b457"
2845
+ dependencies = [
2846
+ "itoa",
2847
+ "serde",
2848
+ "serde_core",
2849
+ ]
2850
+
2586
2851
  [[package]]
2587
2852
  name = "serde_repr"
2588
2853
  version = "0.1.20"
@@ -2612,6 +2877,18 @@ dependencies = [
2612
2877
  "serde_core",
2613
2878
  ]
2614
2879
 
2880
+ [[package]]
2881
+ name = "serde_urlencoded"
2882
+ version = "0.7.1"
2883
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2884
+ checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd"
2885
+ dependencies = [
2886
+ "form_urlencoded",
2887
+ "itoa",
2888
+ "ryu",
2889
+ "serde",
2890
+ ]
2891
+
2615
2892
  [[package]]
2616
2893
  name = "serde_with"
2617
2894
  version = "3.17.0"
@@ -2691,6 +2968,16 @@ version = "2.0.1"
2691
2968
  source = "registry+https://github.com/rust-lang/crates.io-index"
2692
2969
  checksum = "f8fadd59c855ef2080decdef8ff161eb6661b86933c9d82e5ba29dc602a55aba"
2693
2970
 
2971
+ [[package]]
2972
+ name = "signal-hook-registry"
2973
+ version = "1.4.8"
2974
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2975
+ checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b"
2976
+ dependencies = [
2977
+ "errno",
2978
+ "libc",
2979
+ ]
2980
+
2694
2981
  [[package]]
2695
2982
  name = "simd-adler32"
2696
2983
  version = "0.3.9"
@@ -2809,6 +3096,12 @@ version = "0.11.1"
2809
3096
  source = "registry+https://github.com/rust-lang/crates.io-index"
2810
3097
  checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f"
2811
3098
 
3099
+ [[package]]
3100
+ name = "subtle"
3101
+ version = "2.6.1"
3102
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3103
+ checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
3104
+
2812
3105
  [[package]]
2813
3106
  name = "swift-rs"
2814
3107
  version = "1.0.7"
@@ -2841,6 +3134,17 @@ dependencies = [
2841
3134
  "unicode-ident",
2842
3135
  ]
2843
3136
 
3137
+ [[package]]
3138
+ name = "syn"
3139
+ version = "3.0.3"
3140
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3141
+ checksum = "53e9bae58849f64dfa4f5d5ae372c8341f7305f82a3868709269343628b659a3"
3142
+ dependencies = [
3143
+ "proc-macro2",
3144
+ "quote",
3145
+ "unicode-ident",
3146
+ ]
3147
+
2844
3148
  [[package]]
2845
3149
  name = "sync_wrapper"
2846
3150
  version = "1.0.2"
@@ -2961,7 +3265,7 @@ dependencies = [
2961
3265
  "percent-encoding",
2962
3266
  "plist",
2963
3267
  "raw-window-handle",
2964
- "reqwest",
3268
+ "reqwest 0.13.4",
2965
3269
  "serde",
2966
3270
  "serde_json",
2967
3271
  "serde_repr",
@@ -3245,10 +3549,23 @@ dependencies = [
3245
3549
  "libc",
3246
3550
  "mio",
3247
3551
  "pin-project-lite",
3552
+ "signal-hook-registry",
3248
3553
  "socket2",
3554
+ "tokio-macros",
3249
3555
  "windows-sys 0.61.2",
3250
3556
  ]
3251
3557
 
3558
+ [[package]]
3559
+ name = "tokio-macros"
3560
+ version = "2.7.2"
3561
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3562
+ checksum = "78773a2a397f451582ce068015985c33193cf6dea8b74d2a639fe457b2f07b0e"
3563
+ dependencies = [
3564
+ "proc-macro2",
3565
+ "quote",
3566
+ "syn 3.0.3",
3567
+ ]
3568
+
3252
3569
  [[package]]
3253
3570
  name = "tokio-util"
3254
3571
  version = "0.7.18"
@@ -3395,6 +3712,7 @@ dependencies = [
3395
3712
  "tokio",
3396
3713
  "tower-layer",
3397
3714
  "tower-service",
3715
+ "tracing",
3398
3716
  ]
3399
3717
 
3400
3718
  [[package]]
@@ -3433,6 +3751,7 @@ version = "0.1.44"
3433
3751
  source = "registry+https://github.com/rust-lang/crates.io-index"
3434
3752
  checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100"
3435
3753
  dependencies = [
3754
+ "log",
3436
3755
  "pin-project-lite",
3437
3756
  "tracing-core",
3438
3757
  ]
@@ -3588,6 +3907,12 @@ dependencies = [
3588
3907
  "wasm-bindgen",
3589
3908
  ]
3590
3909
 
3910
+ [[package]]
3911
+ name = "vcpkg"
3912
+ version = "0.2.15"
3913
+ source = "registry+https://github.com/rust-lang/crates.io-index"
3914
+ checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426"
3915
+
3591
3916
  [[package]]
3592
3917
  name = "version-compare"
3593
3918
  version = "0.2.1"
@@ -3709,6 +4034,19 @@ dependencies = [
3709
4034
  "unicode-ident",
3710
4035
  ]
3711
4036
 
4037
+ [[package]]
4038
+ name = "wasm-streams"
4039
+ version = "0.4.2"
4040
+ source = "registry+https://github.com/rust-lang/crates.io-index"
4041
+ checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65"
4042
+ dependencies = [
4043
+ "futures-util",
4044
+ "js-sys",
4045
+ "wasm-bindgen",
4046
+ "wasm-bindgen-futures",
4047
+ "web-sys",
4048
+ ]
4049
+
3712
4050
  [[package]]
3713
4051
  name = "wasm-streams"
3714
4052
  version = "0.5.0"
@@ -4309,6 +4647,26 @@ dependencies = [
4309
4647
  "synstructure",
4310
4648
  ]
4311
4649
 
4650
+ [[package]]
4651
+ name = "zerocopy"
4652
+ version = "0.8.56"
4653
+ source = "registry+https://github.com/rust-lang/crates.io-index"
4654
+ checksum = "556764e583adb45a9f8d413c2a147fa7e8d821e48e12b14fd560b607998b75eb"
4655
+ dependencies = [
4656
+ "zerocopy-derive",
4657
+ ]
4658
+
4659
+ [[package]]
4660
+ name = "zerocopy-derive"
4661
+ version = "0.8.56"
4662
+ source = "registry+https://github.com/rust-lang/crates.io-index"
4663
+ checksum = "f2ab42fc20575779bd240faa45f94a74256f755c0fa9e89f0ede20d91d0cdfc1"
4664
+ dependencies = [
4665
+ "proc-macro2",
4666
+ "quote",
4667
+ "syn 2.0.118",
4668
+ ]
4669
+
4312
4670
  [[package]]
4313
4671
  name = "zerofrom"
4314
4672
  version = "0.1.8"
@@ -1,6 +1,6 @@
1
1
  [package]
2
2
  name = "lattice-ai-desktop"
3
- version = "11.1.0"
3
+ version = "11.4.0"
4
4
  description = "Lattice AI Digital Brain desktop shell"
5
5
  authors = ["TaeSoo Park"]
6
6
  edition = "2021"
@@ -14,3 +14,8 @@ plist = "=1.7.0"
14
14
  time = "=0.3.36"
15
15
  serde = { version = "1", features = ["derive"] }
16
16
  serde_json = "1"
17
+ # The supervisor (command resolution, spawn, HTTP health gate, backoff restart,
18
+ # graceful stop) shared with the `lattice-host` binary. A path dependency, not a
19
+ # workspace member: `rust/` must stay buildable on a CI runner with no tauri
20
+ # system libraries, so this crate deliberately sits outside that workspace.
21
+ lattice-host = { path = "../rust/lattice-host" }