scene-capability-engine 3.6.32 → 3.6.36
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 +86 -1
- package/README.md +119 -122
- package/README.zh.md +123 -121
- package/bin/scene-capability-engine.js +11 -0
- package/docs/README.md +21 -32
- package/docs/auto-refactor-index.md +384 -0
- package/docs/command-reference.md +94 -2
- package/docs/magicball-adaptation-task-checklist-v1.md +385 -0
- package/docs/magicball-app-bundle-sqlite-and-command-draft.md +539 -0
- package/docs/magicball-capability-iteration-api.md +2 -0
- package/docs/magicball-capability-iteration-ui.md +2 -0
- package/docs/magicball-capability-library.md +2 -0
- package/docs/magicball-cli-invocation-examples.md +336 -0
- package/docs/magicball-frontend-state-and-command-mapping.md +244 -0
- package/docs/magicball-integration-doc-index.md +137 -0
- package/docs/magicball-integration-issue-tracker.md +218 -0
- package/docs/magicball-mode-home-and-ontology-empty-state-playbook.md +249 -0
- package/docs/magicball-sce-adaptation-guide.md +203 -0
- package/docs/magicball-three-mode-alignment-plan.md +551 -0
- package/docs/magicball-ui-surface-checklist.md +126 -0
- package/docs/magicball-write-auth-adaptation-guide.md +328 -0
- package/docs/refactor-completion-roadmap.md +116 -0
- package/docs/zh/README.md +27 -30
- package/docs/zh/refactor-completion-roadmap.md +116 -0
- package/lib/app/registry-config.js +73 -0
- package/lib/app/registry-sync-service.js +228 -0
- package/lib/auto/archive-schema-service.js +276 -0
- package/lib/auto/archive-summary.js +60 -0
- package/lib/auto/batch-goal-input-service.js +543 -0
- package/lib/auto/batch-output.js +201 -0
- package/lib/auto/batch-summary-storage-service.js +110 -0
- package/lib/auto/close-loop-batch-service.js +116 -0
- package/lib/auto/close-loop-controller-service.js +287 -0
- package/lib/auto/close-loop-program-service.js +283 -0
- package/lib/auto/close-loop-recovery-service.js +191 -0
- package/lib/auto/close-loop-session-storage-service.js +50 -0
- package/lib/auto/controller-lock-service.js +55 -0
- package/lib/auto/controller-output.js +32 -0
- package/lib/auto/controller-queue-service.js +127 -0
- package/lib/auto/controller-session-storage-service.js +105 -0
- package/lib/auto/governance-advisory-service.js +208 -0
- package/lib/auto/governance-close-loop-service.js +411 -0
- package/lib/auto/governance-maintenance-presenter.js +162 -0
- package/lib/auto/governance-maintenance-service.js +112 -0
- package/lib/auto/governance-session-presenter.js +70 -0
- package/lib/auto/governance-session-storage-service.js +198 -0
- package/lib/auto/governance-signals.js +139 -0
- package/lib/auto/governance-stats-presenter.js +337 -0
- package/lib/auto/governance-stats-service.js +115 -0
- package/lib/auto/governance-summary.js +703 -0
- package/lib/auto/handoff-capability-matrix-service.js +281 -0
- package/lib/auto/handoff-evidence-review-service.js +251 -0
- package/lib/auto/handoff-release-evidence-service.js +190 -0
- package/lib/auto/handoff-release-gate-history-loaders-service.js +502 -0
- package/lib/auto/handoff-release-gate-history-service.js +257 -0
- package/lib/auto/handoff-reporting-service.js +1407 -0
- package/lib/auto/handoff-run-service.js +486 -0
- package/lib/auto/handoff-snapshots-service.js +645 -0
- package/lib/auto/observability-service.js +132 -0
- package/lib/auto/output-writer.js +34 -0
- package/lib/auto/program-auto-remediation-service.js +130 -0
- package/lib/auto/program-diagnostics.js +138 -0
- package/lib/auto/program-governance-helpers.js +306 -0
- package/lib/auto/program-governance-loop-service.js +413 -0
- package/lib/auto/program-output.js +106 -0
- package/lib/auto/program-summary.js +183 -0
- package/lib/auto/recovery-memory-service.js +684 -0
- package/lib/auto/recovery-selection-service.js +52 -0
- package/lib/auto/retention-policy.js +98 -0
- package/lib/auto/session-persistence-service.js +106 -0
- package/lib/auto/session-presenter.js +105 -0
- package/lib/auto/session-prune-service.js +190 -0
- package/lib/auto/session-query-service.js +249 -0
- package/lib/auto/spec-protection.js +141 -0
- package/lib/commands/app.js +911 -0
- package/lib/commands/assurance.js +212 -0
- package/lib/commands/auto.js +1091 -11063
- package/lib/commands/mode.js +321 -0
- package/lib/commands/ontology.js +415 -0
- package/lib/commands/pm.js +422 -0
- package/lib/ontology/seed-profiles.js +160 -0
- package/lib/state/sce-state-store.js +3369 -1200
- package/package.json +1 -1
|
@@ -0,0 +1,551 @@
|
|
|
1
|
+
# MagicBall Three-Mode Alignment Plan
|
|
2
|
+
|
|
3
|
+
> Status: historical alignment plan.
|
|
4
|
+
> Keep this as product/architecture background, not as the primary implementation guide.
|
|
5
|
+
> For current integration work, prefer the documents listed in `docs/magicball-integration-doc-index.md`.
|
|
6
|
+
|
|
7
|
+
## Goal
|
|
8
|
+
|
|
9
|
+
Align MagicBall and SCE around a stable three-mode product model:
|
|
10
|
+
|
|
11
|
+
1. `Application Mode`
|
|
12
|
+
2. `Ontology Mode`
|
|
13
|
+
3. `Engineering Mode`
|
|
14
|
+
|
|
15
|
+
At the platform level, these three modes should be organized into two larger spaces:
|
|
16
|
+
|
|
17
|
+
1. `Runtime Space`
|
|
18
|
+
2. `R&D Space`
|
|
19
|
+
|
|
20
|
+
This document defines the recommended architecture, responsibility split, SCE data model, and phased iteration path.
|
|
21
|
+
|
|
22
|
+
## Recommended Positioning
|
|
23
|
+
|
|
24
|
+
### 1. Runtime Space
|
|
25
|
+
|
|
26
|
+
Primary purpose:
|
|
27
|
+
- Run and use concrete applications.
|
|
28
|
+
- Present applications like an operating-system level app environment.
|
|
29
|
+
- Let users open an app directly, similar to opening an app on a phone.
|
|
30
|
+
|
|
31
|
+
Mapped mode:
|
|
32
|
+
- `Application Mode`
|
|
33
|
+
|
|
34
|
+
Core characteristics:
|
|
35
|
+
- User-facing
|
|
36
|
+
- Release-oriented
|
|
37
|
+
- Stable runtime state
|
|
38
|
+
- App install / app open / app switch / app version awareness
|
|
39
|
+
|
|
40
|
+
### 2. R&D Space
|
|
41
|
+
|
|
42
|
+
Primary purpose:
|
|
43
|
+
- Define, evolve, and operate the application behind the runtime.
|
|
44
|
+
- Manage ontology assets, codebase, delivery flow, issue handling, and AI-driven change control.
|
|
45
|
+
|
|
46
|
+
Mapped modes:
|
|
47
|
+
- `Ontology Mode`
|
|
48
|
+
- `Engineering Mode`
|
|
49
|
+
|
|
50
|
+
Core characteristics:
|
|
51
|
+
- Developer / builder-facing
|
|
52
|
+
- Capability-oriented
|
|
53
|
+
- Project / ontology / source controlled
|
|
54
|
+
- Traceable and auditable
|
|
55
|
+
|
|
56
|
+
## Final Mode Mapping
|
|
57
|
+
|
|
58
|
+
### Application Mode
|
|
59
|
+
|
|
60
|
+
Use for:
|
|
61
|
+
- Running a specific application release
|
|
62
|
+
- Opening installed applications
|
|
63
|
+
- Switching between app releases or environments
|
|
64
|
+
- Viewing runtime-level app entry points
|
|
65
|
+
|
|
66
|
+
SCE meaning:
|
|
67
|
+
- Runtime projection of an application release
|
|
68
|
+
- Backed by app package metadata, runtime endpoints, environment binding, and release evidence
|
|
69
|
+
|
|
70
|
+
### Ontology Mode
|
|
71
|
+
|
|
72
|
+
Use for:
|
|
73
|
+
- Rapidly building applications from ontology, spec, template, and capability assets
|
|
74
|
+
- Managing template-derived application structures
|
|
75
|
+
- Editing ER / BR / DL and turning them into reusable capability definitions
|
|
76
|
+
|
|
77
|
+
SCE meaning:
|
|
78
|
+
- Capability and ontology authoring space
|
|
79
|
+
- Backed by ontology triad assets, templates, specs, capability definitions, and publishable app blueprints
|
|
80
|
+
|
|
81
|
+
### Engineering Mode
|
|
82
|
+
|
|
83
|
+
Use for:
|
|
84
|
+
- Controlling AI-assisted work on the current application
|
|
85
|
+
- Managing source, timeline, diff, delivery flow, issues, plans, changes, and runtime assurance
|
|
86
|
+
- Connecting application work to the real project codebase and release line
|
|
87
|
+
|
|
88
|
+
SCE meaning:
|
|
89
|
+
- Project engineering control plane
|
|
90
|
+
- Backed by source project, scene/spec/task history, PM objects, runtime assurance data, and audit streams
|
|
91
|
+
|
|
92
|
+
## Key Structural Principle
|
|
93
|
+
|
|
94
|
+
A concrete application landing in MagicBall should not be treated as a single flat thing.
|
|
95
|
+
It should always be represented as a three-part bundle:
|
|
96
|
+
|
|
97
|
+
1. `Runtime Projection`
|
|
98
|
+
2. `Ontology Projection`
|
|
99
|
+
3. `Engineering Projection`
|
|
100
|
+
|
|
101
|
+
That means every real application introduced into MagicBall should map to:
|
|
102
|
+
|
|
103
|
+
- one runtime app instance in `Application Mode`
|
|
104
|
+
- one ontology/capability workspace in `Ontology Mode`
|
|
105
|
+
- one source/project workspace in `Engineering Mode`
|
|
106
|
+
|
|
107
|
+
This is the correct abstraction for your current direction.
|
|
108
|
+
|
|
109
|
+
## Recommended Canonical Unit
|
|
110
|
+
|
|
111
|
+
### App Bundle
|
|
112
|
+
|
|
113
|
+
SCE should treat the primary managed object as an `app bundle`.
|
|
114
|
+
|
|
115
|
+
Suggested fields:
|
|
116
|
+
- `app_id`
|
|
117
|
+
- `app_key`
|
|
118
|
+
- `app_name`
|
|
119
|
+
- `runtime_release_id`
|
|
120
|
+
- `runtime_version`
|
|
121
|
+
- `ontology_bundle_id`
|
|
122
|
+
- `engineering_project_id`
|
|
123
|
+
- `default_scene_id`
|
|
124
|
+
- `environment`
|
|
125
|
+
- `status`
|
|
126
|
+
- `source_origin`
|
|
127
|
+
- `created_at`
|
|
128
|
+
- `updated_at`
|
|
129
|
+
|
|
130
|
+
Meaning:
|
|
131
|
+
- One app bundle binds the three MagicBall projections together.
|
|
132
|
+
- MagicBall should not independently guess which source project, ontology set, and runtime release belong together.
|
|
133
|
+
- SCE should be the source of truth for this binding.
|
|
134
|
+
|
|
135
|
+
## Recommended Identity Model
|
|
136
|
+
|
|
137
|
+
### 1. Runtime Identity
|
|
138
|
+
|
|
139
|
+
Represents the application users open.
|
|
140
|
+
|
|
141
|
+
Suggested objects:
|
|
142
|
+
- `runtime_app`
|
|
143
|
+
- `runtime_release`
|
|
144
|
+
- `runtime_installation`
|
|
145
|
+
- `runtime_environment_binding`
|
|
146
|
+
|
|
147
|
+
Key fields:
|
|
148
|
+
- `app_id`
|
|
149
|
+
- `release_id`
|
|
150
|
+
- `version`
|
|
151
|
+
- `channel`
|
|
152
|
+
- `entrypoint`
|
|
153
|
+
- `runtime_status`
|
|
154
|
+
- `installed_at`
|
|
155
|
+
|
|
156
|
+
### 2. Ontology Identity
|
|
157
|
+
|
|
158
|
+
Represents the app's capability and structure definition.
|
|
159
|
+
|
|
160
|
+
Suggested objects:
|
|
161
|
+
- `ontology_bundle`
|
|
162
|
+
- `ontology_er_asset`
|
|
163
|
+
- `ontology_br_rule`
|
|
164
|
+
- `ontology_dl_chain`
|
|
165
|
+
- `capability_definition`
|
|
166
|
+
- `template_binding`
|
|
167
|
+
|
|
168
|
+
Key fields:
|
|
169
|
+
- `ontology_bundle_id`
|
|
170
|
+
- `triad_status`
|
|
171
|
+
- `template_source`
|
|
172
|
+
- `capability_set`
|
|
173
|
+
- `publish_readiness`
|
|
174
|
+
|
|
175
|
+
### 3. Engineering Identity
|
|
176
|
+
|
|
177
|
+
Represents the actual project and engineering control line.
|
|
178
|
+
|
|
179
|
+
Suggested objects:
|
|
180
|
+
- `engineering_project`
|
|
181
|
+
- `engineering_codebase`
|
|
182
|
+
- `pm_requirement`
|
|
183
|
+
- `pm_tracking`
|
|
184
|
+
- `pm_plan`
|
|
185
|
+
- `pm_change_request`
|
|
186
|
+
- `pm_issue`
|
|
187
|
+
- `timeline_snapshot`
|
|
188
|
+
- `auth_lease`
|
|
189
|
+
|
|
190
|
+
Key fields:
|
|
191
|
+
- `engineering_project_id`
|
|
192
|
+
- `repo_url`
|
|
193
|
+
- `branch`
|
|
194
|
+
- `commit`
|
|
195
|
+
- `workspace_path`
|
|
196
|
+
- `active_release_version`
|
|
197
|
+
- `active_code_version`
|
|
198
|
+
|
|
199
|
+
## Recommended Version Model
|
|
200
|
+
|
|
201
|
+
You explicitly need both:
|
|
202
|
+
- current application release version
|
|
203
|
+
- corresponding code version
|
|
204
|
+
|
|
205
|
+
This is correct and should be made first-class.
|
|
206
|
+
|
|
207
|
+
Suggested version structure:
|
|
208
|
+
|
|
209
|
+
### Runtime Version
|
|
210
|
+
- what users are currently using
|
|
211
|
+
- release-oriented
|
|
212
|
+
- shown in `Application Mode`
|
|
213
|
+
|
|
214
|
+
Fields:
|
|
215
|
+
- `runtime_version`
|
|
216
|
+
- `release_id`
|
|
217
|
+
- `release_channel`
|
|
218
|
+
- `release_status`
|
|
219
|
+
- `published_at`
|
|
220
|
+
|
|
221
|
+
### Code Version
|
|
222
|
+
- what engineering is currently modifying
|
|
223
|
+
- source-oriented
|
|
224
|
+
- shown in `Engineering Mode`
|
|
225
|
+
|
|
226
|
+
Fields:
|
|
227
|
+
- `repo`
|
|
228
|
+
- `branch`
|
|
229
|
+
- `commit_sha`
|
|
230
|
+
- `workspace_revision`
|
|
231
|
+
- `dirty_state`
|
|
232
|
+
- `synced_to_release`
|
|
233
|
+
|
|
234
|
+
### Ontology Version
|
|
235
|
+
- what ontology/capability set the app currently maps to
|
|
236
|
+
- shown in `Ontology Mode`
|
|
237
|
+
|
|
238
|
+
Fields:
|
|
239
|
+
- `ontology_version`
|
|
240
|
+
- `template_version`
|
|
241
|
+
- `capability_catalog_version`
|
|
242
|
+
- `triad_revision`
|
|
243
|
+
|
|
244
|
+
## Recommended Top-Level SCE Object Graph
|
|
245
|
+
|
|
246
|
+
SCE should evolve toward this graph:
|
|
247
|
+
|
|
248
|
+
- `workspace`
|
|
249
|
+
- `app_bundle`
|
|
250
|
+
- `runtime_release`
|
|
251
|
+
- `ontology_bundle`
|
|
252
|
+
- `engineering_project`
|
|
253
|
+
- `scene`
|
|
254
|
+
- `spec`
|
|
255
|
+
- `task`
|
|
256
|
+
- `event`
|
|
257
|
+
|
|
258
|
+
Relationship:
|
|
259
|
+
- one `workspace` contains many `app_bundle`
|
|
260
|
+
- one `app_bundle` binds one runtime release line, one ontology bundle, one engineering project
|
|
261
|
+
- one engineering project contains many scenes
|
|
262
|
+
- one scene contains many specs
|
|
263
|
+
- one spec contains many tasks
|
|
264
|
+
- one task contains many events
|
|
265
|
+
|
|
266
|
+
This aligns with your current session/scene/spec/task governance direction.
|
|
267
|
+
|
|
268
|
+
## How MagicBall Should Open a Managed App
|
|
269
|
+
|
|
270
|
+
When the user selects an app in MagicBall, the system should not just "open a page".
|
|
271
|
+
It should resolve the app bundle and then expose three coordinated projections:
|
|
272
|
+
|
|
273
|
+
1. `Application Mode`
|
|
274
|
+
- open runtime app
|
|
275
|
+
- show installed release and runtime environment
|
|
276
|
+
|
|
277
|
+
2. `Ontology Mode`
|
|
278
|
+
- open ontology/capability workspace for this app
|
|
279
|
+
- show template base, ER/BR/DL, capability triad, ontology completeness
|
|
280
|
+
|
|
281
|
+
3. `Engineering Mode`
|
|
282
|
+
- open source/project workspace for this app
|
|
283
|
+
- show source, timeline, diff, delivery, issues, plans, assurance
|
|
284
|
+
|
|
285
|
+
This should be resolved by SCE, not assembled ad hoc in the frontend.
|
|
286
|
+
|
|
287
|
+
## Engineering Mode Alignment
|
|
288
|
+
|
|
289
|
+
Based on the existing MagicBall documents, the current Engineering Mode shape is already usable.
|
|
290
|
+
It should remain the primary engineering control plane.
|
|
291
|
+
|
|
292
|
+
### Stable menu tree
|
|
293
|
+
|
|
294
|
+
1. `Source`
|
|
295
|
+
2. `Timeline`
|
|
296
|
+
3. `Diff`
|
|
297
|
+
4. `Delivery`
|
|
298
|
+
5. `Capability Definition`
|
|
299
|
+
6. `Assurance`
|
|
300
|
+
|
|
301
|
+
### Delivery
|
|
302
|
+
- `Requirements`
|
|
303
|
+
- `Tracking`
|
|
304
|
+
- `Planning`
|
|
305
|
+
- `Change Requests`
|
|
306
|
+
- `Issues`
|
|
307
|
+
|
|
308
|
+
### Capability Definition
|
|
309
|
+
- `ER`
|
|
310
|
+
- `BR`
|
|
311
|
+
- `DL`
|
|
312
|
+
|
|
313
|
+
### Assurance
|
|
314
|
+
- `Resource Status`
|
|
315
|
+
- `Log Management`
|
|
316
|
+
- `Backup & Restore`
|
|
317
|
+
- `Config & Switch`
|
|
318
|
+
|
|
319
|
+
### SCE role for Engineering Mode
|
|
320
|
+
|
|
321
|
+
SCE should provide:
|
|
322
|
+
- SQLite-backed source of truth
|
|
323
|
+
- list/show/upsert APIs or commands
|
|
324
|
+
- stable `view_model`
|
|
325
|
+
- object linking through `scene_ref`, `spec_ref`, `task_ref`, `app_id`, `engineering_project_id`
|
|
326
|
+
- auth lease enforcement for mutations
|
|
327
|
+
|
|
328
|
+
## Ontology Mode Alignment
|
|
329
|
+
|
|
330
|
+
Ontology Mode should not just mean "template library page".
|
|
331
|
+
It should become the app-building workspace.
|
|
332
|
+
|
|
333
|
+
Recommended ontology-mode pillars:
|
|
334
|
+
|
|
335
|
+
1. `Template Base`
|
|
336
|
+
- current available template assets
|
|
337
|
+
- template source and version
|
|
338
|
+
- upgrade compatibility
|
|
339
|
+
|
|
340
|
+
2. `App Blueprint`
|
|
341
|
+
- app-level ontology bundle
|
|
342
|
+
- current bundle readiness
|
|
343
|
+
- publishable blueprint summary
|
|
344
|
+
|
|
345
|
+
3. `Ontology Triad`
|
|
346
|
+
- `ER`
|
|
347
|
+
- `BR`
|
|
348
|
+
- `DL`
|
|
349
|
+
- completeness, blockers, publish readiness
|
|
350
|
+
|
|
351
|
+
4. `Capability Build`
|
|
352
|
+
- ability to promote scene/spec/task learnings into capability definitions
|
|
353
|
+
- map triad assets into reusable capability entries
|
|
354
|
+
|
|
355
|
+
### SCE role for Ontology Mode
|
|
356
|
+
|
|
357
|
+
SCE should provide:
|
|
358
|
+
- ontology bundle registry
|
|
359
|
+
- triad asset CRUD
|
|
360
|
+
- template bindings
|
|
361
|
+
- capability definition lifecycle
|
|
362
|
+
- publish readiness and triad completeness summaries
|
|
363
|
+
|
|
364
|
+
## Application Mode Alignment
|
|
365
|
+
|
|
366
|
+
Application Mode should behave like an operating-system application launcher.
|
|
367
|
+
|
|
368
|
+
Recommended application-mode pillars:
|
|
369
|
+
|
|
370
|
+
1. `Installed Apps`
|
|
371
|
+
- apps available locally or for the current workspace/user
|
|
372
|
+
|
|
373
|
+
2. `Open App`
|
|
374
|
+
- open a concrete app release directly
|
|
375
|
+
|
|
376
|
+
3. `Release Awareness`
|
|
377
|
+
- show current release version
|
|
378
|
+
- show environment/channel
|
|
379
|
+
- support switching release or environment if allowed
|
|
380
|
+
|
|
381
|
+
4. `App Service Library`
|
|
382
|
+
- download/install app packages from a service/app library
|
|
383
|
+
|
|
384
|
+
### SCE role for Application Mode
|
|
385
|
+
|
|
386
|
+
SCE should provide:
|
|
387
|
+
- app bundle registry
|
|
388
|
+
- runtime release metadata
|
|
389
|
+
- installation metadata
|
|
390
|
+
- environment binding
|
|
391
|
+
- release evidence summary
|
|
392
|
+
|
|
393
|
+
## Recommended SCE Work Priorities
|
|
394
|
+
|
|
395
|
+
### Priority A: App Bundle Backbone
|
|
396
|
+
|
|
397
|
+
This is now the highest-value missing backbone.
|
|
398
|
+
|
|
399
|
+
SCE should add:
|
|
400
|
+
- `app_bundle` registry
|
|
401
|
+
- runtime/ontology/engineering binding model
|
|
402
|
+
- `list/show/register/sync` interfaces
|
|
403
|
+
|
|
404
|
+
Suggested commands:
|
|
405
|
+
- `sce app bundle list --json`
|
|
406
|
+
- `sce app bundle show --app <id> --json`
|
|
407
|
+
- `sce app bundle register --input bundle.json --json`
|
|
408
|
+
- `sce app bundle sync --app <id> --json`
|
|
409
|
+
|
|
410
|
+
### Priority B: Engineering Mode Data Plane
|
|
411
|
+
|
|
412
|
+
Continue the path already aligned with MagicBall docs.
|
|
413
|
+
|
|
414
|
+
SCE should add or complete:
|
|
415
|
+
- PM domain commands
|
|
416
|
+
- ontology triad commands
|
|
417
|
+
- assurance commands
|
|
418
|
+
- stable `view_model`
|
|
419
|
+
- Markdown export fallback
|
|
420
|
+
|
|
421
|
+
Suggested commands:
|
|
422
|
+
- `sce pm requirement list/show/upsert --json`
|
|
423
|
+
- `sce pm tracking board/show --json`
|
|
424
|
+
- `sce pm planning board/show --json`
|
|
425
|
+
- `sce pm change list/show/upsert --json`
|
|
426
|
+
- `sce pm issue board/show/upsert --json`
|
|
427
|
+
- `sce ontology er|br|dl list/show/upsert --json`
|
|
428
|
+
- `sce ontology triad summary --json`
|
|
429
|
+
- `sce assurance resource status --json`
|
|
430
|
+
- `sce assurance logs views --json`
|
|
431
|
+
- `sce assurance backup list --json`
|
|
432
|
+
- `sce assurance config switches --json`
|
|
433
|
+
|
|
434
|
+
### Priority C: Mode-Aware Projection APIs
|
|
435
|
+
|
|
436
|
+
SCE should explicitly expose data by mode instead of forcing MagicBall to infer mode semantics.
|
|
437
|
+
|
|
438
|
+
Suggested commands:
|
|
439
|
+
- `sce mode application home --app <id> --json`
|
|
440
|
+
- `sce mode ontology home --app <id> --json`
|
|
441
|
+
- `sce mode engineering home --app <id> --json`
|
|
442
|
+
|
|
443
|
+
This gives MagicBall a stable projection entry for each mode.
|
|
444
|
+
|
|
445
|
+
### Priority D: Project Intake / Download / Attach Flow
|
|
446
|
+
|
|
447
|
+
You explicitly need this behavior:
|
|
448
|
+
- when managing an app, download the corresponding project from the server
|
|
449
|
+
- map runtime, ontology, and engineering parts into their respective modes
|
|
450
|
+
|
|
451
|
+
SCE should therefore support:
|
|
452
|
+
- app/project attachment
|
|
453
|
+
- project download / hydrate
|
|
454
|
+
- local workspace activation
|
|
455
|
+
|
|
456
|
+
Suggested commands:
|
|
457
|
+
- `sce project attach --app <id> --source <repo-or-bundle> --json`
|
|
458
|
+
- `sce project hydrate --app <id> --json`
|
|
459
|
+
- `sce project activate --app <id> --json`
|
|
460
|
+
|
|
461
|
+
## Recommended Responsibility Split
|
|
462
|
+
|
|
463
|
+
### MagicBall should own
|
|
464
|
+
- mode shell and navigation
|
|
465
|
+
- app switching UX
|
|
466
|
+
- runtime/ontology/engineering top-level experience
|
|
467
|
+
- rendering `view_model`
|
|
468
|
+
- local tab/state UX cache
|
|
469
|
+
|
|
470
|
+
### SCE should own
|
|
471
|
+
- app bundle registry
|
|
472
|
+
- runtime/ontology/engineering binding truth
|
|
473
|
+
- SQLite state
|
|
474
|
+
- PM/ontology/assurance data
|
|
475
|
+
- scene/spec/task/task-stream governance
|
|
476
|
+
- release/code/ontology version truth
|
|
477
|
+
- auth lease enforcement
|
|
478
|
+
|
|
479
|
+
## Recommended Iteration Sequence
|
|
480
|
+
|
|
481
|
+
### Phase 1: Lock vocabulary and object model
|
|
482
|
+
|
|
483
|
+
Define and freeze:
|
|
484
|
+
- `Runtime Space`
|
|
485
|
+
- `R&D Space`
|
|
486
|
+
- `Application Mode`
|
|
487
|
+
- `Ontology Mode`
|
|
488
|
+
- `Engineering Mode`
|
|
489
|
+
- `app_bundle`
|
|
490
|
+
- `runtime_release`
|
|
491
|
+
- `ontology_bundle`
|
|
492
|
+
- `engineering_project`
|
|
493
|
+
|
|
494
|
+
### Phase 2: Build SCE app bundle registry
|
|
495
|
+
|
|
496
|
+
Deliver:
|
|
497
|
+
- app bundle SQLite tables
|
|
498
|
+
- list/show/register commands
|
|
499
|
+
- project/runtime/ontology binding model
|
|
500
|
+
|
|
501
|
+
### Phase 3: Complete Engineering Mode data plane
|
|
502
|
+
|
|
503
|
+
Deliver:
|
|
504
|
+
- PM objects
|
|
505
|
+
- ontology triad objects
|
|
506
|
+
- assurance objects
|
|
507
|
+
- common `view_model`
|
|
508
|
+
- auth lease on writes
|
|
509
|
+
|
|
510
|
+
### Phase 4: Add mode-aware projection APIs
|
|
511
|
+
|
|
512
|
+
Deliver:
|
|
513
|
+
- application home projection
|
|
514
|
+
- ontology home projection
|
|
515
|
+
- engineering home projection
|
|
516
|
+
|
|
517
|
+
### Phase 5: Add project hydrate/attach flow
|
|
518
|
+
|
|
519
|
+
Deliver:
|
|
520
|
+
- app-to-project attach
|
|
521
|
+
- workspace hydrate/download
|
|
522
|
+
- activate current engineering project for app
|
|
523
|
+
|
|
524
|
+
### Phase 6: Capability feedback loop
|
|
525
|
+
|
|
526
|
+
Deliver:
|
|
527
|
+
- convert historical scene/spec/task value into capability definitions
|
|
528
|
+
- push qualified capability assets into ontology/template/capability library
|
|
529
|
+
|
|
530
|
+
## What Should Be Treated As The Main Next Work
|
|
531
|
+
|
|
532
|
+
The single highest-value next work is:
|
|
533
|
+
|
|
534
|
+
`Build the app bundle backbone and make the three MagicBall modes projectable from SCE.`
|
|
535
|
+
|
|
536
|
+
Reason:
|
|
537
|
+
- without this, MagicBall can render pages but still lacks a single truth source for which runtime app, ontology bundle, and engineering project belong together
|
|
538
|
+
- without this, mode switching will drift into frontend-side assembly logic
|
|
539
|
+
- without this, every app landing remains a manual loose coupling exercise
|
|
540
|
+
|
|
541
|
+
## Short Practical Conclusion
|
|
542
|
+
|
|
543
|
+
From the SCE side, the next focus should be:
|
|
544
|
+
|
|
545
|
+
1. `app bundle registry`
|
|
546
|
+
2. `engineering-mode data plane`
|
|
547
|
+
3. `mode-aware projections`
|
|
548
|
+
4. `project hydrate / attach`
|
|
549
|
+
5. `capability feedback loop`
|
|
550
|
+
|
|
551
|
+
That is the right path from the current state toward your target MagicBall architecture.
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
# MagicBall UI Surface Checklist
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
|
|
5
|
+
Give MagicBall frontend a page-by-page completion checklist for the current SCE integration scope.
|
|
6
|
+
|
|
7
|
+
This document is intentionally short.
|
|
8
|
+
Use it to decide whether a page is done.
|
|
9
|
+
Do not use it as the source of truth for state ownership, command mapping, or detailed error handling.
|
|
10
|
+
|
|
11
|
+
Use together with:
|
|
12
|
+
- `docs/magicball-frontend-state-and-command-mapping.md`
|
|
13
|
+
- `docs/magicball-mode-home-and-ontology-empty-state-playbook.md`
|
|
14
|
+
- `docs/magicball-cli-invocation-examples.md`
|
|
15
|
+
- `docs/magicball-write-auth-adaptation-guide.md`
|
|
16
|
+
- `docs/magicball-task-feedback-timeline-guide.md`
|
|
17
|
+
|
|
18
|
+
## 1. App Workspace Shell
|
|
19
|
+
|
|
20
|
+
### Must render
|
|
21
|
+
- app header from SCE app identity
|
|
22
|
+
- application summary shell
|
|
23
|
+
- ontology summary shell
|
|
24
|
+
- engineering summary shell
|
|
25
|
+
- engineering workspace detail
|
|
26
|
+
|
|
27
|
+
### Must behave correctly
|
|
28
|
+
- workspace boot is serialized
|
|
29
|
+
- shell appears before all boot steps complete
|
|
30
|
+
- each failed boot step can be retried in isolation
|
|
31
|
+
|
|
32
|
+
### Done when
|
|
33
|
+
- workspace opens without frontend-side relationship reconstruction
|
|
34
|
+
- later boot-step failure does not collapse earlier loaded sections
|
|
35
|
+
|
|
36
|
+
## 2. Application Mode
|
|
37
|
+
|
|
38
|
+
### Must render
|
|
39
|
+
- app hero
|
|
40
|
+
- release list
|
|
41
|
+
- current release marker
|
|
42
|
+
- install status
|
|
43
|
+
|
|
44
|
+
### Done when
|
|
45
|
+
- release data comes from SCE payloads directly
|
|
46
|
+
- release refresh updates the visible current state
|
|
47
|
+
|
|
48
|
+
## 3. Ontology Mode
|
|
49
|
+
|
|
50
|
+
### Must render
|
|
51
|
+
- ontology summary card
|
|
52
|
+
- triad summary card
|
|
53
|
+
- ER / BR / DL tables
|
|
54
|
+
- empty-state card only when ontology is truly empty
|
|
55
|
+
- starter-seed guidance when SCE provides it
|
|
56
|
+
|
|
57
|
+
### Done when
|
|
58
|
+
- empty ontology is explained as a valid fresh/local project state
|
|
59
|
+
- non-empty ontology hides the empty-state card
|
|
60
|
+
- summary and table areas can fail independently
|
|
61
|
+
|
|
62
|
+
## 4. Starter Seed Flow
|
|
63
|
+
|
|
64
|
+
### Must render
|
|
65
|
+
- explicit `Initialize starter ontology` entry
|
|
66
|
+
- optional preview/confirmation before apply
|
|
67
|
+
- success and failure feedback
|
|
68
|
+
|
|
69
|
+
### Done when
|
|
70
|
+
- seed apply is user-triggered only
|
|
71
|
+
- post-seed refresh updates both summary cards and ER/BR/DL tables
|
|
72
|
+
- failed seed apply preserves retry + copy-error actions
|
|
73
|
+
|
|
74
|
+
## 5. Engineering Mode
|
|
75
|
+
|
|
76
|
+
### Must render
|
|
77
|
+
- delivery summary
|
|
78
|
+
- requirement / tracking / planning / change / issue tabs
|
|
79
|
+
- assurance tabs
|
|
80
|
+
- engineering workspace detail
|
|
81
|
+
|
|
82
|
+
### Done when
|
|
83
|
+
- engineering tables use SCE table payloads directly
|
|
84
|
+
- empty engineering tables render as empty states, not legacy markdown fallbacks by default
|
|
85
|
+
|
|
86
|
+
## 6. Write Authorization
|
|
87
|
+
|
|
88
|
+
### Must render
|
|
89
|
+
- lease-aware write actions
|
|
90
|
+
- blocked write guidance
|
|
91
|
+
- authorization prompt / lease reuse behavior
|
|
92
|
+
|
|
93
|
+
### Done when
|
|
94
|
+
- mutating flows do not guess policy internals
|
|
95
|
+
- blocked writes explain why they are blocked
|
|
96
|
+
|
|
97
|
+
## 7. Task Feedback And Timeline
|
|
98
|
+
|
|
99
|
+
### Must render
|
|
100
|
+
- task cards from `feedback_model`
|
|
101
|
+
- advanced/audit access to raw `event[]`
|
|
102
|
+
- timeline list from `view_model.entries[]`
|
|
103
|
+
- timeline detail from `view_model.snapshot + files_preview`
|
|
104
|
+
|
|
105
|
+
### Done when
|
|
106
|
+
- main task panel is human-readable
|
|
107
|
+
- timeline remains recoverable and traceable
|
|
108
|
+
|
|
109
|
+
## 8. Baseline Error UX
|
|
110
|
+
|
|
111
|
+
Every page should support:
|
|
112
|
+
- inline section error states
|
|
113
|
+
- retry failed action only
|
|
114
|
+
- copy command error
|
|
115
|
+
- preserved stderr / exit code for AI-assisted diagnosis
|
|
116
|
+
|
|
117
|
+
Detailed state ownership and error boundary rules live in:
|
|
118
|
+
- `docs/magicball-frontend-state-and-command-mapping.md`
|
|
119
|
+
|
|
120
|
+
## 9. Final Acceptance Snapshot
|
|
121
|
+
|
|
122
|
+
MagicBall can treat the current SCE integration as baseline-ready when:
|
|
123
|
+
- workspace shell is serialized and stable
|
|
124
|
+
- ontology empty-state is explicit and usable
|
|
125
|
+
- write authorization is shared capability, not page-by-page improvisation
|
|
126
|
+
- task/timeline surfaces use SCE view contracts instead of raw event-first rendering
|