ltcai 4.3.0 → 4.3.3
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.
- package/README.md +186 -276
- package/bin/ltcai.js +6 -2
- package/docs/CHANGELOG.md +124 -3
- package/docs/V4_3_2_DEADCODE_AUDIT_REPORT.md +174 -0
- package/docs/V4_3_2_DOCUMENTATION_CLEANUP_REPORT.md +81 -0
- package/docs/V4_3_2_GITHUB_VERCEL_CHECK_REPORT.md +75 -0
- package/docs/V4_3_2_GRAPH_UX_REPORT.md +48 -0
- package/docs/V4_3_2_INDEPENDENT_AUDIT_PACKAGE.md +209 -0
- package/docs/V4_3_2_PRODUCT_POLISH_REPORT.md +57 -0
- package/docs/V4_3_2_SELF_AUDIT_REPORT.md +63 -0
- package/docs/V4_3_2_VALIDATION_REPORT.md +97 -0
- package/docs/V4_3_3_VALIDATION_REPORT.md +46 -0
- package/docs/V4_DIGITAL_BRAIN_RECOVERY.md +18 -25
- package/frontend/openapi.json +11 -1
- package/frontend/src/App.tsx +15 -1
- package/frontend/src/api/client.ts +19 -1
- package/frontend/src/api/openapi.ts +10 -0
- package/frontend/src/components/primitives.tsx +92 -10
- package/frontend/src/pages/Act.tsx +72 -9
- package/frontend/src/pages/Ask.tsx +2 -2
- package/frontend/src/pages/Brain.tsx +607 -65
- package/frontend/src/pages/Capture.tsx +11 -7
- package/frontend/src/pages/Library.tsx +12 -6
- package/frontend/src/pages/System.tsx +186 -23
- package/lattice_brain/__init__.py +1 -1
- package/lattice_brain/archive.py +3 -3
- package/lattice_brain/storage/sqlite.py +15 -2
- package/latticeai/__init__.py +1 -1
- package/latticeai/api/agents.py +3 -1
- package/latticeai/api/models.py +66 -18
- package/latticeai/brain/projection.py +12 -2
- package/latticeai/brain/retrieval.py +10 -0
- package/latticeai/brain/store.py +6 -1
- package/latticeai/core/config.py +3 -1
- package/latticeai/core/marketplace.py +1 -1
- package/latticeai/core/multi_agent.py +1 -1
- package/latticeai/core/product_hardening.py +2 -1
- package/latticeai/core/workspace_os.py +1 -1
- package/latticeai/services/agent_runtime.py +52 -12
- package/latticeai/services/model_runtime.py +83 -2
- package/ltcai_cli.py +14 -3
- package/package.json +5 -7
- package/requirements.txt +17 -0
- package/scripts/build_vercel_static.mjs +77 -0
- package/scripts/check_markdown_links.mjs +75 -0
- package/src-tauri/Cargo.lock +1 -1
- package/src-tauri/Cargo.toml +1 -1
- package/src-tauri/src/main.rs +269 -27
- package/src-tauri/tauri.conf.json +20 -1
- package/static/app/asset-manifest.json +5 -5
- package/static/app/assets/index-CHHal8Zl.css +2 -0
- package/static/app/assets/index-pdzil9ac.js +333 -0
- package/static/app/assets/index-pdzil9ac.js.map +1 -0
- package/static/app/index.html +2 -2
- package/latticeai/api/deps.py +0 -15
- package/scripts/capture/README.md +0 -28
- package/scripts/capture/capture_enterprise.js +0 -8
- package/scripts/capture/capture_graph.js +0 -8
- package/scripts/capture/capture_onboarding.js +0 -8
- package/scripts/capture/capture_page.js +0 -43
- package/scripts/capture/capture_release_media.js +0 -125
- package/scripts/capture/capture_skills.js +0 -8
- package/scripts/capture/capture_v340.js +0 -88
- package/scripts/capture/capture_workspace.js +0 -8
- package/scripts/generate_diagrams.py +0 -512
- package/scripts/release-0.3.1.sh +0 -105
- package/scripts/take_screenshots.js +0 -69
- package/static/app/assets/index-RiJTJliG.js +0 -333
- package/static/app/assets/index-RiJTJliG.js.map +0 -1
- package/static/app/assets/index-yZswHE3d.css +0 -2
- package/static/css/tokens.3ba22e37.css +0 -260
package/README.md
CHANGED
|
@@ -1,338 +1,248 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
-
|
|
37
|
-
|
|
38
|
-
import, and back up locally — no cloud required.
|
|
39
|
-
|
|
40
|
-
Local-first by default; cloud only when you choose. (The Vercel site is a
|
|
41
|
-
landing/download/demo surface only — never the runtime. Lattice AI runs on your
|
|
42
|
-
machine over local SQLite.)
|
|
43
|
-
|
|
44
|
-
## Why install Lattice AI?
|
|
45
|
-
|
|
46
|
-
Most AI tools only answer questions in a chat window. Lattice AI gives you a
|
|
47
|
-
workspace around the work itself:
|
|
48
|
-
|
|
49
|
-
- **Keep everything in one place** — files, notes, chats, and decisions live
|
|
50
|
-
together instead of scattered across tabs and apps.
|
|
51
|
-
- **Turn documents into knowledge** — uploads and connected folders become
|
|
52
|
-
searchable, linked context you can reuse.
|
|
53
|
-
- **Search the way you think** — fuse keyword, vector, and knowledge-graph
|
|
54
|
-
signals in a single query.
|
|
55
|
-
- **Stay private and offline-capable** — run local models through MLX, Ollama, or
|
|
56
|
-
LM Studio; nothing leaves your machine unless you opt in.
|
|
57
|
-
- **Use cloud models only when you choose** — bring an API key for cloud LLMs
|
|
58
|
-
when you want them, not by default.
|
|
59
|
-
- **Inspect every agent run** — runs persist queued/running/final state, plans,
|
|
60
|
-
reviews, retries, cancellation, and replayable logs. With a loaded model the
|
|
61
|
-
v4 runner uses it; without one, deterministic simulation mode is explicitly
|
|
62
|
-
labeled and does not call a model.
|
|
63
|
-
|
|
64
|
-
Lattice AI is not a clone of ChatGPT, Claude, Cursor, Obsidian, or Notion. It
|
|
65
|
-
sits in a different place: a **workspace** that ties local/self-hosted AI, your
|
|
66
|
-
files, project knowledge, hybrid search, local and optional cloud models, agents,
|
|
67
|
-
and workflows together — and runs on your own hardware.
|
|
68
|
-
|
|
69
|
-
## What can you do with it?
|
|
70
|
-
|
|
71
|
-
- Build a private AI workspace for a project, scoped to your machine.
|
|
72
|
-
- Chat with your local files, images, and workspace memory.
|
|
73
|
-
- Upload documents — or connect a folder — and turn them into searchable knowledge.
|
|
74
|
-
- Explore how files, decisions, conversations, and entities connect in a
|
|
75
|
-
Knowledge Graph.
|
|
76
|
-
- Run local models through MLX, Ollama, or LM Studio, and use cloud LLMs only when
|
|
77
|
-
you want to.
|
|
78
|
-
- Define agent workflows and replay their run records step by step, including
|
|
79
|
-
live tool execution, approval pauses, and cooperative cancellation.
|
|
80
|
-
- Separate personal work from organization work.
|
|
81
|
-
- Switch between Basic, Advanced, and Admin modes depending on your role.
|
|
1
|
+
# Lattice AI
|
|
2
|
+
|
|
3
|
+
[](https://pypi.org/project/ltcai/)
|
|
4
|
+
[](https://www.npmjs.com/package/ltcai)
|
|
5
|
+
[](https://marketplace.visualstudio.com/items?itemName=parktaesoo.ltcai)
|
|
6
|
+
[](https://open-vsx.org/extension/parktaesoo/ltcai)
|
|
7
|
+
[](https://github.com/TaeSooPark-PTS/LatticeAI/actions/workflows/ci.yml)
|
|
8
|
+
[](LICENSE)
|
|
9
|
+
|
|
10
|
+
**Lattice AI v4.3.3 is a local-first Digital Brain desktop workspace.** It runs
|
|
11
|
+
as a Tauri desktop app with a localhost FastAPI sidecar, stores the user's brain
|
|
12
|
+
locally by default, and presents the Knowledge Graph as the durable asset.
|
|
13
|
+
|
|
14
|
+
This README describes the v4.3.3 release tree, which promotes the post-cleanup
|
|
15
|
+
main branch after the v4.3.2 self-audit and independent dead-code/runtime audit.
|
|
16
|
+
External package registries are owner-published; the badges above link to
|
|
17
|
+
package pages and may show the most recently published owner-controlled registry
|
|
18
|
+
version, which can lag behind the GitHub Release.
|
|
19
|
+
|
|
20
|
+
## What Was Verified
|
|
21
|
+
|
|
22
|
+
- Desktop app starts and serves the React/Vite product shell from the FastAPI
|
|
23
|
+
sidecar.
|
|
24
|
+
- Brain graph renders persisted local graph data with search, groups, focus,
|
|
25
|
+
filtering, and hybrid-search results.
|
|
26
|
+
- Ask displays durable conversations, graph context, and honest unavailable
|
|
27
|
+
state when no model is loaded.
|
|
28
|
+
- Capture uploads a document through `/upload/document` and shows indexed
|
|
29
|
+
documents from the backend.
|
|
30
|
+
- Act exposes workflow create/run surfaces and agent runtime status without
|
|
31
|
+
presenting simulation as real success. When no LLM-backed model is loaded,
|
|
32
|
+
deterministic model-free agent simulation is reported honestly and does not call a model.
|
|
33
|
+
- Library shows model/runtime availability honestly.
|
|
34
|
+
- System exposes storage, backup health, archive, Brain Network, device
|
|
35
|
+
identity, and admin status through real APIs.
|
|
36
|
+
- Backup, restore dry-run, archive verify, archive import dry-run, and
|
|
37
|
+
`.latticebrain` portability flows were exercised.
|
|
82
38
|
|
|
83
39
|
## Product Tour
|
|
84
40
|
|
|
85
|
-
###
|
|
41
|
+
### Desktop Startup
|
|
86
42
|
|
|
87
|
-
|
|
43
|
+
The v4.3.3 DMG build launches a visible Tauri app, starts the FastAPI sidecar on
|
|
44
|
+
localhost, and shuts that sidecar down on normal macOS quit.
|
|
88
45
|
|
|
89
|
-
|
|
90
|
-
main entry points — derived from real local state, never placeholder counters.
|
|
46
|
+

|
|
91
47
|
|
|
92
|
-
|
|
48
|
+
Evidence:
|
|
93
49
|
|
|
94
|
-
|
|
50
|
+
- Health log: `output/audits/v4.3.2-rc/logs/desktop-sidecar-health-after-shutdown-fix.json`
|
|
51
|
+
- Shutdown log: `output/audits/v4.3.2-rc/logs/desktop-shutdown-after-fix.txt`
|
|
95
52
|
|
|
96
|
-
|
|
97
|
-
vision-capable image input by attach, drag-and-drop, or paste.
|
|
53
|
+
### Brain Graph
|
|
98
54
|
|
|
99
|
-
|
|
55
|
+
Brain opens on the graph-first workspace. The graph uses real persisted nodes
|
|
56
|
+
and edges from `/knowledge-graph/graph`, then layers product controls for search,
|
|
57
|
+
semantic grouping, focus neighborhoods, label modes, group collapse/expand, and
|
|
58
|
+
importance filtering.
|
|
100
59
|
|
|
101
|
-

|
|
102
61
|
|
|
103
|
-
|
|
104
|
-
chat and hybrid search.
|
|
62
|
+

|
|
105
63
|
|
|
106
|
-
###
|
|
64
|
+
### Ask
|
|
107
65
|
|
|
108
|
-
|
|
66
|
+
Ask uses backend conversation, model, and graph context APIs. In the audited
|
|
67
|
+
state no model was loaded, so the UI showed a ready/unavailable state instead of
|
|
68
|
+
fabricating an answer while still surfacing graph context from local data.
|
|
109
69
|
|
|
110
|
-
|
|
111
|
-
connect — context that stays useful even when you switch models.
|
|
70
|
+

|
|
112
71
|
|
|
113
|
-
###
|
|
72
|
+
### Capture
|
|
114
73
|
|
|
115
|
-
|
|
74
|
+
Capture sends files through the backend upload/ingestion path and shows indexed
|
|
75
|
+
documents returned by the backend. The screenshot below includes a note uploaded
|
|
76
|
+
during release-prep evidence capture.
|
|
116
77
|
|
|
117
|
-
|
|
118
|
-
logs, review, retry, and cancellation state — that you can read back step by
|
|
119
|
-
step. Runs execute asynchronously and use the loaded model when one is available;
|
|
120
|
-
otherwise they are labeled as simulation.
|
|
78
|
+

|
|
121
79
|
|
|
122
|
-
|
|
80
|
+
Upload evidence: `output/audits/v4.3.2-rc/logs/readme-upload-note.json`
|
|
123
81
|
|
|
124
|
-
|
|
82
|
+
### Act
|
|
125
83
|
|
|
126
|
-
|
|
84
|
+
Act exposes agents, workflows, approvals, hooks, and runtime status through
|
|
85
|
+
existing backend APIs. The audited workflow path created a real workflow record;
|
|
86
|
+
agent runtime simulation remains honestly unavailable as product success when no
|
|
87
|
+
LLM-backed model is loaded.
|
|
127
88
|
|
|
128
|
-
|
|
129
|
-
indexing — and see the on-device local runtime's real status, handshake, and
|
|
130
|
-
folder-watch activity.
|
|
89
|
+

|
|
131
90
|
|
|
132
|
-
|
|
91
|
+

|
|
133
92
|
|
|
134
|
-
|
|
93
|
+
### Library
|
|
135
94
|
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
95
|
+
Library shows models, skills, MCP, and marketplace/configuration state with
|
|
96
|
+
availability reported from runtime APIs. Optional model runtimes are not treated
|
|
97
|
+
as loaded unless the runtime is actually available.
|
|
139
98
|
|
|
140
|
-
|
|
99
|
+

|
|
141
100
|
|
|
142
|
-
|
|
143
|
-
pip install "ltcai[local]"
|
|
144
|
-
```
|
|
101
|
+
### System
|
|
145
102
|
|
|
146
|
-
|
|
103
|
+
System exposes account/workspace status, storage mode, backup health, archive
|
|
104
|
+
operations, device identity, Brain Network, and admin hardening state. External
|
|
105
|
+
integrations remain opt-in.
|
|
147
106
|
|
|
148
|
-
|
|
149
|
-
npm install -g ltcai
|
|
150
|
-
```
|
|
107
|
+

|
|
151
108
|
|
|
152
|
-
|
|
109
|
+

|
|
153
110
|
|
|
154
|
-
|
|
155
|
-
- [Open VSX: parktaesoo.ltcai](https://open-vsx.org/extension/parktaesoo/ltcai)
|
|
156
|
-
- [GitHub Releases](https://github.com/TaeSooPark-PTS/LatticeAI/releases)
|
|
111
|
+
### Backup / Restore
|
|
157
112
|
|
|
158
|
-
|
|
113
|
+
Backup and restore flows are backed by the knowledge-graph portability APIs.
|
|
114
|
+
The retained v4.3.2 product audit exercised backup health, backup creation, restore dry-run, and
|
|
115
|
+
archive restore surfaces.
|
|
159
116
|
|
|
160
|
-
|
|
117
|
+

|
|
161
118
|
|
|
162
|
-
|
|
163
|
-
LTCAI
|
|
164
|
-
```
|
|
119
|
+
### `.latticebrain` Portability
|
|
165
120
|
|
|
166
|
-
|
|
121
|
+
The portable brain format is an encrypted `.latticebrain` archive. The audited
|
|
122
|
+
System flow exercised archive export, inspect, verify, import dry-run, and
|
|
123
|
+
restore dry-run/restore controls through FastAPI.
|
|
167
124
|
|
|
168
|
-
|
|
169
|
-
http://127.0.0.1:4825/app
|
|
170
|
-
```
|
|
125
|
+

|
|
171
126
|
|
|
172
|
-
|
|
127
|
+
Archive evidence:
|
|
173
128
|
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
```
|
|
129
|
+
- Create: `output/audits/v4.3.2-rc/logs/archive-create.json`
|
|
130
|
+
- Verify: `output/audits/v4.3.2-rc/logs/archive-verify.json`
|
|
131
|
+
- Import dry-run: `output/audits/v4.3.2-rc/logs/archive-import-dry-run.json`
|
|
178
132
|
|
|
179
|
-
##
|
|
180
|
-
|
|
181
|
-
- **Local-first workspace** — your data, models, and workspace state live on your
|
|
182
|
-
machine by default; cloud is opt-in.
|
|
183
|
-
- **Files and connected folders** — upload documents or connect a local folder;
|
|
184
|
-
Lattice indexes them and watches connected folders for changes.
|
|
185
|
-
- **Chat with workspace context** — conversations are grounded in your files,
|
|
186
|
-
knowledge graph, and memory, with vision-capable image input.
|
|
187
|
-
- **Knowledge Graph** — files, images, notes, conversations, and decisions become
|
|
188
|
-
linked entities and relationships you can explore.
|
|
189
|
-
- **Hybrid Search** — keyword, vector, and graph signals are fused into one ranked
|
|
190
|
-
result set.
|
|
191
|
-
- **Local model support** — run multimodal models locally via MLX, Ollama, or LM
|
|
192
|
-
Studio, with hardware-aware recommendations and source disclosure.
|
|
193
|
-
- **Optional cloud model routing** — add OpenAI-compatible or other cloud models
|
|
194
|
-
when you choose; model cards disclose origin, run mode, and internet use.
|
|
195
|
-
- **Multi-agent workflows** — turn goals into runs with roles, handoffs, review,
|
|
196
|
-
retries, and replayable timelines.
|
|
197
|
-
- **Skills, hooks, tools, and MCP** — extend the workspace with skills, lifecycle
|
|
198
|
-
hooks, a governed tool registry, and Model Context Protocol servers.
|
|
199
|
-
- **Personal / Organization workspaces** — keep personal work separate from team
|
|
200
|
-
work with role-aware views.
|
|
201
|
-
- **Basic / Advanced / Admin modes** — show only what each role needs, from core
|
|
202
|
-
workflows to agent tooling to administration.
|
|
203
|
-
|
|
204
|
-
## Latest Release
|
|
205
|
-
|
|
206
|
-
### v4.3.0 RC — Portability & Product Hardening
|
|
207
|
-
|
|
208
|
-
- **Portable `.latticebrain` archives** — encrypted archives now include the
|
|
209
|
-
brain DB, blobs, workspace state, settings, signed bundles, storage metadata,
|
|
210
|
-
provenance, and public device identity metadata.
|
|
211
|
-
- **Safe backup/restore flows** — archive inspect, verify, import, restore, and
|
|
212
|
-
restore dry-run are real API-backed operations; destructive restore requires
|
|
213
|
-
explicit admin confirmation.
|
|
214
|
-
- **Migration safety** — live SQLite-to-Postgres migration creates and verifies
|
|
215
|
-
a pre-migration backup before copying data.
|
|
216
|
-
- **Desktop hardening** — Tauri sidecar startup, status, restart, shutdown, and
|
|
217
|
-
loopback-only/default-off guards are hardened.
|
|
218
|
-
- **Privacy audit surface** — token presence alone no longer enables Telegram or
|
|
219
|
-
external connectors; admin status reports storage, backup health, device
|
|
220
|
-
identity, permissions, and opt-in integration state.
|
|
221
|
-
- **Release hardening** — exact-version validation covers wheel, sdist, npm tgz,
|
|
222
|
-
VSIX, and Tauri DMG artifacts.
|
|
223
|
-
|
|
224
|
-
See [RELEASE_NOTES_v4.3.0.md](RELEASE_NOTES_v4.3.0.md),
|
|
225
|
-
[docs/kg-schema.md](docs/kg-schema.md),
|
|
226
|
-
[FEATURE_STATUS.md](FEATURE_STATUS.md).
|
|
227
|
-
|
|
228
|
-
## How it works — every source converges into the graph
|
|
229
|
-
|
|
230
|
-
As of v4.3.0, data sources flow through the brain ingestion pipeline into
|
|
231
|
-
the Knowledge Graph — no source bypasses it, none becomes an isolated silo:
|
|
133
|
+
## Architecture At A Glance
|
|
232
134
|
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
135
|
+
- **Desktop shell**: Tauri 2 primary shell; Electron remains fallback-only.
|
|
136
|
+
- **Frontend**: React, TypeScript, Vite, TanStack Query, Zustand, Cytoscape.js,
|
|
137
|
+
React Flow, Tailwind/shadcn-style primitives, generated OpenAPI client.
|
|
138
|
+
- **Backend**: FastAPI on localhost is the source of truth for the UI.
|
|
139
|
+
- **Brain Core**: independent Python package `lattice_brain`, imported by
|
|
140
|
+
FastAPI, CLI, tests, and future tools.
|
|
141
|
+
- **Storage**: `StorageEngine` abstraction with SQLite default and optional
|
|
142
|
+
PostgreSQL/pgvector scale mode.
|
|
143
|
+
- **Portability**: encrypted `.latticebrain` archive plus backup/restore and
|
|
144
|
+
migration tooling.
|
|
145
|
+
- **Privacy**: local-first by default; cloud models, Telegram, Brain Network,
|
|
146
|
+
Docker, model downloads, and update checks require explicit opt-in paths.
|
|
240
147
|
|
|
241
|
-
|
|
242
|
-
came from, when, how it was processed, whether it was embedded or linked.
|
|
243
|
-
- **The graph is the asset.** Memory, search, and agents are views over it; models
|
|
244
|
-
read it. Swap a model and your knowledge is unchanged.
|
|
245
|
-
- **Portable, no cloud.** Export/import the graph as JSON, or take a full local
|
|
246
|
-
binary backup (DB + blobs), encrypted `.latticebrain` archive, or explicit
|
|
247
|
-
SQLite-to-Postgres migration plan and restore it.
|
|
248
|
-
- **Local-first protects the graph.** It lives in local SQLite on your machine.
|
|
148
|
+
See [ARCHITECTURE.md](ARCHITECTURE.md) for the detailed v4.3.3 architecture.
|
|
249
149
|
|
|
250
|
-
|
|
251
|
-
[docs/architecture.md](docs/architecture.md).
|
|
150
|
+
## Installation And Release Artifacts
|
|
252
151
|
|
|
253
|
-
|
|
152
|
+
Validated v4.3.3 artifacts are produced from the post-cleanup tree:
|
|
254
153
|
|
|
255
|
-
|
|
154
|
+
- `dist/ltcai-4.3.3-py3-none-any.whl`
|
|
155
|
+
- `dist/ltcai-4.3.3.tar.gz`
|
|
156
|
+
- `ltcai-4.3.3.tgz`
|
|
157
|
+
- `dist/ltcai-4.3.3.vsix`
|
|
158
|
+
- `src-tauri/target/release/bundle/dmg/Lattice AI_4.3.3_aarch64.dmg`
|
|
256
159
|
|
|
257
|
-
|
|
258
|
-
-
|
|
259
|
-
- [MODEL_POLICY.md](MODEL_POLICY.md) — local model recommendation policy
|
|
160
|
+
For a public release, attach only those exact artifacts to the GitHub Release.
|
|
161
|
+
Package-registry publishing is reserved for the owner.
|
|
260
162
|
|
|
261
|
-
|
|
163
|
+
## Local Development
|
|
262
164
|
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
- [docs/V4_3_PRIVACY_AUDIT.md](docs/V4_3_PRIVACY_AUDIT.md) — v4.3.0 privacy and local-first audit
|
|
268
|
-
- [docs/V4_3_VALIDATION_REPORT.md](docs/V4_3_VALIDATION_REPORT.md) — v4.3.0 validation report
|
|
269
|
-
- [docs/V4_2_BRAIN_CORE_ARCHITECTURE.md](docs/V4_2_BRAIN_CORE_ARCHITECTURE.md) — v4.2.0 Brain Core package and storage architecture
|
|
270
|
-
- [docs/V4_2_STORAGE_MIGRATION_REPORT.md](docs/V4_2_STORAGE_MIGRATION_REPORT.md) — v4.2.0 storage migration and archive report
|
|
271
|
-
- [docs/V4_2_VALIDATION_REPORT.md](docs/V4_2_VALIDATION_REPORT.md) — v4.2.0 validation report
|
|
272
|
-
- [docs/V4_1_FRONTEND_ARCHITECTURE_REVIEW.md](docs/V4_1_FRONTEND_ARCHITECTURE_REVIEW.md) — v4.1.0 frontend and desktop architecture review
|
|
273
|
-
- [docs/V4_1_FRONTEND_MIGRATION_REPORT.md](docs/V4_1_FRONTEND_MIGRATION_REPORT.md) — v4.1.0 capability migration report
|
|
274
|
-
- [docs/V4_1_VALIDATION_REPORT.md](docs/V4_1_VALIDATION_REPORT.md) — v4.1.0 validation report
|
|
275
|
-
- [docs/V3_BACKEND_ARCHITECTURE.md](docs/V3_BACKEND_ARCHITECTURE.md) — backend storage, search, and retrieval
|
|
165
|
+
```bash
|
|
166
|
+
npm install
|
|
167
|
+
npm run dev
|
|
168
|
+
```
|
|
276
169
|
|
|
277
|
-
|
|
170
|
+
Open the local app:
|
|
278
171
|
|
|
279
|
-
|
|
172
|
+
```text
|
|
173
|
+
http://127.0.0.1:4825/app
|
|
174
|
+
```
|
|
280
175
|
|
|
281
|
-
|
|
176
|
+
Build the release artifacts:
|
|
282
177
|
|
|
283
|
-
|
|
284
|
-
|
|
178
|
+
```bash
|
|
179
|
+
npm run release:artifacts
|
|
180
|
+
npm run release:validate
|
|
181
|
+
```
|
|
285
182
|
|
|
286
|
-
|
|
183
|
+
Run the main validation set:
|
|
287
184
|
|
|
288
|
-
|
|
185
|
+
```bash
|
|
186
|
+
npm run check:python
|
|
187
|
+
node scripts/run_python.mjs -m ruff check .
|
|
188
|
+
npm run lint
|
|
189
|
+
npm run typecheck
|
|
190
|
+
npm run test:unit
|
|
191
|
+
LTCAI_TEST_BASE_URL=http://127.0.0.1:4932 npm run test:integration
|
|
192
|
+
npm run test:visual
|
|
193
|
+
npm run desktop:tauri:check
|
|
194
|
+
node scripts/run_python.mjs scripts/wheel_smoke.py --wheel dist/ltcai-4.3.3-py3-none-any.whl
|
|
195
|
+
npm pack --dry-run
|
|
196
|
+
```
|
|
289
197
|
|
|
290
|
-
|
|
198
|
+
## Known Limitations
|
|
291
199
|
|
|
292
|
-
-
|
|
293
|
-
|
|
294
|
-
-
|
|
295
|
-
|
|
296
|
-
-
|
|
297
|
-
-
|
|
298
|
-
-
|
|
299
|
-
-
|
|
300
|
-
|
|
301
|
-
- [RELEASE_NOTES_v3.4.0.md](RELEASE_NOTES_v3.4.0.md)
|
|
302
|
-
- [CHANGELOG.md](CHANGELOG.md) and [docs/CHANGELOG.md](docs/CHANGELOG.md)
|
|
200
|
+
- External package registries are owner-published and can lag behind the GitHub
|
|
201
|
+
Release.
|
|
202
|
+
- PostgreSQL/pgvector is optional scale mode and is not required for default
|
|
203
|
+
local use.
|
|
204
|
+
- Docker is never auto-started by default.
|
|
205
|
+
- Model downloads and cloud model calls require explicit user action/consent.
|
|
206
|
+
- Ask does not fabricate answers when no model is loaded.
|
|
207
|
+
- Historical artifacts may remain in `dist/`; release uploads must use exact
|
|
208
|
+
v4.3.3 filenames.
|
|
303
209
|
|
|
304
210
|
## Release History
|
|
305
211
|
|
|
306
212
|
| Version | Theme |
|
|
307
213
|
| --- | --- |
|
|
308
|
-
|
|
|
309
|
-
|
|
|
310
|
-
|
|
|
311
|
-
|
|
|
312
|
-
|
|
|
313
|
-
|
|
|
314
|
-
|
|
|
315
|
-
|
|
|
316
|
-
| 3.
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
214
|
+
| 4.3.3 | Dead-Code Cleanup Release: post-audit cleanup, architecture documentation correction, Vercel/static-docs readiness, README badge restoration, exact-current artifacts |
|
|
215
|
+
| 4.3.2 | Product Polish & Graph UX Overhaul RC: evidence-based README, graph UX, structured product state, archive UX, desktop sidecar cleanup, publishing readiness |
|
|
216
|
+
| 4.3.1 | End-User Audit Repair RC: desktop sidecar startup, npm clean install, default-off downloads, honest agent/workflow states |
|
|
217
|
+
| 4.3.0 | Portability & Product Hardening RC: encrypted `.latticebrain` archives, backup/restore hardening, local-only startup guards |
|
|
218
|
+
| 4.2.0 | Brain Core & Storage Rebuild: independent `lattice_brain`, StorageEngine abstraction, SQLite default, opt-in Postgres/pgvector |
|
|
219
|
+
| 4.1.0 | Frontend & Desktop Rebuild: React/Vite SPA, Tauri shell, generated OpenAPI client |
|
|
220
|
+
| 4.0.1 | Digital Brain maintenance: durable async runs, identity/workspace state, `/app` parity |
|
|
221
|
+
| 4.0.0 | Digital Brain Platform foundation |
|
|
222
|
+
| 3.0.0 | v3 local-first AI workspace platform |
|
|
223
|
+
|
|
224
|
+
## Current Documentation
|
|
225
|
+
|
|
226
|
+
- [ARCHITECTURE.md](ARCHITECTURE.md) - v4.3.3 architecture.
|
|
227
|
+
- [FEATURE_STATUS.md](FEATURE_STATUS.md) - current feature status and historical
|
|
228
|
+
status ledger.
|
|
229
|
+
- [RELEASE_NOTES.md](RELEASE_NOTES.md) - current release notes index.
|
|
230
|
+
- [RELEASE_NOTES_v4.3.3.md](RELEASE_NOTES_v4.3.3.md) - v4.3.3 release notes.
|
|
231
|
+
- [RELEASE.md](RELEASE.md) - release checklist and exact artifact guidance.
|
|
232
|
+
- [SECURITY.md](SECURITY.md) - security posture.
|
|
233
|
+
- [docs/CHANGELOG.md](docs/CHANGELOG.md) - changelog.
|
|
234
|
+
- [docs/V4_3_2_DEADCODE_AUDIT_REPORT.md](docs/V4_3_2_DEADCODE_AUDIT_REPORT.md) - v4.3.3 cleanup basis.
|
|
235
|
+
- [docs/V4_3_3_VALIDATION_REPORT.md](docs/V4_3_3_VALIDATION_REPORT.md) - v4.3.3 validation report.
|
|
236
|
+
- [docs/V4_3_2_GRAPH_UX_REPORT.md](docs/V4_3_2_GRAPH_UX_REPORT.md) - graph UX report.
|
|
237
|
+
- [docs/V4_3_2_PRODUCT_POLISH_REPORT.md](docs/V4_3_2_PRODUCT_POLISH_REPORT.md) - product polish report.
|
|
238
|
+
- [docs/V4_3_2_SELF_AUDIT_REPORT.md](docs/V4_3_2_SELF_AUDIT_REPORT.md) - self-audit evidence.
|
|
239
|
+
- [docs/V4_3_2_VALIDATION_REPORT.md](docs/V4_3_2_VALIDATION_REPORT.md) - RC validation report.
|
|
240
|
+
- [docs/V4_3_2_DOCUMENTATION_CLEANUP_REPORT.md](docs/V4_3_2_DOCUMENTATION_CLEANUP_REPORT.md) - release-prep documentation cleanup report.
|
|
241
|
+
- [docs/V4_3_2_GITHUB_VERCEL_CHECK_REPORT.md](docs/V4_3_2_GITHUB_VERCEL_CHECK_REPORT.md) - GitHub/Vercel readiness report.
|
|
242
|
+
- [docs/V4_3_2_INDEPENDENT_AUDIT_PACKAGE.md](docs/V4_3_2_INDEPENDENT_AUDIT_PACKAGE.md) - package for an independent reviewer.
|
|
243
|
+
- [docs/V4_3_2_DEADCODE_AUDIT_REPORT.md](docs/V4_3_2_DEADCODE_AUDIT_REPORT.md) - independent dead-code, architecture, and runtime audit.
|
|
244
|
+
- [docs/V4_DIGITAL_BRAIN_RECOVERY.md](docs/V4_DIGITAL_BRAIN_RECOVERY.md) - transformation recovery file.
|
|
335
245
|
|
|
336
246
|
## License
|
|
337
247
|
|
|
338
|
-
MIT
|
|
248
|
+
MIT. See [LICENSE](LICENSE).
|
package/bin/ltcai.js
CHANGED
|
@@ -60,9 +60,13 @@ function ensureManagedPython() {
|
|
|
60
60
|
|
|
61
61
|
if (!canImport(managedPython, "fastapi")) {
|
|
62
62
|
const requirements = path.join(root, "requirements.txt");
|
|
63
|
+
if (!fs.existsSync(requirements)) {
|
|
64
|
+
console.error(`[LTCAI] Missing ${requirements}. The npm package is incomplete and cannot start the Python server.`);
|
|
65
|
+
process.exit(1);
|
|
66
|
+
}
|
|
63
67
|
console.log("[LTCAI] Installing Python dependencies. This can take a few minutes on first run.");
|
|
64
|
-
if (!runSync(managedPython, ["-m", "pip", "install", "--upgrade", "pip"]))
|
|
65
|
-
if (!runSync(managedPython, ["-m", "pip", "install", "-r", requirements]))
|
|
68
|
+
if (!runSync(managedPython, ["-m", "pip", "install", "--upgrade", "pip"])) process.exit(1);
|
|
69
|
+
if (!runSync(managedPython, ["-m", "pip", "install", "-r", requirements])) process.exit(1);
|
|
66
70
|
}
|
|
67
71
|
|
|
68
72
|
return managedPython;
|