{
  "schemaVersion": 1,
  "identity": "RealPG Development Notes",
  "purpose": "A small public-learning history surface that separates observed facts from interpretation and remains distinct from Reality Evidence.",
  "episodes": [
    {
      "id": "canonical-mail-first-e2e-week-v0",
      "date": { "start": "2026-09-03", "asOf": "2026-09-12" },
      "title": { "ja": "1通のメールが会社全体のテストになった1週間", "en": "The week one email became a test of the whole company" },
      "objective": { "ja": "現在の候補から1件を選び、exactなreview/authorization、Company Runtime、mail transport、結果の記録までを、Humanが途中で継ぎ合わせずに1本のcanonical Objectiveとして通せる状態を証明する。", "en": "Prove that one current candidate can move through exact review and authorization, Company Runtime, mail transport, and truthful outcome recording as one canonical Objective without Human stitching between stages." },
      "observed": [
        { "ja": "2026-09-03には、商用メール4通についてoutbound_submittedのRealityがすでに残っていた。SMTPやOwnedMailが一度も動いていなかったわけではない。", "en": "By 2026-09-03, four commercial messages already had outbound_submitted Reality. SMTP and OwnedMail were not an unproven transport from scratch." },
        { "ja": "一方で、外部化されたメールがあるのにCompany Runtime側では失敗として終わるケースがあり、transport side effectとsystem outcome truthが一致していなかった。", "en": "At the same time, some messages could be externally submitted while Company Runtime still settled as failed, so transport side effect and system outcome truth were inconsistent." },
        { "ja": "canonicalな1通を再現しようとすると、exact candidate read、owner rendezvous、production migration、Change Pipelineの削除/rename処理、deterministic processorのdrain状態、Supabase CLIの観測/parseといった境界が順番に露出した。", "en": "Replaying one canonical message exposed boundaries in sequence: exact candidate reads, owner rendezvous, production migrations, Change Pipeline deletion and rename handling, deterministic processor drain state, and Supabase CLI observation/parsing." },
        { "ja": "2026-09-12時点のmail Realityには、9月3日より後の新しいcommercial outbound eventはまだない。canonical pathの2本目はまだ外部Realityで再証明されていない。", "en": "As of 2026-09-12, mail Reality still contains no newer commercial outbound event after September 3. A second canonical message has not yet re-proven the path in external Reality." }
      ],
      "hypotheses_or_interpretation": [
        { "ja": "主問題はメール送信能力そのものより、Objective continuity、境界間のexact identity、processor liveness、結果の真実性を一つの会社として保つことにあった。", "en": "The main problem was less the ability to send mail than preserving Objective continuity, exact identity across boundaries, processor liveness, and truthful outcomes as one company." },
        { "ja": "local repairが成功してもObjectiveが成功したとは限らない。修理後には元のObjectiveへ戻り、必要なRealityを再観測する必要がある。", "en": "A successful local repair is not Objective success. After a repair, the system must return to the parent Objective and re-observe the required Reality." },
        { "ja": "platform improvementをすべて1通のメールのblockerにしてはいけない。安全性またはoutcome truthに必要なものだけをcritical pathへ昇格させるべき、という仮説が強くなった。", "en": "Not every platform improvement should block one message. Only improvements required for safety or outcome truth should be promoted onto the critical path." }
      ],
      "interventions": [
        { "ja": "1-message canonical E2EをObjectiveとして固定し、別のbatch execution pathを増やさない方針にした。", "en": "The company froze a one-message canonical E2E Objective instead of adding another batch execution path." },
        { "ja": "exact Learning candidate readとowner rendezvous transportを追加し、selected supplyをlatest-Nやproseではなくexact identityで扱う方向へ寄せた。", "en": "Exact Learning-candidate reads and owner-rendezvous transport were added so selected supply could be carried by exact identity rather than latest-N or prose discovery." },
        { "ja": "production migration historyを推測で直さず、epoch化・bounded parser evidence・fail-closed repairで収束させる方向へ変更した。", "en": "Production migration convergence moved away from guessed history repair toward an epoch, bounded parser evidence, and fail-closed repairs." },
        { "ja": "Change Pipeline、rename authority、processor/drain、CLI parserで見つかった欠落は、それぞれ局所修理した後に元Objectiveを再試行する方針へ整理した。", "en": "Gaps in the Change Pipeline, rename authority, processor/drain handling, and CLI parsing were treated as bounded repairs followed by replay of the original Objective." }
      ],
      "outcomes": [
        { "ja": "メールtransportがRealityで動いたこと自体は既に証明されている。", "en": "Mail transport itself has already been proven to externalize messages in Reality." },
        { "ja": "canonical pathを作る過程で、会社全体のliveness/control-plane上の欠落が具体的なfailure evidenceとして見えるようになった。", "en": "The canonical effort made company-wide liveness and control-plane gaps visible as concrete failure evidence." },
        { "ja": "ただし2本目のcanonical messageはまだ外部化されておらず、この一連の修理が実際にthroughputを改善したとはまだ言えない。", "en": "But a second canonical message has not yet been externalized, so the repairs have not yet proven an improvement in throughput." }
      ],
      "unknowns": [
        { "ja": "現在のsourceが、historicalなoutbound_submittedとruntime-failedの不一致を完全に解消したか。", "en": "Whether the current source fully resolves the historical outbound_submitted versus runtime-failed mismatch." },
        { "ja": "次の1通が、最初のcanonical cycleよりHuman介入・経過時間・repair数の面で本当に安くなるか。", "en": "Whether the next message is materially cheaper in Human intervention, elapsed time, and repair count than the first canonical cycle." },
        { "ja": "どのplatform improvementがper-action safety/outcome truthに本当に必要で、どれが並行化できるか。", "en": "Which platform improvements are truly required for per-action safety or outcome truth, and which can remain parallel work." }
      ],
      "next_verification": { "ja": "別途SEND authorityが成立した時に、現在のunsent candidateを1件だけ同じcanonical pathで通し、packet → operation → runtime job → message → outcomeのchain、経過時間、Human介入回数、repair回数を記録する。2本目が明確に安く・速ければ、今回の修理がlearningに変わった証拠になる。", "en": "When SEND authority is separately established, move exactly one current unsent candidate through the same canonical path and record the packet -> operation -> runtime job -> message -> outcome chain, elapsed time, Human interventions, and repair count. If the second run is materially cheaper and faster, the repairs become evidence of learning rather than merely accumulated fixes." },
      "evidence_refs": ["objective:mail-canonical-e2e-v1", "learning:machine:v16:nagi-mail-canonical-e2e-root:v0:20260908", "learning:nagi:v8:repair-must-replay-original-objective:v0:20260908", "learning:machine:v16:final-learning-objective-liveness-and-mail-critical-path:v0:20260909", "runtime:realpg_direct_sales_mail_events:commercial-outbound-submitted=4:observed-20260912", "context:20260912-005614"]
    }
  ]
}
