feat: expand EasyCode software factory workflows
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
# PageBlock Contribution Lifecycle Plan
|
||||
|
||||
**Goal:** Turn PageBlock Manifest template, Validator, and Quality Check declarations into executable contributions while migrating Notice and News without changing generated output.
|
||||
|
||||
## Task 1: Common Resource Plugin Contract
|
||||
|
||||
- [x] Add a resource-backed PageBlock base that loads the existing `block.json` definition.
|
||||
- [x] Build Manifest template ownership from the definition instead of duplicating template paths in Java.
|
||||
- [x] Publish a stable Validator code and rendered-source Quality Check for each resource plugin.
|
||||
|
||||
## Task 2: Executable Contribution Lifecycle
|
||||
|
||||
- [x] Verify PageBlock identity, capability, Validator, Quality Check, and template declarations during Registry loading.
|
||||
- [x] Reject missing template resources and declarations that do not exactly match `block.json`.
|
||||
- [x] Route instance validation and generation-context contribution through one coordinator.
|
||||
- [x] Execute the declared rendered-source check after Velocity rendering.
|
||||
|
||||
## Task 3: Notice And News Migration
|
||||
|
||||
- [x] Publish `page-block.notice@1.0.0` and `page-block.news@1.0.0` as trusted built-in plugins.
|
||||
- [x] Move Notice primary key, status, active value, and publish-time context into its plugin.
|
||||
- [x] Move News primary key, status, active value, publish-time, summary, and image context into its plugin.
|
||||
- [x] Preserve the existing definitions, templates, output paths, API routes, and generated source behavior.
|
||||
|
||||
## Task 4: ProjectSpec And Verification
|
||||
|
||||
- [x] Auto-select exact Notice and News plugin releases when projected layouts use those blocks.
|
||||
- [x] Keep migrated PageBlock selection enforcement generic in `PluginResolver`.
|
||||
- [x] Cover Manifest mismatch, missing executable identity, empty rendered output, generation context, and legacy rendering compatibility.
|
||||
Reference in New Issue
Block a user