Memory Writing
Memory Writing
Memory Writing とは、ある
Actorが、あるProcess Frameのある局面において、
memory candidateまたはprocess deltaから導かれる知識項目を、
Durable Project Stateの適切なzone / collection / statusに対して
正しい形式・由来・境界・ライフサイクルで書き込む責任 である。それは単なる保存ではなく、
subject classification、target selection、canonical / provisional distinction、decontextualization、provenance attachment、deduplication / supersession、retention / freshness assignment、write record productionを含む。より短く言えば、Memory Writing とは
「何を、どこへ、どの形で、どの権限に基づいて、future process の前提として残してよいか」を実際に durable state へ反映する責任
である。
PCE 2.0 において memory は、単なる保管庫ではない。
それは future process の初期条件であり、project の継続可能性そのものである。
したがって memory への書き込みは、単なる storage operation ではなく、
project の現実を書き換える責任ある行為 として扱われる。
この意味で Memory Writing は、
Responsibility-first を durable-state mutation 側から具体化した責任である。
なぜ Memory Writing が必要なのか
Section titled “なぜ Memory Writing が必要なのか”PCE 2.0 が Memory Writing を独立責任として置くのは、
「有用そうな知識があること」と「それを project memory として残してよいこと」が別だからである。
少なくとも、次の問題がある。
1. 生成された知識は、そのまま durable にしてよいとは限らない
Section titled “1. 生成された知識は、そのまま durable にしてよいとは限らない”process は多くのものを生む。
- decision rationale
- rejected alternative
- failure lesson
- checklist candidate
- resumable summary
- governance note
- raw implementation note
しかし、これらを同列に durable 化すると project state はすぐに汚れる。
Memory Writing は、この選別を実際の write operation として引き受ける。
2. evaluation だけでは durable state は更新されない
Section titled “2. evaluation だけでは durable state は更新されない”ある candidate が promote-worthy だと評価されたとしても、
それを どの collection に、どの status で、どの shape で 入れるかは別問題である。
評価は admissibility を与えるが、書き込みそのものは実行しない。
3. approval だけでも durable state は更新されない
Section titled “3. approval だけでも durable state は更新されない”approver が「この candidate は先へ進めてよい」と ratify しても、
重複処理、supersession、canonical/provisional の区別、retention までは自動的に決まらない。
それを持つのが Memory Writing である。
4. durable state の更新は future process を拘束する
Section titled “4. durable state の更新は future process を拘束する”一度入った memory は、future context compilation、future handoff、future decision-making に使われる。
したがって雑な write は future process を誤誘導する。
5. runtime / long-running process では provisional write も重要になる
Section titled “5. runtime / long-running process では provisional write も重要になる”recovery point や pending candidate のように、
canonical ではないが durable に保持すべきものがある。
Memory Writing は canonical write だけでなく、provisional durable write も扱う。
だから Memory Writing は、
知識候補を durable project reality に変える責任
として独立に扱われる必要がある。
Memory Writing は何ではないか
Section titled “Memory Writing は何ではないか”輪郭をはっきりさせるために、まず何ではないかを書いておく。
1. 単なる保存ではない
Section titled “1. 単なる保存ではない”ファイルやログを残すこと自体は storage である。
Memory Writing は、何を durable project memory として採用し、どの collection に属させ、どの status を与えるかまで含む。
2. 単なる Memory Promotion Rules ではない
Section titled “2. 単なる Memory Promotion Rules ではない”Memory Promotion Rules は昇格の制度である。
Memory Writing は、その制度を実際の durable state mutation として実行する責任である。
3. 単なる Memory Promotion Criteria ではない
Section titled “3. 単なる Memory Promotion Criteria ではない”Memory Promotion Criteria は判断基準である。
Memory Writing は、その基準を通過した candidate をどう durable form に変えるかを担う。
4. 単なる Evaluation ではない
Section titled “4. 単なる Evaluation ではない”evaluator は「promote-worthy か」を判断する。
memory writer は「どこへ、どの形で、どの status で、どの履歴関係を保って書くか」を引き受ける。
5. 単なる Approval ではない
Section titled “5. 単なる Approval ではない”approver は先へ進めてよいかを ratify する。
memory writer は actual durable write を行う。
6. 単なる Authorship ではない
Section titled “6. 単なる Authorship ではない”candidate を最初に書いた actor が、そのまま durable memory writer であるとは限らない。
著者と durable write authority は分けて考えるべきである。
7. 単なる Artifact Merge ではない
Section titled “7. 単なる Artifact Merge ではない”artifact merge は canonical artifacts への更新であり、しばしば別の authority surface を持つ。
Memory Writing は主に decision / failure / operational / evaluation / governance memory の durable 化を中心に扱う。
ただし project によっては artifact-adjacent notes の write と密接に連動する。
8. 単なる memory_write_authority ではない
Section titled “8. 単なる memory_write_authority ではない”memory_write_authority は bundle 上の権限である。
Memory Writing は、その authority を使って実際に何をどう durable state に反映するかを引き受ける責任である。
Memory Writing が含む責任
Section titled “Memory Writing が含む責任”PCE 2.0 では、Memory Writing は少なくとも次の責務を含む。
1. Subject Classification
Section titled “1. Subject Classification”何を書こうとしているのかを分類する。
例:
- decision memory
- failure memory
- operational memory
- evaluation memory
- governance record
- approved summary
- provisional recovery-related note
分類を誤ると、collection semantics が壊れる。
2. Target Selection
Section titled “2. Target Selection”どの zone / collection / status に置くべきかを決める。
- canonical / decisions
- canonical / failure_memory
- canonical / operational_memory
- canonical / evaluation_memory
- canonical / governance_records
- provisional / pending_candidates
- provisional / recovery_points
などである。
3. Canonical / Provisional Distinction
Section titled “3. Canonical / Provisional Distinction”いま canonical にすべきか、まだ provisional に留めるべきかを分ける。
PCE 2.0 においてこれは非常に重要である。
4. Durable-form Construction
Section titled “4. Durable-form Construction”raw candidate を durable memory form に整える。
例:
- raw note → rationale summary
- failed attempt log → failure lesson
- repeated review note → checklist candidate
- long discussion → approved summary
ここでは decontextualization が重要になる。
5. Provenance / Authority Attachment
Section titled “5. Provenance / Authority Attachment”その item が
- どの frame から来たか
- どの delta に由来するか
- どの evidence を持つか
- どの authority で書かれたか
を失わずに付与する。
6. Deduplication / Supersession Handling
Section titled “6. Deduplication / Supersession Handling”既存 durable item との関係を処理する。
- reject as duplicate
- update existing item
- supersede old item
- keep separate by scope
を判断し、必要なら履歴を残す。
7. Retention / Freshness Assignment
Section titled “7. Retention / Freshness Assignment”どれだけ長く active に保ち、どの条件で stale / archive / retire とするかを与える。
8. Actual Durable Write
Section titled “8. Actual Durable Write”最終的に durable state を変更する。
- create
- update
- provisionalize
- canonicalize
- supersede
- archive
- retract
などの mode がありうる。
9. Write Record Production
Section titled “9. Write Record Production”何を書き、どの rule / evidence / authority に基づいてそうしたかを記録する。
Memory Writing は traceability なしには成立しない。
10. Write Refusal / Deferral
Section titled “10. Write Refusal / Deferral”書かない、保留する、より弱い zone に置く、という判断も責任の一部である。
良い memory writing は「たくさん入れること」ではない。
Memory Writing と他責任との違い
Section titled “Memory Writing と他責任との違い”Memory Writing vs Execution
Section titled “Memory Writing vs Execution”- Execution は candidate や delta を生み出す
- Memory Writing はそれを durable state へ反映する
execution actor は failure lesson を見つけられるが、
それを canonical failure memory にする責任を持つとは限らない。
Memory Writing vs Evaluation
Section titled “Memory Writing vs Evaluation”- Evaluation は candidate が十分かどうかを判定する
- Memory Writing は candidate を durable form に変え、collection に配置する
評価が pass しても、duplicate 処理や supersession の設計までは行わない。
それは memory writer の仕事である。
Memory Writing vs Approval
Section titled “Memory Writing vs Approval”- Approval は次へ進めてよいかを ratify する
- Memory Writing は実際に durable state を mutate する
approval は write path を開くことがあるが、write そのものではない。
Memory Writing vs Goal Ownership
Section titled “Memory Writing vs Goal Ownership”- Goal Ownership は frame 全体の目標と完了条件を保持する
- Memory Writing は何を future project knowledge として残すかを決める
goal owner が memory writer であることもあるが、概念上は分けるべきである。
Memory Writing vs Artifact Merge
Section titled “Memory Writing vs Artifact Merge”artifact merge がコードや仕様の canonical state を更新するのに対し、
Memory Writing は主に durable knowledge layer を更新する。
両者は同時に起こることもあるが、criteria と authority はしばしば異なる。
Memory Writing と Memory Promotion の関係
Section titled “Memory Writing と Memory Promotion の関係”この区別は非常に重要である。
Memory Promotion
Section titled “Memory Promotion”candidate を durable memory path に載せること。
canonical 候補か provisional 候補かを含む。
Memory Writing
Section titled “Memory Writing”その候補を実際に Durable Project State に書き込むこと。
target collection、form、supersession、retention を持つ actual mutation である。
典型的な流れは次のようになる。
- candidate が提案される
- candidate が評価される
- candidate が promote-worthy と判断される
- memory writer が target と form を決めて write する
ただし例外もある。
たとえば runtime actor が recovery point を provisional に書く場合、
narrow な memory writing が先に起こることもある。
Memory Writing が扱う主な target collection
Section titled “Memory Writing が扱う主な target collection”PCE 2.0 では、少なくとも次の durable collection が Memory Writing の主対象になる。
1. Decision Memory
Section titled “1. Decision Memory”- accepted rationale
- approved interpretation
- chosen trade-off
- boundary clarification
2. Failure Memory
Section titled “2. Failure Memory”- reusable failure lesson
- rejected alternative with reason
- anti-pattern
- do-not-repeat note
3. Operational Memory
Section titled “3. Operational Memory”- checklist
- playbook
- workflow pattern
- skill refinement
- runbook note
4. Evaluation Memory
Section titled “4. Evaluation Memory”- threshold clarification
- review baseline
- accepted rubric note
- quality baseline update
5. Governance Records
Section titled “5. Governance Records”- approval rule note
- escalation rule clarification
- scope restriction note
- audit-relevant annotation
6. Approved Summaries / Reference Memory
Section titled “6. Approved Summaries / Reference Memory”- approved phase summary
- resumable but durable-value summary
- stable domain note
7. Provisional Collections
Section titled “7. Provisional Collections”- pending memory candidates
- recovery points
- hold-for-review items
重要なのは、同じ candidate が複数 collection に分かれうることではなく、
何の collection semantics に従う知識なのか を誤らないことである。
Memory Writing と canonical / provisional の違い
Section titled “Memory Writing と canonical / provisional の違い”Memory Writing は単なる yes / no ではない。
典型的には次の三つを分ける必要がある。
Canonical write
Section titled “Canonical write”future process が前提として依拠してよい durable item として書く。
要求水準は高い。
Provisional write
Section titled “Provisional write”durable には保存するが、まだ canonical としては採用しない。
pending candidates や recovery-related items が典型である。
No write / reject / archive
Section titled “No write / reject / archive”現時点では残すべきでない、あるいは active memory としては維持すべきでない。
この区別がないと、project memory はすぐに壊れる。
Memory Writing と decontextualization の関係
Section titled “Memory Writing と decontextualization の関係”Memory Writing は、単に raw candidate をコピペして durable state に置くことではない。
多くの場合、future process が使える durable form へ変換する必要がある。
- raw discussion → decision summary
- failed run log → failure lesson
- reviewer notes → operational checklist
- long conversation → approved summary with scope note
この変換が必要な理由は明確である。
- future actor は元の trace 全体を読まない
- local context なしでも意味が通る必要がある
- scope と applicability が明示されている必要がある
- provenance を失わない必要がある
したがって Memory Writing は、
write であると同時に durable-form construction でもある。
Memory Writing と deduplication / supersession の関係
Section titled “Memory Writing と deduplication / supersession の関係”durable state を保つには、ただ追加していくだけでは足りない。
Memory Writing は、既存 durable item との関係を整理しなければならない。
代表的な操作
Section titled “代表的な操作”Duplicate reject
Section titled “Duplicate reject”実質的に同じ内容なら、新規 write を拒否する。
Update
Section titled “Update”既存 item を更新して取り込む。
Supersede
Section titled “Supersede”新しい item で古い item を置き換える。
ただし supersession relation を traceable に残す。
Keep separate
Section titled “Keep separate”scope や applicability が異なるなら、別 item として保持する。
この処理がないと、
- duplicate note
- contradictory checklist
- stale rationale
- polluted operational memory
が増殖する。
Memory Writing と recovery / provisional writes
Section titled “Memory Writing と recovery / provisional writes”runtime actor や checkpoint manager が recovery_points に write する場合、
これも Memory Writing の narrow form とみなせる。
ただし重要なのは、これを canonical knowledge writing と混同しないことだ。
Recovery-related write の特徴
Section titled “Recovery-related write の特徴”- target は通常 provisional zone
- reuse 目的より resume continuity 目的が強い
- freshness / invalidation が重要
- authority surface が runtime 寄り
- decontextualization 要件は knowledge memory より弱いことがある
この意味で Memory Writing は、collection によってかなり性格が変わる。
Memory Writing は actor symmetry の中でどう分布するか
Section titled “Memory Writing は actor symmetry の中でどう分布するか”PCE 2.0 は actor の分析上の対称性を認める。
しかし Memory Writing は強く 非対称責任 になりやすい。
AI actor や runtime actor に memory writing を割り当てることは可能である。
とくに
- provisional writes
- bounded collections
- policy-backed writes
ではそうである。
しかし canonical memory writing には通常、次が必要である。
- provenance judgment
- target collection semantics
- supersession responsibility
- maintenance cost awareness
- governance compatibility判断
- future project reality への配慮
このため、canonical memory writing はしばしば
- human memory writer
- governance-backed operator
- tightly constrained automated writer
に集中しやすい。
重要なのは、
actor であることから memory writing が自動的に出てこない
という点である。
Memory Writing のトポロジ
Section titled “Memory Writing のトポロジ”memory writer は常に single actor とは限らない。
少なくとも次の形がありうる。
1. Single Memory Writer
Section titled “1. Single Memory Writer”一人または一系統がすべての collection を扱う。
2. Collection-specific Writers
Section titled “2. Collection-specific Writers”- decision writer
- failure memory writer
- operational memory writer
- governance record writer
のように分かれる。
3. Provisional vs Canonical Split
Section titled “3. Provisional vs Canonical Split”provisional write は runtime / executor 側で許し、
canonical write は memory writer に限定する。
4. Proposal / Write Split
Section titled “4. Proposal / Write Split”proposer と writer を完全に分ける。
PCE 2.0 ではかなり一般的な設計である。
5. Joint or Conditional Writing
Section titled “5. Joint or Conditional Writing”memory writer + domain owner approval のように複合的な write path を持つ。
このトポロジは、risk、sensitivity、maintenance cost に応じて設計されるべきである。
Memory Writing の主要操作
Section titled “Memory Writing の主要操作”Memory Writing responsibility は static ではない。
少なくとも次の操作がある。
Admit Candidate
Section titled “Admit Candidate”candidate を memory writing path に乗せる。
Normalize
Section titled “Normalize”durable form へ整える。
Classify
Section titled “Classify”target collection / scope / status を決める。
Write Provisional
Section titled “Write Provisional”pending candidate や recovery point として保存する。
Write Canonical
Section titled “Write Canonical”future process の前提として使える形で canonical zone に反映する。
Update Existing Item
Section titled “Update Existing Item”既存 item を更新する。
Supersede
Section titled “Supersede”古い item を新しい item で置き換える。
Archive / Retire
Section titled “Archive / Retire”active ではなくなった item を退役させる。
Retract
Section titled “Retract”誤った durable item を撤回する。
retract は supersede と違い、「これ自体が不適切だった」という意味を持つ。
Reject Write
Section titled “Reject Write”candidate を durable state に入れない。
重要なのは、Memory Writing が
create だけではなく change / replace / retire / refuse を含むことだ。
Memory Writing と Handoff の関係
Section titled “Memory Writing と Handoff の関係”Memory Writing はしばしば Handoff を伴う。
- reviewer → memory writer
- child frame → parent memory writer
- evaluator → memory writer
- checkpoint manager → recovery collection
このとき handoff package には少なくとも次が必要である。
- candidate ref
- intended target collection
- evidence refs
- evaluation result
- provenance
- unresolved concerns
- desired status (canonical / provisional)
良い memory writing は、candidate を読むのではなく、
candidate continuity を受け取る。
この意味で handoff quality は memory quality に直結する。
Memory Writing と Checkpoint / Recovery の関係
Section titled “Memory Writing と Checkpoint / Recovery の関係”long-running process では memory writing 自体も中断されうる。
したがって Checkpoint and Recovery と結びつく。
memory-writing checkpoint が必要な場面
Section titled “memory-writing checkpoint が必要な場面”- candidate review が長い
- multiple collection updates を一度に扱う
- supersession / archive を伴う
- canonical write 前に approval 待ちがある
recover 後に必要なこと
Section titled “recover 後に必要なこと”- candidate が stale でないか
- source delta が still valid か
- target collection state が drift していないか
- competing supersession が起きていないか
- required authority が変わっていないか
つまり Memory Writing も、単発 write ではなく recoverable responsibility として扱うべきである。
Memory Writing の最小スキーマ
Section titled “Memory Writing の最小スキーマ”PCE 2.0 における最小スキーマは、次のように置ける。
memory_writing_responsibility: actor_ref: frame_id: subject_scope: target_collections: zone_scope: # canonical | provisional | both authority_basis: required_preconditions: required_evals: required_approvals: required_evidence: write_modes: - create - update - provisionalize - canonicalize - supersede - archive - retract - reject normalization_requirements: deduplication_policy: supersession_policy: retention_policy: freshness_policy: visibility_policy: audit_requirements: validity: active_when: expires_when: provenance:bundle の一部として書くなら、もう少し簡潔に次のようにも置ける。
memory_writing: subjects: target_collections: zone_scope: write_modes: required_evals: required_approvals: required_evidence: normalization_requirements: deduplication_policy: supersession_policy: retention_policy: audit_requirements: invalidation_conditions:このスキーマで重要なのは、次の点である。
- subject と target collection がある
- canonical / provisional が分かれている
- create 以外の write mode がある
- normalization / dedup / supersession を含む
- required eval / approval / evidence を持つ
- audit と invalidation がある
つまり Memory Writing は、
単なる DB 書き込みではなく、
governed durable-state mutation responsibility として扱われる。
feature.checkout.coupon-combination frame における memory_writer は、たとえば次のように書ける。
memory_writing_responsibility: actor_ref: memory_writer frame_id: feature.checkout.coupon-combination subject_scope: - decision_delta.accepted_rationale - failure_memory_candidate.naive_threshold_regression - operational_memory_candidate.coupon_edge_case_checklist - approved_summary.phase_summary target_collections: - decisions - failure_memory - operational_memory - pending_candidates zone_scope: both authority_basis: - memory_writer_bundle_v1 - memrule.checkout.operational-playbook.v1 required_preconditions: required_evals: - memory_promotion_eval required_approvals: - reviewer_for_failure_and_operational_candidates required_evidence: - source_delta_ref - evidence_refs - provenance_record write_modes: - canonicalize - provisionalize - supersede - reject normalization_requirements: - decontextualize_candidate - attach_scope_note - attach_provenance deduplication_policy: strategy: check_existing_by_scope_and_semantics supersession_policy: requires_trace: true retention_policy: canonical: active_until_superseded provisional: review_within_next_checkout_release freshness_policy: invalidate_on: - pricing_architecture_change - coupon_policy_change visibility_policy: canonical_operational_memory: checkout_team failure_memory: checkout_team provisional_candidates: memory_writers_and_reviewers_only audit_requirements: - promotion_decision_record - resulting_item_ref validity: active_when: code_review_approval_completed expires_when: frame_closed_or_writer_reassigned provenance: assigned_by: feature.checkout.coupon-combinationこの例で重要なのは、memory writer が「残すかどうか」を決めるだけではなく、
- どの collection に
- canonical か provisional か
- どの form で
- 既存 item とどう関係づけて
書くかまで持っていることだ。
Memory Writing の不変条件
Section titled “Memory Writing の不変条件”PCE 2.0 では、少なくとも次の不変条件を置く。
1. No durable memory write without explicit target
Section titled “1. No durable memory write without explicit target”どこへ書くのか不明な memory write は不完全である。
2. No canonical memory write without provenance
Section titled “2. No canonical memory write without provenance”由来の追えない knowledge を canonical memory にしてはならない。
3. No canonical memory write without prior admissibility path
Section titled “3. No canonical memory write without prior admissibility path”required eval / approval を飛ばして canonical write してはならない。
4. No raw local context as canonical memory
Section titled “4. No raw local context as canonical memory”raw transcript、raw scratchpad、undecontextualized note をそのまま canonical にしてはならない。
5. No silent overwrite
Section titled “5. No silent overwrite”existing item を置き換えるなら supersession / update / retract の意味を明示すべきである。
6. No duplicate accumulation without policy
Section titled “6. No duplicate accumulation without policy”重複を放置してはならない。
deduplication か scoped coexistence の方針が必要である。
7. No authority-free durable write
Section titled “7. No authority-free durable write”memory writing は明示的 authority basis を持たなければならない。
8. Provisional and canonical must remain distinguishable
Section titled “8. Provisional and canonical must remain distinguishable”有望な candidate を保持してよいが、canonical と混同してはならない。
9. Memory write must remain attributable
Section titled “9. Memory write must remain attributable”誰が、何を、どの evidence / rule / authority で書いたか追える必要がある。
10. Memory write should preserve future interpretability
Section titled “10. Memory write should preserve future interpretability”future actor が読んで意味を取れない durable item を量産してはならない。
いつ Memory Writing を分けるべきか
Section titled “いつ Memory Writing を分けるべきか”次の条件があるなら、一つの memory writer ではなく分割を考えるべきである。
1. Collection semantics が大きく違うとき
Section titled “1. Collection semantics が大きく違うとき”decision memory と operational memory では、求められる判断がかなり違う。
2. Canonical と provisional の扱いを分けたいとき
Section titled “2. Canonical と provisional の扱いを分けたいとき”runtime actor に provisional write を許しつつ、canonical write は人間に限定したい場合である。
3. Sensitivity / governance 要件が違うとき
Section titled “3. Sensitivity / governance 要件が違うとき”governance record や policy-sensitive memory は専用 writer の方が安全なことがある。
4. Dedup / supersession の複雑さが違うとき
Section titled “4. Dedup / supersession の複雑さが違うとき”evaluation memory や operational memory は、重複処理の方針がかなり異なる。
5. Ownership domain が違うとき
Section titled “5. Ownership domain が違うとき”module / team / service ごとに memory writer を分けた方が maintenance cost が下がることがある。
短く言えば、
collection semantics、risk、retention、ownership のいずれかが意味的に変わるなら memory writing を分ける
のが基本である。
最低限の自己点検
Section titled “最低限の自己点検”ある process が memory-writing-aware かどうかは、次で点検できる。
- 何を durable memory として書くのか subject を言えるか
- target zone / collection を言えるか
- canonical と provisional を区別しているか
- raw candidate をそのままではなく durable form に整えているか
- provenance と authority を付与しているか
- deduplication / supersession を扱えるか
- required eval / approval を飛ばしていないか
- write record を traceable に残せるか
- stale / retired / superseded の扱いがあるか
- future process がその memory を安全に使えると説明できるか
このどれかが欠けるなら、その process はまだ memory writing を十分に責任として扱っていない。
関連する概念
Section titled “関連する概念”Memory Writing は、PCE 2.0 の durable-state mutation の中心責任として、次の概念と強く結びつく。
No merge without evalDurable Project StateProcess DeltaRecovery PointResponsibility BundleGovernance SurfaceEval ContractOutcome vs ProcessMemory Promotion RulesMemory Promotion CriteriaProcess MetricsHandoffCheckpoint and RecoveryExecutionApprovalEvaluationIncident OwnershipAsymmetry
暫定的なまとめ
Section titled “暫定的なまとめ”Memory Writing が言っていることは、最終的には次の一文に集約できる。
project memory は、価値がありそうな知識をそのまま貯めることでは成立しない。
何を、どこへ、どの形で、どの由来と境界を保って、future process の前提として残してよいかを引き受ける責任があってはじめて成立する。
PCE 2.0 において memory writer は、単なる保管係ではない。
それは、future process の現実を汚さずに育てる責任を持つ actor である。
だから Memory Writing は、単なる保存処理ではない。
それは、PCE 2.0 において durable project state を意図的に形成し、変形し、維持するための memory mutation responsibility である。