scene-capability-engine 3.6.53 → 3.6.55

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 (33) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +6 -1
  3. package/README.zh.md +6 -1
  4. package/bin/scene-capability-engine.js +2 -0
  5. package/docs/command-reference.md +29 -1
  6. package/docs/magicball-app-collection-phase-1.md +133 -0
  7. package/docs/magicball-cli-invocation-examples.md +40 -0
  8. package/docs/magicball-integration-doc-index.md +14 -6
  9. package/docs/magicball-integration-issue-tracker.md +42 -3
  10. package/docs/magicball-sce-adaptation-guide.md +36 -9
  11. package/docs/releases/README.md +2 -0
  12. package/docs/releases/v3.6.54.md +19 -0
  13. package/docs/releases/v3.6.55.md +18 -0
  14. package/docs/zh/releases/README.md +2 -0
  15. package/docs/zh/releases/v3.6.54.md +19 -0
  16. package/docs/zh/releases/v3.6.55.md +18 -0
  17. package/lib/app/collection-store.js +127 -0
  18. package/lib/app/install-apply-runner.js +192 -0
  19. package/lib/app/install-plan-service.js +410 -0
  20. package/lib/app/scene-workspace-store.js +132 -0
  21. package/lib/commands/app.js +281 -0
  22. package/lib/commands/device.js +194 -0
  23. package/lib/commands/scene.js +228 -0
  24. package/lib/device/current-device.js +158 -0
  25. package/lib/device/device-override-store.js +157 -0
  26. package/lib/problem/project-problem-projection.js +239 -0
  27. package/lib/workspace/collab-governance-audit.js +107 -0
  28. package/lib/workspace/collab-governance-gate.js +24 -4
  29. package/lib/workspace/takeover-baseline.js +76 -0
  30. package/package.json +1 -1
  31. package/template/.sce/README.md +1 -1
  32. package/template/.sce/config/problem-closure-policy.json +5 -0
  33. package/template/.sce/knowledge/problem/project-shared-problems.json +16 -0
package/CHANGELOG.md CHANGED
@@ -7,6 +7,29 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [3.6.55] - 2026-03-16
11
+
12
+ ### Added
13
+ - Added `sce device current` as a read-only current-device identity projection that avoids persisting a machine-id file when no persistent device id exists yet.
14
+ - Added `sce device override show|upsert` so local per-device add/remove overlays can be inspected and updated through explicit CLI governance instead of hand-editing `.sce/state/device/device-override.json`.
15
+ - Added `sce app collection list/show` as file-backed intent read models rooted at `.sce/app/collections/*.json`.
16
+ - Added `sce scene workspace list/show` as file-backed scene-profile read models rooted at `.sce/app/scene-profiles/*.json`.
17
+ - Added `sce app install-state list` so MagicBall and CLI users can inspect current cross-app installation facts from one local device-oriented view.
18
+ - Added plan-first `sce app collection apply` and `sce scene workspace apply` diff commands with guarded explicit execution. `--execute` now reuses existing runtime install/uninstall only when the plan is fully resolvable; unresolved collections, missing app bundles, and active-release protection still block execution.
19
+
20
+ ### Changed
21
+ - `sce app runtime install` and `sce app runtime uninstall` now stamp runtime installation metadata with the current device identifier and hostname, making local installation facts attributable without introducing a second install-management mechanism.
22
+ - Collection/workspace resolution now respects file-backed local device overrides at `.sce/state/device/device-override.json` and item-level `capability_tags`, so per-device add/remove decisions and capability mismatch skips are explained in the generated plan instead of being silently ignored.
23
+
24
+ ## [3.6.54] - 2026-03-16
25
+
26
+ ### Added
27
+ - Added a tracked project-shared problem projection at `.sce/knowledge/problem/project-shared-problems.json`, derived from existing spec problem artifacts and seeded by default through template/takeover baselines.
28
+
29
+ ### Changed
30
+ - Managed co-work gate now refreshes the project-shared problem projection before collaboration governance audit, so another computer can recover active/stale project problem facts through normal Git sync without asking for a separate local problem-library sync step.
31
+ - Collaboration governance auditing now treats project-shared problem projection drift as a violation alongside errorbook and multi-agent baseline drift.
32
+
10
33
  ## [3.6.53] - 2026-03-16
11
34
 
12
35
  ### Added
package/README.md CHANGED
@@ -163,7 +163,12 @@ For IDEs, AI shells, or custom frontends, the most important SCE surfaces are:
163
163
 
164
164
  MagicBall-specific integration surfaces now also include:
165
165
 
166
+ - `sce device current`
167
+ - `sce device override show|upsert`
166
168
  - `sce app bundle list|show|register`
169
+ - `sce app collection list|show|apply`
170
+ - `sce app install-state list`
171
+ - `sce scene workspace list|show|apply`
167
172
  - `sce app registry status|configure|sync*`
168
173
  - `sce app runtime show|releases|install|activate|uninstall`
169
174
  - `sce app engineering show|attach|hydrate|activate`
@@ -218,5 +223,5 @@ MIT. See [LICENSE](LICENSE).
218
223
 
219
224
  ---
220
225
 
221
- **Version**: 3.6.53
226
+ **Version**: 3.6.55
222
227
  **Last Updated**: 2026-03-16
package/README.zh.md CHANGED
@@ -168,7 +168,12 @@ SCE 默认是强治理的。
168
168
 
169
169
  面向 MagicBall 的当前关键接口还包括:
170
170
 
171
+ - `sce device current`
172
+ - `sce device override show|upsert`
171
173
  - `sce app bundle list|show|register`
174
+ - `sce app collection list|show|apply`
175
+ - `sce app install-state list`
176
+ - `sce scene workspace list|show|apply`
172
177
  - `sce app registry status|configure|sync*`
173
178
  - `sce app runtime show|releases|install|activate|uninstall`
174
179
  - `sce app engineering show|attach|hydrate|activate`
@@ -223,5 +228,5 @@ MIT,见 [LICENSE](LICENSE)。
223
228
 
224
229
  ---
225
230
 
226
- **版本**:3.6.53
231
+ **版本**:3.6.55
227
232
  **最后更新**:2026-03-16
@@ -1054,7 +1054,9 @@ registerStateCommands(program);
1054
1054
  registerCapabilityCommands(program);
1055
1055
 
1056
1056
  const { registerAppCommands } = require('../lib/commands/app');
1057
+ const { registerDeviceCommands } = require('../lib/commands/device');
1057
1058
  const { registerModeCommands } = require('../lib/commands/mode');
1059
+ registerDeviceCommands(program);
1058
1060
  registerAppCommands(program);
1059
1061
  registerModeCommands(program);
1060
1062
  const { registerPmCommands } = require('../lib/commands/pm');
@@ -135,7 +135,7 @@ Timeline policy:
135
135
  - default enabled with local retention under `.sce/timeline/snapshots/`
136
136
  - stage/key-event checkpoints are automatically captured for `studio` and `session` commands
137
137
  - interval auto-checkpoints are integrated in the same flow via timeline checkpoint capture
138
- - `timeline push` now blocks before snapshot/push when collaboration governance drifts, so tracked runtime state, missing co-work ignore rules, missing shared `errorbook` registry baseline, missing tracked project-shared errorbook projection, invalid multi-agent config, legacy `.kiro*` references, or steering boundary drift cannot pass through managed push flow
138
+ - `timeline push` now refreshes the tracked project-shared problem projection before governance audit, then blocks before snapshot/push when collaboration governance drifts, so tracked runtime state, missing co-work ignore rules, missing shared `errorbook` registry baseline, missing tracked project-shared errorbook/problem projections, invalid multi-agent config, legacy `.kiro*` references, or steering boundary drift cannot pass through managed push flow
139
139
 
140
140
  ### Value Metrics
141
141
 
@@ -378,11 +378,26 @@ sce workspace team
378
378
  ### App Bundle & MagicBall Mode Projection
379
379
 
380
380
  ```bash
381
+ # Current device baseline
382
+ sce device current --json
383
+ sce device override show --json
384
+ sce device override upsert --input device-override.patch.json --json
385
+
381
386
  # List/show/register app bundles
382
387
  sce app bundle list --json
383
388
  sce app bundle show --app customer-order-demo --json
384
389
  sce app bundle register --input bundle.json --json
385
390
 
391
+ # File-backed app collection intent
392
+ sce app collection list --json
393
+ sce app collection show --collection sales-workbench --json
394
+ sce app collection apply --collection sales-workbench --json
395
+
396
+ # File-backed scene workspace intent
397
+ sce scene workspace list --json
398
+ sce scene workspace show --workspace sales --json
399
+ sce scene workspace apply --workspace sales --json
400
+
386
401
  # Configure and sync remote registries
387
402
  sce app registry status --json
388
403
  sce app registry configure --bundle-index-url <path-or-url> --service-index-url <path-or-url> --json
@@ -395,6 +410,10 @@ sce app runtime install --app customer-order-demo --release <release-id> --json
395
410
  sce app runtime activate --app customer-order-demo --release <release-id> --json
396
411
  sce app runtime uninstall --app customer-order-demo --release <release-id> --json
397
412
 
413
+ # Cross-app local install-state view
414
+ sce app install-state list --json
415
+ sce app install-state list --install-status installed --json
416
+
398
417
  # Engineering projection
399
418
  sce app engineering show --app customer-order-demo --json
400
419
  sce app engineering attach --app customer-order-demo --repo <repo-url> --branch main --json
@@ -407,6 +426,10 @@ sce mode ontology home --app customer-order-demo --json
407
426
  sce mode engineering home --app customer-order-demo --json
408
427
  ```
409
428
 
429
+ Device override notes:
430
+ - `sce device override show` returns the normalized local per-device overlay from `.sce/state/device/device-override.json`.
431
+ - `sce device override upsert --input <json>` merges only explicitly provided fields; omitted fields remain unchanged so local override policy is not blindly replaced.
432
+
410
433
  ### PM Delivery Data Plane
411
434
 
412
435
  ```bash
@@ -791,6 +814,11 @@ Studio gate execution defaults:
791
814
  Problem closure gate (default policy):
792
815
  - Script: `node scripts/problem-closure-gate.js`
793
816
  - Policy file: `.sce/config/problem-closure-policy.json` (auto-provisioned by `init/adopt/takeover`)
817
+ - Shared problem projection:
818
+ - config field: `project_shared_projection`
819
+ - tracked file: `.sce/knowledge/problem/project-shared-problems.json`
820
+ - default scope: `non_completed`
821
+ - managed co-work gate refreshes this file automatically before governance audit/push/publish
794
822
  - Checks:
795
823
  - verify stage: `problem-contract` + spec domain validation + domain coverage
796
824
  - release stage: verify checks + verify report pass signal + governance high-alert block (configurable)
@@ -0,0 +1,133 @@
1
+ # MagicBall App Collection Phase 1
2
+
3
+ ## Status
4
+
5
+ Shipped phase-1 baseline in SCE.
6
+
7
+ Current shipped read-model baseline:
8
+
9
+ - `sce device current`
10
+ - `sce device override show`
11
+ - `sce device override upsert`
12
+ - `sce app collection list`
13
+ - `sce app collection show`
14
+ - `sce app collection apply` with plan-first diff and explicit execute for non-blocked install/uninstall actions
15
+ - `sce app install-state list`
16
+ - `sce scene workspace list`
17
+ - `sce scene workspace show`
18
+ - `sce scene workspace apply` with plan-first diff and explicit execute for non-blocked install/uninstall actions
19
+
20
+ Current shipped runtime controls remain:
21
+
22
+ - `sce app runtime show`
23
+ - `sce app runtime releases`
24
+ - `sce app runtime install`
25
+ - `sce app runtime activate`
26
+ - `sce app runtime uninstall`
27
+
28
+ ## Goal
29
+
30
+ Add a scene-oriented installation model above the current single-app runtime controls so MagicBall can manage "what this workbench wants" separately from "what this device actually has installed".
31
+
32
+ ## Core decision
33
+
34
+ SCE should split the model into two layers plus one local overlay:
35
+
36
+ - intent layer: `app_collection` and `scene_profile`
37
+ - device fact layer: `device_installation`
38
+ - local override layer: `device_override`
39
+
40
+ This means:
41
+
42
+ - users or workspaces sync the desired app set
43
+ - devices decide their own actual install set
44
+ - one user on multiple devices does not get forced into identical installs
45
+
46
+ ## Why SCE should support this
47
+
48
+ The current runtime commands are enough for single-app control, but they are not enough to express:
49
+
50
+ - sales workbench vs planning workbench vs development workbench
51
+ - device-specific install differences
52
+ - reasoned batch install and uninstall planning
53
+
54
+ Without this layer, frontend code has to invent business grouping and install logic outside SCE, which would fragment the contract.
55
+
56
+ ## Phase 1 scope
57
+
58
+ Phase-1 should stay local-device-first.
59
+
60
+ It should add:
61
+
62
+ - current device identity and capability view
63
+ - file-backed app collections
64
+ - file-backed scene profiles
65
+ - local install-state listing
66
+ - collection or scene apply diff planning
67
+ - explicit execute step for apply
68
+
69
+ It should not require:
70
+
71
+ - user account system
72
+ - cross-device installation-state sync
73
+ - organization policy rollout
74
+
75
+ ## Storage position
76
+
77
+ SCE already has a selective SQLite policy. This capability should follow it.
78
+
79
+ Recommended split:
80
+
81
+ - shared intent stays file-backed or registry-backed
82
+ - device facts and rebuildable resolution projections may use SQLite
83
+ - local device override stays file-backed at `.sce/state/device/device-override.json`
84
+
85
+ This boundary matters because SQLite is suitable for local query-heavy facts, but it should not become the only source of truth for portable shared intent.
86
+
87
+ ## Recommended phase-1 command shape
88
+
89
+ Phase-1 overall command surface:
90
+
91
+ - `sce device current`
92
+ - `sce device override show`
93
+ - `sce device override upsert`
94
+ - `sce app collection list`
95
+ - `sce app collection show`
96
+ - `sce app collection apply`
97
+ - `sce app install-state list`
98
+ - `sce scene workspace list`
99
+ - `sce scene workspace show`
100
+ - `sce scene workspace apply`
101
+
102
+ Execution rule:
103
+
104
+ - `apply` should return a plan or diff by default
105
+ - actual mutation requires explicit execute confirmation
106
+ - execute stays blocked when the plan still contains unresolved collections, missing app bundles, or active-release protection skips
107
+ - resolution now also considers local `device_override` add/remove overlays and item-level `capability_tags`
108
+ - local override updates now also have an explicit CLI governance surface instead of requiring manual file edits
109
+ - execution should reuse the existing app runtime path
110
+
111
+ ## Frontend implication for MagicBall
112
+
113
+ MagicBall should keep using current per-app runtime controls until this phase ships.
114
+
115
+ Today, MagicBall can already use:
116
+
117
+ 1. `sce device current` for current device identity and capability tags
118
+ 2. `sce device override show/upsert` for local per-device add/remove overlays
119
+ 3. `sce app collection list/show/apply` for file-backed shared collection intent and plan-first diff
120
+ 4. `sce scene workspace list/show/apply` for file-backed scene-profile intent and plan-first diff
121
+ 5. `sce app install-state list` for current cross-app installation projection
122
+ 6. existing per-app runtime controls for concrete runtime actions
123
+
124
+ Once phase-1 lands, the preferred top-level interaction should become:
125
+
126
+ 1. pick a scene workspace or app collection
127
+ 2. inspect the proposed device diff
128
+ 3. explicitly apply the plan
129
+ 4. continue using per-app runtime controls for detail views
130
+
131
+ ## Practical conclusion
132
+
133
+ SCE should support this direction, but it should do so by extending the current app/runtime model rather than replacing it.
@@ -21,6 +21,46 @@ Assume:
21
21
 
22
22
  ## 1. Workspace Bootstrap
23
23
 
24
+ ### 1.0 Read current device baseline
25
+ ```bash
26
+ sce device current --json
27
+ sce device override show --json
28
+ sce app collection list --json
29
+ sce app collection show --collection sales-workbench --json
30
+ sce app collection apply --collection sales-workbench --json
31
+ sce scene workspace list --json
32
+ sce scene workspace show --workspace sales --json
33
+ sce scene workspace apply --workspace sales --json
34
+ sce app install-state list --json
35
+ ```
36
+
37
+ Expected use:
38
+ - cache current device id / tags
39
+ - load file-backed shared app collection intent
40
+ - load file-backed shared scene workspace intent
41
+ - render cross-app local install baseline before scene-oriented collection flows arrive
42
+
43
+ Optional local override input:
44
+ - `.sce/state/device/device-override.json`
45
+ - use this for per-device add/remove exceptions instead of mutating shared collection/workspace definitions
46
+ - update it explicitly via `sce device override upsert --input <json> --json`
47
+
48
+ Example local override patch:
49
+ ```json
50
+ {
51
+ "removed_apps": ["crm"],
52
+ "added_apps": [
53
+ {
54
+ "app_key": "notes",
55
+ "required": false
56
+ }
57
+ ],
58
+ "metadata": {
59
+ "reason": "tablet kiosk profile"
60
+ }
61
+ }
62
+ ```
63
+
24
64
  ### 1.1 App bundle identity
25
65
  ```bash
26
66
  sce app bundle show --app customer-order-demo --json
@@ -14,6 +14,7 @@ It is a navigation layer, not a new source of truth.
14
14
 
15
15
  These are the current first-line integration documents:
16
16
  - `docs/magicball-sce-adaptation-guide.md`
17
+ - `docs/magicball-app-collection-phase-1.md`
17
18
  - `docs/magicball-ui-surface-checklist.md`
18
19
  - `docs/magicball-mode-home-and-ontology-empty-state-playbook.md`
19
20
  - `docs/magicball-frontend-state-and-command-mapping.md`
@@ -32,28 +33,32 @@ These are the current first-line integration documents:
32
33
  - implementation checklist
33
34
  - milestone-oriented execution order
34
35
 
35
- 3. `docs/magicball-mode-home-and-ontology-empty-state-playbook.md`
36
+ 3. `docs/magicball-app-collection-phase-1.md`
37
+ - current device / collection / workspace / override baseline
38
+ - shipped phase-1 install orchestration contract
39
+
40
+ 4. `docs/magicball-mode-home-and-ontology-empty-state-playbook.md`
36
41
  - two active frontend-sensitive defaults
37
42
  - serialized mode-home loading
38
43
  - ontology empty-state and starter-seed behavior
39
44
 
40
- 4. `docs/magicball-frontend-state-and-command-mapping.md`
45
+ 5. `docs/magicball-frontend-state-and-command-mapping.md`
41
46
  - page state ownership
42
47
  - command-to-action mapping
43
48
  - error and retry boundaries
44
49
 
45
- 5. `docs/magicball-write-auth-adaptation-guide.md`
50
+ 6. `docs/magicball-write-auth-adaptation-guide.md`
46
51
  - write authorization and lease handling
47
52
 
48
- 6. `docs/magicball-task-feedback-timeline-guide.md`
53
+ 7. `docs/magicball-task-feedback-timeline-guide.md`
49
54
  - task feedback cards
50
55
  - timeline view integration
51
56
 
52
- 7. `docs/magicball-cli-invocation-examples.md`
57
+ 8. `docs/magicball-cli-invocation-examples.md`
53
58
  - copy-ready CLI examples
54
59
  - wrapper and smoke verification patterns
55
60
 
56
- 8. `docs/magicball-integration-issue-tracker.md`
61
+ 9. `docs/magicball-integration-issue-tracker.md`
57
62
  - current cross-project truth
58
63
  - only open issues, active decisions, and verified resolutions
59
64
 
@@ -62,6 +67,7 @@ These are the current first-line integration documents:
62
67
  ### I need to bootstrap the three-mode app shell
63
68
  Use:
64
69
  - `docs/magicball-sce-adaptation-guide.md`
70
+ - `docs/magicball-app-collection-phase-1.md`
65
71
  - `docs/magicball-mode-home-and-ontology-empty-state-playbook.md`
66
72
  - `docs/magicball-frontend-state-and-command-mapping.md`
67
73
 
@@ -95,6 +101,7 @@ Use:
95
101
  | Document | Role | Should change often? |
96
102
  | --- | --- | --- |
97
103
  | `magicball-sce-adaptation-guide.md` | main overview | low |
104
+ | `magicball-app-collection-phase-1.md` | next-phase install model | medium |
98
105
  | `magicball-adaptation-task-checklist-v1.md` | execution checklist | medium |
99
106
  | `magicball-mode-home-and-ontology-empty-state-playbook.md` | frontend behavior policy | medium |
100
107
  | `magicball-frontend-state-and-command-mapping.md` | frontend implementation mapping | medium |
@@ -127,6 +134,7 @@ As of the current tracker state:
127
134
  - fresh ontology pages use `fallback + optional seed apply`
128
135
  - seed apply stays explicit and user-triggered
129
136
  - command failures should be preserved in copyable form for AI-assisted diagnosis
137
+ - app installation orchestration should use `scene_profile` and `app_collection` intent, not a global identical install set
130
138
 
131
139
  ## Maintenance Rule
132
140
 
@@ -17,7 +17,11 @@
17
17
  ### Current SCE capabilities ready for MagicBall integration
18
18
 
19
19
  SCE changes completed and now available for MagicBall:
20
+ - `device current`
20
21
  - `app bundle` registry local state and CLI
22
+ - `app collection list/show/apply`
23
+ - `scene workspace list/show/apply`
24
+ - `app install-state list`
21
25
  - `mode application home --app ... --json`
22
26
  - `mode ontology home --app ... --json`
23
27
  - `mode engineering home --app ... --json`
@@ -32,9 +36,10 @@ SCE changes completed and now available for MagicBall:
32
36
 
33
37
  ### Current recommended MagicBall consumption order
34
38
  1. consume `mode * home` as the top-level source for the three modes
35
- 2. consume `pm`, `ontology`, and `assurance` table payloads
36
- 3. wire runtime install/activate/uninstall and engineering attach/hydrate/activate actions
37
- 4. use demo app: `customer-order-demo`
39
+ 2. consume `device current`, `app collection list/show/apply`, `scene workspace list/show/apply`, and `app install-state list` as the local device/install baseline
40
+ 3. consume `pm`, `ontology`, and `assurance` table payloads
41
+ 4. wire runtime install/activate/uninstall and engineering attach/hydrate/activate actions
42
+ 5. use demo app: `customer-order-demo`
38
43
 
39
44
  ### Related SCE docs
40
45
  - `docs/magicball-sce-adaptation-guide.md`
@@ -65,6 +70,11 @@ SCE changes completed and now available for MagicBall:
65
70
  - expected payload
66
71
  - UI impact
67
72
 
73
+ ### Cross-project decision recorded
74
+ - The next install-management phase should not use a single global install set.
75
+ - SCE will separate shared app intent from local device installation facts.
76
+ - Planned phase-1 capability is documented in `docs/magicball-app-collection-phase-1.md`.
77
+
68
78
  ## Open Items
69
79
 
70
80
  ### Issue 001: SQLite lock when frontend triggers multiple SCE projection commands concurrently
@@ -153,6 +163,35 @@ Status:
153
163
  - local verification covered: `triad summary` empty -> `seed list/show` preview -> `seed apply` -> `triad summary` ready
154
164
  - keep open until broader field verification confirms the UX is stable
155
165
 
166
+ ### Issue 006: scene-profile and app-collection install orchestration is not yet command-ready
167
+
168
+ Context:
169
+ - MagicBall now needs a scene-oriented install-management model above current per-app runtime controls.
170
+ - Current SCE already supports per-app runtime install, activate, uninstall, but not shared app intent vs device fact resolution.
171
+
172
+ Cross-project decision:
173
+ - Do not model this as one global install set shared blindly across devices.
174
+ - Separate:
175
+ - shared intent: `app_collection`, `scene_profile`
176
+ - local fact: `device_installation`
177
+ - local override: `device_override`
178
+ - Keep shared intent file-backed or registry-backed.
179
+ - Use SQLite only for local facts and rebuildable projections.
180
+ - `apply` must be plan-first and require explicit execution confirmation.
181
+
182
+ Reference:
183
+ - `docs/magicball-app-collection-phase-1.md`
184
+ - `.sce/specs/128-00-app-collection-scene-profile-device-installation/`
185
+
186
+ Status:
187
+ - architecture decision aligned
188
+ - spec added in SCE
189
+ - read-model and plan-first diff commands implemented
190
+ - explicit execute path now implemented for non-blocked install/uninstall actions
191
+ - execute remains blocked when unresolved collections, missing app bundles, or active-release protection skips are present
192
+ - local `device_override` file is now respected during resolution, so per-device add/remove exceptions no longer require mutating shared intent definitions
193
+ - local `device_override` now also has explicit `show/upsert` command support, so frontend or operator flows no longer need to hand-edit the override file
194
+
156
195
  ## Resolved
157
196
 
158
197
  ### Issue 002: pm requirement upsert succeeds but requirement list still returns empty
@@ -12,6 +12,7 @@ Implementation detail should live in the specialized documents listed below.
12
12
 
13
13
  Use these documents together:
14
14
  - `docs/magicball-integration-doc-index.md`
15
+ - `docs/magicball-app-collection-phase-1.md`
15
16
  - `docs/magicball-ui-surface-checklist.md`
16
17
  - `docs/magicball-mode-home-and-ontology-empty-state-playbook.md`
17
18
  - `docs/magicball-frontend-state-and-command-mapping.md`
@@ -23,15 +24,40 @@ Use these documents together:
23
24
  ## Current Scope
24
25
 
25
26
  SCE currently provides MagicBall-facing support for:
26
- 1. `app bundle registry`
27
- 2. `application / ontology / engineering home projections`
28
- 3. `app runtime install / activate / uninstall`
29
- 4. `app engineering attach / hydrate / activate`
30
- 5. `pm` delivery data plane
31
- 6. `ontology` triad data plane
32
- 7. `assurance` data plane
33
- 8. `write authorization`
34
- 9. `task feedback + timeline`
27
+ 1. `device current` identity read model
28
+ 2. `device override show/upsert` local overlay governance
29
+ 3. `app bundle registry`
30
+ 4. `app collection list/show/apply` with plan-first diff and guarded explicit execution
31
+ 5. `scene workspace list/show/apply` with plan-first diff and guarded explicit execution
32
+ 6. `app install-state` local device projection
33
+ 7. `application / ontology / engineering home projections`
34
+ 8. `app runtime install / activate / uninstall`
35
+ 9. `app engineering attach / hydrate / activate`
36
+ 10. `pm` delivery data plane
37
+ 11. `ontology` triad data plane
38
+ 12. `assurance` data plane
39
+ 13. `write authorization`
40
+ 14. `task feedback + timeline`
41
+
42
+ ## Planned Next Scope
43
+
44
+ The next planned SCE capability line for MagicBall is lightweight cross-device sync and richer collection resolution above the current shipped local-device-first baseline.
45
+
46
+ Planned model split:
47
+ - `app_collection` and `scene_profile` as shared intent
48
+ - `device_installation` as local device fact
49
+ - `device_override` as local device overlay
50
+
51
+ Planned phase-1 position:
52
+ - local device-first
53
+ - file-backed shared intent
54
+ - SQLite only for local facts and rebuildable projections
55
+ - `apply` must be plan-first, not blind mutation
56
+ - local device override is file-backed and applied during collection/workspace resolution
57
+ - local device override mutation now uses explicit CLI upsert rather than manual-only file editing
58
+
59
+ Reference:
60
+ - `docs/magicball-app-collection-phase-1.md`
35
61
 
36
62
  ## Core Integration Positioning
37
63
 
@@ -100,6 +126,7 @@ Use `docs/magicball-cli-invocation-examples.md` for copy-ready commands.
100
126
  - `sce app engineering show`
101
127
 
102
128
  ### Runtime and engineering control
129
+ - `sce device override show/upsert`
103
130
  - `sce app runtime show/releases/install/activate/uninstall`
104
131
  - `sce app engineering show/attach/hydrate/activate`
105
132
  - `sce app registry status/configure/sync*`
@@ -9,6 +9,8 @@ This directory stores release-facing documents:
9
9
  ## Archived Versions
10
10
 
11
11
  - [Release checklist](../release-checklist.md)
12
+ - [v3.6.55 release notes](./v3.6.55.md)
13
+ - [v3.6.54 release notes](./v3.6.54.md)
12
14
  - [v3.6.48 release notes](./v3.6.48.md)
13
15
  - [v3.6.47 release notes](./v3.6.47.md)
14
16
  - [v3.6.46 release notes](./v3.6.46.md)
@@ -0,0 +1,19 @@
1
+ # v3.6.54 Release Notes
2
+
3
+ Release date: 2026-03-16
4
+
5
+ ## Highlights
6
+
7
+ - Added a tracked project-shared problem projection at `.sce/knowledge/problem/project-shared-problems.json`, built from existing spec `problem-contract` and `problem-domain-chain` artifacts instead of introducing a parallel local problem library.
8
+ - Managed co-work gate now refreshes that shared problem projection automatically before governance audit, so cross-computer continuation does not depend on manual reminders to sync local problem context.
9
+ - Collaboration governance now blocks when the shared project problem projection is missing, invalid, disabled, or not Git-tracked.
10
+
11
+ ## Validation
12
+
13
+ - `npx jest tests/unit/problem/project-problem-projection.test.js tests/unit/scripts/collab-governance-gate.test.js tests/unit/workspace/collab-governance-audit.test.js tests/unit/workspace/takeover-baseline.test.js tests/integration/takeover-baseline-cli.integration.test.js --runInBand`
14
+ - `node scripts/release-doc-version-audit.js --fail-on-error`
15
+ - `node scripts/collab-governance-gate.js --fail-on-violation --json`
16
+
17
+ ## Release Notes
18
+
19
+ - This patch completes the same-project co-work continuity line for problem knowledge. Historical specs were already shared by Git, and high-value errorbook knowledge was closed in `3.6.53`; `3.6.54` closes the remaining gap by projecting active/stale spec problem facts into a tracked shared file instead of relying on a machine-local problem library.
@@ -0,0 +1,18 @@
1
+ # v3.6.55 Release Notes
2
+
3
+ Release date: 2026-03-16
4
+
5
+ ## Highlights
6
+
7
+ - Added explicit local device override governance commands: `sce device override show` and `sce device override upsert --input <json>`.
8
+ - Scene-oriented install planning now keeps `device_override` mutation on one conservative path instead of requiring manual file edits or introducing a parallel state mechanism.
9
+ - `device_override` updates now merge only explicitly provided fields, which aligns with the SCE core rule against blind replacement and preserves unrelated local device policy state.
10
+
11
+ ## Validation
12
+
13
+ - `npx jest tests/unit/commands/device-and-install-state.test.js tests/unit/commands/scene-workspace.test.js tests/unit/commands/app-mode.test.js --runInBand`
14
+ - `node scripts/release-doc-version-audit.js --fail-on-error`
15
+
16
+ ## Release Notes
17
+
18
+ - This patch closes the last obvious usability gap in the phase-1 MagicBall install-management baseline. Shared intent, local device facts, and local override policy were already modeled, but local override updates still depended on hand-editing JSON. `3.6.55` makes that layer governable through the CLI while keeping the same single source of truth and conservative merge semantics.
@@ -9,6 +9,8 @@
9
9
  ## 历史版本归档
10
10
 
11
11
  - [发布检查清单](../release-checklist.md)
12
+ - [v3.6.55 发布说明](./v3.6.55.md)
13
+ - [v3.6.54 发布说明](./v3.6.54.md)
12
14
  - [v3.6.48 发布说明](./v3.6.48.md)
13
15
  - [v3.6.47 发布说明](./v3.6.47.md)
14
16
  - [v3.6.46 发布说明](./v3.6.46.md)
@@ -0,0 +1,19 @@
1
+ # v3.6.54 发布说明
2
+
3
+ 发布日期:2026-03-16
4
+
5
+ ## 重点变化
6
+
7
+ - 新增 Git 跟踪的项目共享问题投影文件 `.sce/knowledge/problem/project-shared-problems.json`,直接从现有 spec 的 `problem-contract` 和 `problem-domain-chain` 生成,而不是再新造一套本地问题库机制。
8
+ - managed co-work gate 现在会在治理审计前自动刷新这份共享问题投影,换电脑继续项目时不再依赖手动提醒“先同步问题库”。
9
+ - 协作治理现在会阻断缺失、禁用、损坏或未纳入 Git 跟踪的项目共享问题投影。
10
+
11
+ ## 验证
12
+
13
+ - `npx jest tests/unit/problem/project-problem-projection.test.js tests/unit/scripts/collab-governance-gate.test.js tests/unit/workspace/collab-governance-audit.test.js tests/unit/workspace/takeover-baseline.test.js tests/integration/takeover-baseline-cli.integration.test.js --runInBand`
14
+ - `node scripts/release-doc-version-audit.js --fail-on-error`
15
+ - `node scripts/collab-governance-gate.js --fail-on-violation --json`
16
+
17
+ ## 发布说明
18
+
19
+ - 这个补丁版把“项目问题知识跨电脑共享”补成了默认闭环。历史 spec 早已由 Git 共享,高价值 errorbook 在 `3.6.53` 已闭环,而 `3.6.54` 则把仍在处理中的项目问题事实也投影到受控共享文件中,不再依赖机器本地问题库。
@@ -0,0 +1,18 @@
1
+ # v3.6.55 发布说明
2
+
3
+ 发布日期:2026-03-16
4
+
5
+ ## 重点变化
6
+
7
+ - 新增显式的本地设备覆盖治理命令:`sce device override show` 和 `sce device override upsert --input <json>`。
8
+ - 面向场景的安装规划现在把 `device_override` 的修改也收敛到统一治理路径,不再依赖手工改 JSON,也没有再引入并行状态机制。
9
+ - `device_override` 更新采用“只合并明确给出的字段”的保守语义,符合 SCE 的“禁止盲改/禁止盲替换”核心原则,并保留未触及的本地设备策略状态。
10
+
11
+ ## 验证
12
+
13
+ - `npx jest tests/unit/commands/device-and-install-state.test.js tests/unit/commands/scene-workspace.test.js tests/unit/commands/app-mode.test.js --runInBand`
14
+ - `node scripts/release-doc-version-audit.js --fail-on-error`
15
+
16
+ ## 发布说明
17
+
18
+ - 这个补丁版把 MagicBall phase-1 安装管理基线里最后一个明显缺口补上了。共享意图、本地设备事实和本地覆盖策略此前都已经建模完成,但本地覆盖更新仍依赖手工改 JSON。`3.6.55` 把这层能力补成了可治理的 CLI 命令,同时继续保持单一事实来源和保守合并语义。