{
  "schemaVersion": "1.0.0",
  "status": "public-agent-starter-pack",
  "purpose": "Machine-readable starter prompts and execution contracts for AI mockup generation and vibe-coding implementation.",
  "global": {
    "stableInputs": [
      "design-system.manifest.json",
      "docs/AI-AGENT-GUIDE.md",
      "docs/components/components.md",
      "docs/patterns/patterns.md",
      "docs/patterns/reference-screen-examples.json",
      "docs/tokens/design-tokens.json",
      "docs/accessibility/component-accessibility-matrix.json",
      "docs/accessibility/component-accessibility-coverage.json"
    ],
    "requiredOutputs": [
      "source documents used",
      "screen intent",
      "layout composition",
      "state coverage",
      "component usage table",
      "accessibility contract",
      "content contract",
      "deferred assumptions"
    ],
    "doNotInfer": [
      "missing product copy",
      "missing token values",
      "customer-like data",
      "undocumented component states",
      "business logic",
      "permission policy"
    ],
    "validationGates": [
      "node tools/sync-publication-bundle.mjs --check",
      "node tools/generate-design-system-manifest.mjs --check",
      "node tools/extract-design-tokens.mjs --check",
      "node tools/generate-accessibility-coverage.mjs --check",
      "node tools/validate-public-design-system.mjs",
      "node tools/generate-agent-starters.mjs --check",
      "node tools/sync-component-index.mjs --check",
      "node tools/sync-pattern-index.mjs --check",
      "node tools/audit-markdown-locales.mjs --check",
      "node tools/validate-self-contained-publication.mjs",
      "node tools/audit-public-references.mjs --check --json",
      "node --check app.js"
    ],
    "mockupStarter": "목표: Logpresso Sonar의 새 비즈니스 로직 화면 mockup을 만든다.\n패턴: 가장 가까운 screen pattern을 먼저 고른다.\n읽기 순서: manifest → AI guide → pattern → parent composition → child family → required foundation.\n유지할 규칙: semantic token first, parent owns structure, child owns recipe, exact state naming.\n반드시 포함: default, loading, empty, error, permission, selected/current state.\n추정 금지: 제품 copy, 고객 데이터, undocumented business logic.",
    "frontendStarter": "목표: Logpresso Sonar 화면을 프론트엔드로 바로 구현한다.\n참조: component preview, code example, agent handoff, pattern constraint, manifest hints.\n구현 규칙: light-first, Pretendard first, radius 8, compact spacing, border/divider hierarchy.\n조합 규칙: shell은 parent composition으로, control recipe는 child family 문서로 결정한다.\n추정 금지: undocumented state, token value, permission policy, API behavior.",
    "locales": {
      "ko": {
        "mockupStarter": "목표: Logpresso Sonar의 새 비즈니스 로직 화면 mockup을 만든다.\n패턴: 가장 가까운 screen pattern을 먼저 고른다.\n읽기 순서: manifest → AI guide → pattern → parent composition → child family → required foundation.\n유지할 규칙: semantic token first, parent owns structure, child owns recipe, exact state naming.\n반드시 포함: default, loading, empty, error, permission, selected/current state.\n추정 금지: 제품 copy, 고객 데이터, undocumented business logic.",
        "frontendStarter": "목표: Logpresso Sonar 화면을 프론트엔드로 바로 구현한다.\n참조: component preview, code example, agent handoff, pattern constraint, manifest hints.\n구현 규칙: light-first, Pretendard first, radius 8, compact spacing, border/divider hierarchy.\n조합 규칙: shell은 parent composition으로, control recipe는 child family 문서로 결정한다.\n추정 금지: undocumented state, token value, permission policy, API behavior."
      },
      "en": {
        "mockupStarter": "Goal: Create a mockup for a new Logpresso Sonar business-logic screen.\nPattern: Choose the closest screen pattern first.\nReading order: manifest → AI guide → pattern → parent composition → child family → required foundation.\nKeep: semantic token first, parent owns structure, child owns recipe, exact state naming.\nMust include: default, loading, empty, error, permission, selected/current state.\nDo not infer: product copy, customer data, undocumented business logic.",
        "frontendStarter": "Goal: Implement a Logpresso Sonar screen directly in frontend code.\nReferences: component preview, code example, agent handoff, pattern constraint, manifest hints.\nImplementation rules: light-first, Pretendard first, radius 8, compact spacing, border/divider hierarchy.\nComposition rules: choose shells from parent composition documents and control recipes from child family documents.\nDo not infer: undocumented state, token value, permission policy, API behavior."
      }
    }
  },
  "patterns": [
    {
      "name": "Dashboard",
      "source": "docs/patterns/dashboard.md",
      "screenIntent": "Show operational posture and drill-down entry points.",
      "requiredStates": [
        "default",
        "loading",
        "empty",
        "partial data unavailable",
        "permission denied",
        "refresh failed"
      ],
      "doNotInfer": [
        "chart data",
        "customer metrics",
        "security event values"
      ],
      "regions": [
        {
          "name": "shell",
          "components": [
            "Page Layout",
            "GNB",
            "SNB"
          ]
        },
        {
          "name": "summary",
          "components": [
            "Widget Container",
            "Badge",
            "ProgressBar"
          ]
        },
        {
          "name": "main grid",
          "components": [
            "Widget Container",
            "Table",
            "List"
          ]
        },
        {
          "name": "empty fallback",
          "components": [
            "Skeleton",
            "Blankslate",
            "InlineAlert"
          ]
        }
      ],
      "starter": "목표: Dashboard 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Show operational posture and drill-down entry points.\n우선 읽을 문서: docs/patterns/dashboard.md, docs/patterns/reference-screen-examples.json\n필수 상태: default, loading, empty, partial data unavailable, permission denied, refresh failed\n추정 금지: chart data, customer metrics, security event values\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: Dashboard 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Show operational posture and drill-down entry points.\n우선 읽을 문서: docs/patterns/dashboard.md, docs/patterns/reference-screen-examples.json\n필수 상태: default, loading, empty, partial data unavailable, permission denied, refresh failed\n추정 금지: chart data, customer metrics, security event values\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the Dashboard pattern.\nScreen intent: Show operational posture and drill-down entry points.\nRead first: docs/patterns/dashboard.md, docs/patterns/reference-screen-examples.json\nRequired states: default, loading, empty, partial data unavailable, permission denied, refresh failed\nDo not infer: chart data, customer metrics, security event values\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "List Detail",
      "source": "docs/patterns/list-detail.md",
      "screenIntent": "Select an item from a list and inspect details in a side surface.",
      "requiredStates": [
        "no selection",
        "selected item",
        "item loading",
        "item not found",
        "permission denied",
        "save failed"
      ],
      "doNotInfer": [
        "detail field order",
        "business action identity",
        "permission policy"
      ],
      "regions": [
        {
          "name": "list controls",
          "components": [
            "Action Bar",
            "Search",
            "Filter & Multi Sort"
          ]
        },
        {
          "name": "list body",
          "components": [
            "List",
            "Table",
            "Card Item",
            "Tag",
            "Badge"
          ]
        },
        {
          "name": "detail",
          "components": [
            "Drawer Container",
            "Disclosure",
            "InlineAlert"
          ]
        }
      ],
      "starter": "목표: List Detail 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Select an item from a list and inspect details in a side surface.\n우선 읽을 문서: docs/patterns/list-detail.md, docs/patterns/reference-screen-examples.json\n필수 상태: no selection, selected item, item loading, item not found, permission denied, save failed\n추정 금지: detail field order, business action identity, permission policy\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: List Detail 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Select an item from a list and inspect details in a side surface.\n우선 읽을 문서: docs/patterns/list-detail.md, docs/patterns/reference-screen-examples.json\n필수 상태: no selection, selected item, item loading, item not found, permission denied, save failed\n추정 금지: detail field order, business action identity, permission policy\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the List Detail pattern.\nScreen intent: Select an item from a list and inspect details in a side surface.\nRead first: docs/patterns/list-detail.md, docs/patterns/reference-screen-examples.json\nRequired states: no selection, selected item, item loading, item not found, permission denied, save failed\nDo not infer: detail field order, business action identity, permission policy\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "Settings / Policy Form",
      "source": "docs/patterns/settings-form.md",
      "screenIntent": "Edit Sonar settings, policies, accounts, or collection models safely with repeated fieldsets, field-level validation, and save/cancel actions.",
      "requiredStates": [
        "pristine",
        "dirty",
        "repeated fieldsets",
        "saving",
        "saved",
        "field-level error",
        "screen validation error",
        "destructive confirmation required"
      ],
      "doNotInfer": [
        "policy defaults",
        "legal copy",
        "save API behavior"
      ],
      "regions": [
        {
          "name": "section shell",
          "components": [
            "Page Layout",
            "Section Container"
          ]
        },
        {
          "name": "repeated fieldsets",
          "components": [
            "Form Layout",
            "fieldLabel",
            "Input",
            "Select",
            "Textarea",
            "Checkbox Group",
            "Radio Group",
            "Switch Group"
          ]
        },
        {
          "name": "fieldset validation feedback",
          "components": [
            "InlineAlert",
            "Toast"
          ]
        },
        {
          "name": "actions",
          "components": [
            "Button",
            "buttonGroup"
          ]
        }
      ],
      "starter": "목표: Settings / Policy Form 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Edit Sonar settings, policies, accounts, or collection models safely with repeated fieldsets, field-level validation, and save/cancel actions.\n우선 읽을 문서: docs/patterns/settings-form.md, docs/patterns/reference-screen-examples.json\n필수 상태: pristine, dirty, repeated fieldsets, saving, saved, field-level error, screen validation error, destructive confirmation required\n추정 금지: policy defaults, legal copy, save API behavior\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: Settings / Policy Form 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Edit Sonar settings, policies, accounts, or collection models safely with repeated fieldsets, field-level validation, and save/cancel actions.\n우선 읽을 문서: docs/patterns/settings-form.md, docs/patterns/reference-screen-examples.json\n필수 상태: pristine, dirty, repeated fieldsets, saving, saved, field-level error, screen validation error, destructive confirmation required\n추정 금지: policy defaults, legal copy, save API behavior\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the Settings / Policy Form pattern.\nScreen intent: Edit Sonar settings, policies, accounts, or collection models safely with repeated fieldsets, field-level validation, and save/cancel actions.\nRead first: docs/patterns/settings-form.md, docs/patterns/reference-screen-examples.json\nRequired states: pristine, dirty, repeated fieldsets, saving, saved, field-level error, screen validation error, destructive confirmation required\nDo not infer: policy defaults, legal copy, save API behavior\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "Data Table Workflow",
      "source": "docs/patterns/data-table-workflow.md",
      "screenIntent": "Search, filter, sort, inspect, and paginate operational data.",
      "requiredStates": [
        "populated",
        "loading",
        "no results",
        "filter no results",
        "query error",
        "selected rows",
        "permission-limited rows"
      ],
      "doNotInfer": [
        "row data",
        "query language",
        "server-side sort behavior"
      ],
      "regions": [
        {
          "name": "controls",
          "components": [
            "Action Bar",
            "Search",
            "Filter & Multi Sort",
            "Button"
          ]
        },
        {
          "name": "table",
          "components": [
            "Table",
            "Table Cell",
            "Badge",
            "Tag",
            "StatusDot"
          ]
        },
        {
          "name": "pagination",
          "components": [
            "Pagination"
          ]
        },
        {
          "name": "fallback",
          "components": [
            "Skeleton",
            "Blankslate",
            "InlineAlert"
          ]
        }
      ],
      "starter": "목표: Data Table Workflow 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Search, filter, sort, inspect, and paginate operational data.\n우선 읽을 문서: docs/patterns/data-table-workflow.md, docs/patterns/reference-screen-examples.json\n필수 상태: populated, loading, no results, filter no results, query error, selected rows, permission-limited rows\n추정 금지: row data, query language, server-side sort behavior\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: Data Table Workflow 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Search, filter, sort, inspect, and paginate operational data.\n우선 읽을 문서: docs/patterns/data-table-workflow.md, docs/patterns/reference-screen-examples.json\n필수 상태: populated, loading, no results, filter no results, query error, selected rows, permission-limited rows\n추정 금지: row data, query language, server-side sort behavior\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the Data Table Workflow pattern.\nScreen intent: Search, filter, sort, inspect, and paginate operational data.\nRead first: docs/patterns/data-table-workflow.md, docs/patterns/reference-screen-examples.json\nRequired states: populated, loading, no results, filter no results, query error, selected rows, permission-limited rows\nDo not infer: row data, query language, server-side sort behavior\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "Audit / Event History",
      "source": "docs/patterns/audit-timeline.md",
      "screenIntent": "Read audit logs, ticket history, and automated response history with severity, actor, target, and detail expansion.",
      "requiredStates": [
        "populated timeline",
        "grouped timeline",
        "event detail expanded",
        "no events",
        "timeline loading",
        "partial event parse error"
      ],
      "doNotInfer": [
        "real event payload",
        "IP address",
        "user identity",
        "security incident facts"
      ],
      "regions": [
        {
          "name": "timeline controls",
          "components": [
            "Action Bar",
            "Search",
            "Filter & Multi Sort"
          ]
        },
        {
          "name": "event list",
          "components": [
            "List",
            "Disclosure",
            "Badge",
            "StatusDot",
            "PriorityIndicator"
          ]
        },
        {
          "name": "event details",
          "components": [
            "Table Cell",
            "InlineMessage",
            "Tag"
          ]
        }
      ],
      "starter": "목표: Audit / Event History 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Read audit logs, ticket history, and automated response history with severity, actor, target, and detail expansion.\n우선 읽을 문서: docs/patterns/audit-timeline.md, docs/patterns/reference-screen-examples.json\n필수 상태: populated timeline, grouped timeline, event detail expanded, no events, timeline loading, partial event parse error\n추정 금지: real event payload, IP address, user identity, security incident facts\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: Audit / Event History 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Read audit logs, ticket history, and automated response history with severity, actor, target, and detail expansion.\n우선 읽을 문서: docs/patterns/audit-timeline.md, docs/patterns/reference-screen-examples.json\n필수 상태: populated timeline, grouped timeline, event detail expanded, no events, timeline loading, partial event parse error\n추정 금지: real event payload, IP address, user identity, security incident facts\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the Audit / Event History pattern.\nScreen intent: Read audit logs, ticket history, and automated response history with severity, actor, target, and detail expansion.\nRead first: docs/patterns/audit-timeline.md, docs/patterns/reference-screen-examples.json\nRequired states: populated timeline, grouped timeline, event detail expanded, no events, timeline loading, partial event parse error\nDo not infer: real event payload, IP address, user identity, security incident facts\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "Workflow / Guided Setup",
      "source": "docs/patterns/wizard-flow.md",
      "screenIntent": "Guide configuration workspaces such as dashboard widget authoring and playbook building with property panels, selectors, canvas or preview, validation, and save actions.",
      "requiredStates": [
        "empty workspace",
        "target selected",
        "preview loaded",
        "validation error",
        "saving",
        "save success",
        "cancel confirmation"
      ],
      "doNotInfer": [
        "node graph behavior",
        "widget query semantics",
        "save side effect"
      ],
      "regions": [
        {
          "name": "properties panel",
          "components": [
            "Form Layout",
            "Input",
            "Select"
          ]
        },
        {
          "name": "selection panel",
          "components": [
            "Tree Panel Composition",
            "Select",
            "Button"
          ]
        },
        {
          "name": "canvas or preview workspace",
          "components": [
            "Page Layout",
            "Blankslate",
            "Widget Container"
          ]
        },
        {
          "name": "toolbar and save actions",
          "components": [
            "Action Bar",
            "Button",
            "iconButtonGroup"
          ]
        }
      ],
      "starter": "목표: Workflow / Guided Setup 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Guide configuration workspaces such as dashboard widget authoring and playbook building with property panels, selectors, canvas or preview, validation, and save actions.\n우선 읽을 문서: docs/patterns/wizard-flow.md, docs/patterns/reference-screen-examples.json\n필수 상태: empty workspace, target selected, preview loaded, validation error, saving, save success, cancel confirmation\n추정 금지: node graph behavior, widget query semantics, save side effect\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: Workflow / Guided Setup 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Guide configuration workspaces such as dashboard widget authoring and playbook building with property panels, selectors, canvas or preview, validation, and save actions.\n우선 읽을 문서: docs/patterns/wizard-flow.md, docs/patterns/reference-screen-examples.json\n필수 상태: empty workspace, target selected, preview loaded, validation error, saving, save success, cancel confirmation\n추정 금지: node graph behavior, widget query semantics, save side effect\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the Workflow / Guided Setup pattern.\nScreen intent: Guide configuration workspaces such as dashboard widget authoring and playbook building with property panels, selectors, canvas or preview, validation, and save actions.\nRead first: docs/patterns/wizard-flow.md, docs/patterns/reference-screen-examples.json\nRequired states: empty workspace, target selected, preview loaded, validation error, saving, save success, cancel confirmation\nDo not infer: node graph behavior, widget query semantics, save side effect\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "UX Bulk Action",
      "source": "docs/patterns/ux-baseline/bulk-action.md",
      "screenIntent": "Execute the same action across selected items while preserving selection scope and partial failure feedback.",
      "requiredStates": [
        "idle",
        "selection active",
        "loading",
        "partial success",
        "success",
        "error",
        "permission denied"
      ],
      "doNotInfer": [
        "bulk target semantics",
        "partial failure policy",
        "permission execution scope"
      ],
      "regions": [
        {
          "name": "selection context",
          "components": [
            "Table",
            "Checkbox",
            "Badge"
          ]
        },
        {
          "name": "bulk controls",
          "components": [
            "Action Bar",
            "Button",
            "buttonGroup"
          ]
        },
        {
          "name": "bulk feedback",
          "components": [
            "InlineAlert",
            "Toast",
            "StatusDot"
          ]
        }
      ],
      "starter": "목표: UX Bulk Action 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Execute the same action across selected items while preserving selection scope and partial failure feedback.\n우선 읽을 문서: docs/patterns/ux-baseline/bulk-action.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, selection active, loading, partial success, success, error, permission denied\n추정 금지: bulk target semantics, partial failure policy, permission execution scope\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: UX Bulk Action 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Execute the same action across selected items while preserving selection scope and partial failure feedback.\n우선 읽을 문서: docs/patterns/ux-baseline/bulk-action.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, selection active, loading, partial success, success, error, permission denied\n추정 금지: bulk target semantics, partial failure policy, permission execution scope\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the UX Bulk Action pattern.\nScreen intent: Execute the same action across selected items while preserving selection scope and partial failure feedback.\nRead first: docs/patterns/ux-baseline/bulk-action.md, docs/patterns/reference-screen-examples.json\nRequired states: idle, selection active, loading, partial success, success, error, permission denied\nDo not infer: bulk target semantics, partial failure policy, permission execution scope\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "UX Destructive Action",
      "source": "docs/patterns/ux-baseline/destructive-action.md",
      "screenIntent": "Separate destructive intent from execution with confirmation, cancellation, and recoverable feedback.",
      "requiredStates": [
        "idle",
        "confirming",
        "loading",
        "success",
        "error",
        "permission denied",
        "cancelled"
      ],
      "doNotInfer": [
        "deletion impact",
        "recovery policy",
        "approval workflow"
      ],
      "regions": [
        {
          "name": "destructive entry",
          "components": [
            "Button",
            "InlineAlert"
          ]
        },
        {
          "name": "confirmation",
          "components": [
            "Modal",
            "buttonGroup"
          ]
        },
        {
          "name": "result feedback",
          "components": [
            "Toast",
            "InlineAlert"
          ]
        }
      ],
      "starter": "목표: UX Destructive Action 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Separate destructive intent from execution with confirmation, cancellation, and recoverable feedback.\n우선 읽을 문서: docs/patterns/ux-baseline/destructive-action.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, confirming, loading, success, error, permission denied, cancelled\n추정 금지: deletion impact, recovery policy, approval workflow\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: UX Destructive Action 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Separate destructive intent from execution with confirmation, cancellation, and recoverable feedback.\n우선 읽을 문서: docs/patterns/ux-baseline/destructive-action.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, confirming, loading, success, error, permission denied, cancelled\n추정 금지: deletion impact, recovery policy, approval workflow\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the UX Destructive Action pattern.\nScreen intent: Separate destructive intent from execution with confirmation, cancellation, and recoverable feedback.\nRead first: docs/patterns/ux-baseline/destructive-action.md, docs/patterns/reference-screen-examples.json\nRequired states: idle, confirming, loading, success, error, permission denied, cancelled\nDo not infer: deletion impact, recovery policy, approval workflow\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "UX Loading Feedback",
      "source": "docs/patterns/ux-baseline/loading-feedback.md",
      "screenIntent": "Show that the system is working, block duplicate execution when needed, and transition to success, error, or empty states.",
      "requiredStates": [
        "first loading",
        "refresh loading",
        "long loading",
        "success",
        "error",
        "empty",
        "stale content guarded"
      ],
      "doNotInfer": [
        "processing duration",
        "failure cause",
        "retry side effect"
      ],
      "regions": [
        {
          "name": "feedback area",
          "components": [
            "Skeleton",
            "ProgressBar",
            "InlineAlert"
          ]
        },
        {
          "name": "result surface",
          "components": [
            "Table",
            "Blankslate"
          ]
        },
        {
          "name": "action group",
          "components": [
            "Button",
            "Toast"
          ]
        }
      ],
      "starter": "목표: UX Loading Feedback 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Show that the system is working, block duplicate execution when needed, and transition to success, error, or empty states.\n우선 읽을 문서: docs/patterns/ux-baseline/loading-feedback.md, docs/patterns/reference-screen-examples.json\n필수 상태: first loading, refresh loading, long loading, success, error, empty, stale content guarded\n추정 금지: processing duration, failure cause, retry side effect\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: UX Loading Feedback 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Show that the system is working, block duplicate execution when needed, and transition to success, error, or empty states.\n우선 읽을 문서: docs/patterns/ux-baseline/loading-feedback.md, docs/patterns/reference-screen-examples.json\n필수 상태: first loading, refresh loading, long loading, success, error, empty, stale content guarded\n추정 금지: processing duration, failure cause, retry side effect\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the UX Loading Feedback pattern.\nScreen intent: Show that the system is working, block duplicate execution when needed, and transition to success, error, or empty states.\nRead first: docs/patterns/ux-baseline/loading-feedback.md, docs/patterns/reference-screen-examples.json\nRequired states: first loading, refresh loading, long loading, success, error, empty, stale content guarded\nDo not infer: processing duration, failure cause, retry side effect\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "UX Optimistic Update",
      "source": "docs/patterns/ux-baseline/optimistic-update.md",
      "screenIntent": "Reflect lightweight updates immediately while preserving background confirmation and rollback paths.",
      "requiredStates": [
        "idle",
        "optimistic",
        "background loading",
        "success",
        "rollback",
        "error",
        "conflict"
      ],
      "doNotInfer": [
        "server confirmation timing",
        "rollback availability",
        "conflict resolution policy"
      ],
      "regions": [
        {
          "name": "interactive value",
          "components": [
            "Switch",
            "Checkbox",
            "StatusDot"
          ]
        },
        {
          "name": "background feedback",
          "components": [
            "InlineAlert",
            "Toast"
          ]
        },
        {
          "name": "result surface",
          "components": [
            "Table Cell",
            "Badge"
          ]
        }
      ],
      "starter": "목표: UX Optimistic Update 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Reflect lightweight updates immediately while preserving background confirmation and rollback paths.\n우선 읽을 문서: docs/patterns/ux-baseline/optimistic-update.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, optimistic, background loading, success, rollback, error, conflict\n추정 금지: server confirmation timing, rollback availability, conflict resolution policy\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: UX Optimistic Update 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Reflect lightweight updates immediately while preserving background confirmation and rollback paths.\n우선 읽을 문서: docs/patterns/ux-baseline/optimistic-update.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, optimistic, background loading, success, rollback, error, conflict\n추정 금지: server confirmation timing, rollback availability, conflict resolution policy\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the UX Optimistic Update pattern.\nScreen intent: Reflect lightweight updates immediately while preserving background confirmation and rollback paths.\nRead first: docs/patterns/ux-baseline/optimistic-update.md, docs/patterns/reference-screen-examples.json\nRequired states: idle, optimistic, background loading, success, rollback, error, conflict\nDo not infer: server confirmation timing, rollback availability, conflict resolution policy\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "UX Form Submission",
      "source": "docs/patterns/ux-baseline/form-submission.md",
      "screenIntent": "Connect input, validation, submit eligibility, processing, and final feedback in one form flow.",
      "requiredStates": [
        "idle",
        "dirty",
        "disabled",
        "loading",
        "field error",
        "screen error",
        "success"
      ],
      "doNotInfer": [
        "default policy values",
        "server validation rule",
        "save API behavior"
      ],
      "regions": [
        {
          "name": "input area",
          "components": [
            "Form Layout",
            "Input",
            "Select",
            "Textarea"
          ]
        },
        {
          "name": "validation feedback",
          "components": [
            "fieldLabel",
            "InlineAlert"
          ]
        },
        {
          "name": "actions",
          "components": [
            "Button",
            "buttonGroup",
            "Toast"
          ]
        }
      ],
      "starter": "목표: UX Form Submission 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Connect input, validation, submit eligibility, processing, and final feedback in one form flow.\n우선 읽을 문서: docs/patterns/ux-baseline/form-submission.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, dirty, disabled, loading, field error, screen error, success\n추정 금지: default policy values, server validation rule, save API behavior\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: UX Form Submission 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Connect input, validation, submit eligibility, processing, and final feedback in one form flow.\n우선 읽을 문서: docs/patterns/ux-baseline/form-submission.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, dirty, disabled, loading, field error, screen error, success\n추정 금지: default policy values, server validation rule, save API behavior\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the UX Form Submission pattern.\nScreen intent: Connect input, validation, submit eligibility, processing, and final feedback in one form flow.\nRead first: docs/patterns/ux-baseline/form-submission.md, docs/patterns/reference-screen-examples.json\nRequired states: idle, dirty, disabled, loading, field error, screen error, success\nDo not infer: default policy values, server validation rule, save API behavior\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "UX Inline Editing",
      "source": "docs/patterns/ux-baseline/inline-editing.md",
      "screenIntent": "Edit a value in place while keeping read, editing, commit, cancel, and failure recovery states explicit.",
      "requiredStates": [
        "idle",
        "editing",
        "dirty",
        "loading",
        "success",
        "error",
        "conflict"
      ],
      "doNotInfer": [
        "autosave behavior",
        "conflict resolution",
        "field validation rule"
      ],
      "regions": [
        {
          "name": "read state",
          "components": [
            "Table Cell",
            "Button"
          ]
        },
        {
          "name": "editing state",
          "components": [
            "Input",
            "buttonGroup"
          ]
        },
        {
          "name": "commit feedback",
          "components": [
            "InlineMessage",
            "Toast"
          ]
        }
      ],
      "starter": "목표: UX Inline Editing 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Edit a value in place while keeping read, editing, commit, cancel, and failure recovery states explicit.\n우선 읽을 문서: docs/patterns/ux-baseline/inline-editing.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, editing, dirty, loading, success, error, conflict\n추정 금지: autosave behavior, conflict resolution, field validation rule\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: UX Inline Editing 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Edit a value in place while keeping read, editing, commit, cancel, and failure recovery states explicit.\n우선 읽을 문서: docs/patterns/ux-baseline/inline-editing.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, editing, dirty, loading, success, error, conflict\n추정 금지: autosave behavior, conflict resolution, field validation rule\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the UX Inline Editing pattern.\nScreen intent: Edit a value in place while keeping read, editing, commit, cancel, and failure recovery states explicit.\nRead first: docs/patterns/ux-baseline/inline-editing.md, docs/patterns/reference-screen-examples.json\nRequired states: idle, editing, dirty, loading, success, error, conflict\nDo not infer: autosave behavior, conflict resolution, field validation rule\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "UX Hierarchical Navigation",
      "source": "docs/patterns/ux-baseline/hierarchical-navigation.md",
      "screenIntent": "Preserve current location, parent path, and deeper navigation routes in hierarchical product information architecture.",
      "requiredStates": [
        "idle",
        "current",
        "expanded",
        "collapsed",
        "deep path",
        "not found",
        "permission limited"
      ],
      "doNotInfer": [
        "product IA",
        "menu permission policy",
        "default landing route"
      ],
      "regions": [
        {
          "name": "global context",
          "components": [
            "GNB",
            "SNB"
          ]
        },
        {
          "name": "location indicator",
          "components": [
            "breadcrumb",
            "tabNav"
          ]
        },
        {
          "name": "nested navigation",
          "components": [
            "Disclosure",
            "List"
          ]
        }
      ],
      "starter": "목표: UX Hierarchical Navigation 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Preserve current location, parent path, and deeper navigation routes in hierarchical product information architecture.\n우선 읽을 문서: docs/patterns/ux-baseline/hierarchical-navigation.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, current, expanded, collapsed, deep path, not found, permission limited\n추정 금지: product IA, menu permission policy, default landing route\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: UX Hierarchical Navigation 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Preserve current location, parent path, and deeper navigation routes in hierarchical product information architecture.\n우선 읽을 문서: docs/patterns/ux-baseline/hierarchical-navigation.md, docs/patterns/reference-screen-examples.json\n필수 상태: idle, current, expanded, collapsed, deep path, not found, permission limited\n추정 금지: product IA, menu permission policy, default landing route\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the UX Hierarchical Navigation pattern.\nScreen intent: Preserve current location, parent path, and deeper navigation routes in hierarchical product information architecture.\nRead first: docs/patterns/ux-baseline/hierarchical-navigation.md, docs/patterns/reference-screen-examples.json\nRequired states: idle, current, expanded, collapsed, deep path, not found, permission limited\nDo not infer: product IA, menu permission policy, default landing route\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "UX Empty State Recovery",
      "source": "docs/patterns/ux-baseline/empty-state-recovery.md",
      "screenIntent": "Turn empty results into explanation and next action instead of a dead end.",
      "requiredStates": [
        "initial empty",
        "search no results",
        "filter no results",
        "permission empty",
        "recoverable empty",
        "retry available"
      ],
      "doNotInfer": [
        "empty cause",
        "creation permission",
        "support contact copy"
      ],
      "regions": [
        {
          "name": "result surface",
          "components": [
            "Blankslate",
            "Search"
          ]
        },
        {
          "name": "recovery actions",
          "components": [
            "Button",
            "Action Bar"
          ]
        },
        {
          "name": "explanation",
          "components": [
            "InlineAlert",
            "Tag"
          ]
        }
      ],
      "starter": "목표: UX Empty State Recovery 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Turn empty results into explanation and next action instead of a dead end.\n우선 읽을 문서: docs/patterns/ux-baseline/empty-state-recovery.md, docs/patterns/reference-screen-examples.json\n필수 상태: initial empty, search no results, filter no results, permission empty, recoverable empty, retry available\n추정 금지: empty cause, creation permission, support contact copy\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: UX Empty State Recovery 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Turn empty results into explanation and next action instead of a dead end.\n우선 읽을 문서: docs/patterns/ux-baseline/empty-state-recovery.md, docs/patterns/reference-screen-examples.json\n필수 상태: initial empty, search no results, filter no results, permission empty, recoverable empty, retry available\n추정 금지: empty cause, creation permission, support contact copy\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the UX Empty State Recovery pattern.\nScreen intent: Turn empty results into explanation and next action instead of a dead end.\nRead first: docs/patterns/ux-baseline/empty-state-recovery.md, docs/patterns/reference-screen-examples.json\nRequired states: initial empty, search no results, filter no results, permission empty, recoverable empty, retry available\nDo not infer: empty cause, creation permission, support contact copy\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    },
    {
      "name": "UX Permission Based UI",
      "source": "docs/patterns/ux-baseline/permission-based-ui.md",
      "screenIntent": "Represent allowed, restricted, hidden, disabled, and read-only behavior without inventing permission policy.",
      "requiredStates": [
        "allowed",
        "disabled",
        "hidden",
        "permission denied",
        "read only",
        "request access deferred"
      ],
      "doNotInfer": [
        "permission policy",
        "role names",
        "hide versus disable rule"
      ],
      "regions": [
        {
          "name": "allowed actions",
          "components": [
            "Button",
            "Action Bar"
          ]
        },
        {
          "name": "restricted feedback",
          "components": [
            "Tooltip",
            "InlineAlert",
            "Badge"
          ]
        },
        {
          "name": "permission fallback",
          "components": [
            "Blankslate",
            "Toast"
          ]
        }
      ],
      "starter": "목표: UX Permission Based UI 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Represent allowed, restricted, hidden, disabled, and read-only behavior without inventing permission policy.\n우선 읽을 문서: docs/patterns/ux-baseline/permission-based-ui.md, docs/patterns/reference-screen-examples.json\n필수 상태: allowed, disabled, hidden, permission denied, read only, request access deferred\n추정 금지: permission policy, role names, hide versus disable rule\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions",
      "locales": {
        "ko": {
          "starter": "목표: UX Permission Based UI 패턴을 기준으로 Logpresso Sonar 화면 mockup을 만든다.\n화면 의도: Represent allowed, restricted, hidden, disabled, and read-only behavior without inventing permission policy.\n우선 읽을 문서: docs/patterns/ux-baseline/permission-based-ui.md, docs/patterns/reference-screen-examples.json\n필수 상태: allowed, disabled, hidden, permission denied, read only, request access deferred\n추정 금지: permission policy, role names, hide versus disable rule\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        },
        "en": {
          "starter": "Goal: Create a Logpresso Sonar screen mockup based on the UX Permission Based UI pattern.\nScreen intent: Represent allowed, restricted, hidden, disabled, and read-only behavior without inventing permission policy.\nRead first: docs/patterns/ux-baseline/permission-based-ui.md, docs/patterns/reference-screen-examples.json\nRequired states: allowed, disabled, hidden, permission denied, read only, request access deferred\nDo not infer: permission policy, role names, hide versus disable rule\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions"
        }
      }
    }
  ],
  "components": [
    {
      "name": "GNB",
      "category": "Navigation / Shell",
      "status": "reusable composition pattern",
      "path": "docs/components/GNB.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "SNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: GNB를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/GNB.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "top-level shared shell, child placement와 shell rule 소유",
          "starter": "목표: GNB를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/GNB.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Owns top-level shared shell rules, child placement, and shell rules.",
          "starter": "Goal: Apply GNB to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/GNB.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: SNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "SNB",
      "category": "Navigation / Shell",
      "status": "reusable composition pattern",
      "path": "docs/components/SNB.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: SNB를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/SNB.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "left-side navigation rail, appNav area와 navList 구조 소유",
          "starter": "목표: SNB를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/SNB.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Owns the left-side navigation rail, appNav area, and navList structure.",
          "starter": "Goal: Apply SNB to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/SNB.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Page Layout",
      "category": "Navigation / Shell",
      "status": "reusable composition pattern",
      "path": "docs/components/Page Layout.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Action Bar"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: Page Layout를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Page Layout.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "GNB/SNB/Main/ActionBar/Content region을 배치하는 page-level composition",
          "starter": "목표: Page Layout를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Page Layout.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Places GNB, SNB, main, ActionBar, and content regions.",
          "starter": "Goal: Apply Page Layout to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Page Layout.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Action Bar\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Action Bar",
      "category": "Navigation / Shell",
      "status": "reusable composition pattern",
      "path": "docs/components/Action Bar.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Action Bar를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Action Bar.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "parent composition only, child truth 재정의 금지",
          "starter": "목표: Action Bar를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Action Bar.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Parent composition only; child truth must not be redefined.",
          "starter": "Goal: Apply Action Bar to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Action Bar.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "SNBToggle",
      "category": "Navigation / Shell",
      "status": "local usage",
      "path": "docs/components/SNBToggle.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: SNBToggle를 Logpresso Sonar 화면에 적용한다.\n상태: local usage\n문서: docs/components/SNBToggle.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "local usage",
          "note": "GNB 안 usage-level icon-only control",
          "starter": "목표: SNBToggle를 Logpresso Sonar 화면에 적용한다.\n상태: local usage\n문서: docs/components/SNBToggle.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "local usage",
          "note": "Usage-level icon-only control inside GNB.",
          "starter": "Goal: Apply SNBToggle to a Logpresso Sonar screen.\nStatus: local usage\nDocument: docs/components/SNBToggle.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "UserConsole",
      "category": "Navigation / Shell",
      "status": "local usage",
      "path": "docs/components/UserConsole.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: UserConsole를 Logpresso Sonar 화면에 적용한다.\n상태: local usage\n문서: docs/components/UserConsole.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "local usage",
          "note": "current scope는 entry trigger와 GNB 내 배치만 소유, 구현 전까지 iconButton CSS fallback 사용",
          "starter": "목표: UserConsole를 Logpresso Sonar 화면에 적용한다.\n상태: local usage\n문서: docs/components/UserConsole.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "local usage",
          "note": "Current scope owns only the entry trigger and GNB placement; use iconButton CSS fallback until implementation is confirmed.",
          "starter": "Goal: Apply UserConsole to a Logpresso Sonar screen.\nStatus: local usage\nDocument: docs/components/UserConsole.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "breadcrumb",
      "category": "Navigation / Shell",
      "status": "family canonical",
      "path": "docs/components/breadcrumb.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: breadcrumb를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/breadcrumb.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "path display family",
          "starter": "목표: breadcrumb를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/breadcrumb.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Path display family.",
          "starter": "Goal: Apply breadcrumb to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/breadcrumb.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "tab",
      "category": "Navigation / Shell",
      "status": "family canonical",
      "path": "docs/components/tab.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: tab를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/tab.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "panel/view switching top-tab family",
          "starter": "목표: tab를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/tab.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Panel or view switching top-tab family.",
          "starter": "Goal: Apply tab to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/tab.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "tabNav",
      "category": "Navigation / Shell",
      "status": "family canonical",
      "path": "docs/components/tabNav.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: tabNav를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/tabNav.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "content/modal/drawer strip navigation family",
          "starter": "목표: tabNav를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/tabNav.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Content, modal, and drawer strip navigation family.",
          "starter": "Goal: Apply tabNav to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/tabNav.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "pillTabs",
      "category": "Navigation / Shell",
      "status": "family canonical",
      "path": "docs/components/pillTabs.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: pillTabs를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/pillTabs.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "compact segmented tab family, direction variant 포함",
          "starter": "목표: pillTabs를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/pillTabs.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Compact segmented tab family, including the direction variant.",
          "starter": "Goal: Apply pillTabs to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/pillTabs.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "tabAdd",
      "category": "Navigation / Shell",
      "status": "reusable composition pattern",
      "path": "docs/components/tabAdd.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: tabAdd를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/tabAdd.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "horizontal overflow controls + add shared accessory pattern",
          "starter": "목표: tabAdd를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/tabAdd.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Shared horizontal overflow controls and add accessory pattern.",
          "starter": "Goal: Apply tabAdd to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/tabAdd.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Stepper",
      "category": "Navigation / Shell",
      "status": "reusable composition pattern",
      "path": "docs/components/Stepper.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Hierarchical Navigation"
      ],
      "compositionHints": [
        "GNB",
        "SNB",
        "Action Bar",
        "Page Layout"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Stepper를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Stepper.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "wizard/process step navigation component",
          "starter": "목표: Stepper를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Stepper.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\n추천 조합: GNB, SNB, Action Bar, Page Layout\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Wizard and process step navigation component.",
          "starter": "Goal: Apply Stepper to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Stepper.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action, UX Hierarchical Navigation\nRecommended composition: GNB, SNB, Action Bar, Page Layout\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Button",
      "category": "Actions",
      "status": "family canonical",
      "path": "docs/components/Button.md",
      "relatedPatterns": [
        "UX Destructive Action",
        "UX Form Submission",
        "UX Empty State Recovery",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "iconButton",
        "buttonGroup"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Button를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Button.md\n관련 패턴: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\n추천 조합: iconButton, buttonGroup\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "text button family canonical truth",
          "starter": "목표: Button를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Button.md\n관련 패턴: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\n추천 조합: iconButton, buttonGroup\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Canonical truth for the text button family.",
          "starter": "Goal: Apply Button to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Button.md\nRelated patterns: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\nRecommended composition: iconButton, buttonGroup\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "iconButton",
      "category": "Actions",
      "status": "family canonical",
      "path": "docs/components/iconButton.md",
      "relatedPatterns": [
        "UX Destructive Action",
        "UX Form Submission",
        "UX Empty State Recovery",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Button",
        "buttonGroup"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: iconButton를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/iconButton.md\n관련 패턴: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\n추천 조합: Button, buttonGroup\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "icon-centered sibling family canonical truth",
          "starter": "목표: iconButton를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/iconButton.md\n관련 패턴: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\n추천 조합: Button, buttonGroup\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Canonical truth for the icon-centered sibling family.",
          "starter": "Goal: Apply iconButton to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/iconButton.md\nRelated patterns: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\nRecommended composition: Button, buttonGroup\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "buttonGroup",
      "category": "Actions",
      "status": "reusable composition pattern",
      "path": "docs/components/buttonGroup.md",
      "relatedPatterns": [
        "UX Destructive Action",
        "UX Form Submission",
        "UX Empty State Recovery",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Button",
        "iconButton"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: buttonGroup를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/buttonGroup.md\n관련 패턴: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\n추천 조합: Button, iconButton\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "Button child만 반복하는 same-family group",
          "starter": "목표: buttonGroup를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/buttonGroup.md\n관련 패턴: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\n추천 조합: Button, iconButton\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Same-family group that repeats only Button children.",
          "starter": "Goal: Apply buttonGroup to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/buttonGroup.md\nRelated patterns: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\nRecommended composition: Button, iconButton\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "iconButtonGroup",
      "category": "Actions",
      "status": "reusable composition pattern",
      "path": "docs/components/iconButtonGroup.md",
      "relatedPatterns": [
        "UX Destructive Action",
        "UX Form Submission",
        "UX Empty State Recovery",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Button",
        "iconButton",
        "buttonGroup"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: iconButtonGroup를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/iconButtonGroup.md\n관련 패턴: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\n추천 조합: Button, iconButton, buttonGroup\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "iconButton child만 반복하는 same-family group",
          "starter": "목표: iconButtonGroup를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/iconButtonGroup.md\n관련 패턴: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\n추천 조합: Button, iconButton, buttonGroup\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Same-family group that repeats only iconButton children.",
          "starter": "Goal: Apply iconButtonGroup to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/iconButtonGroup.md\nRelated patterns: UX Destructive Action, UX Form Submission, UX Empty State Recovery, UX Permission Based UI\nRecommended composition: Button, iconButton, buttonGroup\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Input",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/Input.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Input를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Input.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "single-line text entry specialization, Form Field Foundation의 historical field boundary를 Input 계열로 분산 편입",
          "starter": "목표: Input를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Input.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Single-line text entry specialization; the historical Form Field Foundation boundary is distributed into Input-family documents.",
          "starter": "Goal: Apply Input to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Input.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "DateInput",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/DateInput.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: DateInput를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/DateInput.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "single-date field shell family",
          "starter": "목표: DateInput를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/DateInput.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Single-date field shell family.",
          "starter": "Goal: Apply DateInput to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/DateInput.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "DateRangeInput",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/DateRangeInput.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: DateRangeInput를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/DateRangeInput.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "paired date range field shell family",
          "starter": "목표: DateRangeInput를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/DateRangeInput.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Paired date range field shell family.",
          "starter": "Goal: Apply DateRangeInput to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/DateRangeInput.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Search",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/Search.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Empty State Recovery",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Search를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Search.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Empty State Recovery, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "SearchInput family truth + local usage boundary 포함",
          "starter": "목표: Search를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Search.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Empty State Recovery, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Owns SearchInput family truth and local usage boundaries.",
          "starter": "Goal: Apply Search to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Search.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Empty State Recovery, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Select",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/Select.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Select를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Select.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "selection field specialization, attached-actions는 deprecated",
          "starter": "목표: Select를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Select.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Selection field specialization; attached-actions are deprecated.",
          "starter": "Goal: Apply Select to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Select.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Textarea",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/Textarea.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Textarea를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Textarea.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "multiline text entry specialization",
          "starter": "목표: Textarea를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Textarea.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Multiline text entry specialization.",
          "starter": "Goal: Apply Textarea to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Textarea.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "fieldLabel",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/fieldLabel.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: fieldLabel를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/fieldLabel.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "control이 아니라 shared label primitive",
          "starter": "목표: fieldLabel를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/fieldLabel.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Shared label primitive, not a control.",
          "starter": "Goal: Apply fieldLabel to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/fieldLabel.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Field Item",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/Field Item.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/state.md"
      ],
      "starter": "목표: Field Item를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Field Item.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/state.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "compact selected/applied field row",
          "starter": "목표: Field Item를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Field Item.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/state.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Compact selected or applied field row.",
          "starter": "Goal: Apply Field Item to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Field Item.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/state.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Form Layout",
      "category": "Inputs / Search / Selection",
      "status": "reusable composition pattern",
      "path": "docs/components/Form Layout.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: Form Layout를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Form Layout.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "label/control/message/action row를 묶는 form parent composition",
          "starter": "목표: Form Layout를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Form Layout.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Form parent composition for label, control, message, and action row.",
          "starter": "Goal: Apply Form Layout to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Form Layout.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Checkbox",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/Checkbox.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Checkbox를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Checkbox.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "multi-select primitive control",
          "starter": "목표: Checkbox를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Checkbox.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Multi-select primitive control.",
          "starter": "Goal: Apply Checkbox to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Checkbox.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Radio",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/Radio.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Radio를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Radio.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "single-select primitive control",
          "starter": "목표: Radio를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Radio.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Single-select primitive control.",
          "starter": "Goal: Apply Radio to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Radio.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Switch",
      "category": "Inputs / Search / Selection",
      "status": "family canonical",
      "path": "docs/components/Switch.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Optimistic Update",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Switch를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Switch.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Optimistic Update, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "on/off primitive control",
          "starter": "목표: Switch를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Switch.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Optimistic Update, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "On/off primitive control.",
          "starter": "Goal: Apply Switch to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Switch.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Optimistic Update, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Checkbox Group",
      "category": "Inputs / Search / Selection",
      "status": "reusable composition pattern",
      "path": "docs/components/Checkbox Group.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Checkbox Group를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Checkbox Group.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "repeated checkbox row stack",
          "starter": "목표: Checkbox Group를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Checkbox Group.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Repeated checkbox row stack.",
          "starter": "Goal: Apply Checkbox Group to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Checkbox Group.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Radio Group",
      "category": "Inputs / Search / Selection",
      "status": "reusable composition pattern",
      "path": "docs/components/Radio Group.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Radio Group를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Radio Group.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "repeated radio row stack",
          "starter": "목표: Radio Group를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Radio Group.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Repeated radio row stack.",
          "starter": "Goal: Apply Radio Group to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Radio Group.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Switch Group",
      "category": "Inputs / Search / Selection",
      "status": "reusable composition pattern",
      "path": "docs/components/Switch Group.md",
      "relatedPatterns": [
        "Settings / Policy Form",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Loading Feedback",
        "UX Form Submission",
        "UX Inline Editing",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Form Layout",
        "Input",
        "Select",
        "InlineAlert"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Switch Group를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Switch Group.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "repeated switch row stack",
          "starter": "목표: Switch Group를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Switch Group.md\n관련 패턴: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\n추천 조합: Form Layout, Input, Select, InlineAlert\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Repeated switch row stack.",
          "starter": "Goal: Apply Switch Group to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Switch Group.md\nRelated patterns: Settings / Policy Form, Workflow / Guided Setup, UX Bulk Action, UX Loading Feedback, UX Form Submission, UX Inline Editing, UX Permission Based UI\nRecommended composition: Form Layout, Input, Select, InlineAlert\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "dropdownList",
      "category": "Dropdown / List",
      "status": "family canonical",
      "path": "docs/components/dropdownList.md",
      "relatedPatterns": [
        "List Detail",
        "Audit / Event History"
      ],
      "compositionHints": [
        "Menu",
        "List"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md"
      ],
      "starter": "목표: dropdownList를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/dropdownList.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: Menu, List\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "overlay surface family, rowType/hasFooter canonical naming 사용",
          "starter": "목표: dropdownList를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/dropdownList.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: Menu, List\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Overlay surface family that uses canonical rowType and hasFooter naming.",
          "starter": "Goal: Apply dropdownList to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/dropdownList.md\nRelated patterns: List Detail, Audit / Event History\nRecommended composition: Menu, List\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "dropdownCheckboxList",
      "category": "Dropdown / List",
      "status": "family canonical",
      "path": "docs/components/dropdownCheckboxList.md",
      "relatedPatterns": [
        "List Detail",
        "Audit / Event History"
      ],
      "compositionHints": [
        "dropdownList",
        "Menu",
        "List"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md"
      ],
      "starter": "목표: dropdownCheckboxList를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/dropdownCheckboxList.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: dropdownList, Menu, List\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "checkbox selection-row surface family",
          "starter": "목표: dropdownCheckboxList를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/dropdownCheckboxList.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: dropdownList, Menu, List\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Checkbox selection-row surface family.",
          "starter": "Goal: Apply dropdownCheckboxList to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/dropdownCheckboxList.md\nRelated patterns: List Detail, Audit / Event History\nRecommended composition: dropdownList, Menu, List\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "dropdownRadioboxList",
      "category": "Dropdown / List",
      "status": "family canonical",
      "path": "docs/components/dropdownRadioboxList.md",
      "relatedPatterns": [
        "List Detail",
        "Audit / Event History"
      ],
      "compositionHints": [
        "dropdownList",
        "Menu",
        "List"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md"
      ],
      "starter": "목표: dropdownRadioboxList를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/dropdownRadioboxList.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: dropdownList, Menu, List\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "radiobox selection-row surface family",
          "starter": "목표: dropdownRadioboxList를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/dropdownRadioboxList.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: dropdownList, Menu, List\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Radiobox selection-row surface family.",
          "starter": "Goal: Apply dropdownRadioboxList to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/dropdownRadioboxList.md\nRelated patterns: List Detail, Audit / Event History\nRecommended composition: dropdownList, Menu, List\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Menu",
      "category": "Dropdown / List",
      "status": "superseded",
      "path": "docs/components/Menu.md",
      "relatedPatterns": [
        "List Detail",
        "Audit / Event History"
      ],
      "compositionHints": [
        "dropdownList",
        "List"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md"
      ],
      "starter": "목표: Menu를 Logpresso Sonar 화면에 적용한다.\n상태: superseded\n문서: docs/components/Menu.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: dropdownList, List\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "superseded",
          "note": "use Action Menu + Overlay Row / Command; trigger/open examples live in 17A Components - Overlay Panels",
          "starter": "목표: Menu를 Logpresso Sonar 화면에 적용한다.\n상태: superseded\n문서: docs/components/Menu.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: dropdownList, List\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "superseded",
          "note": "Use Action Menu and Overlay Row / Command; trigger and open examples live in 17A Components - Overlay Panels.",
          "starter": "Goal: Apply Menu to a Logpresso Sonar screen.\nStatus: superseded\nDocument: docs/components/Menu.md\nRelated patterns: List Detail, Audit / Event History\nRecommended composition: dropdownList, List\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "List",
      "category": "Dropdown / List",
      "status": "reusable composition pattern",
      "path": "docs/components/List.md",
      "relatedPatterns": [
        "List Detail",
        "Audit / Event History"
      ],
      "compositionHints": [
        "dropdownList",
        "Menu"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: List를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/List.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: dropdownList, Menu\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "repeated content item list, table/menu/dropdown과 구분",
          "starter": "목표: List를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/List.md\n관련 패턴: List Detail, Audit / Event History\n추천 조합: dropdownList, Menu\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Repeated content item list, distinct from table, menu, and dropdown.",
          "starter": "Goal: Apply List to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/List.md\nRelated patterns: List Detail, Audit / Event History\nRecommended composition: dropdownList, Menu\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Divider",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Divider.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Divider를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Divider.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "exact primitive truth 소유",
          "starter": "목표: Divider를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Divider.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Owns exact primitive truth.",
          "starter": "Goal: Apply Divider to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Divider.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Modal",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Modal.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md"
      ],
      "starter": "목표: Modal를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Modal.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "width variant를 가진 modal shell family, footer close-capable region 포함",
          "starter": "목표: Modal를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Modal.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Modal shell family with width variants and a footer close-capable region.",
          "starter": "Goal: Apply Modal to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Modal.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Popover",
      "category": "Supporting",
      "status": "reusable composition pattern",
      "path": "docs/components/Popover.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Popover를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Popover.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "trigger에 붙는 non-blocking floating panel parent",
          "starter": "목표: Popover를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Popover.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Non-blocking floating panel parent attached to a trigger.",
          "starter": "Goal: Apply Popover to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Popover.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Disclosure",
      "category": "Supporting",
      "status": "reusable composition pattern",
      "path": "docs/components/Disclosure.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "Audit / Event History",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: Disclosure를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Disclosure.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, Audit / Event History, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "trigger row와 collapsible panel을 조합하는 content parent",
          "starter": "목표: Disclosure를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Disclosure.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, Audit / Event History, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Content parent that combines a trigger row and collapsible panel.",
          "starter": "Goal: Apply Disclosure to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Disclosure.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, Audit / Event History, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Skeleton",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Skeleton.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action",
        "UX Loading Feedback"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/spacing.md"
      ],
      "starter": "목표: Skeleton를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Skeleton.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Loading Feedback\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/spacing.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "loading placeholder primitive, final layout rhythm 보존",
          "starter": "목표: Skeleton를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Skeleton.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Loading Feedback\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/spacing.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Loading placeholder primitive that preserves final layout rhythm.",
          "starter": "Goal: Apply Skeleton to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Skeleton.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Loading Feedback\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/spacing.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Badge",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Badge.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "Audit / Event History",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: Badge를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Badge.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, Audit / Event History, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "leading marker와 label을 가진 compact display marker family",
          "starter": "목표: Badge를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Badge.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, Audit / Event History, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Compact display marker family with a leading marker and label.",
          "starter": "Goal: Apply Badge to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Badge.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, Audit / Event History, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Tag",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Tag.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Tag를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Tag.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "item-identity chip family, optional trailing remove affordance 포함",
          "starter": "목표: Tag를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Tag.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Item-identity chip family with optional trailing remove affordance.",
          "starter": "Goal: Apply Tag to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Tag.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Pagination",
      "category": "Supporting",
      "status": "reusable composition pattern",
      "path": "docs/components/Pagination.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Pagination를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Pagination.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "parent composition + supporting child control boundary 소유",
          "starter": "목표: Pagination를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Pagination.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Parent composition plus supporting child control boundary.",
          "starter": "Goal: Apply Pagination to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Pagination.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Table",
      "category": "Supporting",
      "status": "reusable composition pattern",
      "path": "docs/components/Table.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Table를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Table.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "column schema, header/body row stack, optional footer를 소유하는 table parent",
          "starter": "목표: Table를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Table.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Table parent that owns column schema, header/body row stack, and optional footer.",
          "starter": "Goal: Apply Table to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Table.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Table Cell",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Table Cell.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action",
        "UX Inline Editing"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Table Cell를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Table Cell.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Inline Editing\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "tableGrid cell shell과 tableGrid specialized/domain sample 소유",
          "starter": "목표: Table Cell를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Table Cell.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Inline Editing\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Owns tableGrid cell shell and tableGrid specialized/domain samples.",
          "starter": "Goal: Apply Table Cell to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Table Cell.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Inline Editing\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Data Table Cell",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Data Table Cell.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Data Table Cell를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Data Table Cell.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "dataGrid compact cell shell, editable proof, mode sample 소유",
          "starter": "목표: Data Table Cell를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Data Table Cell.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Owns dataGrid compact cell shell, editable proof, and mode samples.",
          "starter": "Goal: Apply Data Table Cell to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Data Table Cell.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Sheet Table Cell",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Sheet Table Cell.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Sheet Table Cell를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Sheet Table Cell.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "sheetsGrid compact cell shell과 sheet mode sample 소유",
          "starter": "목표: Sheet Table Cell를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Sheet Table Cell.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Owns sheetsGrid compact cell shell and sheet mode samples.",
          "starter": "Goal: Apply Sheet Table Cell to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Sheet Table Cell.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Toast",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Toast.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action",
        "UX Optimistic Update"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: Toast를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Toast.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Optimistic Update\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "large dismissible status message family",
          "starter": "목표: Toast를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Toast.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Optimistic Update\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Large dismissible status message family.",
          "starter": "Goal: Apply Toast to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Toast.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Optimistic Update\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "InlineAlert",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/InlineAlert.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "Settings / Policy Form",
        "UX Bulk Action",
        "UX Destructive Action",
        "UX Loading Feedback",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: InlineAlert를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/InlineAlert.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, Settings / Policy Form, UX Bulk Action, UX Destructive Action, UX Loading Feedback, UX Permission Based UI\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "compact one-line status message family",
          "starter": "목표: InlineAlert를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/InlineAlert.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, Settings / Policy Form, UX Bulk Action, UX Destructive Action, UX Loading Feedback, UX Permission Based UI\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Compact one-line status message family.",
          "starter": "Goal: Apply InlineAlert to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/InlineAlert.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, Settings / Policy Form, UX Bulk Action, UX Destructive Action, UX Loading Feedback, UX Permission Based UI\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "StatusDot",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/StatusDot.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action",
        "UX Optimistic Update"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: StatusDot를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/StatusDot.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Optimistic Update\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "single-dot status indicator family",
          "starter": "목표: StatusDot를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/StatusDot.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Optimistic Update\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Single-dot status indicator family.",
          "starter": "Goal: Apply StatusDot to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/StatusDot.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Optimistic Update\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "PriorityIndicator",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/PriorityIndicator.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: PriorityIndicator를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/PriorityIndicator.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "three-dot level indicator family",
          "starter": "목표: PriorityIndicator를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/PriorityIndicator.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Three-dot level indicator family.",
          "starter": "Goal: Apply PriorityIndicator to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/PriorityIndicator.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "ProgressBar",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/ProgressBar.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action",
        "UX Loading Feedback"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: ProgressBar를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/ProgressBar.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Loading Feedback\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "compact horizontal progress indicator family",
          "starter": "목표: ProgressBar를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/ProgressBar.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Loading Feedback\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Compact horizontal progress indicator family.",
          "starter": "Goal: Apply ProgressBar to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/ProgressBar.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Loading Feedback\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Slider",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Slider.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Slider를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Slider.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "compact horizontal slider family",
          "starter": "목표: Slider를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Slider.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Compact horizontal slider family.",
          "starter": "Goal: Apply Slider to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Slider.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Tooltip",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/Tooltip.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action",
        "UX Permission Based UI"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: Tooltip를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Tooltip.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Permission Based UI\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "floating helper surface family, text tooltip current truth와 rich-content proof 포함",
          "starter": "목표: Tooltip를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/Tooltip.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Permission Based UI\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Floating helper surface family with text tooltip current truth and rich-content proof.",
          "starter": "Goal: Apply Tooltip to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/Tooltip.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Permission Based UI\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "CalendarSurface",
      "category": "Supporting",
      "status": "reusable composition pattern",
      "path": "docs/components/CalendarSurface.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md"
      ],
      "starter": "목표: CalendarSurface를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/CalendarSurface.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "date picker overlay surface와 source-confirmed interior region geometry 소유",
          "starter": "목표: CalendarSurface를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/CalendarSurface.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Owns date picker overlay surface and source-confirmed interior region geometry.",
          "starter": "Goal: Apply CalendarSurface to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/CalendarSurface.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Tree Panel Composition",
      "category": "Supporting",
      "status": "reusable composition pattern",
      "path": "docs/components/Tree Panel Composition.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "Workflow / Guided Setup",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md"
      ],
      "starter": "목표: Tree Panel Composition를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Tree Panel Composition.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, Workflow / Guided Setup, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "SearchInput + dropdownCheckboxListItem를 담는 collapsible panel composition",
          "starter": "목표: Tree Panel Composition를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Tree Panel Composition.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, Workflow / Guided Setup, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Collapsible panel composition containing SearchInput + dropdownCheckboxListItem.",
          "starter": "Goal: Apply Tree Panel Composition to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Tree Panel Composition.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, Workflow / Guided Setup, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Filter & Multi Sort",
      "category": "Supporting",
      "status": "local usage",
      "path": "docs/components/Filter & Multi Sort.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Filter & Multi Sort를 Logpresso Sonar 화면에 적용한다.\n상태: local usage\n문서: docs/components/Filter & Multi Sort.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "local usage",
          "note": "Action Bar 위 local filter/sort system, query logic은 제외",
          "starter": "목표: Filter & Multi Sort를 Logpresso Sonar 화면에 적용한다.\n상태: local usage\n문서: docs/components/Filter & Multi Sort.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\n추천 조합: Table, Pagination, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "local usage",
          "note": "Local filter/sort system above Action Bar; query logic is excluded.",
          "starter": "Goal: Apply Filter & Multi Sort to a Logpresso Sonar screen.\nStatus: local usage\nDocument: docs/components/Filter & Multi Sort.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action\nRecommended composition: Table, Pagination, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "InlineMessage",
      "category": "Supporting",
      "status": "family canonical",
      "path": "docs/components/InlineMessage.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action",
        "UX Inline Editing"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: InlineMessage를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/InlineMessage.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Inline Editing\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "family canonical",
          "note": "inline message + inline code supporting proof",
          "starter": "목표: InlineMessage를 Logpresso Sonar 화면에 적용한다.\n상태: family canonical\n문서: docs/components/InlineMessage.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Inline Editing\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "family canonical",
          "note": "Inline message and inline code supporting proof.",
          "starter": "Goal: Apply InlineMessage to a Logpresso Sonar screen.\nStatus: family canonical\nDocument: docs/components/InlineMessage.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Inline Editing\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Blankslate",
      "category": "Supporting",
      "status": "reusable composition pattern",
      "path": "docs/components/Blankslate.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "List Detail",
        "UX Bulk Action",
        "UX Destructive Action",
        "UX Empty State Recovery"
      ],
      "compositionHints": [
        "Table",
        "Pagination",
        "Filter & Multi Sort",
        "Modal"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/state.md",
        "docs/foundation/content.md"
      ],
      "starter": "목표: Blankslate를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Blankslate.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Empty State Recovery\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/state.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "centered empty-state composition pattern, title/description/action ordering 소유",
          "starter": "목표: Blankslate를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Blankslate.md\n관련 패턴: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Empty State Recovery\n추천 조합: Table, Pagination, Filter & Multi Sort, Modal\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/state.md, docs/foundation/content.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Centered empty-state composition pattern, including title, description, and action ordering.",
          "starter": "Goal: Apply Blankslate to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Blankslate.md\nRelated patterns: Dashboard, Data Table Workflow, List Detail, UX Bulk Action, UX Destructive Action, UX Empty State Recovery\nRecommended composition: Table, Pagination, Filter & Multi Sort, Modal\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/state.md, docs/foundation/content.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Surface Foundation",
      "category": "Surface",
      "status": "supporting boundary",
      "path": "docs/components/Surface-Foundation.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action"
      ],
      "compositionHints": [
        "Page Layout",
        "Action Bar"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Surface Foundation를 Logpresso Sonar 화면에 적용한다.\n상태: supporting boundary\n문서: docs/components/Surface-Foundation.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "supporting boundary",
          "note": "container/item pattern의 narrow shared surface grammar만 소유",
          "starter": "목표: Surface Foundation를 Logpresso Sonar 화면에 적용한다.\n상태: supporting boundary\n문서: docs/components/Surface-Foundation.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "supporting boundary",
          "note": "Owns only the narrow shared surface grammar for container and item patterns.",
          "starter": "Goal: Apply Surface Foundation to a Logpresso Sonar screen.\nStatus: supporting boundary\nDocument: docs/components/Surface-Foundation.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\nRecommended composition: Page Layout, Action Bar\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Card Item",
      "category": "Surface",
      "status": "reusable composition pattern",
      "path": "docs/components/Card-Item.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action"
      ],
      "compositionHints": [
        "Page Layout",
        "Action Bar"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Card Item를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Card-Item.md\n관련 패턴: Dashboard, Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "repeated item card shell pattern",
          "starter": "목표: Card Item를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Card-Item.md\n관련 패턴: Dashboard, Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Repeated item card shell pattern.",
          "starter": "Goal: Apply Card Item to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Card-Item.md\nRelated patterns: Dashboard, Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\nRecommended composition: Page Layout, Action Bar\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Widget Container",
      "category": "Surface",
      "status": "reusable composition pattern",
      "path": "docs/components/Widget-Container.md",
      "relatedPatterns": [
        "Dashboard",
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action"
      ],
      "compositionHints": [
        "Page Layout",
        "Action Bar"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Widget Container를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Widget-Container.md\n관련 패턴: Dashboard, Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "dashboard widget/module shell pattern",
          "starter": "목표: Widget Container를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Widget-Container.md\n관련 패턴: Dashboard, Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Dashboard widget/module shell pattern.",
          "starter": "Goal: Apply Widget Container to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Widget-Container.md\nRelated patterns: Dashboard, Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\nRecommended composition: Page Layout, Action Bar\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Section Container",
      "category": "Surface",
      "status": "reusable composition pattern",
      "path": "docs/components/Section-Container.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "Workflow / Guided Setup",
        "UX Bulk Action"
      ],
      "compositionHints": [
        "Page Layout",
        "Action Bar"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md"
      ],
      "starter": "목표: Section Container를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Section-Container.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "section-wide parent surface pattern",
          "starter": "목표: Section Container를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Section-Container.md\n관련 패턴: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Section-wide parent surface pattern.",
          "starter": "Goal: Apply Section Container to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Section-Container.md\nRelated patterns: Data Table Workflow, Workflow / Guided Setup, UX Bulk Action\nRecommended composition: Page Layout, Action Bar\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    },
    {
      "name": "Drawer Container",
      "category": "Surface",
      "status": "reusable composition pattern",
      "path": "docs/components/Drawer-Container.md",
      "relatedPatterns": [
        "Data Table Workflow",
        "List Detail",
        "Workflow / Guided Setup",
        "UX Bulk Action"
      ],
      "compositionHints": [
        "Page Layout",
        "Action Bar"
      ],
      "foundationHints": [
        "docs/foundation/color.md",
        "docs/foundation/typography.md",
        "docs/foundation/layer.md"
      ],
      "starter": "목표: Drawer Container를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Drawer-Container.md\n관련 패턴: Data Table Workflow, List Detail, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy",
      "locales": {
        "ko": {
          "status": "reusable composition pattern",
          "note": "drawer detail parent surface pattern",
          "starter": "목표: Drawer Container를 Logpresso Sonar 화면에 적용한다.\n상태: reusable composition pattern\n문서: docs/components/Drawer-Container.md\n관련 패턴: Data Table Workflow, List Detail, Workflow / Guided Setup, UX Bulk Action\n추천 조합: Page Layout, Action Bar\n필요 foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\n산출물: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\n추정 금지: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        },
        "en": {
          "status": "reusable composition pattern",
          "note": "Drawer detail parent surface pattern.",
          "starter": "Goal: Apply Drawer Container to a Logpresso Sonar screen.\nStatus: reusable composition pattern\nDocument: docs/components/Drawer-Container.md\nRelated patterns: Data Table Workflow, List Detail, Workflow / Guided Setup, UX Bulk Action\nRecommended composition: Page Layout, Action Bar\nRequired foundation: docs/foundation/color.md, docs/foundation/typography.md, docs/foundation/layer.md\nOutputs: source documents used, screen intent, layout composition, state coverage, component usage table, accessibility contract, content contract, deferred assumptions\nDo not infer: missing product copy, missing token values, customer-like data, undocumented component states, business logic, permission policy"
        }
      }
    }
  ]
}
