scene-capability-engine 3.6.32 → 3.6.37

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 (111) hide show
  1. package/CHANGELOG.md +109 -11
  2. package/README.md +119 -122
  3. package/README.zh.md +123 -121
  4. package/bin/scene-capability-engine.js +12 -1
  5. package/docs/331-poc-adaptation-roadmap.md +3 -3
  6. package/docs/README.md +21 -32
  7. package/docs/auto-refactor-index.md +384 -0
  8. package/docs/command-reference.md +99 -7
  9. package/docs/faq.md +1 -1
  10. package/docs/interactive-customization/331-poc-sce-integration-checklist.md +3 -3
  11. package/docs/interactive-customization/moqui-interactive-template-playbook.md +4 -4
  12. package/docs/interactive-customization/phase-acceptance-evidence.md +2 -2
  13. package/docs/magicball-adaptation-task-checklist-v1.md +385 -0
  14. package/docs/magicball-app-bundle-sqlite-and-command-draft.md +539 -0
  15. package/docs/magicball-capability-iteration-api.md +2 -0
  16. package/docs/magicball-capability-iteration-ui.md +2 -0
  17. package/docs/magicball-capability-library.md +2 -0
  18. package/docs/magicball-cli-invocation-examples.md +336 -0
  19. package/docs/magicball-frontend-state-and-command-mapping.md +244 -0
  20. package/docs/magicball-integration-doc-index.md +137 -0
  21. package/docs/magicball-integration-issue-tracker.md +218 -0
  22. package/docs/magicball-mode-home-and-ontology-empty-state-playbook.md +249 -0
  23. package/docs/magicball-sce-adaptation-guide.md +203 -0
  24. package/docs/magicball-three-mode-alignment-plan.md +551 -0
  25. package/docs/magicball-ui-surface-checklist.md +126 -0
  26. package/docs/magicball-write-auth-adaptation-guide.md +328 -0
  27. package/docs/moqui-standard-rebuild-guide.md +6 -6
  28. package/docs/moqui-template-core-library-playbook.md +1 -1
  29. package/docs/refactor-completion-roadmap.md +116 -0
  30. package/docs/release-checklist.md +50 -27
  31. package/docs/releases/README.md +1 -0
  32. package/docs/releases/v3.6.37.md +22 -0
  33. package/docs/steering-strategy-guide.md +7 -7
  34. package/docs/troubleshooting.md +1 -1
  35. package/docs/zh/README.md +27 -30
  36. package/docs/zh/refactor-completion-roadmap.md +116 -0
  37. package/docs/zh/release-checklist.md +40 -17
  38. package/docs/zh/releases/README.md +1 -0
  39. package/docs/zh/releases/v3.6.37.md +22 -0
  40. package/lib/app/registry-config.js +73 -0
  41. package/lib/app/registry-sync-service.js +228 -0
  42. package/lib/auto/archive-schema-service.js +276 -0
  43. package/lib/auto/archive-summary.js +60 -0
  44. package/lib/auto/batch-goal-input-service.js +543 -0
  45. package/lib/auto/batch-output.js +201 -0
  46. package/lib/auto/batch-summary-storage-service.js +110 -0
  47. package/lib/auto/close-loop-batch-service.js +116 -0
  48. package/lib/auto/close-loop-controller-service.js +287 -0
  49. package/lib/auto/close-loop-program-service.js +283 -0
  50. package/lib/auto/close-loop-recovery-service.js +191 -0
  51. package/lib/auto/close-loop-session-storage-service.js +50 -0
  52. package/lib/auto/controller-lock-service.js +55 -0
  53. package/lib/auto/controller-output.js +32 -0
  54. package/lib/auto/controller-queue-service.js +127 -0
  55. package/lib/auto/controller-session-storage-service.js +105 -0
  56. package/lib/auto/governance-advisory-service.js +208 -0
  57. package/lib/auto/governance-close-loop-service.js +411 -0
  58. package/lib/auto/governance-maintenance-presenter.js +162 -0
  59. package/lib/auto/governance-maintenance-service.js +112 -0
  60. package/lib/auto/governance-session-presenter.js +70 -0
  61. package/lib/auto/governance-session-storage-service.js +198 -0
  62. package/lib/auto/governance-signals.js +139 -0
  63. package/lib/auto/governance-stats-presenter.js +337 -0
  64. package/lib/auto/governance-stats-service.js +115 -0
  65. package/lib/auto/governance-summary.js +703 -0
  66. package/lib/auto/handoff-capability-matrix-service.js +281 -0
  67. package/lib/auto/handoff-evidence-review-service.js +251 -0
  68. package/lib/auto/handoff-release-evidence-service.js +190 -0
  69. package/lib/auto/handoff-release-gate-history-loaders-service.js +502 -0
  70. package/lib/auto/handoff-release-gate-history-service.js +257 -0
  71. package/lib/auto/handoff-reporting-service.js +1407 -0
  72. package/lib/auto/handoff-run-service.js +486 -0
  73. package/lib/auto/handoff-snapshots-service.js +645 -0
  74. package/lib/auto/observability-service.js +132 -0
  75. package/lib/auto/output-writer.js +34 -0
  76. package/lib/auto/program-auto-remediation-service.js +130 -0
  77. package/lib/auto/program-diagnostics.js +138 -0
  78. package/lib/auto/program-governance-helpers.js +306 -0
  79. package/lib/auto/program-governance-loop-service.js +413 -0
  80. package/lib/auto/program-output.js +106 -0
  81. package/lib/auto/program-summary.js +183 -0
  82. package/lib/auto/recovery-memory-service.js +684 -0
  83. package/lib/auto/recovery-selection-service.js +52 -0
  84. package/lib/auto/retention-policy.js +98 -0
  85. package/lib/auto/session-persistence-service.js +106 -0
  86. package/lib/auto/session-presenter.js +105 -0
  87. package/lib/auto/session-prune-service.js +190 -0
  88. package/lib/auto/session-query-service.js +249 -0
  89. package/lib/auto/spec-protection.js +141 -0
  90. package/lib/commands/adopt.js +4 -4
  91. package/lib/commands/app.js +911 -0
  92. package/lib/commands/assurance.js +212 -0
  93. package/lib/commands/auto.js +1093 -11065
  94. package/lib/commands/mode.js +321 -0
  95. package/lib/commands/ontology.js +415 -0
  96. package/lib/commands/pm.js +422 -0
  97. package/lib/ontology/seed-profiles.js +160 -0
  98. package/lib/spec/bootstrap/context-collector.js +1 -1
  99. package/lib/state/sce-state-store.js +3369 -1200
  100. package/lib/steering/adoption-config.js +2 -2
  101. package/lib/steering/compliance-cache.js +2 -2
  102. package/lib/steering/steering-manager.js +4 -4
  103. package/lib/task/task-claimer.js +1 -2
  104. package/lib/workspace/multi/workspace-context-resolver.js +3 -3
  105. package/lib/workspace/multi/workspace-state-manager.js +0 -164
  106. package/lib/workspace/sce-tracking-audit.js +1 -1
  107. package/lib/workspace/takeover-baseline.js +1 -1
  108. package/package.json +1 -1
  109. package/template/.sce/README.md +1 -1
  110. package/template/.sce/steering/CORE_PRINCIPLES.md +1 -1
  111. package/bin/kse.js +0 -3
@@ -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