livepilot 1.22.0 → 1.22.1
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/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,67 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 1.22.1 — Bundled enrichment coverage gate (April 25 2026)
|
|
4
|
+
|
|
5
|
+
Closes the one item carried from v1.22.0's atlas-separation work: a
|
|
6
|
+
visibility + soft-gate for the drift between the atlas file's
|
|
7
|
+
self-reported enrichment count and the YAML files on disk.
|
|
8
|
+
|
|
9
|
+
### What changed
|
|
10
|
+
|
|
11
|
+
Two enrichment numbers now surface in `sync_metadata --check`:
|
|
12
|
+
|
|
13
|
+
- **`enriched=N`** (existing) — YAML profiles authored in `mcp_server/atlas/enrichments/`. Measures "what's available for merge."
|
|
14
|
+
- **`bundled_enriched=N`** (new) — `stats.enriched_devices` from the shipped `mcp_server/atlas/device_atlas.json`. Measures "what the last scan_full_library run actually applied at build time."
|
|
15
|
+
|
|
16
|
+
These measure different things. YAML count is authoring effort; bundled
|
|
17
|
+
count is runtime coverage as of the atlas's last regeneration. They
|
|
18
|
+
drift naturally (someone adds a YAML without re-scanning) — but until
|
|
19
|
+
v1.22.1 the drift was invisible to CI.
|
|
20
|
+
|
|
21
|
+
### Soft gate
|
|
22
|
+
|
|
23
|
+
Warns (doesn't fail) on two conditions:
|
|
24
|
+
|
|
25
|
+
1. **`bundled_enriched == 0`** with YAMLs on disk — scanner never ran
|
|
26
|
+
or failed completely. Most likely the repo's bundled atlas got
|
|
27
|
+
accidentally emptied or mis-committed.
|
|
28
|
+
2. **`bundled_enriched / yaml_count < 50%`** — scanner truncated or had
|
|
29
|
+
severe pack-coverage failures. Current shipped atlas is 87/120 = 72%
|
|
30
|
+
coverage (healthy — the 33 orphan gap is the miditool-domain YAMLs
|
|
31
|
+
that Live's browser scanner can't see).
|
|
32
|
+
|
|
33
|
+
Why soft: the relationship `yaml >= bundled` is only true in
|
|
34
|
+
single-pack-scan scenarios. Multi-category duplication (native +
|
|
35
|
+
max_for_live + user_library for the same device_id) can push
|
|
36
|
+
`bundled > yaml`. Strict equality would produce false alarms. The soft
|
|
37
|
+
gate catches the two real failure modes while staying silent on healthy
|
|
38
|
+
cases.
|
|
39
|
+
|
|
40
|
+
### Output format
|
|
41
|
+
|
|
42
|
+
```
|
|
43
|
+
Source of truth: version=1.22.1, tools=430, domains=53, bridge_cmds=31,
|
|
44
|
+
enriched=120, bundled_enriched=87, genres=4, moves=44,
|
|
45
|
+
analyzer_tools=38, atlas_devices=5264
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
Warnings (if any) print above the fail/pass line with a ⚠️ header,
|
|
49
|
+
separate from the issue list. The exit code is unchanged — warnings
|
|
50
|
+
don't fail CI.
|
|
51
|
+
|
|
52
|
+
### Tests
|
|
53
|
+
|
|
54
|
+
7 new TDD tests in `tests/test_claim_consistency.py`. Full suite: 3143
|
|
55
|
+
pass (3136 prior + 7 new), 1 skipped.
|
|
56
|
+
|
|
57
|
+
### Why this is a patch, not a feature
|
|
58
|
+
|
|
59
|
+
Pure CI-gate tightening. Zero user-visible runtime behavior change;
|
|
60
|
+
the only observable delta is one additional field in the banner plus
|
|
61
|
+
the possibility of a soft-warning line during `sync_metadata --check`.
|
|
62
|
+
No new tools, no atlas behavior change. The v1.22.0 user/bundled split
|
|
63
|
+
is the feature release; v1.22.1 is its mechanical follow-through.
|
|
64
|
+
|
|
3
65
|
## 1.22.0 — User atlas separation: ~/.livepilot/atlas/ (April 25 2026)
|
|
4
66
|
|
|
5
67
|
First v1.22 release. Splits the device atlas into two files that serve
|
|
Binary file
|
package/mcp_server/__init__.py
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"""LivePilot MCP Server — bridges MCP protocol to Ableton Live."""
|
|
2
|
-
__version__ = "1.22.
|
|
2
|
+
__version__ = "1.22.1"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "livepilot",
|
|
3
|
-
"version": "1.22.
|
|
3
|
+
"version": "1.22.1",
|
|
4
4
|
"mcpName": "io.github.dreamrec/livepilot",
|
|
5
5
|
"description": "Agentic production system for Ableton Live 12 — 430 tools, 53 domains, 44 semantic moves. Device atlas (5264 devices, 120 enriched, 7 indexes), Splice intelligence (gRPC + GraphQL describe-a-sound + preview + collections + presets), 9-band spectral perception auto-loaded via ensure_analyzer_on_master, Creative Director skill, technique memory, 12 creative intelligence engines",
|
|
6
6
|
"author": "Pilot Studio",
|
|
@@ -5,7 +5,7 @@ Entry point for the ControlSurface. Ableton calls create_instance(c_instance)
|
|
|
5
5
|
when this script is selected in Preferences > Link, Tempo & MIDI.
|
|
6
6
|
"""
|
|
7
7
|
|
|
8
|
-
__version__ = "1.22.
|
|
8
|
+
__version__ = "1.22.1"
|
|
9
9
|
|
|
10
10
|
from _Framework.ControlSurface import ControlSurface
|
|
11
11
|
from . import router
|
package/server.json
CHANGED
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
"url": "https://github.com/dreamrec/LivePilot",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "1.22.
|
|
9
|
+
"version": "1.22.1",
|
|
10
10
|
"packages": [
|
|
11
11
|
{
|
|
12
12
|
"registryType": "npm",
|
|
13
13
|
"identifier": "livepilot",
|
|
14
|
-
"version": "1.22.
|
|
14
|
+
"version": "1.22.1",
|
|
15
15
|
"transport": {
|
|
16
16
|
"type": "stdio"
|
|
17
17
|
}
|