ltcai 1.2.0 → 1.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.
- package/README.md +28 -8
- package/docs/CHANGELOG.md +96 -0
- package/latticeai/__init__.py +1 -1
- package/latticeai/api/chat.py +786 -0
- package/latticeai/api/computer_use.py +294 -0
- package/latticeai/api/deps.py +15 -0
- package/latticeai/api/garden.py +34 -0
- package/latticeai/api/local_files.py +125 -0
- package/latticeai/api/mcp.py +386 -0
- package/latticeai/api/models.py +307 -0
- package/latticeai/api/permissions.py +331 -0
- package/latticeai/api/setup.py +158 -0
- package/latticeai/api/static_routes.py +166 -0
- package/latticeai/api/tools.py +579 -0
- package/latticeai/core/workspace_os.py +1 -1
- package/latticeai/server_app.py +231 -4876
- package/latticeai/services/app_context.py +27 -0
- package/latticeai/services/model_runtime.py +1973 -0
- package/latticeai/services/tool_dispatch.py +135 -0
- package/latticeai/services/upload_service.py +99 -0
- package/package.json +3 -3
- package/skills/SKILL_TEMPLATE.md +1 -1
- package/skills/code_review/SKILL.md +1 -1
- package/skills/data_analysis/SKILL.md +1 -1
- package/skills/file_edit/SKILL.md +1 -1
- package/skills/summarize_document/SKILL.md +1 -1
- package/skills/web_search/SKILL.md +1 -1
package/README.md
CHANGED
|
@@ -36,6 +36,24 @@ Automatic knowledge graph
|
|
|
36
36
|
Graph-aware chat, snapshots, memory, agents, workflows, skills, and timeline
|
|
37
37
|
```
|
|
38
38
|
|
|
39
|
+
### New in 1.4.0: Server App Final Decomposition
|
|
40
|
+
|
|
41
|
+
- **server_app.py final decomposition** — the app shell is now FastAPI assembly,
|
|
42
|
+
lifespan, middleware, static mounting, and router wiring only
|
|
43
|
+
(~5,381 → 1,303 lines)
|
|
44
|
+
- **Chat / model / tools extraction** — chat/history/agent, model runtime and
|
|
45
|
+
provider helpers, tools, local files, computer-use, permissions, upload,
|
|
46
|
+
garden/setup/static UI, MCP, and KG glue now live in API routers and services
|
|
47
|
+
- **AppContext and dependency cleanup** — routers receive explicit dependencies
|
|
48
|
+
and do not import the FastAPI app; service modules own runtime and dispatch
|
|
49
|
+
business logic
|
|
50
|
+
- **Safety validation suite** — route compatibility, import/startup, streaming,
|
|
51
|
+
model endpoint, tools/local/CU, release-artifact, and documentation stale
|
|
52
|
+
checks guard the split
|
|
53
|
+
- **Compatibility preserved** — all public API paths, request/response schemas,
|
|
54
|
+
`server:app`, CLI, UI, Knowledge Graph, Admin/Security, Workspace OS, and
|
|
55
|
+
VS Code expectations remain unchanged
|
|
56
|
+
|
|
39
57
|
### New in 1.2.0: Server App Modularization
|
|
40
58
|
|
|
41
59
|
- **server_app.py modularized** — Workspace/Organization and health/engine
|
|
@@ -315,16 +333,18 @@ Supported routes include OpenAI-compatible APIs, OpenRouter, Groq, Together, xAI
|
|
|
315
333
|
|
|
316
334
|
## Current release
|
|
317
335
|
|
|
318
|
-
**
|
|
336
|
+
**1.4.0** completes the Server App Final Decomposition release:
|
|
319
337
|
|
|
320
|
-
- `server.py`
|
|
321
|
-
|
|
322
|
-
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
338
|
+
- `server.py` remains the thin compatibility entrypoint and
|
|
339
|
+
`latticeai/server_app.py` is now a compact app assembly shell
|
|
340
|
+
- chat/history/agent, model runtime/provider helpers, tools/local/CU/
|
|
341
|
+
permissions/upload, garden/setup/static pages, MCP, and KG router wiring are
|
|
342
|
+
extracted into `latticeai/api/*` and `latticeai/services/*`
|
|
343
|
+
- route compatibility, streaming, model endpoint, tools/local/CU,
|
|
344
|
+
import/startup, build, packaging, and documentation stale-reference checks
|
|
345
|
+
are part of the release validation
|
|
326
346
|
- Python package, npm package, VS Code extension, FastAPI app, and `/health`
|
|
327
|
-
version metadata are aligned at `
|
|
347
|
+
version metadata are aligned at `1.4.0`
|
|
328
348
|
|
|
329
349
|
See the full [changelog](docs/CHANGELOG.md).
|
|
330
350
|
|
package/docs/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,101 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.4.0] - 2026-05-31
|
|
4
|
+
|
|
5
|
+
> Server App Final Decomposition — chat, model runtime, tools/local/CU,
|
|
6
|
+
> permissions/upload, garden/setup/static, MCP, and KG glue extracted while
|
|
7
|
+
> preserving the public route contract.
|
|
8
|
+
|
|
9
|
+
### Added
|
|
10
|
+
|
|
11
|
+
- **Final decomposition guard** —
|
|
12
|
+
`tests/unit/test_server_app_v14_decomposition.py` asserts
|
|
13
|
+
`latticeai/server_app.py` stays under the 1,500-line target, new routers and
|
|
14
|
+
services import independently, and version metadata is aligned.
|
|
15
|
+
- **New routers** — `latticeai/api/chat.py`, `latticeai/api/tools.py`,
|
|
16
|
+
`latticeai/api/computer_use.py`, `latticeai/api/local_files.py`,
|
|
17
|
+
`latticeai/api/permissions.py`, `latticeai/api/garden.py`,
|
|
18
|
+
`latticeai/api/setup.py`, `latticeai/api/static_routes.py`, plus
|
|
19
|
+
`latticeai/api/deps.py`.
|
|
20
|
+
- **New service seams** — `latticeai/services/model_runtime.py`,
|
|
21
|
+
`latticeai/services/tool_dispatch.py`, `latticeai/services/upload_service.py`,
|
|
22
|
+
and
|
|
23
|
+
`latticeai/services/app_context.py`.
|
|
24
|
+
|
|
25
|
+
### Changed
|
|
26
|
+
|
|
27
|
+
- **server_app.py final decomposition** — reduced from 5,381 lines to 1,303
|
|
28
|
+
lines. The file now owns FastAPI construction, lifespan, middleware, static
|
|
29
|
+
mount, router wiring, and compatibility globals only.
|
|
30
|
+
- **Chat/history/agent extracted** — `/chat`, `/history*`, `/agent*`, streaming
|
|
31
|
+
generator, document-generation session handling, Graph RAG trace recording,
|
|
32
|
+
and AgentRuntime wiring moved to `latticeai/api/chat.py` with behavior and
|
|
33
|
+
SSE chunk format preserved.
|
|
34
|
+
- **Model runtime/provider extracted** — provider catalogs, engine aliases,
|
|
35
|
+
install/download/pull/load/unload helpers, prepare-model streaming,
|
|
36
|
+
compatibility smoke tests, runtime feature payloads, and cloud verification
|
|
37
|
+
moved to `latticeai/services/model_runtime.py`.
|
|
38
|
+
- **Tools/local/CU/permissions/upload extracted** — `/tools/*` moved to
|
|
39
|
+
`latticeai/api/tools.py`, `/local/*` and KG/local-knowledge router glue moved
|
|
40
|
+
to `latticeai/api/local_files.py`, `/cu/*` moved to
|
|
41
|
+
`latticeai/api/computer_use.py`, `/permissions/*` moved to
|
|
42
|
+
`latticeai/api/permissions.py`, and `/upload/document` now delegates to
|
|
43
|
+
`latticeai/services/upload_service.py`.
|
|
44
|
+
- **Garden/setup/static routes extracted** — `/garden*`, `/setup*`,
|
|
45
|
+
`/permissions/open/*`, `/`, `/account`, `/chat`, `/admin`, `/status`,
|
|
46
|
+
`/manifest.json`, `/sw.js`, and `/local/sysinfo` moved to dedicated routers.
|
|
47
|
+
- **Docs and release metadata aligned** — README current release conflict fixed,
|
|
48
|
+
SECURITY supported versions updated, package metadata bumped to `1.4.0`, and
|
|
49
|
+
publish docs avoid unsafe `dist/*` upload commands.
|
|
50
|
+
|
|
51
|
+
### Validation
|
|
52
|
+
|
|
53
|
+
- Route compatibility snapshot, import/startup checks, chat streaming contract,
|
|
54
|
+
model endpoint presence, MCP/KG presence, v1.4 line-count/import/version
|
|
55
|
+
guard, unit/integration suites, Python build, VSIX package, npm pack, twine
|
|
56
|
+
check, and release artifact validation all pass for `1.4.0`.
|
|
57
|
+
|
|
58
|
+
## [1.3.0] - 2026-05-31
|
|
59
|
+
|
|
60
|
+
> Server app decomposition (phase 3) — safety-net suite first, then model & MCP router extraction.
|
|
61
|
+
|
|
62
|
+
### Added
|
|
63
|
+
|
|
64
|
+
- **Route-compatibility safety net** — `tests/unit/test_route_compatibility.py`
|
|
65
|
+
freezes the full public route surface (209 paths) plus import/startup,
|
|
66
|
+
streaming-contract, model/engine, and MCP/KG presence checks. Any dropped or
|
|
67
|
+
renamed endpoint, broken import, or removed `StreamingResponse` now fails the
|
|
68
|
+
suite immediately. This was built **before** moving code, per the decomposition
|
|
69
|
+
plan.
|
|
70
|
+
- **Model / engine router** — `latticeai/api/models.py` (`create_models_router`)
|
|
71
|
+
now owns `/models*`, `/engines*` (install / verify-cloud / pull-model /
|
|
72
|
+
prepare-model[/stream]) and `/setup/set-api-key`. Heavy provider/runtime
|
|
73
|
+
helpers remain injected from server_app (no import cycle, no new import-time
|
|
74
|
+
side effects).
|
|
75
|
+
- **MCP / skills / plugins router** — `latticeai/api/mcp.py` (`create_mcp_router`)
|
|
76
|
+
now owns `/mcp/*`, `/skills/*`, `/plugins/directory*`, and `/mcp/call`.
|
|
77
|
+
Registry/tool symbols are imported directly from `mcp_registry` / `tools` /
|
|
78
|
+
`tool_registry`; server_app-defined helpers are injected.
|
|
79
|
+
|
|
80
|
+
### Changed
|
|
81
|
+
|
|
82
|
+
- **server_app.py decomposition** — reduced from ~5,948 to ~5,382 lines by
|
|
83
|
+
extracting the model/engine and MCP/skills/plugins clusters (and their
|
|
84
|
+
request models) into the routers above. All API paths, request/response
|
|
85
|
+
schemas, the `server:app` import path, CLI, UI, KG/Admin/Security routers, and
|
|
86
|
+
VS Code integration are unchanged (asserted by the route snapshot test).
|
|
87
|
+
- Release metadata aligned to `1.3.0`; `/health` reports `1.3.0`.
|
|
88
|
+
|
|
89
|
+
### Notes
|
|
90
|
+
|
|
91
|
+
- The chat/streaming cluster, the `/tools/*` · `/cu/*` · `/local/*` ·
|
|
92
|
+
`/upload` · `/permissions` clusters, and the ~1,700-line model/engine
|
|
93
|
+
*provider helper* block remain in server_app and are scheduled for the next
|
|
94
|
+
decomposition pass (the safety net now de-risks those moves). server_app.py is
|
|
95
|
+
not yet under the 2,000-line target.
|
|
96
|
+
- CI hardening from 1.0.1/1.1.0 retained (VSIX compile guard, Node.js 24,
|
|
97
|
+
version-scoped artifact validation — no `dist/*` glob).
|
|
98
|
+
|
|
3
99
|
## [1.2.0] - 2026-05-31
|
|
4
100
|
|
|
5
101
|
> Server app modularization (routers + service layer) and workspace/org guardrail hardening.
|
package/latticeai/__init__.py
CHANGED