@adia-ai/a2ui-corpus 0.4.2 → 0.4.4
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 +63 -0
- package/README.md +59 -51
- package/catalog-a2ui_0_9.json +318 -15
- package/catalog-a2ui_0_9_rules.txt +18 -0
- package/chunks/_index.json +1263 -496
- package/chunks/agent-activity-feed.json +1 -1
- package/chunks/agent-canvas-shell.json +1 -1
- package/chunks/agent-reasoning-collapsed.json +1 -1
- package/chunks/auth-account-deleted-actions.json +1 -1
- package/chunks/auth-account-deleted.json +1 -1
- package/chunks/auth-card-content.json +1 -1
- package/chunks/auth-card-header.json +1 -1
- package/chunks/auth-email-entry.json +1 -1
- package/chunks/auth-email-verify-confirm.json +1 -1
- package/chunks/auth-email-verify.json +1 -1
- package/chunks/auth-forbidden-actions.json +1 -1
- package/chunks/auth-forbidden.json +1 -1
- package/chunks/auth-invite-actions.json +1 -1
- package/chunks/auth-invite-team-card.json +1 -1
- package/chunks/auth-link-expired-form.json +1 -1
- package/chunks/auth-link-expired.json +1 -1
- package/chunks/auth-locked-account.json +1 -1
- package/chunks/auth-locked-recovery-options.json +1 -1
- package/chunks/auth-mfa-enrollment-submit.json +1 -1
- package/chunks/auth-mfa-enrollment.json +224 -2
- package/chunks/auth-mfa-fallback-actions.json +1 -1
- package/chunks/auth-mfa-recovery.json +1 -1
- package/chunks/auth-new-password-form.json +1 -1
- package/chunks/auth-new-password.json +156 -2
- package/chunks/auth-oauth-fallback-actions.json +1 -1
- package/chunks/auth-oauth-interstitial.json +1 -1
- package/chunks/auth-password-challenge.json +1 -1
- package/chunks/auth-password-reset-form.json +1 -1
- package/chunks/auth-password-reset.json +151 -1
- package/chunks/auth-profile-form.json +1 -1
- package/chunks/auth-profile-setup.json +1 -1
- package/chunks/auth-reset-sent.json +1 -1
- package/chunks/auth-session-expired-actions.json +1 -1
- package/chunks/auth-session-expired.json +1 -1
- package/chunks/auth-signin-card-email.json +190 -2
- package/chunks/auth-signin-card-magic-link.json +119 -2
- package/chunks/auth-signin-card-mfa.json +162 -1
- package/chunks/auth-signin-card-otp.json +116 -2
- package/chunks/auth-signin-card-password.json +202 -2
- package/chunks/auth-signin-card-recovery.json +1 -1
- package/chunks/auth-signout-actions.json +1 -1
- package/chunks/auth-signout.json +1 -1
- package/chunks/auth-signup-email-entry.json +1 -1
- package/chunks/auth-signup-entry.json +191 -1
- package/chunks/auth-signup-social-auths.json +1 -1
- package/chunks/auth-signup-verify.json +1 -1
- package/chunks/auth-social-auths.json +1 -1
- package/chunks/auth-sso-providers.json +1 -1
- package/chunks/auth-sso-required.json +1 -1
- package/chunks/auth-team-invite.json +1 -1
- package/chunks/card-header-with-description.json +12 -0
- package/chunks/chat-page-shell.json +1 -1
- package/chunks/chat-streaming-surface.json +1 -1
- package/chunks/command-palette.json +1 -1
- package/chunks/commerce-pricing-tiers.json +1 -1
- package/chunks/conversion-funnel-6step.json +1 -1
- package/chunks/dashboard-acquisition-panel.json +162 -1
- package/chunks/dashboard-admin-page.json +2879 -4
- package/chunks/dashboard-audience-kpis.json +1 -1
- package/chunks/dashboard-audience-panel.json +488 -1
- package/chunks/dashboard-behavior-panel.json +91 -1
- package/chunks/dashboard-chart-recent.json +474 -3
- package/chunks/dashboard-cohort-retention.json +1 -1
- package/chunks/dashboard-conversion-panel.json +196 -1
- package/chunks/dashboard-country-list.json +1 -1
- package/chunks/dashboard-filter-bar.json +1 -1
- package/chunks/dashboard-funnel.json +1 -1
- package/chunks/dashboard-kpi-grid.json +1 -1
- package/chunks/dashboard-notifications-feed.json +1 -1
- package/chunks/dashboard-notifications-panel.json +383 -1
- package/chunks/dashboard-overview-panel.json +1363 -1
- package/chunks/dashboard-page-header.json +140 -1
- package/chunks/dashboard-pages-table.json +1 -1
- package/chunks/dashboard-quick-actions.json +1 -1
- package/chunks/dashboard-reports-panel.json +97 -1
- package/chunks/dashboard-reports-table.json +1 -1
- package/chunks/dashboard-spark-cards.json +1 -1
- package/chunks/dashboard-storage-card.json +1 -1
- package/chunks/dashboard-tabs.json +1 -1
- package/chunks/dashboard-team-actions-storage.json +502 -1
- package/chunks/dashboard-team-list.json +1 -1
- package/chunks/dashboard-traffic-channels.json +1 -1
- package/chunks/dashboard-transactions-table.json +1 -1
- package/chunks/destructive-confirm-modal.json +1 -1
- package/chunks/doc-editor-shell.json +1 -1
- package/chunks/drawer-2fa-key.json +1 -1
- package/chunks/drawer-2fa-sms.json +1 -1
- package/chunks/drawer-2fa-totp.json +1 -1
- package/chunks/drawer-cancel-sub.json +1 -1
- package/chunks/drawer-change-plan.json +1 -1
- package/chunks/drawer-custom-roles.json +5 -3
- package/chunks/drawer-data-start.json +1 -1
- package/chunks/drawer-delete-account.json +1 -1
- package/chunks/drawer-delete-workspace.json +1 -1
- package/chunks/drawer-discord.json +1 -1
- package/chunks/drawer-figma.json +1 -1
- package/chunks/drawer-first-dashboard.json +1 -1
- package/chunks/drawer-gcal.json +1 -1
- package/chunks/drawer-github.json +5 -3
- package/chunks/drawer-invite.json +1 -1
- package/chunks/drawer-payment-method.json +1 -1
- package/chunks/drawer-report.json +1 -1
- package/chunks/drawer-revoke-session.json +1 -1
- package/chunks/drawer-role.json +1 -1
- package/chunks/drawer-slack.json +1 -1
- package/chunks/drawer-smtp.json +5 -3
- package/chunks/drawer-source.json +1 -1
- package/chunks/drawer-transaction.json +1 -1
- package/chunks/editor-code-pane.json +1 -1
- package/chunks/editor-page-shell.json +1 -1
- package/chunks/editor-preview-pane.json +1 -1
- package/chunks/error-404-actions.json +1 -1
- package/chunks/error-404.json +161 -3
- package/chunks/error-500-actions.json +1 -1
- package/chunks/error-500.json +166 -3
- package/chunks/error-maintenance-actions.json +1 -1
- package/chunks/error-maintenance.json +158 -3
- package/chunks/error-page-shell.json +1 -1
- package/chunks/footer-primary-only.json +12 -0
- package/chunks/form-page-shell.json +1 -1
- package/chunks/gallery-page-shell.json +1 -1
- package/chunks/icon-text-row.json +16 -0
- package/chunks/image-tile.json +12 -0
- package/chunks/kanban-board-3col.json +5 -3
- package/chunks/kanban-page-shell.json +1 -1
- package/chunks/labeled-textarea.json +14 -0
- package/chunks/linked-record-row.json +57 -0
- package/chunks/marketing-hero-cta.json +1 -1
- package/chunks/marketing-page-shell.json +1 -1
- package/chunks/member-edit-drawer.json +1 -1
- package/chunks/metadata-description-list.json +14 -0
- package/chunks/onb-completion.json +1 -1
- package/chunks/onb-extension-install.json +1 -1
- package/chunks/onb-hero-welcome.json +1 -1
- package/chunks/onb-import-picker.json +1 -1
- package/chunks/onb-mobile-handoff.json +1 -1
- package/chunks/onb-notification-prefs.json +1 -1
- package/chunks/onb-persona-picker.json +1 -1
- package/chunks/onb-provider-tiles.json +1 -1
- package/chunks/onb-settings-review.json +1 -1
- package/chunks/onb-step-footer.json +1 -1
- package/chunks/onb-step-header.json +1 -1
- package/chunks/onb-step-progress.json +1 -1
- package/chunks/onb-step-shell.json +249 -1
- package/chunks/onb-story-pane.json +1 -1
- package/chunks/onb-tutorial-steps.json +1 -1
- package/chunks/playground-a2ui.json +1 -1
- package/chunks/playground-app-shell.json +2 -2
- package/chunks/playground-chat.json +2 -2
- package/chunks/playground-construct-canvas.json +4 -6
- package/chunks/playground-gen-ui.json +2 -2
- package/chunks/playground-render-preview.json +1 -1
- package/chunks/playground-streams-bridge.json +1 -1
- package/chunks/playground-table-toolbar.json +1 -1
- package/chunks/reg-address-form.json +1 -1
- package/chunks/reg-billing-card.json +1 -1
- package/chunks/reg-brand-scrape.json +1 -1
- package/chunks/reg-departments-toggle.json +1 -1
- package/chunks/reg-extended-profile.json +1 -1
- package/chunks/reg-final-done.json +1 -1
- package/chunks/reg-helpdesk-grid.json +1 -1
- package/chunks/reg-import-picker.json +1 -1
- package/chunks/reg-integrations-grid.json +1 -1
- package/chunks/reg-invite-form.json +1 -1
- package/chunks/reg-legal-entity.json +1 -1
- package/chunks/reg-org-chart-review.json +1 -1
- package/chunks/reg-profile-identity.json +1 -1
- package/chunks/reg-step-footer.json +1 -1
- package/chunks/reg-step-header.json +1 -1
- package/chunks/reg-step-progress.json +1 -1
- package/chunks/reg-step-shell.json +565 -1
- package/chunks/reg-story-pane.json +1 -1
- package/chunks/reg-success-summary.json +1 -1
- package/chunks/reg-team-size.json +1 -1
- package/chunks/reg-usecase-picker.json +1 -1
- package/chunks/reg-workspace-name.json +1 -1
- package/chunks/section-with-stack.json +12 -0
- package/chunks/settings-appearance.json +26 -0
- package/chunks/settings-billing-plan.json +1 -1
- package/chunks/settings-general-form.json +1 -1
- package/chunks/settings-integrations.json +154 -3
- package/chunks/settings-members-invite.json +5 -3
- package/chunks/settings-notifications.json +1 -1
- package/chunks/settings-page-shell.json +1 -1
- package/chunks/settings-profile-security.json +1 -1
- package/chunks/text-card.json +14 -0
- package/chunks/user-identity-row.json +16 -0
- package/chunks/user-profile-card.json +1 -1
- package/chunks/users-table-badge.json +1 -1
- package/compositions/agent/ai-streaming-response.json +55 -9
- package/compositions/agent/alert-banner.json +46 -10
- package/compositions/agent/chat-interface.json +15 -7
- package/compositions/agent/command-palette.json +2 -2
- package/compositions/agent/empty-state.json +70 -11
- package/compositions/agent/error-state-retry.json +100 -17
- package/compositions/agent/loading-skeleton.json +76 -12
- package/compositions/agent/notification-preferences.json +386 -23
- package/compositions/agent/toast-stack.json +42 -7
- package/compositions/data/activity-feed.json +231 -17
- package/compositions/data/audit-log-viewer.json +453 -44
- package/compositions/data/bookmark-list.json +188 -16
- package/compositions/data/bulk-action-toolbar.json +137 -19
- package/compositions/data/changelog-feed.json +296 -30
- package/compositions/data/chart-dashboard.json +96 -11
- package/compositions/data/cohort-retention.json +392 -40
- package/compositions/data/column-manager.json +316 -52
- package/compositions/data/data-table-paginated.json +96 -18
- package/compositions/data/email-inbox-list.json +224 -13
- package/compositions/data/funnel-analytics.json +424 -26
- package/compositions/data/heatmap-calendar.json +140 -27
- package/compositions/data/invoice-table.json +107 -18
- package/compositions/data/kpi-overview.json +187 -17
- package/compositions/data/notification-center.json +224 -16
- package/compositions/data/object-inspector.json +463 -43
- package/compositions/data/product-specs-card.json +66 -12
- package/compositions/data/progress-tracker.json +140 -13
- package/compositions/data/review-card.json +94 -14
- package/compositions/data/saved-views-filter-bar.json +232 -37
- package/compositions/data/shopping-cart-summary.json +173 -21
- package/compositions/data/stat-card-dashboard.json +219 -18
- package/compositions/data/status-page.json +337 -30
- package/compositions/data/virtualized-table.json +269 -38
- package/compositions/data/weather-widget.json +77 -13
- package/compositions/forms/change-password-form.json +123 -16
- package/compositions/forms/color-picker-panel.json +85 -11
- package/compositions/forms/contact-form.json +127 -17
- package/compositions/forms/credit-card-payment-form.json +137 -16
- package/compositions/forms/data-import-mapper.json +244 -33
- package/compositions/forms/data-import-wizard.json +268 -29
- package/compositions/forms/date-time-picker-form.json +114 -13
- package/compositions/forms/destructive-confirm.json +206 -21
- package/compositions/forms/feedback-form.json +96 -14
- package/compositions/forms/file-upload-form.json +82 -11
- package/compositions/forms/login-form.json +122 -14
- package/compositions/forms/multi-step-wizard.json +133 -15
- package/compositions/forms/newsletter-subscription-form.json +83 -12
- package/compositions/forms/otp-verification-form.json +88 -13
- package/compositions/forms/password-reset-form.json +83 -12
- package/compositions/forms/permission-matrix.json +177 -28
- package/compositions/forms/profile-edit-form.json +125 -16
- package/compositions/forms/radio-group-form.json +110 -15
- package/compositions/forms/search-filters.json +112 -13
- package/compositions/forms/settings-toggles-page.json +188 -16
- package/compositions/forms/signup-form.json +129 -17
- package/compositions/forms/slider-range-form.json +65 -10
- package/compositions/forms/tag-input-form.json +89 -14
- package/compositions/forms/team-members-rbac.json +669 -107
- package/compositions/layout/accordion-settings.json +450 -42
- package/compositions/layout/badge-variants-display.json +121 -18
- package/compositions/layout/bento-overview.json +399 -33
- package/compositions/layout/calendar-month-view.json +96 -30
- package/compositions/layout/code-block.json +65 -11
- package/compositions/layout/comparison-table.json +113 -21
- package/compositions/layout/divider-with-label.json +40 -8
- package/compositions/layout/drawer-panel.json +105 -12
- package/compositions/layout/embed-iframe.json +62 -12
- package/compositions/layout/faq-accordion.json +35 -28
- package/compositions/layout/feature-grid.json +197 -22
- package/compositions/layout/footer-nav.json +188 -23
- package/compositions/layout/hero-cta.json +69 -13
- package/compositions/layout/image-gallery.json +112 -13
- package/compositions/layout/image-with-caption.json +48 -9
- package/compositions/layout/kanban-board.json +199 -31
- package/compositions/layout/keyboard-shortcuts.json +145 -12
- package/compositions/layout/markdown-editor-preview.json +6 -6
- package/compositions/layout/media-player.json +85 -13
- package/compositions/layout/modal-form.json +97 -12
- package/compositions/layout/onboarding-checklist.json +92 -14
- package/compositions/layout/popover-tooltip.json +74 -12
- package/compositions/layout/pricing-tiers.json +229 -31
- package/compositions/layout/product-card.json +97 -17
- package/compositions/layout/sidebar-layout.json +157 -16
- package/compositions/layout/tabs-panel.json +115 -13
- package/compositions/layout/testimonial-grid.json +240 -23
- package/compositions/layout/three-pane-shell.json +278 -63
- package/compositions/layout/toolbar-actions.json +81 -13
- package/compositions/navigation/nav-menu-with-icons.json +119 -14
- package/compositions/navigation/pagination-controls.json +2 -2
- package/compositions/navigation/workspace-switcher.json +296 -22
- package/compositions/settings/api-keys.json +592 -47
- package/compositions/settings/feature-flags.json +423 -22
- package/compositions/settings/integrations-gallery.json +839 -44
- package/compositions/settings/session-device-mgmt.json +619 -42
- package/compositions/settings/usage-quota-meter.json +214 -23
- package/compositions/settings/webhooks.json +429 -45
- package/package.json +2 -4
- package/patterns/agent/command-palette.json +1 -1
- package/patterns/agent/loading-skeleton.json +0 -6
- package/patterns/agent/toast-notification.json +6 -9
- package/patterns/data/admin-dashboard-with-charts.json +0 -4
- package/patterns/data/api-key-table.json +1 -1
- package/patterns/data/bookmark-list-categories.json +537 -128
- package/patterns/data/dashboard.json +3 -3
- package/patterns/data/data-table-view.json +34 -10
- package/patterns/data/email-inbox.json +22 -22
- package/patterns/data/event-calendar-details.json +20 -22
- package/patterns/data/inventory-table.json +1 -1
- package/patterns/data/leaderboard.json +1 -1
- package/patterns/data/notification-center.json +57 -25
- package/patterns/data/onboarding-checklist.json +10 -35
- package/patterns/data/order-tracking.json +8 -8
- package/patterns/data/pagination-nav.json +2 -2
- package/patterns/data/progress-dashboard.json +4 -16
- package/patterns/data/progress-tracker.json +3 -6
- package/patterns/data/restaurant-menu.json +241 -59
- package/patterns/forms/auth-signup.json +5 -13
- package/patterns/forms/bleed-design-settings.json +3 -11
- package/patterns/forms/credit-card-payment.json +8 -8
- package/patterns/forms/data-import.json +1 -2
- package/patterns/forms/login-form.json +4 -12
- package/patterns/forms/notification-filters.json +19 -68
- package/patterns/forms/notification-preferences.json +125 -39
- package/patterns/forms/otp-verification.json +1 -2
- package/patterns/forms/password-reset.json +1 -1
- package/patterns/forms/radio-group-selection.json +13 -45
- package/patterns/forms/radio-group.json +11 -35
- package/patterns/forms/survey-rating-scales.json +41 -121
- package/patterns/forms/two-factor-auth.json +211 -61
- package/patterns/forms/wizard-steps.json +32 -9
- package/patterns/layout/accordion-settings.json +63 -119
- package/patterns/layout/avatar-group.json +19 -40
- package/patterns/layout/badge-showcase.json +51 -89
- package/patterns/layout/code-block.json +9 -15
- package/patterns/layout/cta-banner.json +9 -17
- package/patterns/layout/divider-label.json +6 -10
- package/patterns/layout/drawer-panel.json +29 -48
- package/patterns/layout/embed-content.json +7 -9
- package/patterns/layout/feature-carousel.json +20 -20
- package/patterns/layout/feature-grid.json +30 -56
- package/patterns/layout/hero-section.json +18 -26
- package/patterns/layout/image-carousel.json +12 -12
- package/patterns/layout/kbd-shortcuts.json +6 -6
- package/patterns/layout/popover-menu.json +23 -27
- package/patterns/layout/pricing-tiers.json +50 -96
- package/patterns/layout/product-carousel.json +24 -24
- package/patterns/layout/tabs-panels.json +29 -55
- package/patterns/layout/team-carousel.json +16 -16
- package/patterns/layout/testimonials-carousel.json +12 -12
- package/patterns/layout/testimonials-grid.json +54 -92
- package/patterns/layout/toolbar-buttons.json +42 -70
- package/patterns/layout/tooltip-buttons.json +26 -44
- package/exemplars/AUDIT-REPORT.md +0 -116
- package/exemplars/README.md +0 -49
- package/exemplars/_shell.css +0 -88
- package/exemplars/blocks-reference.md +0 -409
- package/exemplars/index.html +0 -21
- package/exemplars/prose/auth-login/auth-login.yaml +0 -38
- package/exemplars/prose/auth-login/index.html +0 -542
- package/exemplars/prose/cta/README.md +0 -3
- package/exemplars/prose/cta/cta.yaml +0 -38
- package/exemplars/prose/cta/data.json +0 -6
- package/exemplars/prose/cta/index.html +0 -125
- package/exemplars/prose/feature-grid/README.md +0 -3
- package/exemplars/prose/feature-grid/data.json +0 -13
- package/exemplars/prose/feature-grid/feature-grid.yaml +0 -35
- package/exemplars/prose/feature-grid/index.html +0 -93
- package/exemplars/prose/footer/README.md +0 -3
- package/exemplars/prose/footer/data.json +0 -10
- package/exemplars/prose/footer/footer.yaml +0 -32
- package/exemplars/prose/footer/index.html +0 -109
- package/exemplars/prose/hero/README.md +0 -3
- package/exemplars/prose/hero/data.json +0 -6
- package/exemplars/prose/hero/hero.yaml +0 -38
- package/exemplars/prose/hero/index.html +0 -217
- package/exemplars/prose/pricing/README.md +0 -3
- package/exemplars/prose/pricing/data.json +0 -9
- package/exemplars/prose/pricing/index.html +0 -298
- package/exemplars/prose/pricing/pricing.yaml +0 -38
- package/exemplars/prose/steps/README.md +0 -3
- package/exemplars/prose/steps/data.json +0 -31
- package/exemplars/prose/steps/index.html +0 -176
- package/exemplars/prose/steps/setup.js +0 -12
- package/exemplars/prose/steps/steps.yaml +0 -38
- package/exemplars/prose/testimonials/README.md +0 -3
- package/exemplars/prose/testimonials/data.json +0 -14
- package/exemplars/prose/testimonials/index.html +0 -297
- package/exemplars/prose/testimonials/testimonials.yaml +0 -33
- package/exemplars/ui/auth-login/auth-login.yaml +0 -38
- package/exemplars/ui/auth-login/index.html +0 -372
- package/fragments/_schema.json +0 -72
- package/fragments/action/dual-cta-row.json +0 -29
- package/fragments/action/dual-cta-row.yaml +0 -34
- package/fragments/action/footer-cancel-save.json +0 -31
- package/fragments/action/footer-cancel-save.yaml +0 -34
- package/fragments/action/footer-primary-only.json +0 -23
- package/fragments/action/footer-primary-only.yaml +0 -26
- package/fragments/content/calendar-day-cell.json +0 -29
- package/fragments/content/column-config-atom.json +0 -121
- package/fragments/content/credential-entry-atom.json +0 -126
- package/fragments/content/directory-entry-atom.json +0 -148
- package/fragments/content/email-row.json +0 -35
- package/fragments/content/email-row.yaml +0 -43
- package/fragments/content/faq-item.json +0 -54
- package/fragments/content/health-entry-atom.json +0 -85
- package/fragments/content/icon-text-row.json +0 -29
- package/fragments/content/icon-text-row.yaml +0 -36
- package/fragments/content/icon-title-description.json +0 -30
- package/fragments/content/icon-title-description.yaml +0 -37
- package/fragments/content/image-tile.json +0 -28
- package/fragments/content/image-tile.yaml +0 -32
- package/fragments/content/incident-row.json +0 -107
- package/fragments/content/kbd-shortcut-row.json +0 -29
- package/fragments/content/kbd-shortcut-row.yaml +0 -33
- package/fragments/content/key-value-row.json +0 -29
- package/fragments/content/key-value-row.yaml +0 -36
- package/fragments/content/labeled-progress.json +0 -29
- package/fragments/content/labeled-progress.yaml +0 -33
- package/fragments/content/link-list-column.json +0 -33
- package/fragments/content/link-list-column.yaml +0 -41
- package/fragments/content/linked-record-row.json +0 -95
- package/fragments/content/marketplace-tile-atom.json +0 -147
- package/fragments/content/metadata-description-list.json +0 -28
- package/fragments/content/metadata-description-list.yaml +0 -36
- package/fragments/content/pending-invite-row.json +0 -113
- package/fragments/content/release-entry.json +0 -155
- package/fragments/content/rollout-entry-atom.json +0 -168
- package/fragments/content/signed-in-entry-atom.json +0 -157
- package/fragments/content/stage-entry-atom.json +0 -115
- package/fragments/content/stat-card.json +0 -31
- package/fragments/content/stat-card.yaml +0 -39
- package/fragments/content/user-identity-row.json +0 -33
- package/fragments/content/user-identity-row.yaml +0 -43
- package/fragments/content/user-notification-row.json +0 -35
- package/fragments/content/user-notification-row.yaml +0 -50
- package/fragments/content/wizard-step-row.json +0 -96
- package/fragments/form/labeled-checkbox.json +0 -26
- package/fragments/form/labeled-checkbox.yaml +0 -36
- package/fragments/form/labeled-input.json +0 -28
- package/fragments/form/labeled-input.yaml +0 -38
- package/fragments/form/labeled-slider.json +0 -34
- package/fragments/form/labeled-slider.yaml +0 -50
- package/fragments/form/labeled-textarea.json +0 -28
- package/fragments/form/labeled-textarea.yaml +0 -39
- package/fragments/form/labeled-toggle.json +0 -29
- package/fragments/form/labeled-toggle.yaml +0 -43
- package/fragments/layout/card-header-heading.json +0 -35
- package/fragments/layout/card-header-heading.yaml +0 -27
- package/fragments/layout/card-header-with-badge.json +0 -30
- package/fragments/layout/card-header-with-badge.yaml +0 -40
- package/fragments/layout/card-header-with-description.json +0 -29
- package/fragments/layout/card-header-with-description.yaml +0 -32
- package/fragments/layout/pricing-tier-card.json +0 -37
- package/fragments/layout/pricing-tier-card.yaml +0 -50
- package/fragments/layout/section-with-stack.json +0 -46
- package/fragments/layout/section-with-stack.yaml +0 -39
- package/fragments/layout/text-card.json +0 -28
- package/fragments/layout/text-card.yaml +0 -30
package/CHANGELOG.md
CHANGED
|
@@ -19,6 +19,69 @@ gap registry. Consumed by `@adia-ai/a2ui-retrieval` and
|
|
|
19
19
|
|
|
20
20
|
_No pending changes._
|
|
21
21
|
|
|
22
|
+
## [0.4.4] - 2026-05-12
|
|
23
|
+
|
|
24
|
+
### Changed — corpus simplification arc (§36-§51, 2026-05-12)
|
|
25
|
+
|
|
26
|
+
**verify:corpus warns: 993 → 148 (-845, -85%)** across §43-§51. Headline state: composition library boot reports `compositionCount=127, handAuthored=100, annotatedChunks=27`.
|
|
27
|
+
|
|
28
|
+
#### Removed
|
|
29
|
+
|
|
30
|
+
- **`corpus/exemplars/` retired (§36).** -3.4K lines. Exemplars had been speculative records without consumers; replaced by the growing annotated-chunk system.
|
|
31
|
+
- **`corpus/fragments/` retired (§37).** 41 fragment JSON files + schema + categorical indices deleted (-99.6 KB). 85 hand-authored compositions inlined with previously-referenced fragment content (slot machinery removed); 10 fragment shapes migrated to chunks via `data-chunk` markers added in production HTML; remaining 29 fragments dropped as speculative/superseded. Net: 3 corpus formats → 2.
|
|
32
|
+
|
|
33
|
+
#### Added
|
|
34
|
+
|
|
35
|
+
- **`data-chunk-*` source-HTML annotation system (§40).** Chunks can now carry retrieval metadata authored directly on production HTML elements:
|
|
36
|
+
- `data-chunk-kind="<page|panel|block|field>"`
|
|
37
|
+
- `data-chunk-domain="<auth|dashboard|error|onboarding|...>"`
|
|
38
|
+
- `data-chunk-description="<concrete one-liner>"`
|
|
39
|
+
- `data-chunk-keywords="<space-separated tokens>"`
|
|
40
|
+
- `data-chunk-related="<comma-separated chunk names>"`
|
|
41
|
+
- `data-chunk-tags-<key>="<value>"` (per-tag attributes for the tags object)
|
|
42
|
+
|
|
43
|
+
Harvester (`scripts/build/harvest-chunks.mjs`, repo-level) reads these and produces chunks with a `metadata` field. Index schema bumped `@1` → `@2` to surface metadata for retrieval-without-load.
|
|
44
|
+
|
|
45
|
+
- **Nested-expand-then-transpile (§42).** Annotated chunks with nested children get their `<!-- nested: <name> -->` placeholders recursively expanded then transpiled to flat A2UI templates at harvest time, making them retrievable as compositions via zettel. Cycle-safe via `visited` set.
|
|
46
|
+
|
|
47
|
+
- **`verify:corpus` drift validator (§39, wired in §39; observability extended through §47/§51).** Walks every JSON in `corpus/{patterns,compositions,chunks}/**.json` against canonical component schemas. Surfaces unknown-component criticals + unknown-prop / enum-out-of-range / known-hallucination warns. §47 added `data-*` + `aria-*` HTML attribute skip rules; §42 added `annotated-chunk-no-template` warn for chunks with metadata but no template (caught the nested-expansion gaps).
|
|
48
|
+
|
|
49
|
+
- **27 retrievable annotated chunks** seeded across 6 domains (§40 / §45 / §46 / §48):
|
|
50
|
+
- **Settings/data seeds (§40, 3 chunks):** `linked-record-row`, `settings-integrations`, `auth-signin-card-email`.
|
|
51
|
+
- **Auth (§45, 8 chunks):** `auth-signin-card-{password,otp,magic-link,mfa}`, `auth-signup-entry`, `auth-password-reset`, `auth-new-password`, `auth-mfa-enrollment`.
|
|
52
|
+
- **Dashboard (§46, 11 chunks):** `dashboard-admin-page` (427-component template, the full surface), `dashboard-page-header`, `dashboard-{overview,audience,acquisition,behavior,conversion,reports,notifications}-panel`, `dashboard-chart-recent`, `dashboard-team-actions-storage`.
|
|
53
|
+
- **Error + onboarding (§48, 5 chunks):** `error-404`, `error-500`, `error-maintenance`, `reg-step-shell`, `onb-step-shell`.
|
|
54
|
+
|
|
55
|
+
#### Changed
|
|
56
|
+
|
|
57
|
+
- **Shape B → Shape A codemod (§43, -486 warns).** 475 records / 79 files. Top transformations: `Text.color="muted"` → `variant="caption"` (244 records); `Text.weight="semibold"` → `strong: true` (146 records); `*.attrs: {...}` → flattened to top-level (146 records); `Text.content` → `textContent`, `Button.content` → `text`, `Badge.content` → `text` (84 records); 109 empty `attrs:{}` objects removed; 5 manual-review (Text.color=primary/success — needs design call).
|
|
58
|
+
- **Yaml-gap renames + dead-prop deletes (§44, -301 warns).** 105 records / 48 files. Renames: `Button.block` → `stretch` (23), `Button.ariaLabel` → `aria-label` (16), `Badge.color="primary"` → `variant="primary"` (11, 1:1 mapping), `Table.rows` → `Table.data` (6), `Toast.title` → `Toast.text` (6). Deletes (runtime ignores): `Text.grow` (20, no `:scope[grow]` in text.css), `Progress.max` (15, runtime hardcodes max=100), `Skeleton.variant` (8, runtime silently drops), `Toast.description` (6, runtime only has `text`).
|
|
59
|
+
- **§43 manual-review backlog retired (§50, -42 warns).** 74 records / 25 files. Subagent A's foundational finding: `attrs:{}` has zero runtime effect — no renderer/host spreads it onto the element. So every key inside `attrs:` is dead-letter; flatten or delete is always safe. Promoted 33 records from §43's MANUAL_REVIEW to HIGH-confidence codemod: `Toggle.attrs.checked` → top-level (6), `Text.attrs.muted=true` → `color: "muted"` (17), `Avatar.attrs.alt` → `text` (8, avatar.js:68 auto-mirrors name → `<img alt>`), `Avatar.attrs.fallback` → DELETE (5, redundant with auto-derived initials at avatar.js:96-110), `Divider.attrs.orientation="vertical"` → `vertical: true` (2), `Button.attrs.triggers` → DELETE (1, hallucinated wiring). Companion yaml-gap renames (§50): `Kbd.text`/`Kbd.keys` → `textContent` (10), `Pagination.totalPages`/`currentPage` → `total`/`page` (6), `Divider.orientation` → `vertical: true` (3), `Input.icon` → `prefix` (4), `Option.text` → `heading` (5).
|
|
60
|
+
- **Search → Input migration (§42, 5 critical → 0).** 5 compositions migrated from deprecated `Search` component to `Input type="search" prefix="magnifying-glass"`. `Search` deliberately remains absent from the registry per registry.js line 57.
|
|
61
|
+
- **Input.inputMode → Input.inputmode (§51, 3 records).** HTML standard is lowercase `inputmode`. Companion to the §51 renderer kebab-casing fix in `@adia-ai/a2ui-runtime`.
|
|
62
|
+
|
|
63
|
+
### Harvester (`scripts/build/harvest-chunks.mjs`, repo-level)
|
|
64
|
+
|
|
65
|
+
The harvester is repo-tooling (`scripts/build/`), not a corpus package member, but its changes power this arc's corpus output:
|
|
66
|
+
|
|
67
|
+
- **§40 `data-chunk-*` attribute extraction** — reads sibling attributes from `data-chunk` elements; populates the chunk record's `metadata` field.
|
|
68
|
+
- **§42 nested-expand-then-transpile pass** — after collection, recursively expands `<!-- nested: <name> -->` placeholders in annotated chunks, then transpiles the expanded HTML to A2UI templates via `transpileHTML(html, { mode: 'instant' })`.
|
|
69
|
+
- **§45 source-aware tier-1 expansion fix** — replaces §42's "first wins" canonical-html rule with directory-aware selection. **Bug**: `auth-card-content` has 24 instances; the 404 page sorted alphabetically first, so EVERY auth chunk silently inlined 404 page content from §41 landing through §45 discovery (smoke tests only checked retrieval strategy, not template content). **Fix**: Tier 1 exact directory match → Tier 2 deepest common directory prefix → Tier 3 alphabetical. Without it, `apps/user-flow/app/auth/sign-in/` shares depth with `apps/user-flow/app/auth/sign-in/mfa/` and tie-break would pick wrong sibling.
|
|
70
|
+
|
|
71
|
+
See root [CHANGELOG.md `[Unreleased]`](../../../CHANGELOG.md) for the cross-cutting arc narrative + [docs/journal/2026/05/2026-05-12.md](../../../docs/journal/2026/05/2026-05-12.md) §§ 36-51 for per-§ details.
|
|
72
|
+
|
|
73
|
+
## [0.4.3] - 2026-05-11
|
|
74
|
+
|
|
75
|
+
### Changed
|
|
76
|
+
|
|
77
|
+
- **`catalog-a2ui_0_9.json` regenerated** to pick up the new `locale` prop on `<input-ui type="number">` from `@adia-ai/web-components@0.4.3`. The yaml `props:` entry drives retrieval signal for locale-aware numeric-input intents.
|
|
78
|
+
- **`chunks/` re-harvested** (181 files touched). New chunk `settings-appearance.json` — multi-instance record covering both `catalog/ui-patterns/app/settings-appearance/` (primary=card-ui, standalone block pattern composing `<theme-panel>`) and `apps/saas/app/settings-page/` (primary=div, Workspace-level Appearance section). Plus a sweep of `captured_at` timestamps + `source:` field updates from the ADR-0026 reorg follow-up. Harvest now produces 180 unique chunks (was 179 in v0.4.2; +1 from the new `settings-appearance` pattern).
|
|
79
|
+
- **Harvester scope fix** — `scripts/build/harvest-chunks.mjs` `SOURCES = ['site/pages', 'apps']` hadn't been updated after ADR-0026 split `apps/` → `apps/` + `playgrounds/` + `catalog/` on 2026-05-10. Every `npm run harvest:chunks` since silently dropped 26 chunks (179 unique → 152 visible) without warning. Fix adds both new sibling directories to SOURCES. (Note: harvest-chunks.mjs lives in the repo's `scripts/build/` tree, not the package; this corpus regen captures the FULL chunk set restored by the fix. Lesson captured as Category E imperative-drift in user-memory entry `feedback_build_script_sources_list_after_rename.md`.)
|
|
80
|
+
|
|
81
|
+
### Lockstep
|
|
82
|
+
|
|
83
|
+
9-package coordinated PATCH cut to v0.4.3. Internal `@adia-ai/*` dep ranges stay at `^0.4.0` (patch-cut asymmetry). Rides alongside `@adia-ai/web-components` v0.4.3 (input-ui locale rewrite) and `@adia-ai/a2ui-compose` + `@adia-ai/a2ui-retrieval` v0.4.3 (process.env browser-compat fix). See root [CHANGELOG.md `## [0.4.3]`](../../../CHANGELOG.md).
|
|
84
|
+
|
|
22
85
|
## [0.4.2] - 2026-05-11
|
|
23
86
|
|
|
24
87
|
### Changed
|
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# @adia-ai/a2ui-corpus
|
|
2
2
|
|
|
3
3
|
Corpus and operational-learning artifacts for the gen-UI pipeline —
|
|
4
|
-
patterns, fragments, compositions,
|
|
4
|
+
patterns, fragments, compositions, chunks, feedback, gaps, eval
|
|
5
5
|
fixtures. Pure data plus the scripts that maintain it. No runtime.
|
|
6
6
|
|
|
7
7
|
> The pipeline reads this package; this package never reads the pipeline.
|
|
@@ -11,40 +11,56 @@ fixtures. Pure data plus the scripts that maintain it. No runtime.
|
|
|
11
11
|
> registry, streams, wiring),
|
|
12
12
|
> [`@adia-ai/a2ui-mcp`](../mcp) for the MCP server.
|
|
13
13
|
|
|
14
|
+
## Install
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
npm install @adia-ai/a2ui-corpus
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
Pure data — typically consumed transitively by [`@adia-ai/a2ui-compose`](../compose) and [`@adia-ai/a2ui-mcp`](../mcp), which list it as a runtime dependency. Direct installs are useful for offline eval tooling or building bespoke retrieval layers.
|
|
21
|
+
|
|
14
22
|
## Dependency direction
|
|
15
23
|
|
|
16
24
|
```
|
|
17
25
|
a2ui-compose ──reads──▶ a2ui-corpus
|
|
18
26
|
a2ui-mcp ──reads──▶ a2ui-compose, a2ui-corpus
|
|
19
|
-
web-components
|
|
27
|
+
web-components ──used-by──▶ apps/, playgrounds/, catalog/ (chunk sources)
|
|
20
28
|
```
|
|
21
29
|
|
|
22
30
|
No back-writes. No circular reads. Web-components ships UI atoms only;
|
|
23
|
-
corpus lives here; runtime lives in a2ui-compose.
|
|
31
|
+
corpus lives here; runtime lives in a2ui-compose. The chunk pipeline
|
|
32
|
+
harvests `data-chunk`-tagged regions from the apps that consume
|
|
33
|
+
web-components, so the read-direction stays one-way.
|
|
24
34
|
|
|
25
35
|
## Glossary
|
|
26
36
|
|
|
27
|
-
|
|
37
|
+
Three overlapping concepts circulate through this package. Knowing which
|
|
28
38
|
is which prevents reading bugs from creeping into authoring.
|
|
29
39
|
|
|
30
40
|
| Term | Source of truth | Granularity | What it carries | Engine that consumes it |
|
|
31
41
|
| --- | --- | --- | --- | --- |
|
|
32
|
-
| **chunk** | `chunks/<id>.json` (one file per chunk) + `_index.json` | Smallest — a single labeled HTML region, harvested via `data-chunk` markers | `html`, `intent`, `domain`, `kind` (`block` / `data-chunk` / `field`), `keywords` | `chunk-zettel` (retrieve → synthesize) |
|
|
42
|
+
| **chunk** | `chunks/<id>.json` (one file per chunk) + `_index.json` | Smallest — a single labeled HTML region, harvested via `data-chunk` markers | `html`, `intent`, `domain`, `kind` (`block` / `data-chunk` / `field`), `keywords` | `chunk-zettel` + `monolithic-pro` (retrieve → synthesize or inject as structural reference) |
|
|
33
43
|
| **pattern** | `patterns/<domain>/<name>.json` | Full-canvas A2UI template (≈whole-page) | A2UI message tree, retrieval keywords, exemplar provenance | `monolithic-instant` / `monolithic-pro` (retrieve → emit verbatim) |
|
|
34
|
-
| **
|
|
35
|
-
| **composition** | `compositions/<domain>/<name>.json` | Pre-assembled set of fragments | Ordered fragment refs, slot wiring, keywords + tags, `links.used_by` | `zettel` (retrieve → emit verbatim or refine) |
|
|
44
|
+
| **composition** | `compositions/<domain>/<name>.json` | Multi-section A2UI surface (between pattern and chunk) | Flat A2UI template, keywords + tags | `zettel` (retrieve → emit verbatim) |
|
|
36
45
|
|
|
37
46
|
**One-line distinctions:**
|
|
38
47
|
|
|
39
|
-
- **Chunk vs
|
|
40
|
-
- **
|
|
41
|
-
- **Composition vs pattern** — both are full-surface, but compositions are *fragment-graph* native (zettel reuses the fragment library) while patterns are *flat A2UI templates* (monolithic emits them whole).
|
|
48
|
+
- **Chunk vs composition** — chunks are *harvested* from `data-chunk` markers in real production HTML. Compositions are *authored* A2UI templates that don't necessarily correspond to a real page surface.
|
|
49
|
+
- **Composition vs pattern** — both are full-surface A2UI trees. Patterns are flat (single-page idea), compositions are multi-section (composed surface). The distinction is fuzzy and may converge over time.
|
|
42
50
|
|
|
43
51
|
**When in doubt, follow the engine:**
|
|
44
52
|
|
|
45
53
|
- Looking at `monolithic-*` retrieval? You want a **pattern**.
|
|
46
|
-
- Looking at `zettel` retrieval? You want a **composition
|
|
47
|
-
- Looking at `chunk-zettel
|
|
54
|
+
- Looking at `zettel` retrieval? You want a **composition**.
|
|
55
|
+
- Looking at `chunk-zettel` or chunk-aware monolithic-pro injection? You want a **chunk**.
|
|
56
|
+
|
|
57
|
+
> **Note:** *Fragments* (atomic A2UI sub-trees with named slots) were
|
|
58
|
+
> a fourth concept until §37 (2026-05-12). They were retired because
|
|
59
|
+
> the slot-binding machinery added authoring + maintenance cost
|
|
60
|
+
> without enough payoff (10/41 fragments had production examples,
|
|
61
|
+
> 31/41 were stale). Their compositions were inlined into flat A2UI
|
|
62
|
+
> templates per Option C (LLM handles parameterization at gen-time).
|
|
63
|
+
> See [docs/journal/2026/05/2026-05-12.md §37](../../../docs/journal/2026/05/2026-05-12.md).
|
|
48
64
|
|
|
49
65
|
## Layout
|
|
50
66
|
|
|
@@ -55,25 +71,16 @@ a2ui/corpus/
|
|
|
55
71
|
│ ├── _components.json canonical name + aliases map (Carousel → Swiper)
|
|
56
72
|
│ └── _taxonomy.json concept synonyms (auth → [login, signup, otp])
|
|
57
73
|
│
|
|
58
|
-
├──
|
|
59
|
-
│ ├── action/ button rows, toolbars, inline CTAs
|
|
60
|
-
│ ├── content/ stat cards, list items, media blocks
|
|
61
|
-
│ ├── form/ field, field-row, field-group recipes
|
|
62
|
-
│ └── layout/ section, grid, card scaffolding
|
|
63
|
-
│
|
|
64
|
-
├── compositions/ named multi-fragment recipes
|
|
74
|
+
├── compositions/ named multi-section A2UI templates (flat,
|
|
65
75
|
│ ├── agent/ data/ form/ layout/ navigation/ settings/
|
|
66
|
-
│ each =
|
|
67
|
-
│
|
|
68
|
-
|
|
69
|
-
│ ├── ui/ component-level exemplars
|
|
70
|
-
│ └── prose/ prose + mixed-content exemplars
|
|
71
|
-
│ extract.js compiles these → chunks/ + catalog
|
|
76
|
+
│ ~100 surfaces; each = flat A2UI template
|
|
77
|
+
│ with keywords + tags. Inlined per §37 —
|
|
78
|
+
│ no $fragment refs remain.
|
|
72
79
|
│
|
|
73
80
|
├── evals/ held-out.jsonl + eval fixtures
|
|
74
|
-
├── chunks/ gen-UI training chunks (
|
|
81
|
+
├── chunks/ gen-UI training chunks (329 unique, ~852 instances)
|
|
75
82
|
│ — harvested from data-chunk markers across
|
|
76
|
-
│ site/pages
|
|
83
|
+
│ site/pages/*, apps/*, playgrounds/*, catalog/*.
|
|
77
84
|
│ Powers compose_from_chunks in @adia-ai/a2ui-mcp.
|
|
78
85
|
├── pages/ extracted full-page A2UI (build output)
|
|
79
86
|
├── feedback/ daily JSONL — user feedback events
|
|
@@ -98,8 +105,7 @@ a2ui/corpus/
|
|
|
98
105
|
|----------------------------|:---------:|:----------------:|----------------------------------------|
|
|
99
106
|
| Patterns (`patterns/`) | ✓ | ✓ | Hand-authored JSON |
|
|
100
107
|
| Fragments/compositions | ✓ | ✓ | Hand-authored JSON |
|
|
101
|
-
|
|
|
102
|
-
| Extracted chunks/pages | ✓ | ✓ | `scripts/extract.js` (from exemplars) |
|
|
108
|
+
| Chunks (`chunks/`) | ✓ | ✓ | `scripts/build/harvest-chunks.mjs` (from `data-chunk` markers across site/pages, apps, playgrounds, catalog) |
|
|
103
109
|
| `catalog-a2ui_0_9.json` | ✓ | ✓ | `scripts/build-catalog.js` (aggregated)|
|
|
104
110
|
| `chunk-embeddings.json` | ✓ | **✗ since 0.2.1**| `scripts/build/embeddings-chunks.mjs` |
|
|
105
111
|
| `pattern-embeddings.json` | ✓ | **✗ since 0.2.1**| `scripts/build/embeddings.mjs` |
|
|
@@ -193,9 +199,9 @@ Script inventory (`scripts/`):
|
|
|
193
199
|
|
|
194
200
|
| Script | Purpose |
|
|
195
201
|
|---------------------------|------------------------------------------------------|
|
|
196
|
-
| `extract.js` |
|
|
197
|
-
| `ingest.js` |
|
|
198
|
-
| `run-pipeline.mjs` |
|
|
202
|
+
| `extract.js` | **Retired** — fed the exemplar→chunks pipeline (removed 2026-05-11). Kept on disk for archaeology only. |
|
|
203
|
+
| `ingest.js` | **Retired** — same vintage. Still imported by `run-pipeline.mjs` for back-compat; no-op without exemplars. |
|
|
204
|
+
| `run-pipeline.mjs` | Pipeline orchestrator — now mostly a no-op on the extract/ingest side; chunks come from `harvest-chunks.mjs` instead |
|
|
199
205
|
| `build-pattern-index.mjs` | Computes the keyword inverted index (`patterns/_index.json`) |
|
|
200
206
|
| `chunk-library.js` | In-memory loader + keyword/semantic search over `chunks/` |
|
|
201
207
|
| `feedback-report.js` | Aggregates feedback JSONL into a readable digest |
|
|
@@ -206,9 +212,9 @@ Repo-side build scripts (not in tarball; run from the workspace root):
|
|
|
206
212
|
|
|
207
213
|
| Script | Purpose |
|
|
208
214
|
|-------------------------------------|----------------------------------------------------------|
|
|
209
|
-
| `npm run harvest:chunks` | Walks site/pages
|
|
215
|
+
| `npm run harvest:chunks` | Walks site/pages/*, apps/*, playgrounds/*, catalog/*, harvests every `[data-chunk]` element, writes `chunks/<name>.json` + `_index.json` |
|
|
210
216
|
| `npm run build:embeddings` | Generates `pattern-embeddings.json` (113 patterns × 1536d) |
|
|
211
|
-
| `npm run build:embeddings:chunks` | Generates `chunk-embeddings.json` (
|
|
217
|
+
| `npm run build:embeddings:chunks` | Generates `chunk-embeddings.json` (329 chunks × 1536d) |
|
|
212
218
|
| `npm run build:embeddings:all` | Both embedding indices in sequence |
|
|
213
219
|
|
|
214
220
|
## Exports
|
|
@@ -223,32 +229,34 @@ import aliases from '@adia-ai/a2ui-corpus/patterns';
|
|
|
223
229
|
// Held-out eval fixture
|
|
224
230
|
import fixture from '@adia-ai/a2ui-corpus/evals/held-out.jsonl?raw';
|
|
225
231
|
|
|
226
|
-
// Exemplar source (for scripts + docs)
|
|
227
|
-
import html from '@adia-ai/a2ui-corpus/exemplars/ui/pricing-tiers.html?raw';
|
|
228
|
-
|
|
229
232
|
// Chunk corpus (since 0.0.3 / 0.0.4)
|
|
230
233
|
import chunkIndex from '@adia-ai/a2ui-corpus/chunks'; // _index.json (metadata only)
|
|
231
234
|
import { searchChunks, searchChunksAsync, getChunk }
|
|
232
235
|
from '@adia-ai/a2ui-corpus/chunk-library'; // in-memory query API
|
|
233
236
|
```
|
|
234
237
|
|
|
235
|
-
## Authoring order — demo page →
|
|
238
|
+
## Authoring order — demo page → `data-chunk` marker → training
|
|
236
239
|
|
|
237
240
|
When adding coverage for a new intent:
|
|
238
241
|
|
|
239
|
-
1. **
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
242
|
+
1. **Live demo page** — author the HTML in
|
|
243
|
+
`apps/<name>/app/<demo>/<demo>.contents.html` (or under
|
|
244
|
+
`playgrounds/` / `catalog/`) using pure primitive composition. See
|
|
245
|
+
repo-root `AGENTS.md`.
|
|
246
|
+
2. **Tag the reusable region** — add `data-chunk="<slug>"` +
|
|
247
|
+
`data-chunk-kind="<kind>"` (block / page / panel / field) on the
|
|
248
|
+
element. The harvester extracts the bounding HTML on the next
|
|
249
|
+
build. See `docs/specs/genui-chunk-marker.md` for the marker
|
|
250
|
+
convention.
|
|
251
|
+
3. **Harvest + ingest** — `npm run harvest:chunks` writes
|
|
252
|
+
`chunks/<slug>.json` and refreshes `_index.json`. `npm run pipeline`
|
|
253
|
+
does the full extract → ingest → catalog refresh.
|
|
254
|
+
4. **Verify** — `npm run eval:diff -- --engine zettel` should still
|
|
255
|
+
hold coverage ≥ 83%, avgScore ≥ 88 (per the regression floors in
|
|
256
|
+
`AGENTS.md`).
|
|
257
|
+
|
|
258
|
+
See `data-flow.md` for the full pipeline (chunks → fragments →
|
|
259
|
+
compositions → feedback).
|
|
252
260
|
|
|
253
261
|
## Regression floors
|
|
254
262
|
|