Files
るみなー先生 08b86f3683 feat: update project version and description; add runtime state management and server routes
- Bump version to 0.6.0 and enhance project description in pyproject.toml.
- Introduce runtime state management with RuntimeCandidateState and RuntimeCandidateStateStore classes to handle candidate updates and state retrieval.
- Implement server routes for updating and reading runtime candidate states, handling various request scenarios and errors.
- Add tests for runtime layout and prompt random choice functionality, ensuring robust validation and state management.
- Enhance frontend with runtime candidate editor, including UI updates and synchronization with server state.
2026-08-19 20:39:39 +09:00

3.1 KiB

Regression matrix

自動実行

$py = "C:\path\to\python.exe"
& $py -B -m unittest discover -s tests
node --check web/prompt_random_choice.js
node --check web/runtime_prompt_random_choice.js
node --test tests/runtime_layout.test.mjs

GitHub Actionsでは .github/workflows/regression-tests.yml が同じ検証を行う。

仕様とテストの対応

保護対象 主なテスト
従来版の ! は通常文字 test_flat_comments_and_non_runtime_bang_are_literal, test_non_runtime_ex_keeps_bang_as_text
Runtimeの最初の ! test_runtime_flat_uses_first_forced_candidate, test_ex_comments_and_first_force_apply_recursively
!() / 単独! / !! test_runtime_forced_empty_and_bare_bang, test_double_bang_removes_only_control_marker, test_runtime_ex_forced_empty_is_a_leaf
#コメントと全件コメント test_all_commented_candidates_produce_empty_pool, test_ex_comments_and_first_force_apply_recursively
Exの葉均等候補集合 test_ex_filters_each_level_and_keeps_leaf_uniform_paths
複数親と縦入れ子 test_ex_multiple_parents_and_vertical_nesting
直積の展開前拒否 test_adjacent_direct_groups_are_rejected_before_selection
強制で隠れた枝もHard Error検査 test_hard_error_is_detected_even_in_branch_overridden_by_force
Soft/Hard分類 test_incomplete_braces_are_distinguished, test_adjacent_groups_classify_as_hard_error
Runtime編集が保持周期へ割り込まない test_edit_does_not_interrupt_change_every
Soft incompleteは最後の正常revision test_incomplete_uses_last_valid_revision
Hard Errorは黙ってフォールバックしない test_hard_error_never_falls_back
Hard Error修正後の復帰 test_hard_error_clears_after_valid_text_is_accepted
revisionは正常変更だけで進む test_revisions_advance_only_for_valid_text
受理済み空文字と状態なしの区別 test_accepted_empty_text_overrides_queued_fallback
古いクライアント更新の拒否 test_stale_runtime_update_is_rejected
ノード登録名とRuntime入力 test_node_mappings_and_runtime_inputs_are_stable
全ノードが単一トップ階層へ表示 test_all_nodes_share_one_top_level_menu_category
通常版は候補変更で再選択 test_regular_node_resets_when_candidates_change
ファイル名安全化 test_safe_text_handles_device_names_and_length
Runtime textareaがノード高へ追従 runtime_layout.test.mjs

手動確認項目

  • ComfyUI再起動後にRuntimeノード2種がメニューへ表示される。
  • textareaで日本語IME変換中に同期されない。
  • EDITING → SYNCING → LIVEが視認できる。
  • 括弧不一致でSYNTAX INCOMPLETEとなり生成を継続する。
  • 直積入力でHARD ERRORとなり、次回実行が停止する。
  • Hard Error修正後にLIVEへ復帰する。
  • Workflow保存・再読込で候補テキストとstate keyが維持される。
  • ノード複製時にstate keyが重複しない。
  • change_every=3の途中編集でも現在の完成文字列が3回維持される。