145 Commits

Author SHA1 Message Date
nrslib
a5e2badc0b fix: Claude resume候補をjsonlフォールバックで取得 2026-02-22 17:54:15 +09:00
nrs
134b666480
Merge pull request #350 from tomohisa/fix/worktree-dir-plural
fix: use plural 'takt-worktrees' as default clone directory name
2026-02-22 17:41:21 +09:00
nrs
077d19a6b0
Merge pull request #355 from s-kikuchi/takt/20260222T0402-tasuku-purojekuto-takt-config
fix: Project-level model config ignored — getLocalLayerValue missing model case
2026-02-22 17:35:33 +09:00
nrs
1d6770c479
Merge pull request #344 from tomohisa/feat/auto-sync-before-clone
feat: opt-in auto_fetch and base_branch config for clone
2026-02-22 17:29:39 +09:00
kikuchi
753deb6539 fix: Project-level model config ignored — getLocalLayerValue missing model case 2026-02-22 13:49:32 +09:00
nrslib
c630d78806 refactor: rename ensemble to repertoire across codebase 2026-02-22 10:50:50 +09:00
Tomohisa Takaoka
1d7336950e feat: opt-in auto_fetch and base_branch config for clone
Replace the always-on syncDefaultBranch with opt-in resolveBaseBranch:

- Add auto_fetch config (default: false) — only fetch when enabled
- Add base_branch config (project and global) — fallback to current branch
- Fetch-only mode: git fetch origin without modifying local branches
- Use fetched commit hash (origin/<base_branch>) to reset clone to latest
- No more git merge --ff-only or git fetch origin main:main

Config example:
  # ~/.takt/config.yaml or .takt/config.yaml
  auto_fetch: true
  base_branch: develop

Addresses review feedback: opt-in behavior, no local branch changes,
configurable base branch with current-branch fallback.
2026-02-21 12:30:26 -08:00
nrslib
102f31447a refactor: rename faceted to facets across package layout 2026-02-22 02:40:33 +09:00
nrslib
b6e3c7883d feat: implement ensemble package import and faceted layout 2026-02-22 02:05:48 +09:00
Tomohisa Takaoka
2e72054c0d fix: use plural 'takt-worktrees' as default clone directory name
The default clone base directory was 'takt-worktree' (singular), which is
inconsistent since multiple worktrees are created inside it.

Changed to 'takt-worktrees' (plural) while maintaining backward compatibility:
- If existing 'takt-worktree' directory exists, continue using it
- New installations will use 'takt-worktrees'
- Explicit worktree_dir config always takes priority
2026-02-21 08:47:42 -08:00
nrslib
291e05a24d fix: prevent romaji conversion stack overflow on long task names 2026-02-20 12:43:40 +09:00
nrslib
67f6fc685c fix: opencodeの2ターン目ハングを修正し会話継続を実現
streamAbortController.signalをcreateOpencodeに渡していたため、
各callのfinallyでabortするとサーバーが停止し2ターン目がハングしていた。
signalをサーバー起動から除外し、sessionIdの引き継ぎを復元することで
複数ターンの会話継続を実現した。
2026-02-20 12:40:17 +09:00
nrs
dec77e069e
add-model-to-persona-providers (#324)
* takt: add-model-to-persona-providers

* refactor: loadConfigを廃止しresolveConfigValueにキー単位解決を一元化

loadConfig()による一括マージを廃止し、resolveConfigValue()でキーごとに
global/project/piece/envの優先順位を宣言的に解決する方式に移行。
providerOptionsの優先順位をglobal < piece < project < envに修正し、
sourceトラッキングでOptionsBuilderのマージ方向を制御する。
2026-02-20 11:12:46 +09:00
nrslib
22901cd8cb feat: analyticsをproject設定とenv overrideに対応 2026-02-20 08:37:40 +09:00
nrslib
f479869d72 fix: retryタスクのcompleted_atクリア漏れを修正
startReExecutionで失敗タスクをrunningに戻す際、
completed_atをnullにリセットしていなかったためZodバリデーションエラーが発生していた。
2026-02-20 07:40:59 +09:00
nrs
4f8255d509
takt: add-draft-pr-option (#323) 2026-02-20 00:35:41 +09:00
nrs
e70bceb4a8
takt: extend-slack-task-notification (#316) 2026-02-19 23:08:17 +09:00
nrslib
743344a51b 既存PRへのコメント追加に対応し、PR重複作成を防止
タスク再実行時に同じブランチのPRが既に存在する場合、新規作成ではなく
既存PRにコメントを追加するようにした。
2026-02-19 21:21:59 +09:00
nrs
43f6fa6ade
takt: takt-list (#310) 2026-02-19 17:20:22 +09:00
nrs
80a79683ac
github-issue-304-builtin (#309)
* takt: github-issue-304-builtin

* ピース選択UIから「also in」表示を削除
2026-02-19 17:14:07 +09:00
nrs
99aa22d250
takt: github-issue-259-debug-takt (#312) 2026-02-19 16:57:24 +09:00
nrslib
5f4ad753d8 feat: add takt reset config with backup restore 2026-02-19 11:59:42 +09:00
nrslib
6518faf72e refactor: 設定の不要要素削除とconfigテンプレート刷新 2026-02-19 11:53:02 +09:00
nrslib
67ae3e8ae5 refactor: piece設定解決とconfig優先順位の参照経路を統一 2026-02-19 11:22:49 +09:00
nrslib
6b425d64fc refactor: piece系設定解決をresolveConfigValueへ統一 2026-02-19 10:57:07 +09:00
nrslib
cbde7ac654 refactor: 設定参照をresolveConfigValueへ統一 2026-02-19 10:55:03 +09:00
nrslib
5dc79946f2 refactor: 設定解決をloadConfigへ統一し不要設定を削除 2026-02-19 10:32:59 +09:00
nrs
0d1da61d14
[draft] takt/284/implement-using-only-the-files (#296)
* feat: track project-level .takt/pieces in version control

* feat: track project-level takt facets for customizable resources

* chore: include project .takt/config.yaml in git-tracked subset

* takt: github-issue-284-faceted-prompting
2026-02-18 23:21:09 +09:00
nrslib
16d7f9f979 リトライモード新設と instruct/retry の直接再実行対応
失敗タスク専用のリトライモード(retryMode.ts)を追加し、失敗情報・実行ログ・
レポートをシステムプロンプトに注入する方式に変更。instruct モードもタスク情報を
プロンプトに含める専用テンプレートへ移行。requeue のみだった再実行を
startReExecution による即時実行に対応し、既存ワークツリーの再利用も実装。
不要になった DebugConfig を削除。
2026-02-18 22:35:31 +09:00
nrslib
620e384251 interactiveモジュールの分割とタスク再キュー方式への移行
interactive.tsからsummary/runSelector/runSessionReader/selectorUtilsを分離し、
run session参照をrouting層からinstructMode層に移動。instructBranchで新タスク
作成の代わりに既存タスクのrequeueを使用する方式に変更。worktree確認プロンプトを
廃止し常時有効化。
2026-02-18 18:49:21 +09:00
Junichi Kato
dcfe2b0dc2
Merge pull request #292 from j5ik2o/feat/codex-cli-path-override
codex cli path override
2026-02-18 11:25:36 +09:00
nrslib
251acf8e51 refactor(task-store): replace file-based lock with in-memory guard 2026-02-16 10:14:29 +09:00
nrslib
89cb3f8dbf fix(task-store): prevent EPERM crash in lock release by tracking ownership in memory 2026-02-16 10:02:17 +09:00
nrslib
05b893f720 Release v0.17.0 2026-02-15 12:00:21 +09:00
nrslib
2460dbdf61 refactor(output-contracts): unify OutputContractEntry to item format with use_judge and move runtime dir under .takt
- Remove OutputContractLabelPath (label:path format), unify to OutputContractItem only
- Add required format field and use_judge flag to output contracts
- Add getJudgmentReportFiles() to filter reports eligible for Phase 3 status judgment
- Add supervisor-validation output contract, remove review-summary
- Enhance output contracts with finding_id tracking (new/persists/resolved sections)
- Move runtime environment directory from .runtime to .takt/.runtime
- Update all builtin pieces, e2e fixtures, and tests
2026-02-15 11:17:55 +09:00
nrslib
f065ee510f feat: resolve movement permissions via provider profiles with required floor 2026-02-15 07:00:03 +09:00
nrslib
6e14cd3c38 feat(runtime): add configurable prepare presets and provider e2e 2026-02-15 05:28:39 +09:00
nrs
e52e1da6bf
takt-list (#271)
* refactor: provider/modelの解決ロジックをAgentRunnerに集約

OptionsBuilderでCLIレベルとstepレベルを事前マージしていたのをやめ、
stepProvider/stepModelとして分離して渡す形に変更。
AgentRunnerが全レイヤーの優先度を一括で解決する。

* takt: takt-list
2026-02-14 11:44:01 +09:00
nrslib
eb593e3829 OpenCode: サーバーシングルトン化で並列実行時の競合を解消
- 1つのサーバーを共有し、並列リクエストはキューで処理
- initPromiseで初期化中の競合を防止
- サーバー起動タイムアウトを30秒→60秒に延長
- 並列呼び出し/モデル変更時のテストを追加
2026-02-14 09:04:06 +09:00
nrslib
9cc6ac2ca7 ポストエクスキューションの共通化とinstructモードの改善
- commit+push+PR作成ロジックをpostExecutionFlowに抽出し、interactive/run/watchの3ルートで共通化
- instructモードはexecuteでcommit+pushのみ(既存PRにpushで反映されるためPR作成不要)
- instructのsave_taskで元ブランチ名・worktree・auto_pr:falseを固定保存(プロンプト不要)
- instructの会話ループにpieceContextを渡し、/goのサマリー品質を改善
- resolveTaskExecutionのautoPrをboolean必須に変更(undefinedフォールバック廃止)
- cloneデフォルトパスを../から../takt-worktree/に変更
2026-02-14 01:02:23 +09:00
nrslib
54e9f80a57 opencodeがパラレル実行時にセッションIDを引き継げないことがある 2026-02-13 23:11:32 +09:00
nrs
3ff6f99152
task-1770947391780 (#270)
* fix: OpenCode SDKサーバー起動タイムアウトを30秒に延長

* takt: task-1770947391780
2026-02-13 21:52:17 +09:00
nrslib
c85f23cb6e claude code がsandboxで実行されるため、テストが実行できない問題を対処できるオプションを追加 2026-02-13 21:46:11 +09:00
nrslib
479ee7ec25 providerごとに通信を許可する 2026-02-13 16:37:07 +09:00
nrslib
4919bc759f 判定処理の修正 2026-02-13 06:11:06 +09:00
nrslib
7d20c016c7 無用なexportを排除 2026-02-12 17:33:39 +09:00
nrslib
bcf38a5530 takt: 257/add-agent-usecase-structured-o 2026-02-12 15:03:28 +09:00
nrslib
bf4196d3b3 takt: github-issue-257 2026-02-12 13:32:28 +09:00
nrslib
b54fbe32b2 clone時に既存ブランチのcheckoutが失敗する問題を修正
cloneAndIsolateがgit remote remove originした後、リモート追跡refが
全て消えるため、default以外の既存ブランチをcheckoutできなかった。

git clone --branchでclone時にローカルブランチを作成するように変更。
併せてブランチ名フォーマットからgit非互換の#を除去。
2026-02-12 11:52:43 +09:00
nrs
680f0a6df5
github-issue-237-fix-ctrl-c-provider-graceful-timeout-force (#253)
* dist-tag 検証をリトライ付きに変更(npm レジストリの結果整合性対策)

* takt run 実行時に蓋閉じスリープを抑制

* takt: github-issue-237-fix-ctrl-c-provider-graceful-timeout-force
2026-02-12 11:52:07 +09:00