大吉祥寺.pm 2026 登壇資料「変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル」(2026-07-25)
リファクタリングでも仕様変更でも、私たちはいつも「何を変えないか」を先に決めています。不変の核を深く置くほど、変わるものは小さな力で動かせる — この登壇では、「イミュータブル(不変)+ 追記のみ」という一つの原理が、3つの層で同じ形で現れることを話します。
データ: 上書きから追記へ(イベントソーシング) — 「会計士は消しゴムを使わない」。出来事を追記し、状態は畳んで導く。SSoT(真実の源)はイベントの蓄積。4年以上の実践(Sekiban / SekibanWasmRuntime / SekibanCloud)と最新の DCB にも触れます
仕様、そして意図へ(意図駆動開発 / intent-cli) — プロンプトと意図を捨てて成果物だけ版管理していないか(Sean Grove「The New Code」)。意図をツリーにしてGitに残し、生成したタスク(packet)も履歴として積み、振り返って意図を強化する — 開発プロセスのイミュータブル化
イミュータブルに統一 = 変更は「追加」に揃う — コード(関数型)・データ(ES)・意図(IDD)の3層が「イミュータブル」で一つにまとまり、Open/Closed Principle(開放閉鎖の原則)と同じ設計姿勢に。ESの構造がAIコーディングでも有利に働く理由(意味的局所性・実行可能な遷移・観測面の強制・再生可能な入力)も紹介
AI時代の協働 — ハーネスで縛るのでなく、地図とコンパス(意図)を渡す。保存した意図が orchestrator の次の判断を決める
締めは吉祥寺.pmの慣習で一句 —「消さぬログ 明日の自分の 道しるべ」。
あなたのコードベースで「ずっと変わらないもの」は何ですか? それを Single Source of Truth に据えると、変更は怖くなくなります。
関連リンク: sekiban.dev / intent-driven-development.com / jtechs.com
English Abstract
Talk at Kichijoji.pm 2026 (Jul 25, 2026, Tokyo) — "What Doesn't Change Decides What Can".
In every refactoring or spec change, we always decide first what must NOT change. The deeper you place the invariant core, the easier everything else moves. This talk shows one principle — immutable + append-only — appearing in the same shape across three layers:
Data: from overwrite to append (Event Sourcing) — "Accountants don't use erasers." Append events, fold them into state; the source of truth is the accumulation of events. Four+ years of practice with Sekiban / SekibanWasmRuntime / SekibanCloud, with a nod to Dynamic Consistency Boundary (DCB)
From specs to intent (Intent-Driven Development / intent-cli) — Throwing away prompts and version-controlling only the output is "like shredding your source code and version-controlling the binary" (Sean Grove, "The New Code"). Keep intent as a Git-managed tree, stack generated task packets as history, and review them to strengthen intent — making the development process itself immutable
Unify on immutability = changes become additions — functional code, event-sourced data, and recorded intent all align with the Open/Closed Principle. Why this structure also helps AI coding: semantic locality, executable transitions, enforced observability, replayable inputs
Working with AI — hand over a map and compass (intent), not a harness; saved intent drives the orchestrator's next decision
Closing with a haiku, as is Kichijoji.pm tradition: "Logs never erased — a guidepost for the self of tomorrow."
What never changes in your codebase? Make it your single source of truth, and change stops being scary.
Links: sekiban.dev / intent-driven-development.com / jtechs.com