Release v0.22.0
This commit is contained in:
parent
c630d78806
commit
709e81fe16
18
CHANGELOG.md
18
CHANGELOG.md
@ -10,30 +10,34 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
|
||||
|
||||
### Added
|
||||
|
||||
- **Ensemble package system** (`takt ensemble add/remove/list`): Import and manage external TAKT packages from GitHub — `takt ensemble add github:{owner}/{repo}@{ref}` downloads packages to `~/.takt/ensemble/` with atomic installation, version compatibility checks, lock files, and package content summary before confirmation
|
||||
- **@scope references in piece YAML**: Facet references now support `@{owner}/{repo}/{facet-name}` syntax to reference facets from installed ensemble packages (e.g., `persona: @nrslib/takt-fullstack/expert-coder`)
|
||||
- **4-layer facet resolution**: Upgraded from 3-layer (project → user → builtin) to 4-layer (package-local → project → user → builtin) — ensemble package pieces automatically resolve their own facets first
|
||||
- **Ensemble category in piece selection**: Installed ensemble packages automatically appear as subcategories under an "ensemble" category in the piece selection UI
|
||||
- **Repertoire package system** (`takt repertoire add/remove/list`): Import and manage external TAKT packages from GitHub — `takt repertoire add github:{owner}/{repo}@{ref}` downloads packages to `~/.takt/repertoire/` with atomic installation, version compatibility checks, lock files, and package content summary before confirmation
|
||||
- **@scope references in piece YAML**: Facet references now support `@{owner}/{repo}/{facet-name}` syntax to reference facets from installed repertoire packages (e.g., `persona: @nrslib/takt-fullstack/expert-coder`)
|
||||
- **4-layer facet resolution**: Upgraded from 3-layer (project → user → builtin) to 4-layer (package-local → project → user → builtin) — repertoire package pieces automatically resolve their own facets first
|
||||
- **Repertoire category in piece selection**: Installed repertoire packages automatically appear as subcategories under a "repertoire" category in the piece selection UI
|
||||
- **Build gate in implement/fix instructions**: `implement` and `fix` builtin instructions now require build (type check) verification before test execution
|
||||
- **Repertoire package documentation**: Added comprehensive docs for the repertoire package system ([en](./docs/repertoire.md), [ja](./docs/repertoire.ja.md))
|
||||
|
||||
### Changed
|
||||
|
||||
- **BREAKING: "ensemble" renamed to "repertoire"**: All CLI commands, directories, config keys, and APIs renamed — `takt ensemble` → `takt repertoire`, `~/.takt/ensemble/` → `~/.takt/repertoire/`. Migration: rename your `~/.takt/ensemble/` directory to `~/.takt/repertoire/`
|
||||
- **BREAKING: Facets directory restructured**: Facet directories moved under a `facets/` subdirectory at all levels — `builtins/{lang}/{facetType}/` → `builtins/{lang}/facets/{facetType}/`, `~/.takt/{facetType}/` → `~/.takt/facets/{facetType}/`, `.takt/{facetType}/` → `.takt/facets/{facetType}/`. Migration: move your custom facet files into the new `facets/` subdirectory
|
||||
- Contract string hardcoding prevention rule added to coding policy and architecture review instruction
|
||||
|
||||
### Fixed
|
||||
|
||||
- Override piece validation now includes ensemble scope via the resolver
|
||||
- Override piece validation now includes repertoire scope via the resolver
|
||||
- `takt export-cc` now reads facets from the new `builtins/{lang}/facets/` directory structure
|
||||
- `confirm()` prompt now supports piped stdin (e.g., `echo "y" | takt ensemble add ...`)
|
||||
- `confirm()` prompt now supports piped stdin (e.g., `echo "y" | takt repertoire add ...`)
|
||||
- Suppressed `poll_tick` debug log flooding during iteration input wait
|
||||
- Piece resolver `stat()` calls now catch errors gracefully instead of crashing on inaccessible entries
|
||||
|
||||
### Internal
|
||||
|
||||
- Comprehensive ensemble test suite: atomic-update, ensemble-paths, file-filter, github-ref-resolver, github-spec, list, lock-file, pack-summary, package-facet-resolution, remove-reference-check, remove, takt-ensemble-config, tar-parser, takt-ensemble-schema
|
||||
- Comprehensive repertoire test suite: atomic-update, repertoire-paths, file-filter, github-ref-resolver, github-spec, list, lock-file, pack-summary, package-facet-resolution, remove-reference-check, remove, takt-repertoire-config, tar-parser, takt-repertoire-schema
|
||||
- Added `src/faceted-prompting/scope.ts` for @scope reference parsing, validation, and resolution
|
||||
- Added scope-ref tests for the faceted-prompting module
|
||||
- Added `inputWait.ts` for shared input-wait state to suppress worker pool log noise
|
||||
- Added piece-selection-branches and repertoire e2e tests
|
||||
|
||||
## [0.21.0] - 2026-02-20
|
||||
|
||||
|
||||
@ -145,7 +145,7 @@ See the [Builtin Catalog](./docs/builtin-catalog.md) for all pieces and personas
|
||||
| `takt #N` | Execute GitHub Issue as task |
|
||||
| `takt switch` | Switch active piece |
|
||||
| `takt eject` | Copy builtin pieces/personas for customization |
|
||||
| `takt ensemble add` | Install an ensemble package from GitHub |
|
||||
| `takt repertoire add` | Install a repertoire package from GitHub |
|
||||
|
||||
See the [CLI Reference](./docs/cli-reference.md) for all commands and options.
|
||||
|
||||
@ -214,7 +214,7 @@ See the [CI/CD Guide](./docs/ci-cd.md) for full setup instructions.
|
||||
├── config.yaml # Provider, model, language, etc.
|
||||
├── pieces/ # User piece definitions
|
||||
├── facets/ # User facets (personas, policies, knowledge, etc.)
|
||||
└── ensemble/ # Installed ensemble packages
|
||||
└── repertoire/ # Installed repertoire packages
|
||||
|
||||
.takt/ # Project-level
|
||||
├── config.yaml # Project config
|
||||
@ -250,7 +250,7 @@ await engine.run();
|
||||
| [Agent Guide](./docs/agents.md) | Custom agent configuration |
|
||||
| [Builtin Catalog](./docs/builtin-catalog.md) | All builtin pieces and personas |
|
||||
| [Faceted Prompting](./docs/faceted-prompting.md) | Prompt design methodology |
|
||||
| [Ensemble Packages](./docs/ensemble.md) | Installing and sharing packages |
|
||||
| [Repertoire Packages](./docs/repertoire.md) | Installing and sharing packages |
|
||||
| [Task Management](./docs/task-management.md) | Task queuing, execution, isolation |
|
||||
| [CI/CD Integration](./docs/ci-cd.md) | GitHub Actions and pipeline mode |
|
||||
| [Changelog](./CHANGELOG.md) ([日本語](./docs/CHANGELOG.ja.md)) | Version history |
|
||||
|
||||
@ -15,8 +15,11 @@
|
||||
- **4層ファセット解決**: 3層(project → user → builtin)から4層(package-local → project → user → builtin)に拡張 — repertoire パッケージのピースは自パッケージ内のファセットを最優先で解決
|
||||
- **ピース選択に repertoire カテゴリ追加**: インストール済みの repertoire パッケージがピース選択 UI の「repertoire」カテゴリにサブカテゴリとして自動表示
|
||||
- **implement/fix インストラクションにビルドゲート追加**: `implement` と `fix` のビルトインインストラクションでテスト実行前にビルド(型チェック)の実行を必須化
|
||||
- **Repertoire パッケージドキュメント追加**: repertoire パッケージシステムの包括的なドキュメントを追加([en](./repertoire.md), [ja](./repertoire.ja.md))
|
||||
|
||||
### Changed
|
||||
|
||||
- **BREAKING: "ensemble" を "repertoire" にリネーム**: 全 CLI コマンド、ディレクトリ、設定キー、API を変更 — `takt ensemble` → `takt repertoire`、`~/.takt/ensemble/` → `~/.takt/repertoire/`。マイグレーション: `~/.takt/ensemble/` ディレクトリを `~/.takt/repertoire/` にリネームしてください
|
||||
- **BREAKING: ファセットディレクトリ構造の変更**: 全レイヤーでファセットディレクトリが `facets/` サブディレクトリ配下に移動 — `builtins/{lang}/{facetType}/` → `builtins/{lang}/facets/{facetType}/`、`~/.takt/{facetType}/` → `~/.takt/facets/{facetType}/`、`.takt/{facetType}/` → `.takt/facets/{facetType}/`。マイグレーション: カスタムファセットファイルを新しい `facets/` サブディレクトリに移動してください
|
||||
- 契約文字列のハードコード散在防止ルールをコーディングポリシーとアーキテクチャレビューインストラクションに追加
|
||||
|
||||
@ -34,6 +37,7 @@
|
||||
- `src/faceted-prompting/scope.ts` を追加(@scope 参照のパース・バリデーション・解決)
|
||||
- faceted-prompting モジュールの scope-ref テストを追加
|
||||
- `inputWait.ts` を追加(ワーカープールのログノイズ抑制のための入力待ち状態共有)
|
||||
- piece-selection-branches および repertoire の e2e テストを追加
|
||||
|
||||
## [0.21.0] - 2026-02-20
|
||||
|
||||
|
||||
1913
src-diff.txt
1913
src-diff.txt
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user