0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

毎回Current Contextを更新しなかった理由

0
Posted at

毎回Current Contextを更新しなかった理由

アイキャッチ

1. リード

AI と一緒に開発していると、毎回「今の最新状態」を書き換えたくなる。会話は速いし、理解もすぐ深まる。だから、少し前の確認結果より、今この場の説明の方が新しくて正しそうに見えることがある。私も最初は、その感覚にかなり引っ張られていた。

けれど Qiita 執筆プロジェクトの PROJECT_RULES.md は、そういう更新を認めていない。Version 更新、Release Candidate 公開、正式リリース、Operational Validation 完了、大きな設計変更、新しい Season の開始、あるいは明示的な依頼があったときだけキャッチアップする。それ以外では、開発状況を推測して現在地を更新しないと書かれている。

実際に CURRENT_CONTEXT.md の確認日は 2026-07-26 で、そこでは v1.0.0 の正式リリース、同日の v1.1.0 正式リリース、HEAD commit、Release 対象 commit、Season 2 の着手ゲート確認までが、確認済み事実として整理されている。今回のテーマは、毎回 Current Context を更新しなかったことが、情報の遅さではなく「最新っぽさの創作」を防ぐ運用だったという話だ。

2. 背景

PROJECT_RULES.md のキャッチアップ手順はかなり具体的だ。読む順番まで固定されていて、docs/chatgpt/10_NEXT_SESSION_PROMPT.mddocs/chatgpt/01_CURRENT_STATUS.mdCURRENT_STATUS.mddocs/chatgpt/11_LESSONS_LEARNED.mdCHANGELOG.md、最新の GitHub Release、必要な場合だけ最新コミット、という流れになっている。

さらに、確認後に CURRENT_CONTEXT.md へ何を更新するかも決まっている。確認日、確認した最新コミット、現在の Version、レビュー状況、新しく完成した機能、既知の制限、次に公開できる記事テーマ、Season と記事内容の整合性。この順を見ると、Current Context は思いついた時に足すメモではなく、確認済みの現在地だけを再構成するための管理表だと分かる。

2026-07-26 の CURRENT_CONTEXT.md もその形になっている。対象リポジトリ、HEAD commit c8272f7e279fd55be3c4d15b334c655b467f59f8、最新 Release v1.1.0、Season 2 着手ゲートとしての v1.0.0 正式リリース確認、そして v1.1.0 で完了したことと、やっていないことが並んでいる。これは「その日に確認した断面」であって、会話の流れに合わせて毎回伸び縮みする説明ではない。

3. 今回のテーマ

今回のテーマは、Current Context を毎回更新しないことで、「会話では新しそうに見えること」と「正本で確認した最新事実」を混同しないようにしていたということだ。

非エンジニアの立場では、更新しないことは少し不安に見える。日付が古いと、そのまま置いておいてよいのかと思うからだ。だがこのプロジェクトでは、古いかどうかより先に、何を根拠に更新したかが重い。確認のトリガーも、読む順番も、更新項目も固定しておくと、「新しそうだから書き換える」が入り込みにくくなる。

会話ごとに更新しないことで創作を防ぐ

4. 実際の出来事

PROJECT_RULES.md は、キャッチアップのタイミングをかなり限定している。Version 更新時、Release Candidate 公開時、正式リリース時、Operational Validation 完了時、大きな設計変更時、新しい Season の開始時、あるいは「キャッチアップしてください」「最新の GitHub 状態を反映してください」と明示的に依頼されたときだけだ。逆に言うと、日々の会話で理解が進んだことや、「そろそろこうなっていそうだ」という感覚は、更新トリガーとして採用していない。

この線は 2026-07-26 の CURRENT_CONTEXT.md の中身とよく噛み合っている。その日に確定したのは、v1.0.0 が正式リリース済みであること、同日に Dashboard UI 改善だけをまとめた v1.1.0 が Latest として正式リリース済みであること、main HEAD は status 同期用ドキュメント更新であること、そして Season 2 で使ってよい事実と、まだ書いてはいけない内容だ。

重要なのは、この時点で同じファイルが「未着手」や「やっていないこと」も残していることだ。公開版リポジトリ切り出しの安全な計画、新 Version の機能実装は未着手。v1.1.0 では新 Connector、DB / SQL / スキーマ変更、AI 要約・自動提案、新しい書き込み Action、Human Approval の省略はやっていない。もし Current Context を毎回の会話で更新していたら、この未着手や非実施項目が、会話の勢いで少しずつ滑らかにつながってしまったかもしれない。

読む順番が固定されていることも大きい。たとえば Release だけを先に見れば、正式版が出た事実だけは分かる。だが 10_NEXT_SESSION_PROMPT.md01_CURRENT_STATUS.mdCURRENT_STATUS.md11_LESSONS_LEARNED.mdCHANGELOG.md を飛ばすと、その正式化が何の条件で成立したのか、何をまだやっていないのかが抜けやすい。Current Context の更新をイベント時に限り、そのたびに同じ順番で読むから、あとから見返したときも「なぜその表現になったか」を追いやすい。

読む順番を固定すると現在地の根拠が残る

この運用は、Qiita 側の連載にも効いている。2026-08-14 の時点でも CURRENT_CONTEXT.md の確認日は 2026-07-26 のままだが、だから弱いわけではない。むしろ v1.0.0 の正式 Go、v1.1.0 の範囲、既知の制限、まだ書いてはいけない内容が、その確認時点の根拠付きで固定されている。毎回新しい顔をした説明へ置き換えないから、記事側も同じ土台を使い続けられる。

私は、ここがかなり実務的だと思っている。AI と会話していると、分かったことがすぐ文章になる。文章になると、まだ確認していないことまで「もう整理できている話」に見えやすい。だがキャッチアップのタイミングが固定されていれば、その誘惑を一度止められる。更新したいときは、まず正本を読み直し、決められた項目だけを更新する。この順番があるだけで、Current Context は会話の要約ではなく、確認済みの断面として保ちやすくなる。

5. 考えたこと

私は以前、Current Context を毎回更新しないのは、少し不親切だと思っていた。最新の会話があるのに、なぜ確認日が 2026-07-26 のままなのか、と感じるからだ。だが今は逆で、毎回更新しないからこそ、その日付に意味が残るのだと思っている。これは「最後に触った日」ではなく、「最後に確認手順を通した日」だからだ。

AI と一緒に進めるほど、この差は大きい。会話は理解を深めるには強いが、現在地の唯一の根拠には向かない。会話は速く、自然で、つながりもよい。だからこそ、未来の予定や未確認の期待まで、現在地と同じ温度で語れてしまう。PROJECT_RULES.md が更新タイミングと確認順を固定しているのは、その滑らかさにブレーキをかけるためだと思う。

もう一つ大きいのは、記事を書く側の錯覚も防げることだ。連載を続けていると、前回までの流れから「次はたぶんこうだろう」と自然につなぎたくなる。だが Current Context がイベント時の確認結果として止まっていれば、そのつなぎ方が本当に正本と一致しているかを考え直せる。更新しないことは放置ではなく、確認なしに未来へ寄らないための停止線だった。

私はこの運用を、遅さではなく勇気だと思っている。毎回「最新です」と言う方が気持ちはいい。だが強いのは、毎回そう言わずに済む境界を持つことだった。確認した日にだけ更新する。その代わり、一度更新した断面には根拠が残る。このやり方の方が、あとで読み返したときにずっと信用しやすい。

確認日が古いことより、根拠が固定されていることが重要

6. 学び

  • Current Context は毎回の会話メモではなく、確認手順を通した断面として扱う方が強い
  • 更新タイミングをイベントに限定すると、未確認の期待を現在地へ混ぜにくい
  • 読む順番を固定すると、Release だけを見た早合点や、会話だけを見た思い込みを減らせる
  • 「確認日が古い」ことより、「何を根拠に更新したか」が重要になる
  • AI と一緒の執筆では、更新しないこと自体が創作防止の仕組みになる

7. 次回メモ

この続きで書くなら、Season の切り替え前に必ずキャッチアップする理由につながる。Current Context をいつ更新するかが決まっているからこそ、Season の境界も会話ではなく確認結果で切れるからだ。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?