返回 Skill 列表
extension
分类: 开发与工程无需 API Key

execution-types-contract

保持执行引擎的更改与稳定的公共类型一致(execution.py + types.py同步更新)

person作者: jakexiaohubgithub
<!-- BEGIN:compound:skill-managed -->

Purpose

When extending execution behavior, keep the public contract stable and import-safe.

When To Use

  • You change execution orchestration in src/vibe_piper/execution.py.
  • You also add/adjust public result/config types in src/vibe_piper/types.py.

Procedure

  • Decide what is "public API" vs. internal implementation.
  • Put public dataclasses/enums/protocols in src/vibe_piper/types.py.
  • Keep src/vibe_piper/execution.py focused on orchestration and flow.
  • Enforce a one-way dependency:
    • src/vibe_piper/execution.py may import from vibe_piper.types.
    • Avoid src/vibe_piper/types.py importing from vibe_piper.execution.
  • If you need type-only references that would create a cycle, use typing.TYPE_CHECKING and forward references.
  • Prefer narrow, explicit types (dataclasses/enums) over loose dicts for cross-module boundaries.
<!-- END:compound:skill-managed -->

Manual notes

This section is preserved when the skill is updated. Put human notes, caveats, and exceptions here.