mino-interface-implementation-separation

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Interface / Implementation Separation

Interface / Implementation Separation

consumerが知る意味と、知らなくてよい実現方法を分ける。成果はinterface数ではなく、契約、技術漏出、変更局所性で判定する。
将consumer需要了解的含义与无需了解的实现方式分离。成果的判定标准并非interface的数量,而是契约、技术泄漏情况以及变更的局部性。

Outcome Contract

Outcome Contract

主成果物として
Boundary Package
を作る。通常は次の最小構成を返し、operation semanticsの詳細schemaはworkflow referenceへ置く。
  • consumer、purpose、operationのinput / result / failure / side effect / contract
  • interface partとimplementation partの責務
  • leakage、dependency direction、boundary-localなcontract / state authority
  • consistency boundaryと、結果を分岐させるoperation semanticsだけのapplicability判定
  • applicableなdeadline、retry、idempotency、duplicate、ambiguous outcomeのpolicy / owner
  • Evidenceのあるchange scenario、過剰抽象化の棄却、既存caller向けcompatibility / migration
  • subject_verdict: separated | leaky | overabstracted | not_applicable | indeterminate
    とcanonical
    decision
  • platform差が公開境界へ漏れ得る場合だけ、Platform ContextとWindows / Linux / macOS adapter validation
非該当semanticsの詳細recordを空欄埋めのために展開しない。理由とEvidence、またはunknownの確認方法と影響を残す。
作为主要交付物创建
Boundary Package
。通常返回以下最小结构,操作语义的详细schema放置于workflow reference中。
  • consumer、目的、操作的输入/结果/失败场景/副作用/契约
  • interface部分与implementation部分的职责
  • 技术泄漏、依赖方向、边界局部的契约/状态权限
  • 一致性边界,以及仅基于结果分支的操作语义适用性判定
  • 适用的截止期限、重试、幂等性、重复处理、模糊结果的策略/负责人
  • 有证据支持的变更场景、过度抽象的弃用、面向现有调用方的兼容性/迁移方案
  • subject_verdict: separated | leaky | overabstracted | not_applicable | indeterminate
    以及标准
    decision
  • 仅当平台差异可能泄露至公开边界时,才进行Platform Context与Windows / Linux / macOS适配器验证
不要为填充空白而展开无关语义的详细记录。需保留理由与证据,或未知事项的确认方法及影响。

Reference Routing

Reference Routing

  • 内部pathは、配置先にかかわらず、インストールされた
    skills/
    directoryを参照rootとして解決する。
  • 最初に
    skills/mino-core/references/core.md
    skills/mino-core/references/shared-policies.md
    skills/mino-core/references/requirements-and-traceability.md
    skills/mino-core/references/code-design.md
    を読み、共通gateを再定義しない。
  • 境界分析、operation semantics、change scenarioでは
    skills/mino-interface-implementation-separation/references/workflow.md
    を読む。
  • applicableなdomain conceptまたはcontractが欠け、このSkillだけではconsumer contractを安全に定義できないstandalone依頼では
    $mino-domain-model-completeness
    $mino-design-by-contract
    を先に使う。
  • 既存callerを段階移行する場合は
    skills/mino-core/references/change-safety.md
    を読む。
  • filesystem、process、shell、path等のOS差がboundaryへ関係するときだけ
    skills/mino-core/references/platform-compatibility.md
    を読む。
  • standalone依頼でsystem-wide trade-off、data ownership、target / transition decisionが必要になった場合は
    $mino-architecture-quality-strategy
    へscope escalationする。実装や複数成果物まで求める場合は
    $mino-reproducible-development
    へ一度hand offする。
  • routerまたはpeer Skillからscoped artifactを依頼された場合は再routingせず、Boundary Packageと未解決obligationだけをcallerへ返す。
  • operation semantics applicability、stable trace、Change Safety schemaはsuite operationalizationとして扱う。
  • 内部路径无论部署位置如何,均以已安装的
    skills/
    目录作为根目录进行解析。
  • 首先阅读
    skills/mino-core/references/core.md
    skills/mino-core/references/shared-policies.md
    skills/mino-core/references/requirements-and-traceability.md
    skills/mino-core/references/code-design.md
    ,避免重复定义通用网关。
  • 进行边界分析、操作语义、变更场景时,阅读
    skills/mino-interface-implementation-separation/references/workflow.md
  • 若缺少适用的领域概念或契约,仅依靠本Skill无法安全定义consumer契约的独立请求,需先使用
    $mino-domain-model-completeness
    $mino-design-by-contract
  • 若需逐步迁移现有调用方,阅读
    skills/mino-core/references/change-safety.md
  • 仅当文件系统、进程、shell、路径等OS差异与边界相关时,阅读
    skills/mino-core/references/platform-compatibility.md
  • 独立请求中若需进行系统级权衡、数据所有权、目标/迁移决策,需将范围升级至
    $mino-architecture-quality-strategy
    。若要求实现或多个交付物,需先移交至
    $mino-reproducible-development
  • 若路由或同级Skill请求限定范围的工件,无需重新路由,仅向调用方返回Boundary Package与未解决的义务。
  • 操作语义适用性、稳定追踪、Change Safety schema作为套件可操作性处理。

Authority Boundary

Authority Boundary

  • このSkillが所有するのは、consumer purpose、operationの意味契約、技術漏出、boundary内の責務である。
  • system-wideなvalue、quality portfolio、data authority、target / transition decisionを二重に確定しない。Architecture Strategy PackageがあればIDを参照し、なければ上位decision obligationとして返す。
  • condition単位のauthoritative enforcementはContract Packageを参照し、このSkillではconsumerへ見せる意味と責務配置だけを確定する。
  • 本Skill负责的内容包括:consumer目的、操作的语义契约、技术泄漏情况、边界内的职责。
  • 不重复确定系统级价值、质量组合、数据权限、目标/迁移决策。若存在Architecture Strategy Package则引用其ID,否则作为上级决策义务返回。
  • 条件级的权威执行需参考Contract Package,本Skill仅确定向consumer展示的含义与职责分配。

Workflow

Workflow

  1. consumer、purpose、success、既存contract、優先品質を確認し、Evidence状態とdecision maturityを記録する。
  2. 処理をdomain decision、orchestration、persistence、external I/O、representation、policy、operationへ分類する。
  3. purpose-centered capsule、branch meaning、name、abstraction根拠を評価する。
  4. consumerが必要とする最小の意味をinterface partへ置く。
  5. deadline、retry、idempotency、duplicate、ambiguous outcomeを独立にscreeningし、結果を分岐させるapplicableなsemanticsだけを契約へ具体化する。
  6. framework、DB、HTTP、SDK、algorithm、OS固有path / process / shell、per-attempt transport timeout / backoffをimplementation partへ隔離する。
  7. ambiguous outcome、reconciliation、forward recoveryの責務と、boundary-localなownerをEvidence付きで記録する。
  8. Evidenceのあるchange scenarioで境界を検証し、既存利用者がある場合は小さい互換stepと旧path削除条件を設計する。
  1. 确认consumer、目的、成功标准、现有契约、优先质量,记录证据状态与决策成熟度。
  2. 将处理过程分类为领域决策、编排、持久化、外部I/O、表示、策略、操作。
  3. 评估以目的为中心的封装、分支含义、命名、抽象依据。
  4. 将consumer所需的最小含义置于interface部分。
  5. 独立筛选截止期限、重试、幂等性、重复处理、模糊结果,仅将适用的、会导致结果分支的语义具体化到契约中。
  6. 将框架、数据库、HTTP、SDK、算法、OS特定路径/进程/shell、每次尝试的传输超时/退避机制隔离至implementation部分。
  7. 记录模糊结果、协调、前向恢复的职责,以及边界局部负责人,并附上证据。
  8. 在有证据支持的变更场景中验证边界,若存在现有用户,设计小步兼容的迁移步骤与旧路径删除条件。

Platform Compatibility

Platform Compatibility

  • consumerがOS差を必要としない限り、separator、shell command、platform固有型をinterface partへ公開しない。
  • Windows、Linux、macOS用のadapterは同じpurpose、operation、failure、side effectと、applicableなsemanticsを実装する。
  • 実在するplatform variant要件またはEvidenceがない場合、将来用のOS abstractionを追加しない。
  • 除非consumer需要OS差异,否则不得在interface部分公开分隔符、shell命令、平台特定类型。
  • Windows、Linux、macOS的适配器需实现相同的目的、操作、失败场景、副作用及适用语义。
  • 若无实际存在的平台变体需求或证据,不得添加面向未来的OS抽象。

Hard Gates

Hard Gates

以下のいずれかに該当する場合は
subject_verdict: separated
にせず、leakage、unknown、棄却理由を返す。
  • interface型を作ること、ifを減らすこと、patternを導入することが目的になっている。
  • 一実装でvariant根拠がないのにfactoryやStrategy階層を作っている。
  • 外部障害境界や安定契約のためのportに品質根拠がなく、consumer目的より広い抽象を公開している。
  • provider固有のtransport手順をconsumerへ漏らす、またはretry可否、duplicate semantics、ambiguous outcomeをimplementation detailとして隠している。
  • deadline、retry、idempotency、duplicate、ambiguous outcomeを互いから推定し、unknownをN/Aまたは空欄へ丸めている。
  • pure functionやread-only operationへschema充足のためのidempotency key、deduplication、mutation retryを作る、またはdeterministicな同一入力同一出力とmutation idempotencyを混同している。
  • add / change variant scenarioにEvidenceがないのにselection boundaryを作り、
    not_applicable
    理由を残していない。
  • state transitionをvariant abstractionへ逃がしている。
  • 一部platform実装だけを検証してplatform-neutral boundaryと判定している。
  • public contract変更、service分割、data移動を自動実行している。
  • applicableなdomain contractまたはconsumer semantic operation contractのどちらもない。domain contract非適用なら理由とEvidenceがない。
若符合以下任一情况,不得将
subject_verdict
设为
separated
,需返回泄漏问题、未知事项或拒绝理由。
  • 以创建interface类型、减少if语句、引入模式为目的。
  • 单一实现无变体依据却创建工厂或Strategy层级。
  • 外部故障边界或稳定契约的端口无质量依据,且公开的抽象范围超出consumer需求。
  • 向consumer泄露provider特定的传输流程,或将重试可行性、重复语义、模糊结果作为实现细节隐藏。
  • 从彼此推断截止期限、重试、幂等性、重复处理、模糊结果,将未知事项归为N/A或空白。
  • 为纯函数或只读操作添加用于schema满足的幂等键、去重、变更重试,或混淆确定性的同一输入同一输出与变更幂等性。
  • 无添加/变更变体场景的证据却创建选择边界,且未留下
    not_applicable
    的理由。
  • 将状态转移推至变体抽象中。
  • 仅验证部分平台实现却判定为平台无关边界。
  • 自动执行公开契约变更、服务拆分、数据迁移。
  • 既无适用的领域契约也无consumer语义操作契约。若领域契约不适用,需提供理由与证据。

Completion

Completion

  • interface partがpurpose、failure、side effectと、applicableなsemanticsを表す。非該当には理由とEvidence、unknownには確認方法と影響がある。
  • operation、implementation part、leakage finding、change scenario、migrationがstable IDでtraceされる。
  • implementation型、provider固有手順、transport retry機構がconsumerへ漏れず、semantic policyのownerは契約に残る。
  • boundary-localなsemantic / invariant reference、contract / state authority、failure / recovery / operational ownerと、上位Architecture / Contract成果物との関係が参照またはobligationとして明示される。
  • Evidenceのあるvariantだけselection boundaryを持ち、change scenarioと
    not_applicable
    理由を再判定できる。
  • 複数platform対応がrequiredなら、Windows / Linux / macOS adapterが同じconsumer contractを満たすEvidenceまたは未実行事項がある。
  • 既存callerまたは公開契約を変える場合はChange Safetyとtemporary path削除契約を同じpackageに保持する。
  • subject_verdict
    、unknown、未実行検証、overdesign棄却をcanonical readinessと分離する。
  • interface部分需体现目的、失败场景、副作用及适用语义。无关项需包含理由与证据,未知项需包含确认方法及影响。
  • 操作、implementation部分、泄漏发现、变更场景、迁移均通过稳定ID进行追踪。
  • implementation类型、provider特定流程、传输重试机制未向consumer泄漏,语义策略的负责人已记录在契约中。
  • 边界局部的语义/不变量引用、契约/状态权限、失败/恢复/操作负责人,以及与上级Architecture/Contract交付物的关系,均作为引用或义务明确说明。
  • 仅针对有证据支持的变体设置选择边界,可重新判定变更场景与
    not_applicable
    理由。
  • 若需支持多平台,需有证据表明Windows / Linux / macOS适配器满足相同的consumer契约,或记录未完成事项。
  • 若需修改现有调用方或公开契约,需在同一package中保存Change Safety与临时路径删除契约。
  • subject_verdict
    、未知事项、未执行验证、过度设计弃用与标准就绪状态分离。