pi-apexlang 0.2.2 → 0.4.0
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/README.md +22 -5
- package/THIRD_PARTY_NOTICES.md +2 -2
- package/UPSTREAM.json +2 -2
- package/docs/assets/overview.en.png +0 -0
- package/docs/assets/overview.en.svg +89 -0
- package/docs/assets/overview.uk.png +0 -0
- package/docs/assets/overview.uk.svg +89 -0
- package/docs/en/README.md +41 -0
- package/docs/en/architecture.md +73 -0
- package/docs/en/getting-started.md +77 -0
- package/docs/en/maintenance.md +83 -0
- package/docs/en/tool-reference.md +85 -0
- package/docs/uk/README.md +41 -0
- package/docs/uk/architecture.md +73 -0
- package/docs/uk/getting-started.md +77 -0
- package/docs/uk/maintenance.md +83 -0
- package/docs/uk/tool-reference.md +85 -0
- package/extensions/apexlang/index.ts +19 -10
- package/extensions/lib/apexlang-cli.d.mts +1 -2
- package/extensions/lib/apexlang-cli.mjs +18 -13
- package/extensions/lib/apexlang-local-validate.mjs +83 -0
- package/extensions/lib/apexlang-local-validator.py +116 -0
- package/extensions/lib/apexlang-runtime-validate.mjs +76 -0
- package/package.json +2 -1
- package/skills/apexlang/APEXlang Skills and Workflows.md +325 -0
- package/skills/apexlang/README.md +6 -6
- package/skills/apexlang/RELEASE-NOTES.md +2 -2
- package/skills/apexlang/SKILL.md +24 -19
- package/skills/apexlang/agents/openai.yaml +4 -3
- package/skills/apexlang/assets/apex-generation/components.registry.json +1001 -16
- package/skills/apexlang/assets/apexlang/domains-catalog.json +6 -1
- package/skills/apexlang/assets/component-attributes.json +1924 -180
- package/skills/apexlang/assets/component-policies.json +19 -10
- package/skills/apexlang/assets/contracts/grammar-semantic-rules.json +134 -0
- package/skills/apexlang/assets/contracts/package-layers.json +56 -0
- package/skills/apexlang/assets/contracts/page-construction-packs.json +154 -0
- package/skills/apexlang/assets/contracts/page-patterns.json +119 -0
- package/skills/apexlang/assets/grammar/apexlang.ebnf +11743 -0
- package/skills/apexlang/assets/indexes/font-apex-icon-index.json +1699 -0
- package/skills/apexlang/assets/routing-catalog-main.json +11 -10
- package/skills/apexlang/assets/routing-load-policy.json +35 -9
- package/skills/apexlang/assets/rules-mapping.json +110 -2
- package/skills/apexlang/assets/rules.catalog.json +1298 -0
- package/skills/apexlang/assets/validator-fix-recipes.json +372 -17
- package/skills/apexlang/assets/workspace-intelligence.json +7 -10
- package/skills/apexlang/manifest.json +268 -12
- package/skills/apexlang/references/domains/README.md +1 -1
- package/skills/apexlang/references/domains/page-components/buttons.md +2 -2
- package/skills/apexlang/references/domains/page-components/page-items.md +3 -3
- package/skills/apexlang/references/domains/page-components/regions/region-display-selector/workflow-region-display-selector.md +69 -0
- package/skills/apexlang/references/domains/page-components/regions.md +1 -0
- package/skills/apexlang/references/domains/template-components/comments.md +61 -0
- package/skills/apexlang/references/domains/template-components/registry.md +2 -0
- package/skills/apexlang/references/domains/template-components/templates.md +47 -0
- package/skills/apexlang/references/domains/template-components/timeline.md +51 -0
- package/skills/apexlang/references/ops/one-message-router-contract.md +2 -2
- package/skills/apexlang/references/ops/runtime-gates/01-direct-sqlcl-import.md +1 -1
- package/skills/apexlang/references/ops/runtime-gates/02-direct-sqlcl-validate-gate.md +1 -1
- package/skills/apexlang/references/ops/runtime-gates.md +17 -16
- package/skills/apexlang/references/ops/sqlcl-agents/00-connection-gate.md +7 -7
- package/skills/apexlang/references/ops/sqlcl.md +7 -8
- package/skills/apexlang/references/policies/compiler-prop-map.md +6 -4
- package/skills/apexlang/references/policies/governance/00-governance.md +2 -2
- package/skills/apexlang/references/policies/memory-bank/00-guard/ai.guard.md +126 -922
- package/skills/apexlang/references/policies/memory-bank/20-data/apex.logic.md +3 -3
- package/skills/apexlang/references/policies/memory-bank/20-data/db.connection.md +9 -11
- package/skills/apexlang/references/policies/memory-bank/30-pages/apex.cards-page.md +95 -0
- package/skills/apexlang/references/policies/memory-bank/30-pages/apex.page.md +2 -2
- package/skills/apexlang/references/policies/memory-bank/30-pages/apex.smart-filter-search.md +145 -74
- package/skills/apexlang/references/policies/memory-bank/40-components/apex.region-interactions.md +9 -2
- package/skills/apexlang/references/policies/memory-bank/40-components/apex.region-media.md +6 -5
- package/skills/apexlang/references/policies/memory-bank/systemPatterns.md +9 -1
- package/skills/apexlang/references/workflows/apex-generation/agents/20-agent-draft.md +51 -232
- package/skills/apexlang/references/workflows/apex-generation/agents/30-agent-critique.md +49 -449
- package/skills/apexlang/references/workflows/apex-generation/agents/40-agent-revision.md +38 -238
- package/skills/apexlang/references/workflows/apex-generation/nlu/nlu-routing-test-matrix.md +8 -2
- package/skills/apexlang/references/workflows/apex-generation/nlu/nlu-routing-validation-notes.md +19 -3
- package/skills/apexlang/references/workflows/apex-generation/registry.md +15 -1
- package/skills/apexlang/references/workflows/apex-generation/templates.md +1 -1
- package/skills/apexlang/references/workflows/apex-generation.md +1 -1
- package/skills/apexlang/references/workflows/apexlang/apexlang-execution-model.md +5 -5
- package/skills/apexlang/references/workflows/apexlang/prompt-contracts.md +81 -10
- package/skills/apexlang/references/workflows/apexlang/workflow-create-app-from-fr-and-model.md +18 -7
- package/skills/apexlang/release-notes.json +156 -0
- package/skills/apexlang/runtime/grammar_contract.mjs +1166 -0
- package/skills/apexlang/runtime/internal/python/format_apexlang.py +210 -0
- package/skills/apexlang/runtime/internal/python/validate_apexlang.py +14142 -5843
- package/skills/apexlang/runtime/internal/python/validator_common.py +2 -0
- package/skills/apexlang/runtime/lib/catalogs.mjs +1026 -0
- package/skills/apexlang/runtime/lib/common.mjs +35 -0
- package/skills/apexlang/runtime/runtime.bundle.mjs +457 -57
- package/skills/apexlang/templates/items/combobox/combobox.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/date-picker/date-picker._common.md +1 -1
- package/skills/apexlang/templates/items/date-picker/date-picker.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/file-upload/file-upload._common.md +30 -24
- package/skills/apexlang/templates/items/file-upload/file-upload.compact-template.md +6 -0
- package/skills/apexlang/templates/items/file-upload/file-upload.explicit-defaults.md +23 -8
- package/skills/apexlang/templates/items/file-upload/file-upload.minimal.md +6 -0
- package/skills/apexlang/templates/items/hidden-item/hidden-item._common.md +1 -1
- package/skills/apexlang/templates/items/hidden-item/hidden-item.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/items._common.md +3 -2
- package/skills/apexlang/templates/items/list-manager/list-manager.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/markdown-editor/markdown-editor._common.md +1 -1
- package/skills/apexlang/templates/items/markdown-editor/markdown-editor.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/number-field/number-field._common.md +8 -6
- package/skills/apexlang/templates/items/number-field/number-field.explicit-defaults.md +12 -2
- package/skills/apexlang/templates/items/popup-lov/popup-lov.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/rich-text-editor/rich-text-editor._common.md +1 -1
- package/skills/apexlang/templates/items/rich-text-editor/rich-text-editor.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/select-many/standard.md +1 -1
- package/skills/apexlang/templates/items/shuttle/shuttle.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/switch/switch._common.md +8 -8
- package/skills/apexlang/templates/items/switch/switch.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/text-area/text-area._common.md +2 -3
- package/skills/apexlang/templates/items/text-area/text-area.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/text-area/text-area.required-length.md +1 -3
- package/skills/apexlang/templates/items/text-autocomplete/text-autocomplete.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/text-autocomplete/text-autocomplete.required-length.md +1 -3
- package/skills/apexlang/templates/items/text-field/text-field._common.md +2 -3
- package/skills/apexlang/templates/items/text-field/text-field.explicit-defaults.md +1 -1
- package/skills/apexlang/templates/items/text-field/text-field.required-length.md +1 -3
- package/skills/apexlang/templates/page-examples/faceted-search/faceted-search.example.md +0 -5
- package/skills/apexlang/templates/page-examples/form-page/form-page.example.md +0 -9
- package/skills/apexlang/templates/page-examples/interactive-report-page/interactive-report-page.example.md +2 -2
- package/skills/apexlang/templates/page-examples/login-page/login-page.example.md +0 -8
- package/skills/apexlang/templates/page-examples/task-definition-initiated-tasks-page/task-definition-initiated-tasks-page.example.md +7 -17
- package/skills/apexlang/templates/page-examples/task-definition-my-tasks-page/task-definition-my-tasks-page.example.md +7 -65
- package/skills/apexlang/templates/page-examples/task-definition-task-details/task-definition-task-details.example.md +38 -201
- package/skills/apexlang/templates/region-components/calendar/calendar.custom-styling.md +3 -1
- package/skills/apexlang/templates/region-components/calendar/calendar.faceted-search.md +3 -2
- package/skills/apexlang/templates/region-components/cards/README.md +12 -4
- package/skills/apexlang/templates/region-components/cards/cards._common.md +176 -37
- package/skills/apexlang/templates/region-components/cards/cards._index.md +2 -1
- package/skills/apexlang/templates/region-components/cards/cards.refresh-after-dialog.md +46 -0
- package/skills/apexlang/templates/region-components/cards/cards.refresh-on-change.md +58 -0
- package/skills/apexlang/templates/region-components/cards/cards.rest-source.md +54 -18
- package/skills/apexlang/templates/region-components/cards/cards.standard.md +37 -21
- package/skills/apexlang/templates/region-components/chart/chart._series._common.md +1 -4
- package/skills/apexlang/templates/region-components/chart/chart.pie.md +6 -2
- package/skills/apexlang/templates/region-components/chart/chart.status-meter-gauge.md +1 -1
- package/skills/apexlang/templates/region-components/chart/chart.stock.md +2 -0
- package/skills/apexlang/templates/region-components/chart/features/chart.feature-chart-links.md +9 -7
- package/skills/apexlang/templates/region-components/faceted-search/faceted-search._common.md +1 -14
- package/skills/apexlang/templates/region-components/form/form._items._common.md +1 -5
- package/skills/apexlang/templates/region-components/interactive-report/interactive-report._columns._common.md +2 -6
- package/skills/apexlang/templates/region-components/interactive-report/interactive-report.page-header-actions.md +1 -7
- package/skills/apexlang/templates/region-components/list/README.md +1 -1
- package/skills/apexlang/templates/region-components/list/list._common.md +1 -1
- package/skills/apexlang/templates/region-components/map/map.backgrounds.md +12 -10
- package/skills/apexlang/templates/region-components/map/map.layer.extruded-polygons.md +16 -12
- package/skills/apexlang/templates/region-components/map/map.layer.heat-map.md +10 -7
- package/skills/apexlang/templates/region-components/map/map.layer.lines.md +10 -8
- package/skills/apexlang/templates/region-components/map/map.layer.polygons.md +21 -18
- package/skills/apexlang/templates/region-components/map/map.region.background-custom.md +25 -19
- package/skills/apexlang/templates/region-components/map/map.region.background-shared.md +19 -13
- package/skills/apexlang/templates/region-components/map/map.region.bbox-sql.md +13 -13
- package/skills/apexlang/templates/region-components/map/map.region.bbox-static.md +2 -2
- package/skills/apexlang/templates/region-components/map/map.region.browser-location.md +3 -7
- package/skills/apexlang/templates/region-components/map/map.region.init-position-sql.md +7 -7
- package/skills/apexlang/templates/region-components/region-display-selector/README.md +5 -2
- package/skills/apexlang/templates/region-components/region-display-selector/region-display-selector._common.md +60 -7
- package/skills/apexlang/templates/region-components/region-display-selector/region-display-selector._index.md +4 -1
- package/skills/apexlang/templates/region-components/region-display-selector/region-display-selector.permutations.md +55 -0
- package/skills/apexlang/templates/region-components/region-display-selector/region-display-selector.standard.md +91 -5
- package/skills/apexlang/templates/region-components/smart-filter-search/README.md +6 -2
- package/skills/apexlang/templates/region-components/smart-filter-search/smart-filter-search._common.md +107 -46
- package/skills/apexlang/templates/region-components/smart-filter-search/smart-filter-search._index.md +4 -3
- package/skills/apexlang/templates/region-components/smart-filter-search/smart-filter-search.standard.md +33 -17
- package/skills/apexlang/templates/shared-components/component-settings/component-settings._common.md +1 -0
- package/skills/apexlang/templates/shared-components/component-settings.example.md +1 -0
- package/skills/apexlang/templates/shared-components/email-templates.example.md +1 -1
- package/skills/apexlang/templates/shared-components/rest-data-sources/example_rest_data_source.example.md +40 -46
- package/skills/apexlang/templates/shared-components/task-definitions/action-task.example.md +2 -30
- package/skills/apexlang/templates/shared-components/task-definitions/approve-request.example.md +3 -31
- package/skills/apexlang/templates/template-components/README.md +27 -15
- package/skills/apexlang/templates/template-components/avatar/README.md +56 -0
- package/skills/apexlang/templates/template-components/avatar/avatar._common.md +149 -0
- package/skills/apexlang/templates/template-components/avatar/avatar._index.md +42 -0
- package/skills/apexlang/templates/template-components/{avatar._template_options.md → avatar/avatar._template_options.md} +1 -1
- package/skills/apexlang/templates/template-components/avatar/avatar.report-icon.md +48 -0
- package/skills/apexlang/templates/template-components/avatar/avatar.report-image-url-column.md +62 -0
- package/skills/apexlang/templates/template-components/avatar/avatar.report-initials.md +54 -0
- package/skills/apexlang/templates/template-components/badge/README.md +38 -0
- package/skills/apexlang/templates/template-components/badge/badge._common.md +183 -0
- package/skills/apexlang/templates/template-components/badge/badge._index.md +20 -0
- package/skills/apexlang/templates/template-components/badge/badge.report-link.md +66 -0
- package/skills/apexlang/templates/template-components/badge/badge.report-minimal.md +76 -0
- package/skills/apexlang/templates/template-components/comments/README.md +20 -0
- package/skills/apexlang/templates/template-components/comments/comments._common.md +43 -0
- package/skills/apexlang/templates/template-components/comments/comments._index.md +25 -0
- package/skills/apexlang/templates/template-components/{comments._template_options.md → comments/comments._template_options.md} +2 -1
- package/skills/apexlang/templates/template-components/comments/comments.apex-task-comments.md +77 -0
- package/skills/apexlang/templates/template-components/comments/comments.partial-column.md +120 -0
- package/skills/apexlang/templates/template-components/comments/comments.permutations.md +425 -0
- package/skills/apexlang/templates/template-components/content-row/README.md +1 -1
- package/skills/apexlang/templates/template-components/content-row/content-row._common.md +1 -1
- package/skills/apexlang/templates/template-components/content-row/content-row._index.md +1 -1
- package/skills/apexlang/templates/template-components/content-row/content-row._template_options.md +1 -1
- package/skills/apexlang/templates/template-components/flexbox-container/README.md +9 -0
- package/skills/apexlang/templates/template-components/flexbox-container/flexbox-container._index.md +13 -0
- package/skills/apexlang/templates/template-components/media-list/README.md +100 -0
- package/skills/apexlang/templates/template-components/media-list/media-list._common.md +174 -0
- package/skills/apexlang/templates/template-components/media-list/media-list._index.md +50 -0
- package/skills/apexlang/templates/template-components/{media-list._template_options.md → media-list/media-list._template_options.md} +8 -2
- package/skills/apexlang/templates/template-components/media-list/media-list.partial.md +50 -0
- package/skills/apexlang/templates/template-components/media-list/media-list.report-avatar-badge.md +76 -0
- package/skills/apexlang/templates/template-components/media-list/media-list.report-base.md +71 -0
- package/skills/apexlang/templates/template-components/media-list/media-list.report-grouped.md +40 -0
- package/skills/apexlang/templates/template-components/media-list/media-list.report-layouts.md +50 -0
- package/skills/apexlang/templates/template-components/media-list/media-list.report-link.md +53 -0
- package/skills/apexlang/templates/template-components/metric-card/README.md +19 -4
- package/skills/apexlang/templates/template-components/metric-card/metric-card._common.md +122 -29
- package/skills/apexlang/templates/template-components/metric-card/metric-card._index.md +6 -0
- package/skills/apexlang/templates/template-components/metric-card/metric-card._template_options.md +47 -2
- package/skills/apexlang/templates/template-components/metric-card/metric-card.partial-minimal.md +51 -0
- package/skills/apexlang/templates/template-components/metric-card/metric-card.permutations.md +56 -0
- package/skills/apexlang/templates/template-components/metric-card/metric-card.report-avatar-badge.md +98 -0
- package/skills/apexlang/templates/template-components/metric-card/metric-card.report-grouping-selection.md +131 -0
- package/skills/apexlang/templates/template-components/metric-card/metric-card.report-link.md +66 -0
- package/skills/apexlang/templates/template-components/metric-card/metric-card.report-minimal.md +97 -0
- package/skills/apexlang/templates/template-components/template-components.registry.json +90 -1
- package/skills/apexlang/templates/template-components/timeline/README.md +19 -0
- package/skills/apexlang/templates/template-components/timeline/timeline._common.md +43 -0
- package/skills/apexlang/templates/template-components/timeline/timeline._index.md +24 -0
- package/skills/apexlang/templates/template-components/{timeline._template_options.md → timeline/timeline._template_options.md} +2 -1
- package/skills/apexlang/templates/template-components/timeline/timeline.permutations.md +399 -0
- package/skills/apexlang/templates/template-components/timeline/timeline.report-sample-data.md +168 -0
- package/skills/apexlang/templates/workspace-components/credentials/credentials-for-open-ai.example.md +1 -1
- package/skills/apexlang/templates/workspace-components/generative-ai-services/open-ai.example.md +8 -6
- package/skills/apexlang/tools/apexctl.mjs +167 -4
- package/skills/apexlang/tools/compiler-truth-audit.mjs +95 -63
- package/skills/apexlang/tools/query-valid-props-context.mjs +30 -0
- package/skills/apexlang/tools/query-valid-props-normalize.mjs +1 -0
- package/skills/apexlang/tools/query-valid-props-runtime.mjs +13 -8
- package/skills/apexlang/tools/query-valid-props-semantics.mjs +391 -0
- package/skills/apexlang/tools/query-valid-props-template-components.mjs +15 -1
- package/skills/apexlang/tools/query-valid-props.mjs +198 -216
- /package/skills/apexlang/templates/template-components/{badge._template_options.md → badge/badge._template_options.md} +0 -0
- /package/skills/apexlang/templates/template-components/{flexbox-container._template_options.md → flexbox-container/flexbox-container._template_options.md} +0 -0
|
@@ -14,8 +14,9 @@ Canonical contract for APEXlang agent prompting. Use this file as the shared rul
|
|
|
14
14
|
1. `references/policies/memory-bank/00-guard/ai.guard.md`
|
|
15
15
|
2. `references/policies/governance/00-governance.md`
|
|
16
16
|
3. This file
|
|
17
|
-
4.
|
|
18
|
-
5.
|
|
17
|
+
4. Machine-readable contracts, grammar, and compiler metadata
|
|
18
|
+
5. Phase-specific workflow prompts
|
|
19
|
+
6. Exact-match templates and examples
|
|
19
20
|
|
|
20
21
|
If a lower layer conflicts with a higher layer, follow the higher layer and mark the lower layer as defective.
|
|
21
22
|
|
|
@@ -51,6 +52,20 @@ Each entry must include:
|
|
|
51
52
|
- conclusion
|
|
52
53
|
- emitted decision
|
|
53
54
|
|
|
55
|
+
### Progressive Disclosure Trace
|
|
56
|
+
|
|
57
|
+
Required for non-trivial routing, page generation, component generation, and complete app generation.
|
|
58
|
+
|
|
59
|
+
Each trace must be compact and ordered:
|
|
60
|
+
|
|
61
|
+
- normalized intent and matched component or pattern id
|
|
62
|
+
- exact rule card, contract, or workflow path opened first
|
|
63
|
+
- grammar or compiler metadata evidence used for structural legality
|
|
64
|
+
- exact template path loaded only when an exact-match example is needed
|
|
65
|
+
- skipped broad surfaces, such as template directories or README packages, when a smaller contract answered the decision
|
|
66
|
+
|
|
67
|
+
Do not load `templates/**` broadly to discover syntax. Use `assets/grammar/apexlang.ebnf` for syntax, compiler metadata or `query-valid-props` for semantic property legality, structured pattern packs for common workflows, and then one exact template family only when the preceding sources select it.
|
|
68
|
+
|
|
54
69
|
### Generation Plan
|
|
55
70
|
|
|
56
71
|
Required for non-trivial page, component, or application generation before emitting APEXlang.
|
|
@@ -58,10 +73,11 @@ Required for non-trivial page, component, or application generation before emitt
|
|
|
58
73
|
Minimum required fields:
|
|
59
74
|
|
|
60
75
|
- target artifact scope
|
|
61
|
-
- exact template family
|
|
76
|
+
- selected contract, pattern pack, or exact template family/variant
|
|
62
77
|
- region, item, and button inventory in output order when applicable
|
|
63
78
|
- source mode decisions such as `table/view` vs `sql`
|
|
64
79
|
- navigation or target decisions
|
|
80
|
+
- progressive disclosure trace references
|
|
65
81
|
- compiler-truth evidence references when required
|
|
66
82
|
|
|
67
83
|
Required response order for non-trivial structural generation:
|
|
@@ -97,23 +113,26 @@ The spec must use `references/workflows/apexlang/application-spec.template.md` a
|
|
|
97
113
|
Use this precedence order for every generation and revision task:
|
|
98
114
|
|
|
99
115
|
1. Apply guardrails and governance.
|
|
100
|
-
2.
|
|
101
|
-
3. Use compiler-backed truth and
|
|
102
|
-
4.
|
|
103
|
-
5.
|
|
116
|
+
2. Normalize intent and select the smallest matching rule card, structured contract, workflow, or domain entry.
|
|
117
|
+
3. Use `assets/grammar/apexlang.ebnf` for syntax legality and compiler-backed truth for allowed blocks, properties, enums, slots, and template options.
|
|
118
|
+
4. Use structured pattern packs, the frozen application spec, and UX contract before full `.apx` rendering for common workflows.
|
|
119
|
+
5. Load exact-match templates only after the smaller sources select a concrete family or variant.
|
|
120
|
+
6. Stop with `Missing Inputs` or request human intervention when the rules, contracts, grammar, compiler truth, and workflow do not answer the need.
|
|
121
|
+
7. Only then use bounded inference, and only for low-risk connective details that do not change structural legality.
|
|
104
122
|
|
|
105
123
|
Do not:
|
|
106
124
|
|
|
107
|
-
- guess when a rule,
|
|
125
|
+
- guess when a rule, contract, grammar, compiler-truth, workflow, or exact-template step has not been exhausted
|
|
108
126
|
- skip to “best judgment” because a template seems close enough
|
|
127
|
+
- scan broad template trees to discover syntax that the grammar or metadata can answer
|
|
109
128
|
- invent target pages, target item names, enum values, slots, or block shapes when the workflow cannot prove them
|
|
110
129
|
- treat local validator success as permission to infer missing structure
|
|
111
130
|
|
|
112
131
|
## Generation Boundary
|
|
113
132
|
|
|
114
|
-
For non-trivial APEXlang output, the `Generation Plan` is a boundary contract, not only a summary. It must identify the
|
|
133
|
+
For non-trivial APEXlang output, the `Generation Plan` is a boundary contract, not only a summary. It must identify the smallest loaded authority that authorizes each emitted page, region family, item family, button/navigation mode, dynamic-action shape, and non-default template option: structured contract or pattern pack first, grammar/compiler evidence next, and exact template family only when loaded.
|
|
115
134
|
|
|
116
|
-
Generated `.apx` artifacts must stay inside the current authoritative sources: guardrails, governance, loaded memory-bank
|
|
135
|
+
Generated `.apx` artifacts must stay inside the current authoritative sources: guardrails, governance, loaded memory-bank rule cards, machine-readable contracts, grammar, compiler-backed truth, and selected exact-match template documentation. Requirements may select, combine, or parameterize supported native APEX/APEXlang patterns, but they do not authorize new DSL surface or undocumented component behavior.
|
|
117
136
|
|
|
118
137
|
Do not invent properties, enum values, block names, target shapes, item mappings, template options, region capabilities, dynamic-action selectors, page patterns, component families, or navigation modes outside the loaded authoritative sources. Unsupported design intent must be recorded as blocked/deferred, simplified to a documented native APEX pattern, or represented by a supported placeholder only when the active workflow explicitly allows placeholders.
|
|
119
138
|
|
|
@@ -150,6 +169,58 @@ If a rule ID has no deterministic recipe and the owning guidance does not prove
|
|
|
150
169
|
|
|
151
170
|
## Rule IDs
|
|
152
171
|
|
|
172
|
+
### GRAMMAR_FIRST_AUTHORITY_REQUIRED_001
|
|
173
|
+
|
|
174
|
+
Statement:
|
|
175
|
+
- APEXlang syntax decisions must come from `assets/grammar/apexlang.ebnf`; semantic legality for blocks, properties, enums, slots, template options, and component variants must come from compiler metadata, direct compiler validation, or `query-valid-props`. Templates are exact-match examples or renderer references, not the primary syntax oracle.
|
|
176
|
+
|
|
177
|
+
Why:
|
|
178
|
+
- This repo is template-heavy. Treating prose templates as syntax authority increases latency and creates drift. Grammar and compiler metadata are smaller, more deterministic, and easier to validate.
|
|
179
|
+
|
|
180
|
+
Valid:
|
|
181
|
+
|
|
182
|
+
```text
|
|
183
|
+
Checked grammar for the block/property shape, queried compiler metadata for the chart series option, then loaded one chart template for an exact emitted example.
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
Invalid:
|
|
187
|
+
|
|
188
|
+
```text
|
|
189
|
+
Searched several template folders and copied the closest shape even though grammar or compiler metadata was not checked.
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
Ownership:
|
|
193
|
+
- Router prompt
|
|
194
|
+
- Draft prompt
|
|
195
|
+
- Critique prompt
|
|
196
|
+
- Package prompt tests
|
|
197
|
+
|
|
198
|
+
### PROGRESSIVE_DISCLOSURE_TRACE_REQUIRED_001
|
|
199
|
+
|
|
200
|
+
Statement:
|
|
201
|
+
- Non-trivial APEXlang work must keep a compact source trace from normalized intent to the smallest loaded rule or contract, then grammar/compiler evidence, then an exact template path only if needed.
|
|
202
|
+
|
|
203
|
+
Why:
|
|
204
|
+
- The agent should finish faster by avoiding broad README/template scans and should make every emitted structure traceable to the right source.
|
|
205
|
+
|
|
206
|
+
Valid:
|
|
207
|
+
|
|
208
|
+
```text
|
|
209
|
+
source_trace: dashboard -> rules.catalog:DASHBOARD_KPI_METRIC_CARD_REQUIRED_001 -> page-construction-packs:dashboard -> query-valid-props:themeTemplateComponent/metricCard -> metric-card._common.md
|
|
210
|
+
```
|
|
211
|
+
|
|
212
|
+
Invalid:
|
|
213
|
+
|
|
214
|
+
```text
|
|
215
|
+
I browsed the page examples and used the closest dashboard-like template.
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
Ownership:
|
|
219
|
+
- Router prompt
|
|
220
|
+
- Draft prompt
|
|
221
|
+
- Critique prompt
|
|
222
|
+
- Package prompt tests
|
|
223
|
+
|
|
153
224
|
### DESTINATION_WORKSPACE_NAME_REQUIRED_001
|
|
154
225
|
|
|
155
226
|
Statement:
|
package/skills/apexlang/references/workflows/apexlang/workflow-create-app-from-fr-and-model.md
CHANGED
|
@@ -15,8 +15,10 @@ Use this workflow when the user asks to create or generate an app from functiona
|
|
|
15
15
|
1. Model/schema metadata is authoritative for database objects, columns, keys, constraints, data types, display labels, LOV candidates, and semantic facts such as image, date, latitude/longitude, status, and amount fields.
|
|
16
16
|
2. Functional requirements are authoritative for business behavior, page inventory, workflow, page pattern intent, navigation, UI composition, validations, derived metrics, acceptance criteria, and exclusions.
|
|
17
17
|
3. `application-spec.template.md` defines the required planning output shape.
|
|
18
|
-
4.
|
|
19
|
-
5.
|
|
18
|
+
4. `assets/contracts/page-patterns.json` and `assets/contracts/page-construction-packs.json` define the structured pattern-selection path before final `.apx`.
|
|
19
|
+
5. `assets/grammar/apexlang.ebnf` and compiler metadata define APEXlang syntax and property legality; templates are exact-match examples after these sources select the emitted family.
|
|
20
|
+
6. Existing app files may be read only for integration facts after app resolution. Do not use existing app files as reusable pattern or DSL-shape examples.
|
|
21
|
+
7. If same-rank sources conflict on structural facts, stop with `Missing Inputs` and list the conflict.
|
|
20
22
|
|
|
21
23
|
## Required Workflow
|
|
22
24
|
|
|
@@ -47,7 +49,8 @@ Use this workflow when the user asks to create or generate an app from functiona
|
|
|
47
49
|
- secondary maintenance pages can be grouped through a hub/list page
|
|
48
50
|
- report-to-form CRUD defaults to a drawer end/right form unless the requirements explicitly select standard modal dialog, drawer start/top/bottom, wizard modal, popout-style dialog, or full-page detail flow
|
|
49
51
|
- drawer form pages must emit `dialogTemplate: @/drawer` plus an explicit end/right drawer template option; `templateOptions: #DEFAULT#` alone is not enough for default drawer behavior
|
|
50
|
-
6.
|
|
52
|
+
6. Select page/workflow patterns from `assets/contracts/page-patterns.json` and `assets/contracts/page-construction-packs.json` before loading Markdown templates. Record the selected pack id, required inputs, generated components, validation rules, and reference paths in the application spec and source trace.
|
|
53
|
+
7. Write project-root `.apexlang/app-ux-contract.json` before drafting non-trivial `.apx` artifacts. This machine-readable contract must contain non-empty `sourceEvidence`, `pageInventory`, `compositionPlan`, `richUiPatternPlan`, `lovPlan`, `behaviorPlan`, and `testPlan` sections.
|
|
51
54
|
- Every generated user page must map to a requirement or declared low-risk derived workflow.
|
|
52
55
|
- `compositionPlan.breadcrumbs` must be an object array with `page`, `entry`, and either `root: true`, `parentEntry`, or `parentPage`; do not replace it with a flat page-number list.
|
|
53
56
|
- If `compositionPlan.managementHubPages` is present, resolve the management hub page and parent every management child breadcrumb to that hub.
|
|
@@ -64,10 +67,15 @@ Use this workflow when the user asks to create or generate an app from functiona
|
|
|
64
67
|
- Every declared rich UI pattern, display mapping, link, modal target, refresh dependency, LOV, layout recipe, and accessibility/guidance requirement must be traceable to requirements, model/schema metadata, or explicit user assertion.
|
|
65
68
|
- Add `requiresAppUxContract: true` to the app-local `.apex/apexlang.json` runtime metadata for full-app FR/model generation so local validation blocks missing UX contracts.
|
|
66
69
|
- Keep the completed `application-spec.md` planning artifact in project-root `.apexlang/`, not inside `applications/<app>/` or the app-local `.apex/` runtime metadata directory.
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
70
|
+
8. Render from the frozen application spec, UX contract, selected pattern packs, grammar, and compiler evidence. Render into staging, run `apexlang format --strict-structure` immediately, reject structural formatter changes, and publish only after local validation passes.
|
|
71
|
+
9. For every SQL-bearing page, region, LOV, validation, or process, record object evidence as `schema_doc`, `live_db`, `user_asserted`, or `unresolved`.
|
|
72
|
+
10. If any required object, column, relationship, target page, target item, UX contract mapping, pattern-pack input, grammar/compiler decision, or compiler-truth decision remains unresolved, stop with `Missing Inputs` instead of drafting artifacts.
|
|
73
|
+
11. After the spec, UX contract, and pattern-pack selection are complete, generate each implementation unit in a fresh isolated model context containing the selected task-specific context capsule and required compiler/tool results. For each non-trivial unit, emit a compact `Generation Plan` before APEXlang.
|
|
74
|
+
12. Stage validation to avoid repeated whole-app work:
|
|
75
|
+
- During unit generation, run only unit-local syntax, property, reference, and unresolved-placeholder checks.
|
|
76
|
+
- After all units are assembled, run one full local integration validation and one compiler-truth audit across the application.
|
|
77
|
+
- Run live APEX validation once after local integration passes. Rerun it only after a deterministic repair changes the validated artifact, preserving the existing maximum repair-attempt policy.
|
|
78
|
+
- Live validation/import requires a resolved `db_connection_name`; new-app materialization also requires the exact destination APEX workspace name.
|
|
71
79
|
|
|
72
80
|
## Output Contract
|
|
73
81
|
|
|
@@ -76,6 +84,8 @@ The completed application spec must be traceable:
|
|
|
76
84
|
- every page maps to one requirement or low-risk derived workflow
|
|
77
85
|
- every DB object and column maps to model/schema evidence or explicit user assertion
|
|
78
86
|
- every rich UI pattern maps to native APEX components, not static HTML substitutes
|
|
87
|
+
- every common page workflow maps to a structured pattern pack when one exists
|
|
88
|
+
- every final `.apx` structure maps to the frozen application spec, UX contract, pattern-pack selection, and grammar/compiler evidence before template examples
|
|
79
89
|
- every link or modal target identifies the target page and item mappings
|
|
80
90
|
- every form target records its presentation choice and button/process/dynamic-action contract
|
|
81
91
|
- every form validation, context-owned item, and defaulting behavior maps to requirement evidence and generated page artifacts
|
|
@@ -89,6 +99,7 @@ The completed application spec must be traceable:
|
|
|
89
99
|
- Conflicting page inventory, table, column, key, or constraint facts.
|
|
90
100
|
- Rich UI pattern requested without the required semantic evidence.
|
|
91
101
|
- Missing or incomplete project-root `.apexlang/app-ux-contract.json` for full-app FR/model generation.
|
|
102
|
+
- Missing structured pattern-pack inputs for a workflow covered by `page-construction-packs.json`.
|
|
92
103
|
- Unresolved compiler-truth requirement for a non-exact-match structural artifact.
|
|
93
104
|
- Missing APEX workspace name when materializing a brand new app.
|
|
94
105
|
- Missing `db_connection_name` or workspace name for live validation/import.
|
|
@@ -7,6 +7,162 @@
|
|
|
7
7
|
"downloadUrl": "https://github.com/oracle/skills/",
|
|
8
8
|
"downloadLabel": "Download",
|
|
9
9
|
"releases": [
|
|
10
|
+
{
|
|
11
|
+
"version": "2026.09.21",
|
|
12
|
+
"summary": "This release adds and hardens support for Media List, Comments, and Metric Card template components, expands Cards and Region Display Selector capabilities, and delivers deterministic Smart Filter and Search workflows with compiler-backed validation, source-projection contracts, safe navigation, and packaged registry/runtime alignment.",
|
|
13
|
+
"sections": [
|
|
14
|
+
{
|
|
15
|
+
"title": "Media List Template Component",
|
|
16
|
+
"items": [
|
|
17
|
+
"Added Media List template-component support for report and partial configurations, including base, grouped, linked, avatar, badge, and layout variants.",
|
|
18
|
+
"Added deterministic routing with explicit precedence for direct Media List requests, List regions, and Classic Reports.",
|
|
19
|
+
"Added metadata-driven source validation with report-mode support limited to verified local database and SQL query sources.",
|
|
20
|
+
"Added parent-aware placement validation for Standard and Content Block regions.",
|
|
21
|
+
"Added compiler-conformance checks for Media List source types and nested component properties.",
|
|
22
|
+
"Expanded Media List templates, component metadata, registry entries, validator recipes, documentation, package coverage, and regression checks."
|
|
23
|
+
]
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"title": "Comments Template Component",
|
|
27
|
+
"items": [
|
|
28
|
+
"Added Comments template-component support for report and partial display modes.",
|
|
29
|
+
"Added required user and comment mappings with optional date-column mapping and compiler-backed validation.",
|
|
30
|
+
"Added report styles, avatar icon/image/initials variants, display settings, and compiler-backed action support.",
|
|
31
|
+
"Added safety validation for avatar image URLs, dynamic attributes, comment classes, and projected source columns.",
|
|
32
|
+
"Added partial-mode restrictions for single-row sources and report-only behavior blocks.",
|
|
33
|
+
"Aligned Comments contracts and guidance with APEX 26.1 and expanded the component registry, templates, validator recipes, and regression coverage."
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"title": "Metric Card Template Component",
|
|
38
|
+
"items": [
|
|
39
|
+
"Added Metric Card template-component support for minimal, grouped, linked, avatar, badge, and partial configurations.",
|
|
40
|
+
"Added deterministic routing that aligns semantic Metric Card requests with component selection.",
|
|
41
|
+
"Added guidance for dashboard KPI strips, normalized multi-row sources, explicit projected child columns, grouping, and selection.",
|
|
42
|
+
"Added validation for Metric Card settings, supported data types, child-column mappings, action targets, URL schemes, hosts, paths, fragments, and link attributes.",
|
|
43
|
+
"Added safe declarative navigation and trigger-action contracts for Metric Card links.",
|
|
44
|
+
"Expanded Metric Card templates, metadata, routing, repair recipes, package tests, and compiler-backed validation coverage."
|
|
45
|
+
]
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"title": "Smart Filter and Search Region",
|
|
49
|
+
"items": [
|
|
50
|
+
"Added dedicated Smart Filter and Search routing with deterministic resolver precedence over related Faceted Search and Cards intents.",
|
|
51
|
+
"Smart Filters now require one authoritative filtered-results region declared after the filter region.",
|
|
52
|
+
"Added supported-target validation for Classic Reports, Cards, Maps, and Calendars while rejecting unsupported target shapes.",
|
|
53
|
+
"Added validation for searchable-column allowlists, refinement and suggestion sources, filter topology, source projections, and duplicate or reordered search columns.",
|
|
54
|
+
"Added security-scope checks so search, suggestions, refinements, and counts remain within the filtered region's authorization and server-side condition.",
|
|
55
|
+
"Added performance, accessibility, refresh, export, and Generation Plan evidence requirements.",
|
|
56
|
+
"Improved diagnostics for missing or incomplete Smart Filter plugin metadata.",
|
|
57
|
+
"Updated Smart Filter/Search templates, routing catalogs, validator recipes, package coverage, and regression checks."
|
|
58
|
+
]
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"title": "Cards Region Updates",
|
|
62
|
+
"items": [
|
|
63
|
+
"Expanded Cards region contracts and templates for source mapping, layout, ordering, media, actions, conditions, trigger actions, and row selection.",
|
|
64
|
+
"Added deterministic validation for primary-key identity, projected source columns, native media mappings, action sequencing, and supported property values.",
|
|
65
|
+
"Added refresh contracts for refresh-after-dialog and refresh-on-change behavior.",
|
|
66
|
+
"Added navigation validation for full-card, title, subtitle, media, and button actions.",
|
|
67
|
+
"Added declarative behavior-target validation, trigger-action consumer checks, safe navigation URL validation, and restricted link-attribute handling.",
|
|
68
|
+
"Preserved native Cards media, security, and navigation boundaries while aligning contracts with APEX 26.1.",
|
|
69
|
+
"Expanded Cards metadata, templates, routing rules, validator recipes, package coverage, and regression checks."
|
|
70
|
+
]
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"title": "Region Display Selector",
|
|
74
|
+
"items": [
|
|
75
|
+
"Added Region Display Selector support with standard and permutation-oriented workflows.",
|
|
76
|
+
"Added application-scoped slider configuration through component settings.",
|
|
77
|
+
"Added validation for controller uniqueness, target membership, minimum eligible targets, controller exclusion, ordering, and excluded breadcrumb or header regions.",
|
|
78
|
+
"Clarified the distinction between `htmlDomId` and `staticId` for controllers and controlled regions.",
|
|
79
|
+
"Documented catalog defaults separately from generation-required values.",
|
|
80
|
+
"Added machine-readable registry metadata, validator repair guidance, focused regressions, and packaged component coverage."
|
|
81
|
+
]
|
|
82
|
+
}
|
|
83
|
+
]
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
"version": "2026.08.28",
|
|
87
|
+
"summary": "This release adds supported Avatar, Badge, and Timeline template-component workflows, pins Font APEX icon validation to a versioned catalogue, and strengthens routing, validation, packaging, and template-registry integrity. Credits to Github user [https://github.com/zrh535](zrh535) for identifying these bugs and proposing the suggested fixes.",
|
|
88
|
+
"sections": [
|
|
89
|
+
{
|
|
90
|
+
"title": "New Supported Template Components",
|
|
91
|
+
"items": [
|
|
92
|
+
"Added report-mode Avatar support for initials, icons, and URL-column images.",
|
|
93
|
+
"Added report-mode Badge support for minimal and linked Badge regions.",
|
|
94
|
+
"Added Timeline support for report and partial configurations, including optional Avatar and Badge content.",
|
|
95
|
+
"Timeline Avatar variants now use one matching icon, image, or initials value; initials come from a dedicated projected column.",
|
|
96
|
+
"Avatar image URLs now accept only `:APP_FILES` or `:APEX_FILES` with a static relative path.",
|
|
97
|
+
"Moved each template component's options into its own directory."
|
|
98
|
+
]
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"title": "Validation, Routing, and Security",
|
|
102
|
+
"items": [
|
|
103
|
+
"Badge validation covers table/view, SQL, REST, JSON, function-body, property-graph, and sample-data sources.",
|
|
104
|
+
"Icon requests keep icon guidance when they also match Cards, Dashboards, Interactive Reports, or Lists.",
|
|
105
|
+
"Validation now checks source mappings, authorization, nested components, safe targets, and invalid direct page properties."
|
|
106
|
+
]
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"title": "Font APEX Icons",
|
|
110
|
+
"items": [
|
|
111
|
+
"Added a pinned Font APEX 26.1 icon and modifier index.",
|
|
112
|
+
"Avatar, Badge, and Timeline icons must use one indexed icon and supported modifiers.",
|
|
113
|
+
"Added tooling to check and refresh the icon index."
|
|
114
|
+
]
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
"title": "Merged SQLcl and Runtime Bug Fixes",
|
|
118
|
+
"items": [
|
|
119
|
+
"Fixed double decoding of HTML entities during SQLcl script processing.",
|
|
120
|
+
"Fixed malformed closing script tags in SQLcl runtime scripts.",
|
|
121
|
+
"Enforced TLS certificate verification in the SQLcl runtime verifier and added regression coverage for verification failures.",
|
|
122
|
+
"Hardened temporary SQL file creation and cleanup.",
|
|
123
|
+
"Added regression coverage for HTML decoding, malformed script tags, TLS verification, and temporary SQL-file security."
|
|
124
|
+
]
|
|
125
|
+
}
|
|
126
|
+
]
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"version": "2026.08.01",
|
|
130
|
+
"summary": "This release makes APEXlang generation more deterministic by establishing explicit grammar, package, pattern, and component contracts. It simplifies orchestration, strengthens compiler-aware validation, improves cross-platform runtime consistency, and delivers safer defaults for file uploads and SQL projections.",
|
|
131
|
+
"sections": [
|
|
132
|
+
{
|
|
133
|
+
"title": "Generation Workflow and Reusable Patterns",
|
|
134
|
+
"items": [
|
|
135
|
+
"Simplified the core routing and prompt contract, clarifying intent normalization, routing boundaries, missing-input handling, and the distinct responsibilities of draft, critique, and revision agents.",
|
|
136
|
+
"Updated natural-language routing test coverage and validation guidance so human requests are translated into APEXlang tasks more predictably.",
|
|
137
|
+
"Added structured page-pattern and page-construction packs, plus catalog and routing-load support, so generation can select reusable patterns through machine-readable contracts."
|
|
138
|
+
]
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
"title": "Language, Packaging, and Runtime Contracts",
|
|
142
|
+
"items": [
|
|
143
|
+
"Added the complete `apexlang.ebnf` grammar, grammar documentation, semantic rules, and an upstream-consistency check to make syntax validation and language evolution deterministic and reviewable.",
|
|
144
|
+
"Introduced explicit package-layer contracts and a public package manifest. Package loading now separates distributable public content from internal and development-only assets.",
|
|
145
|
+
"Normalized CRLF and mixed line endings to LF before formatting and runtime validation across the APEXlang CLI, package flow, and validator. The normalization boundary is now shared through reusable runtime helpers, documented in the runtime-gate guidance, and covered by regression tests so formatting, packaging, and validation produce reproducible results across platforms."
|
|
146
|
+
]
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"title": "Component and Property Validation",
|
|
150
|
+
"items": [
|
|
151
|
+
"Strengthened property mapping by retaining component-tree context during validation, allowing child properties to be evaluated against their parent component and relationships.",
|
|
152
|
+
"Added handling for ambiguous component matches, conditional properties, faceted-search and smart-filter aliases, source-located diagnostics, and regression coverage for invalid child records.",
|
|
153
|
+
"Expanded executable guardrails for component properties, defaults, dependencies, required values, aliases, and page consistency; templates and examples now align with compiler-backed component truth.",
|
|
154
|
+
"Added Unicode SQL alias validation coverage, including quoted multibyte aliases and aliases with spaces, while preserving existing ASCII behavior."
|
|
155
|
+
]
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"title": "File Upload Experience",
|
|
159
|
+
"items": [
|
|
160
|
+
"File-upload items now default to `blockDropzone` for a more usable upload experience, while `inlineDropzone` and `nativeFileBrowse` remain available when explicitly requested.",
|
|
161
|
+
"Explicit Dropzone modes now require `dropzoneTitle` and `dropzoneDesc`; templates, validator fix recipes, audit documentation, and regression tests were updated accordingly."
|
|
162
|
+
]
|
|
163
|
+
}
|
|
164
|
+
]
|
|
165
|
+
},
|
|
10
166
|
{
|
|
11
167
|
"version": "2026.06.26",
|
|
12
168
|
"summary": "This release tightens APEXlang generation boundaries around verified metadata, compiler-backed component shapes, and snippet safety. It expands local validation for live-runtime edge cases, updates report, button, faceted-search, map, list, and Interactive Grid guidance, and converts sample content into explicit metavariable templates so generated artifacts do not inherit placeholder schema names.",
|