Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
概要
open Issue
#35, #44, #48, #49, #50, #51, #52, #53, #54の対応をまとめて実装しました。CLI / client / remote handler / Live backend / docs / CI を一貫して更新し、実機Ableton LiveでのE2E検証まで実施しています。
ユーザー影響(何が改善されるか)
transport position get/set,transport rewind)。arrangement clip create --notes-json/--notes-file)。index/range/allの3モードが追加されます。arrangement from-session --scenesを利用できます。dev_checks_enforceを実行し、違反修復アクションとログ出力を含む品質ゲートを強化します。問題の原因
track.arrangement_clipsを「mutable listであること」に強く依存しており、Live実機で取得されるコンテナ型差分によりnot_supported_by_live_apiとなるケースがありました。arrangement clip notes import-browserは、.alcを一時トラックにロードしてソースクリップを得る前提でしたが、実機環境では.alcロード後にクリップが現れないケースがあり、決定的ソーストラックを特定できず失敗していました。修正内容
1. 新規/拡張コマンド実装
transport position get/set,transport rewindを追加(CLI/client/remote/backend)。arrangement clip notes add/get/clear/replace/import-browserを追加。arrangement clip createに--notes-json/--notes-fileを追加。arrangement clip deleteにindex/range/allの排他モードを実装。arrangement from-session --scenes "scene:duration,..."を実装。2. Live backendの安定化
arrangement_clipsを iterable として扱えるように変更し、コンテナ型差分を吸収。track.delete_clipがあれば優先利用し、無い場合のみmutable配列削除へフォールバックするのではなく、明示的に対応可能APIのみ使用。import-browserではSession viewフォーカスとclip slot選択を明示。.alcロードでクリップが生成されない場合に備え、Core Library / User Library上の.alc実ファイルを解決し、XML(gzip)からMIDIノートと長さを抽出して一時ソースクリップを決定的に構築する処理を追加。3. CI/品質強化(#35)
python -m ableton_cli.dev_checks_enforceを追加。4. ドキュメント更新
テスト・検証
ローカル自動テスト
uv run python -m ableton_cli.dev_checksuv run ruff check .uv run ruff format --check .uv run pytest上記すべてPASS(
pytest: 456 passed)。実機Ableton Live E2E(2026-03-03)
対象:
#48/#49/#50/#51/#53/#54結果: 全PASS
#49transport position set/get/rewind: PASS#53arrangement clip create with notes: PASS#48arrangement clip notes add/get/clear/replace: PASS#51arrangement clip notes import-browser: PASS#50arrangement clip delete index/range/all: PASS#54arrangement from-session: PASS補足