Schema: Process Delta
このページは
Process Deltaの参照スキーマです。
概念的な定義や背景は ontology ページを優先し、このページでは field inventory、validation rules、item-level modeling、lifecycle との接続、実装時の注意点を中心に整理します。ここで示すスキーマは wire format の唯一の正解 ではありません。
ただし、PCE 2.0 の Process Delta を保存・転送・評価・統合・昇格するときに、少なくとも何を持つべきかを明示するための canonical reference として使えます。
このスキーマの役割
Section titled “このスキーマの役割”Process Delta schema は、PCE 2.0 における frame の返り値 を表します。
ここに入るのは、主に次のものです。
- どの frame が、どの境界で、どんな差分束を出したか
- どの actor / bundle が、その差分に関与したか
- 各差分 item が何の型で、何をしようとしているか
- どこへ向かう差分なのか
- canonical
- provisional
- parent / integration
- coordination-only
- 何を evidence にしているか
- どの eval / approval / write path が必要か
- いまその item がどの lifecycle にあるか
- later merge / promotion / rollback / supersession の対象として追えるか
逆に、current truth そのもの は原則としてこの schema の外です。
たとえば次は別 schema で扱います。
-
現在採用されている canonical / provisional state
→Schema: Process FrameとDurable Project State -
actor ごとの active local view
→Schema: Compiled Context -
frame 自体の current state
→Lifecycle -
checkpoint / resume の具体オブジェクト
→Recovery Point
つまり Process Delta schema は、state そのものではなく、state-change candidate を表します。
このスキーマが表すもの
Section titled “このスキーマが表すもの”PCE 2.0 では、process は state を直接書き換えるのではなく、
まず delta を生成し、それが later な evaluation・approval・promotion・merge によって current truth に近づいていきます。
概念的には、次のように書けます。
execute(process_frame, runtime_state) -> process_deltaevaluate(process_delta, contract) -> verdictsapprove(process_delta, authority) -> ratified itemspromote_or_merge(ratified_items) -> durable_project_state'この schemaは、この最初の process_delta を表します。
そのため、次の性質を持ちます。
- frame-scoped
- transition-grounded
- item-typed
- evidence-bearing
- governance-aware
- partially mergeable
- lifecycle-bearing
- auditable
このページでは、それを実装しやすい形に落とします。
最小 canonical schema
Section titled “最小 canonical schema”まずは ontology ページと整合する最小形です。
process_delta: delta_id: source_frame: emitted_at_boundary: status: summary: unresolved_issues: recommended_next_action: items: - item_id: kind: op: scope: target_zone: target_collection: payload_or_ref: evidence_refs: required_eval: required_authority: blocking_conditions: provenance: freshness:この最小形で重要なのは、次の点です。
- delta header と delta item を分けている
- item ごとに
kindとopがある - item ごとに
target_zone/target_collectionがある - item ごとに
required_evalとrequired_authorityがある - delta 自体に summary / unresolved issues / next action がある
statusは delta header 自体の lifecycle を表す
最小 item schema
Section titled “最小 item schema”実務では item 単位で扱うことが非常に多いので、item の最小形も独立に置いておきます。
delta_item: item_id: kind: op: scope: target_zone: target_collection: payload_or_ref: evidence_refs: required_eval: required_authority: blocking_conditions: provenance: freshness:この item が Process Delta の最小責務です。
PCE 2.0 において「どんな変化が起きたか」は、通常この item 単位で評価・保留・昇格・却下されます。
推奨 expanded schema
Section titled “推奨 expanded schema”実装や保存を考えるなら、次のような expanded shape が扱いやすいです。
process_delta: delta_id: delta_kind: # execution | evaluation | approval | promotion | coordination | rollback | recovery | integration | custom source_frame_ref: source_transition_ref: source_phase: emitted_at_boundary: emitted_by: actor_ref: bundle_ref: status: # emitted | under_review | evaluated | approved | partially_merged | merged | rejected | superseded | archived | invalidated summary: subject_scope: unresolved_issues: recommended_next_action: consumers: evaluator_refs: approver_refs: memory_writer_refs: parent_frame_refs: integration_owner_refs: handoff_role: # source | return | approval_submission | evaluation_submission | escalation_submission | none join_role: # branch_return | integrated_delta | comparison_candidate | none items: - item_id: item_kind: # artifact | decision | failure_memory | evaluation | governance | operational_memory | recovery | status op: # add | update | supersede | retract | archive | checkpoint | annotate | invalidate subject_scope: target: destination: # canonical | provisional | parent_only | runtime_only | coordination_only collection: intended_status: payload_or_ref: evidence_refs: required_eval_contract_refs: required_approval_point_refs: required_write_authority_refs: blocking_conditions: state_effect_hints: lifecycle_changes: gate_changes: downstream_consumers: lineage: source_actor_ref: source_bundle_ref: source_subject_refs: derived_from_item_refs: freshness: source_epoch: invalidated_by: lifecycle: status: consumed_by: merged_as_ref: supersedes_refs: invalidates_refs: audit_refs: related_refs: handoff_refs: recovery_refs: approval_refs: evaluation_refs: promotion_refs: provenance: created_at: created_by: compile_context_ref: notes:この shape は、header / item / lifecycle / consumers / lineage を明示した参照形です。
高リスクな process や later rollback / supersession / audit を考えるなら、このくらい持っておくとかなり扱いやすくなります。
Delta header と delta item を分ける理由
Section titled “Delta header と delta item を分ける理由”PCE 2.0 では、delta 全体と item を区別した方がよいです。
delta header が持つもの
Section titled “delta header が持つもの”- どの frame / transition から出たか
- どの boundary で出たか
- 全体 summary
- unresolved issues
- recommended next action
- delta set としての status
delta item が持つもの
Section titled “delta item が持つもの”- 何の型の変化か
- 何をしようとしているか
- どこへ向かうか
- 何を evidence にしているか
- 何の eval / approval / write path が必要か
- freshness / lineage / lifecycle
なぜ分けるか。
理由は simple です。
- header は coordination view
- item は admissibility unit
だからです。
approval や merge は often item 単位で進み、
handoff や review package は header 単位で扱われることが多いです。
Field-by-field reference
Section titled “Field-by-field reference”以下、header と item に分けて整理します。
Header-level fields
Section titled “Header-level fields”delta_id — required
Section titled “delta_id — required”delta 全体を識別する stable ID です。
期待される性質:
- frame-scoped または project-scoped に一意
- later evaluation / approval / merge / rollback / audit から参照可能
- item refs や promotion decision から逆参照できる
悪い例:
- every render で変わる ephemeral ID
- same semantic delta に複数の silent ID が乱立する状態
delta_kind — optional but useful
Section titled “delta_kind — optional but useful”この delta 全体が主にどの種別の transition から出たかを示します。
例:
executionevaluationapprovalpromotioncoordinationrollbackrecoveryintegration
重要な点:
- item の
kindとは違う delta_kindは whole package の由来ラベル- mixed item delta でもよいので、これは primary classification と考える方がよい
source_frame_ref — required
Section titled “source_frame_ref — required”どの frame がこの delta を出したかを示します。
PCE 2.0 では、delta は真空中の変化ではありません。
必ず frame に属するため、この field は必須です。
source_transition_ref — recommended
Section titled “source_transition_ref — recommended”どの transition によってこの delta が emitted されたかを示します。
例:
emit-delta.after-implementationevaluate.artifact.v1rollback.scope-violationrecover.for-review
これがあると later audit や lifecycle reconstruction がかなりしやすくなります。
source_phase — optional but useful
Section titled “source_phase — optional but useful”その delta がどの phase 由来かを示します。
例:
- analysis
- implementation
- review
- promotion
- recovery
- incident
phase は lifecycle state とは違います。
delta が implementation_completed 由来でも、frame は pending_approval lifecycle にいるかもしれません。
emitted_at_boundary — required
Section titled “emitted_at_boundary — required”この delta がどの意味的 boundary で切られたかを示します。
例:
- implementation_completed
- review_completed
- evaluation_completed
- checkpoint_created
- incident_declared
- join_integrated
これは PCE 2.0 において重要です。
Process Delta は arbitrary log slice ではなく、意味のある境界で切られる差分束 だからです。
emitted_by — recommended
Section titled “emitted_by — recommended”どの actor / bundle が delta を出したかを示します。
推奨 subfields:
actor_refbundle_ref
ここで重要なのは、actor と bundle を分けることです。
same actor でも different bundle で delta を出すことがあり、later audit で重要になります。
status — required
Section titled “status — required”delta header 自体の lifecycle です。
推奨 values は次のように置けます。
emittedunder_reviewevaluatedapprovedpartially_mergedmergedrejectedsupersededarchivedinvalidated
重要な点:
- item status と header status は同じである必要はありません
partially_mergedを持てると item-level partial promotion を表しやすい- payload を silent に変えるより、status change と separate record を持つ方が安全です
summary — recommended
Section titled “summary — recommended”delta 全体を人間・上位 frame・integrator が把握しやすいように短く説明します。
良い summary の条件:
- 何が変わったか
- 何が未決か
- 何が next action か
- 可能なら risk / gate 状態も分かる
悪い summary の例:
変更しました対応済みです
subject_scope — optional but useful
Section titled “subject_scope — optional but useful”delta 全体が大きくどの scope に関わるかを示します。
例:
feature.checkout.coupon-combinationcheckoutincident.checkout.rollback
item ごとの scope が more precise でも、header に broad scope があると later grouping に便利です。
unresolved_issues — recommended
Section titled “unresolved_issues — recommended”この delta とともに残る未解決事項です。
重要な点:
- resolved していないこと自体が重要なら header に出す
- later handoff / approval / escalation の判断材料になる
- success narrative を壊しうる issue も含むべき
これは Corrupt Success 防止にかなり効きます。
recommended_next_action — recommended
Section titled “recommended_next_action — recommended”delta を受け取った側に、次に何をしてほしいかを示します。
例:
submit_for_reviewrun_required_regressionrequest_product_owner_decisionpromote_failure_memoryreplan_after_rollback
これがあると、delta は message ではなく continuation-oriented package になります。
consumers — optional but useful
Section titled “consumers — optional but useful”この delta を誰が消費する想定かを示します。
例:
- evaluator refs
- approver refs
- memory writer refs
- parent frame refs
- integration owner refs
重要なのは、consumer が durable target と同一とは限らないことです。
たとえば child delta の immediate consumer は parent frame だが、later durable target は canonical memory かもしれません。
handoff_role — optional
Section titled “handoff_role — optional”handoff の中でこの delta がどんな役割かを示します。
例:
sourcereturnapproval_submissionevaluation_submissionescalation_submissionnone
これは later な process analysis や schema separation に役立ちます。
join_role — optional
Section titled “join_role — optional”branch-and-join の中でこの delta がどんな役割かを示します。
例:
branch_returnintegrated_deltacomparison_candidatenone
複数 child return を later join する場合に便利です。
related_refs — optional
Section titled “related_refs — optional”handoff, recovery, approval, evaluation, promotion など関連オブジェクトへの参照です。
これは item ごとの lineage と別に、header-level で broad relation を示す用途に向きます。
provenance — recommended
Section titled “provenance — recommended”delta 自体の provenance です。
最低限あるとよいもの:
created_atcreated_bycompile_context_refnotes
特に compile_context_ref があると、later に
「どんな compiled context からこの delta が出たのか」
を追えるようになります。
Item-level fields
Section titled “Item-level fields”item_id — required
Section titled “item_id — required”delta item 自体を識別する stable ID です。
重要な点:
- later evaluation / approval / promotion / rollback は often item 単位で行われる
- item_id は durable item refs や supersession records から参照されうる
- header の
delta_idだけでは粒度が粗すぎることが多い
item_kind / kind — required
Section titled “item_kind / kind — required”差分が何の型かを示します。
典型値:
artifactdecisionfailure_memoryevaluationgovernanceoperational_memoryrecoverystatus
これがないと later path が決まりません。
artifact と failure memory と governance note を同じように扱うべきではないからです。
op — required
Section titled “op — required”その型に対して何をしようとしているかを示します。
典型値:
addupdatesupersederetractarchivecheckpointannotateinvalidate
重要な点:
kindだけでは不十分decisionを add するのか supersede するのかで downstream meaning が変わるrecoveryitem ならcheckpointop がよく出る
subject_scope — required or strongly recommended
Section titled “subject_scope — required or strongly recommended”その item がどの feature / module / policy scope / frame subregion に属するかを示します。
scope がないと later memory promotion や rollback horizon の判断が粗くなります。
target — required for anything mergeable / promotable / consumable
Section titled “target — required for anything mergeable / promotable / consumable”item がどこへ向かうかを示します。
推奨 subfields:
destinationcollectionintended_status
destination の代表値
Section titled “destination の代表値”canonicalprovisionalparent_onlyruntime_onlycoordination_only
collection の例
Section titled “collection の例”artifactsdecisionsfailure_memoryoperational_memoryevaluation_memorygovernance_recordspending_candidatesrecovery_points
intended_status の例
Section titled “intended_status の例”canonicalprovisionalpending_reviewretractedarchived
重要な点:
- target がない item は “何に効く差分なのか” が曖昧になる
- coordination-only items では collection が
nullでもよい parent_onlyは durable target ではなく integration / decision input としての destination です
payload_or_ref — required
Section titled “payload_or_ref — required”差分そのものの payload、またはそれへの reference です。
例:
- code diff ref
- document ref
- short summary
- decision text
- checkpoint ref
- CI report ref
原則:
- 大きい payload は ref 化してよい
- ただし item の意味が分かる程度の descriptor は必要
- payload を全部 inline にすればよいわけではない
evidence_refs — recommended, often required
Section titled “evidence_refs — recommended, often required”その item を later eval / approval / promotion にかけるための evidence refs です。
例:
- test report
- spec summary
- rationale note
- rollback note
- source trace
- duplicate check refs
重要な点:
- required evidence が空なら mergeable/promotable item として弱い
- evidence は item-level で持った方が later filtering しやすい
- header-level summary のみでは十分でないことが多い
required_eval_contract_refs — required for mergeable / promotable items
Section titled “required_eval_contract_refs — required for mergeable / promotable items”その item に適用すべき eval contract への参照です。
例:
eval.feature.checkout.coupon-combination.artifact.v1eval.checkout.operational-memory.v1
重要な点:
No merge without evalを item レベルで operational にする- item kind ごとに contract が違うことがある
- item-specific override を許す場合もここで表現しやすい
required_approval_point_refs — optional but often needed
Section titled “required_approval_point_refs — optional but often needed”later な approval gate が必要な item なら、その point ref を持ちます。
例:
ap.feature.checkout.coupon-combination.code-reviewap.memory.operational.canonical-write
これにより、eval と approval を item レベルで分離できます。
required_write_authority_refs — optional but important for durable writes
Section titled “required_write_authority_refs — optional but important for durable writes”durable state に書くための write authority を later に参照できるようにします。
特に memory / governance / canonical write item では有用です。
blocking_conditions — recommended
Section titled “blocking_conditions — recommended”その item が current path で先へ進めない条件です。
例:
- missing_required_evidence
- no_scope_violation
- all_required_tests_green
- no_duplicate_conflict
- no_parent_conflict
これがあると, evaluation / approval / join / rollback の later logic がかなり見通しよくなります。
state_effect_hints — optional but useful
Section titled “state_effect_hints — optional but useful”この item を later に consume したとき、どんな state effect がありそうかを示します。
例:
- lifecycle changes
- gate changes
- downstream consumers
- merge-path candidates
これは actual effect ではなく hint なので、later decisions を置き換えるべきではありません。
ただし complex integration や join では有用です。
lineage — recommended
Section titled “lineage — recommended”item 自体の lineage を追います。
推奨 subfields:
source_actor_refsource_bundle_refsource_subject_refsderived_from_item_refs
これにより、
- same frame 内の derived candidates
- branch integrated items
- compacted summary candidates
- rollback / supersession chains
を later に追いやすくなります。
freshness — recommended
Section titled “freshness — recommended”その item がどの時点・どの前提に依存し、いつ stale になるかを示します。
推奨 subfields:
source_epochinvalidated_by
例:
- code diff changes
- approved spec changes
- governance rule changes
- branch join result changes
- recovery invalidation
delta item は current truth ではないので、freshness を explicit にしておくことが重要です。
lifecycle — optional but highly recommended in systems with partial promotion
Section titled “lifecycle — optional but highly recommended in systems with partial promotion”item 自体の lifecycle を持ちます。
典型 subfields:
statusconsumed_bymerged_as_refsupersedes_refsinvalidates_refs
推奨 item statuses:
emittedunder_reviewevaluatedapprovedpartially_consumedmergedrejectedsupersededarchivedinvalidated
header status より item status の方が later operation に重要になることが多いです。
audit_refs — optional
Section titled “audit_refs — optional”item に関わる approval / evaluation / promotion / rollback / supersession records への参照です。
高リスクな flows や later explanation を重視するなら持っておく価値があります。
What not to put in Process Delta
Section titled “What not to put in Process Delta”混ざりやすいので明示します。
入れない方がよいもの
Section titled “入れない方がよいもの”1. current durable truth itself
Section titled “1. current durable truth itself”delta は state-change candidate であって current truth ではありません。
2. full compiled context by default
Section titled “2. full compiled context by default”delta は compiled context から出るが、compiled context 全体を payload に埋め込む必要はありません。
3. raw transcript whole-cloth
Section titled “3. raw transcript whole-cloth”必要なら refs は持ってよいですが、default で全文を入れるべきではありません。
4. frame lifecycle snapshot as if it were delta payload
Section titled “4. frame lifecycle snapshot as if it were delta payload”lifecycle は ref または state effect hint に留める方がよいです。
5. approval / evaluation / audit records themselves as opaque duplicates
Section titled “5. approval / evaluation / audit records themselves as opaque duplicates”それらは separate records として持ち、delta は ref を持つ方が traceability が高いです。
Validation rules
Section titled “Validation rules”この schema を Process Delta として扱うための最低限の validation rule を置いておきます。
1. delta_id and source_frame_ref are required
Section titled “1. delta_id and source_frame_ref are required”frame を持たない delta は PCE 2.0 の delta ではありません。
2. items must be non-empty
Section titled “2. items must be non-empty”空 delta は coordination note としてはありえても、通常は Process Delta とは扱いにくいです。
3. Every item must have kind and op
Section titled “3. Every item must have kind and op”typed semantic difference が Process Delta の中心です。
4. Every mergeable / promotable item must have a target
Section titled “4. Every mergeable / promotable item must have a target”later durability path を持つなら destination / collection が必要です。
5. Every mergeable / promotable item must have an eval path
Section titled “5. Every mergeable / promotable item must have an eval path”required_eval_contract_refs がなければ No merge without eval に反します。
6. coordination_only items must not be mistaken for durable candidates
Section titled “6. coordination_only items must not be mistaken for durable candidates”status items や handoff signals を canonical target と混同してはなりません。
7. lineage and freshness should be sufficient for later invalidation
Section titled “7. lineage and freshness should be sufficient for later invalidation”stale subject や superseded branch return を later に区別できる必要があります。
8. Delta content should not silently mutate after emission
Section titled “8. Delta content should not silently mutate after emission”修正が必要なら new delta, invalidation, supersession, or lifecycle record で表す方が安全です。
9. Partial consumption must remain representable
Section titled “9. Partial consumption must remain representable”header-level merged と item-level rejected が混在できる必要があります。
10. Delta must remain auditable
Section titled “10. Delta must remain auditable”少なくとも governance-relevant item については later explanation ができるべきです。
Relationship to lifecycle, handoff, recovery, and durability
Section titled “Relationship to lifecycle, handoff, recovery, and durability”この schema は次の概念と特に強く結びつきます。
Lifecycle
Section titled “Lifecycle”frame lifecycle は delta によって進みますが、delta = lifecycle ではありません。
delta は often lifecycle の入力です。
Handoff
Section titled “Handoff”child→parent return や approval submission は delta-based handoff として表せます。
Recovery
Section titled “Recovery”rollback / recovery 後に、どの item が stale / invalid になったかを delta lifecycle で追えると強いです。
Durability
Section titled “Durability”delta は durability path の入口ですが、durable state そのものではありません。
merge / promotion / write authority を later に要します。
Immutability guidance
Section titled “Immutability guidance”PCE 2.0 の実装では、Process Delta の payload 部分は基本的に append-only / immutable に寄せた方が安全です。
- emitted item content は固定
- later changes は lifecycle record で表す
- supersession / invalidation / merge result は別 field / separate record で追う
避けたいこと
Section titled “避けたいこと”- emitted delta を後から silent に書き換える
- required evidence を後付けで差し替えるのに記録を残さない
- item payload を old status のまま mutate する
理由は simple です。
Process Delta は current truth そのものではなく、later explanation の起点だからです。
Serialization guidance
Section titled “Serialization guidance”実装上は次の二系統があります。
1. inline storage
Section titled “1. inline storage”delta header の中に items を埋め込む。
小さなシステムや docs / config 向きです。
2. normalized storage
Section titled “2. normalized storage”- delta header table
- delta item table
- delta item lifecycle table
- evaluation / approval / promotion records
のように分ける。
partial promotion、later rollback、branch integration を重く扱うなら、こちらが伸びます。
小さい実装では inline でもよいですが、次の四つは早めに分離した方がよいです。
- delta header
- delta items
- item lifecycle / status changes
- audit records
Example
Section titled “Example”feature.checkout.coupon-combination frame の implementation 完了後 delta の例です。
process_delta: delta_id: delta.feature.checkout.coupon-combination.v3 delta_kind: execution source_frame_ref: feature.checkout.coupon-combination source_transition_ref: emit-delta.after-implementation source_phase: implementation emitted_at_boundary: implementation_completed
emitted_by: actor_ref: coding_agent bundle_ref: coding_agent_impl_bundle_v2
status: emitted
summary: > approved spec に基づく implementation 差分、関連 test 更新、 precedence regression に関する failure lesson 候補、 review handoff 用 coordination item を含む。
subject_scope: feature.checkout.coupon-combination
unresolved_issues: - edge_case_for_stacked_discount_rounding_requires_followup
recommended_next_action: - submit_for_review - run_required_regression_confirmation - evaluate_memory_candidates
consumers: evaluator_refs: - ci_evaluator - reviewer approver_refs: - reviewer memory_writer_refs: - memory_writer parent_frame_refs: [] integration_owner_refs: []
handoff_role: approval_submission join_role: none
items: - item_id: delta_item.code_patch item_kind: artifact op: update subject_scope: feature.checkout.coupon-combination target: destination: canonical collection: artifacts intended_status: canonical payload_or_ref: commit_ref: abc1234 changed_files: - src/checkout/coupon_validation.ts - tests/checkout/coupon_validation.test.ts evidence_refs: - local_test_run_552 - approved_spec_summary - rollback_note_v1 required_eval_contract_refs: - eval.feature.checkout.coupon-combination.artifact.v1 required_approval_point_refs: - ap.feature.checkout.coupon-combination.code-review required_write_authority_refs: [] blocking_conditions: - no_scope_violation - all_required_tests_green state_effect_hints: lifecycle_changes: - may_enable_completion_ready_after_approval gate_changes: - opens_review_evaluation downstream_consumers: - reviewer - ci_evaluator lineage: source_actor_ref: coding_agent source_bundle_ref: coding_agent_impl_bundle_v2 source_subject_refs: - approved_spec_summary derived_from_item_refs: [] freshness: source_epoch: implementation_completed_at_2026_03_09T10_30_00Z invalidated_by: - code_diff_changes - approved_spec_changes lifecycle: status: emitted consumed_by: [] merged_as_ref: null supersedes_refs: [] invalidates_refs: [] audit_refs: []
- item_id: delta_item.accepted_rationale item_kind: decision op: add subject_scope: feature.checkout.coupon-combination target: destination: canonical collection: decisions intended_status: canonical payload_or_ref: summary: payment gateway changes remain out of scope for this feature evidence_refs: - approved_spec_summary - implementation_note_v1 required_eval_contract_refs: - eval.feature.checkout.coupon-combination.artifact.v1 required_approval_point_refs: - ap.feature.checkout.coupon-combination.spec required_write_authority_refs: - memory_writer_bundle_v1 blocking_conditions: [] state_effect_hints: lifecycle_changes: [] gate_changes: [] downstream_consumers: - reviewer - memory_writer lineage: source_actor_ref: analyst_agent source_bundle_ref: analyst_agent_bundle_v1 source_subject_refs: - spec_analysis_child_return derived_from_item_refs: [] freshness: source_epoch: spec_approved_at_2026_03_08T18_00_00Z invalidated_by: - scope_reframe lifecycle: status: emitted consumed_by: [] merged_as_ref: null supersedes_refs: [] invalidates_refs: [] audit_refs: []
- item_id: delta_item.failed_naive_threshold item_kind: failure_memory op: add subject_scope: feature.checkout.coupon-combination target: destination: provisional collection: pending_candidates intended_status: provisional payload_or_ref: summary: naive threshold check caused regression in coupon precedence ordering evidence_refs: - failed_test_run_548 - implementation_note_v1 required_eval_contract_refs: - eval.checkout.operational-memory.v1 required_approval_point_refs: [] required_write_authority_refs: - memory_writer_bundle_v1 blocking_conditions: - evidence_must_be_sufficient_for_failure_lesson state_effect_hints: lifecycle_changes: [] gate_changes: [] downstream_consumers: - memory_writer lineage: source_actor_ref: coding_agent source_bundle_ref: coding_agent_impl_bundle_v2 source_subject_refs: - failed_local_attempt derived_from_item_refs: [] freshness: source_epoch: failed_test_run_548_at_2026_03_09T10_05_00Z invalidated_by: - contradictory_failure_evidence lifecycle: status: emitted consumed_by: [] merged_as_ref: null supersedes_refs: [] invalidates_refs: [] audit_refs: []
- item_id: delta_item.review_ready item_kind: status op: add subject_scope: feature.checkout.coupon-combination target: destination: coordination_only collection: null intended_status: none payload_or_ref: summary: implementation package is ready for reviewer handoff evidence_refs: - handoff.feature.checkout.coupon-combination.impl-to-review.v1 required_eval_contract_refs: [] required_approval_point_refs: [] required_write_authority_refs: [] blocking_conditions: [] state_effect_hints: lifecycle_changes: - may_transition_parent_to_pending_approval gate_changes: - opens_code_review_approval downstream_consumers: - reviewer lineage: source_actor_ref: coding_agent source_bundle_ref: coding_agent_impl_bundle_v2 source_subject_refs: - handoff.feature.checkout.coupon-combination.impl-to-review.v1 derived_from_item_refs: [] freshness: source_epoch: handoff_created_at_2026_03_09T10_31_00Z invalidated_by: - code_diff_changes lifecycle: status: emitted consumed_by: [] merged_as_ref: null supersedes_refs: [] invalidates_refs: [] audit_refs: []
- item_id: delta_item.review_checkpoint item_kind: recovery op: checkpoint subject_scope: feature.checkout.coupon-combination target: destination: provisional collection: recovery_points intended_status: provisional payload_or_ref: recovery_point_ref: rp.feature.checkout.coupon-combination.after-impl.v1 evidence_refs: - checkpoint_integrity_note required_eval_contract_refs: [] required_approval_point_refs: [] required_write_authority_refs: - runtime_checkpoint_bundle blocking_conditions: [] state_effect_hints: lifecycle_changes: - may_enable_suspended_review_wait_state gate_changes: [] downstream_consumers: - checkpoint_manager - reviewer lineage: source_actor_ref: checkpoint_manager source_bundle_ref: runtime_checkpoint_bundle source_subject_refs: - runtime_state_after_implementation derived_from_item_refs: [] freshness: source_epoch: checkpoint_created_at_2026_03_09T10_32_00Z invalidated_by: - approved_spec_changes - governance_rule_changes lifecycle: status: emitted consumed_by: [] merged_as_ref: null supersedes_refs: [] invalidates_refs: [] audit_refs: []
related_refs: handoff_refs: - handoff.feature.checkout.coupon-combination.impl-to-review.v1 recovery_refs: - rp.feature.checkout.coupon-combination.after-impl.v1 approval_refs: [] evaluation_refs: [] promotion_refs: []
provenance: created_at: 2026-03-09T10:32:00Z created_by: checkpoint_manager compile_context_ref: ctx.feature.checkout.coupon-combination.coding_agent.impl.v3 notes: implementation completed boundaryWhat to implement next
Section titled “What to implement next”この schema を扱えるようになったら、次に実装・記述するとつながりやすいものは次です。
Schema: Process FrameSchema: Compiled ContextApproval PointsLifecycleMemory Promotion RulesAuditability
暫定的なまとめ
Section titled “暫定的なまとめ”Process Delta schema が言っていることは、最終的には次の一文に集約できます。
process の結果は、単なる output の塊ではない。
どの frame が、どの境界で、何の型の変化を、どこへ向かう候補として、どの evidence と eval path と authority requirement つきで出したのかが item 単位で表現されて、はじめて delta になる。
この schema は、その差分束を later evaluation、approval、promotion、merge、rollback、recovery に耐える形で保存・転送・検証するための参照形です。