Some checks failed
Main Confidence / confidence (push) Failing after 1m36s
## Summary - finalize Spec 226 artifacts for AstroDeck inventory planning - include completed planning set: spec, plan, research, data model, quickstart, tasks, checklist, contracts, and inventory outputs - apply consistency fixes from the project analysis review ## Included changes - updated `.github/agents/copilot-instructions.md` from agent-context sync - added/updated all files under `specs/226-astrodeck-inventory-planning/` ## Notes - docs/spec workflow changes only - no runtime code paths changed Co-authored-by: Ahmed Darrazi <ahmed.darrazi@live.de> Reviewed-on: #263
432 lines
18 KiB
Markdown
432 lines
18 KiB
Markdown
# Component Inventory
|
|
|
|
- catalog_id: astrodeck-226-baseline
|
|
- primitive_class: Component
|
|
- entry_count: 30
|
|
|
|
### Primitives
|
|
|
|
#### component.button
|
|
|
|
- entry_id: component.button
|
|
- identifier: Button
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Button.astro
|
|
- functional_role: Shared interaction primitive for links and buttons across CTA surfaces.
|
|
- default_semantics: Reusable primary, secondary, or ghost action control with shared size variants.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Foundational CTA primitive used throughout the site shell and surface sections.
|
|
|
|
#### component.card
|
|
|
|
- entry_id: component.card
|
|
- identifier: Card
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Card.astro
|
|
- functional_role: Wraps grouped content inside consistent rounded surface treatments.
|
|
- default_semantics: Generic surface container with default, accent, and subtle variants plus optional hover behavior.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Central structural primitive for nearly every section family.
|
|
|
|
#### component.container
|
|
|
|
- entry_id: component.container
|
|
- identifier: Container
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Container.astro
|
|
- functional_role: Constrains horizontal width and page gutters.
|
|
- default_semantics: Layout wrapper for content, measure, and wide-width surfaces.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Core layout primitive that stays valid regardless of final surface composition.
|
|
|
|
#### component.grid
|
|
|
|
- entry_id: component.grid
|
|
- identifier: Grid
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Grid.astro
|
|
- functional_role: Provides the standard responsive card and content grid behavior.
|
|
- default_semantics: Responsive grid helper with fixed column presets and shared gap sizing.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Generic layout utility already proven across product, trust, and contact surfaces.
|
|
|
|
#### component.stack
|
|
|
|
- entry_id: component.stack
|
|
- identifier: Stack
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Stack.astro
|
|
- functional_role: Offers vertical spacing control for simple stacked layouts.
|
|
- default_semantics: Flex-column spacing helper with small through extra-large gap presets.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: medium
|
|
- suitability_class: B
|
|
- markers: []
|
|
- notes: Useful as a narrow layout helper, but it is not currently exercised by the shipped route set.
|
|
|
|
#### component.section
|
|
|
|
- entry_id: component.section
|
|
- identifier: Section
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Section.astro
|
|
- functional_role: Normalizes vertical rhythm, tone, and disclosure layering for page sections.
|
|
- default_semantics: Section shell primitive with density, tone, and disclosure-layer options.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Required base primitive for keeping section spacing and surface shells consistent.
|
|
|
|
#### component.section-header
|
|
|
|
- entry_id: component.section-header
|
|
- identifier: SectionHeader
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/SectionHeader.astro
|
|
- functional_role: Standardizes eyebrow, headline, and supporting copy for section intros.
|
|
- default_semantics: Content header primitive with alignment and width controls.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Direct fit for any rebuild surface that needs consistent section framing.
|
|
|
|
#### component.cluster
|
|
|
|
- entry_id: component.cluster
|
|
- identifier: Cluster
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Cluster.astro
|
|
- functional_role: Groups inline items such as CTA pairs and small metadata sets.
|
|
- default_semantics: Flexible inline cluster helper with gap and justification presets.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Reusable utility for CTAs, badges, and compact link groups.
|
|
|
|
#### component.badge
|
|
|
|
- entry_id: component.badge
|
|
- identifier: Badge
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Badge.astro
|
|
- functional_role: Applies small signal labels for eyebrows, dates, and metadata accents.
|
|
- default_semantics: Pill-style label primitive with accent, neutral, signal, and warm tones.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Lightweight signaling primitive used in hero, progress, and ecosystem contexts.
|
|
|
|
#### component.input
|
|
|
|
- entry_id: component.input
|
|
- identifier: Input
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Input.astro
|
|
- functional_role: Provides a text-input shell for the static contact preview.
|
|
- default_semantics: Single-line form-control primitive with readonly support but no labels, validation, or submission wiring.
|
|
- default_visual_character: utility-dense
|
|
- tenantatlas_relevance: medium
|
|
- suitability_class: B
|
|
- markers: []
|
|
- notes: Structurally reusable, but interactive contact flows would need labels, errors, and submission states layered around it.
|
|
|
|
#### component.textarea
|
|
|
|
- entry_id: component.textarea
|
|
- identifier: Textarea
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/primitives/Textarea.astro
|
|
- functional_role: Provides a multiline text shell for the static contact preview.
|
|
- default_semantics: Multiline form-control primitive with readonly support but no validation or helper-state system.
|
|
- default_visual_character: utility-dense
|
|
- tenantatlas_relevance: medium
|
|
- suitability_class: B
|
|
- markers: []
|
|
- notes: Reusable if the rebuild keeps a preview-only contact pattern; richer interaction would need additional semantics.
|
|
|
|
### Content
|
|
|
|
#### component.headline
|
|
|
|
- entry_id: component.headline
|
|
- identifier: Headline
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/Headline.astro
|
|
- functional_role: Provides the shared heading scale across hero, section, and card contexts.
|
|
- default_semantics: Typography primitive for display, page, section, and card-level headings.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Core type primitive for the current visual system and likely any close rebuild variant.
|
|
|
|
#### component.lead
|
|
|
|
- entry_id: component.lead
|
|
- identifier: Lead
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/Lead.astro
|
|
- functional_role: Renders supporting descriptive copy with a shared size scale.
|
|
- default_semantics: Body-copy primitive for hero, card, and legal-prose support text.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Generic copy primitive used across every page family.
|
|
|
|
#### component.eyebrow
|
|
|
|
- entry_id: component.eyebrow
|
|
- identifier: Eyebrow
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/Eyebrow.astro
|
|
- functional_role: Introduces sections and cards with compact uppercase framing labels.
|
|
- default_semantics: Small-type label primitive with accent, neutral, and signal tones.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Shared content primitive that anchors information hierarchy without adding structural complexity.
|
|
|
|
#### component.metric
|
|
|
|
- entry_id: component.metric
|
|
- identifier: Metric
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/Metric.astro
|
|
- functional_role: Packages hero-supporting metrics into small card surfaces.
|
|
- default_semantics: Metric card with a numeric or label-like headline, eyebrow label, and support copy.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely, hero-candidate]
|
|
- notes: Directly useful for hero-adjacent proof or product framing when the rebuild keeps quantified support signals.
|
|
|
|
#### component.primary-cta
|
|
|
|
- entry_id: component.primary-cta
|
|
- identifier: PrimaryCTA
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/PrimaryCTA.astro
|
|
- functional_role: Wraps the primary button treatment used across hero and closing CTA surfaces.
|
|
- default_semantics: Primary action wrapper with optional helper copy and size variants.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Stable CTA wrapper used across hero, progress, footer, and closing conversion surfaces.
|
|
|
|
#### component.secondary-cta
|
|
|
|
- entry_id: component.secondary-cta
|
|
- identifier: SecondaryCTA
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/SecondaryCTA.astro
|
|
- functional_role: Provides the supporting secondary action pattern for route handoffs.
|
|
- default_semantics: Secondary action wrapper with optional helper text and size variants.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Pairs cleanly with the primary CTA pattern and is already part of the approved route handoff model.
|
|
|
|
#### component.feature-item
|
|
|
|
- entry_id: component.feature-item
|
|
- identifier: FeatureItem
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/FeatureItem.astro
|
|
- functional_role: Renders feature or rule cards with optional iconography, metadata, and link treatment.
|
|
- default_semantics: Card-based feature explanation primitive for product, solutions, and integration rule surfaces.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely, product-explainer-candidate]
|
|
- notes: Strong product-explainer building block for any rebuild surface that needs repeatable explanatory cards.
|
|
|
|
#### component.callout
|
|
|
|
- entry_id: component.callout
|
|
- identifier: Callout
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/Callout.astro
|
|
- functional_role: Shows compact narrative or trust-supporting callouts in card form.
|
|
- default_semantics: Callout card with optional eyebrow, headline, supporting copy, and tone selection.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely, trust-candidate]
|
|
- notes: Works well for trust or product-support narratives without demanding a new section pattern.
|
|
|
|
#### component.rich-text
|
|
|
|
- entry_id: component.rich-text
|
|
- identifier: RichText
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/RichText.astro
|
|
- functional_role: Renders structured legal or policy prose as a stack of readable cards.
|
|
- default_semantics: Rich text wrapper for titled legal sections with paragraphs and optional bullet lists.
|
|
- default_visual_character: content-heavy
|
|
- tenantatlas_relevance: medium
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Strong direct-fit primitive for the retained legal and policy routes.
|
|
|
|
#### component.trust-principle-card
|
|
|
|
- entry_id: component.trust-principle-card
|
|
- identifier: TrustPrincipleCard
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/TrustPrincipleCard.astro
|
|
- functional_role: Packages trust claims into a consistent proof-card treatment.
|
|
- default_semantics: Trust card with title, supporting copy, and optional note.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely, trust-candidate]
|
|
- notes: Canonical trust-content primitive already aligned with the explicit trust posture route.
|
|
|
|
#### component.demo-prompt
|
|
|
|
- entry_id: component.demo-prompt
|
|
- identifier: DemoPrompt
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/DemoPrompt.astro
|
|
- functional_role: Highlights suggested conversation prompts for the first contact exchange.
|
|
- default_semantics: Simple supporting card for contact/demo preparation prompts.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: medium
|
|
- suitability_class: B
|
|
- markers: [contact-candidate]
|
|
- notes: Useful for the contact path, but it is tied to a specific conversation-prep pattern rather than a universal route need.
|
|
|
|
#### component.hero-dashboard
|
|
|
|
- entry_id: component.hero-dashboard
|
|
- identifier: HeroDashboard
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/HeroDashboard.astro
|
|
- functional_role: Supplies the product-near illustrative UI mock used in hero compositions.
|
|
- default_semantics: Decorative but content-bearing product mock that implies change history, restore preview, and review queue behavior.
|
|
- default_visual_character: bold-visual
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: C
|
|
- markers: [needs-heavy-adaptation, visual-risk, hero-candidate]
|
|
- notes: The mock is strongly tied to the current TenantAtlas governance narrative and would require coordinated visual and narrative updates before reuse.
|
|
|
|
#### component.integration-badge
|
|
|
|
- entry_id: component.integration-badge
|
|
- identifier: IntegrationBadge
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/IntegrationBadge.astro
|
|
- functional_role: Compresses ecosystem, partner, or integration signals into compact badge cards.
|
|
- default_semantics: Small proof card for ecosystem-fit lists and supporting strips.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: medium
|
|
- suitability_class: C
|
|
- markers: [needs-heavy-adaptation, semantic-risk]
|
|
- notes: Reusable only when the rebuild can substantiate the ecosystem claim; otherwise the component risks overstating platform breadth.
|
|
|
|
#### component.audience-row
|
|
|
|
- entry_id: component.audience-row
|
|
- identifier: AudienceRow
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/AudienceRow.astro
|
|
- functional_role: Shows audience-specific fit through bullets and an optional secondary CTA.
|
|
- default_semantics: Audience-fit card primitive used on the solutions route.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: medium
|
|
- suitability_class: B
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Structurally useful, but the audience framing is supporting rather than core to the first-pass route model.
|
|
|
|
#### component.contact-panel
|
|
|
|
- entry_id: component.contact-panel
|
|
- identifier: ContactPanel
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/content/ContactPanel.astro
|
|
- functional_role: Frames qualified outreach with a short list of who should contact the team and one primary CTA.
|
|
- default_semantics: Accent card for the contact route that packages qualification points and a primary action.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely, contact-candidate]
|
|
- notes: Directly useful for the contact and demo surface because it keeps outreach intent explicit without building a form workflow.
|
|
|
|
### Layout
|
|
|
|
#### component.page-shell
|
|
|
|
- entry_id: component.page-shell
|
|
- identifier: PageShell
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/layout/PageShell.astro
|
|
- functional_role: Wraps every page with SEO metadata, shell attributes, navigation, and footer.
|
|
- default_semantics: Canonical page-shell orchestrator that binds route metadata to the shared layout and shell components.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Central shell component for any rebuild that preserves the current route architecture.
|
|
|
|
#### component.navbar
|
|
|
|
- entry_id: component.navbar
|
|
- identifier: Navbar
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/layout/Navbar.astro
|
|
- functional_role: Provides the sticky primary navigation with desktop and mobile variants.
|
|
- default_semantics: Top-level navigation shell with brand lockup, route links, and a secondary CTA.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely, navigation-candidate]
|
|
- notes: Canonical navigation surface for the current website route set.
|
|
|
|
#### component.footer
|
|
|
|
- entry_id: component.footer
|
|
- identifier: Footer
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/components/layout/Footer.astro
|
|
- functional_role: Provides the closing navigation, trustful footer copy, and final CTA.
|
|
- default_semantics: Footer surface with route-group navigation, lead copy, and a small CTA.
|
|
- default_visual_character: enterprise-neutral
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely, footer-candidate]
|
|
- notes: Canonical footer surface and an explicit part of the rebuild inventory.
|
|
|
|
#### component.base-layout
|
|
|
|
- entry_id: component.base-layout
|
|
- identifier: BaseLayout
|
|
- primitive_class: Component
|
|
- file_ref: apps/website/src/layouts/BaseLayout.astro
|
|
- functional_role: Owns the document shell, metadata tags, font includes, and global CSS import.
|
|
- default_semantics: Top-level HTML layout wrapper for the static Astro site.
|
|
- default_visual_character: minimal
|
|
- tenantatlas_relevance: high
|
|
- suitability_class: A
|
|
- markers: [tenantatlas-likely]
|
|
- notes: Included even though it sits outside the T002 discovery command because PageShell depends on it to render any route.
|