a2ui-project / a2ui-project/a2ui
fix(docs): Catalog composition examples in catalogs.md use invalid allOf under components
- 主要言語
- TypeScript
- スター
- 16.4k
- フォーク
- 1.3k
- 平均マージ
- 2日 13時間
- マージ済み PR(30日)
- 134
説明
## Problem Page(s)
- `docs/public/concepts/catalogs.md` (Sections: "#### Example: Extending the Basic Catalog" and "#### Example: Cherry-picking Components")
## Describe the Issue
In `docs/public/concepts/catalogs.md`, the documentation examples for catalog composition and imports show an `"allOf"` key with an array value placed directly under the `"components"` map:
```json
{
"$id": "https://github.com/.../hello_world_with_all_basic/v1/catalog.json",
"catalogId": "https://github.com/.../hello_world_with_all_basic/v1/catalog.json",
"components": {
"allOf": [
{"$ref": "basic_catalog_definition.json#/components"},
{
"SuggestionChips": {
"type": "object",
...
}
}
]
}
}
```
In the A2UI Catalog Schema definition (`specification/v1_0/json/catalog_definition.json` and protocol specs), `components` is defined as an object where each property name is a component type and its value must be a valid JSON Schema:
```json
"components": {
"type": "object",
"description": "Definitions for UI components supported by this catalog.",
"additionalProperties": {
"$ref": "https://json-schema.org/draft/2020-12/schema"
}
}
```
Placing `"allOf": [...]` inside `components` fails JSON Schema validation against the Catalog meta-schema because:
1. `"allOf"` is treated as a component name rather than a JSON Schema composition keyword.
2. The value is an array, which is not a valid JSON Schema object.
## Proposed Changes
Update the catalog composition examples in `docs/public/concepts/catalogs.md` to reflect valid schema syntax (e.g. structuring composition at the root catalog schema level, or demonstrating valid multi-catalog linking patterns).
## Additional Context
Flagged during review of #2184.
コントリビューションガイド
調査の方向性
The issue points to specific sections in docs/public/concepts/catalogs.md. First, read the file to understand the current invalid examples. Then, check the referenced schema at specification/v1_0/json/catalog_definition.json to see the correct structure. The fix is to update the JSON examples in the markdown file to use valid JSON Schema syntax, ensuring 'components' contains only component-type keys with proper schema objects. Verify by reviewing the changes locally.
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- json, typescript
- 領域
- documentation
- issue の種類
- ドキュメント
- 難易度
- 1/5
- 見積もり時間
- 1時間未満
- 活発さ
- 静か
- 明瞭さ
- 明確に書かれている
- 初心者へのやさしさ
- 80/100