コンテンツにスキップ

3画面パック ⑩ 実装指示 — ゼロから作り直す

🔴 いま作りかけのものは、使いません

見た目だけ作った画面(モックアップ)は、全部捨ててから始めます。 理由は1行です ——部分的に足すと、ヘッダーの不揃いとリンク切れが増えるだけだからです。

どうするか
既存の Wiki の中身(手順書・議事録・調査・成果物) 🔴 残します。1文字も捨てません。しかも元のフォルダは読み取り専用のままにします
今回作った、見た目だけの画面 🔴 消します。ヘッダーも、元 Wiki へ張ったリンクも、全部です
元 Wiki に足した「新しい入口」のリンク 消します。入口は、この手順の段4で作り直します

📦 このパックの入口 | ⑨ 要件定義(何を作るのか) | pmsw-pack.zip

このページは、右腕(社内で動かしている AI エージェント)への作業指示です。人向けの解説ではありません。 上から順に実行します。段を飛ばさないでください。各段には「終わりの印」があります。印が出ていない段の次へ進まないこと。

何を作るのかは 09_requirements、画面ごとの細かい仕様は 0005 にあります。 この10番は順番だけを決めます。


0. 全体の順番

flowchart TD
    S1["段1 既存 Wiki を調べる<br>🔴 何も変更しない"] --> S2["段2 3つの URL を先に決める"]
    S2 --> S3["段3 複製する<br>元は読み取り専用のまま"]
    S3 --> S4["段4 3画面を作る<br>01〜04 の仕様どおり"]
    S4 --> S5["段5 ヘッダーを揃える<br>🔴 ちぐはぐの原因"]
    S5 --> S6["段6 つながりを確かめる<br>6か所"]
    S6 --> S7["段7 並行運用<br>元 Wiki と両方動かす"]
    S7 --> S8["段8 引っ越し<br>条件を満たしたら"]
やること 終わりの印
1 既存 Wiki を調べる 一覧表が1枚書けている(変更は0件
2 3つの URL を決める 3行が紙に書けている
3 複製する 元と複製先のページ数が一致。元のハッシュ一覧が複製前と同じ
4 3画面を作る 3つの URL が全部 200 で開ける
5 ヘッダーを揃える 3枚のヘッダーの差分が 0行
6 つながりを確かめる 6か所を押して、6回とも目的の画面が出た
7 並行運用 判断表が紙に書けていて、記録が溜まり始めている
8 引っ越し 元 Wiki のトップに案内が出て、戻し方が書いてある

1. 段1 — 既存 Wiki を調べる(🔴 この段では何も変更しない)

最初にやるのは、作ることではなく、いま何があるかを書き出すことです。

やること:

  1. 元 Wiki の置き場所(サーバ上のフォルダ)を1つ特定する
  2. どう配信されているかを1行で書く(サイトを作る道具の設定ファイルの場所と、出来上がりの置き場)
  3. ページ数を数える(.md の数)
  4. 中身の見出しを、大きなまとまりごとに書き出す(何が、どのフォルダにあるか)
  5. いまの入口の URL を書く
  6. 元フォルダの全ファイルのハッシュ一覧を取って、ファイルに保存する(段3で「変わっていないこと」を証明するのに使います)

出来上がりは、この形の一覧表1枚です。

項目 書く内容
置き場所 <あなたのサーバ> 上のフォルダのパス
設定ファイル サイトを作る道具の設定ファイルの場所
出来上がりの置き場 配信されているフォルダのパス
入口の URL ブラウザで開いている URL
ページ数 .md の数
大きなまとまり フォルダごとの名前と、そこに何があるか

🔴 この段で、ファイルを1つも書き換えないこと

調べるだけです。「ついでに直す」をやらないでください。 元 Wiki は、いま実際に仕事で使われています。作業台にしません。

終わりの印

  • 上の一覧表が1枚できている
  • ハッシュ一覧のファイルが保存されている
  • 元フォルダの更新日時が、調べる前と変わっていない

2. 段2 — 3つの URL を先に決める

🔴 ここを飛ばすと、あとで全部やり直しになります

PM と SW の画面には、「← ポータル」のリンクが、作った時点で焼き込まれます。 ポータルの URL が決まっていないと、リンク先が無い状態で焼き上がります。 今回リンクが切れたのは、これが理由です。順番が逆だった、というだけの話です。

この3行を決めて、紙に書き出します。

ポータル   http://<あなたのサーバ>:<ポート>/
PM         http://<あなたのサーバ>:<ポート>/pm/
SW         http://<あなたのサーバ>:<ポート>/sw/

決め方:

決めること 決め方
ポータルの URL 🔴 元 Wiki と同じ形にします。引っ越したときに、人の見る場所が変わらないためです
PM の場所 ポータルの下の /pm/別のサーバ・別のポートにしない
SW の場所 ポータルの下の /sw/。同上

🔴 以後この3つは変えません

変えると、焼き込まれたリンクが全部切れます。 「あとで変えるかも」という状態で段4へ進まないこと。いま決めます。

終わりの印

3行が紙に書けていて、ポータルの URL をブラウザに貼ると(まだ中身は古くてよいので)何かが開く。


3. 段3 — 複製する(元は読み取り専用のまま残す)

元 Wiki の中身を、新しい置き場にまるごとコピーします。

やること:

  1. 複製先のフォルダを新しく作る(元とは別のフォルダ。同じサーバでよい)
  2. 元 Wiki の中身を、そっくりそのままコピーする(フォルダの形も保つ)
  3. 元フォルダを読み取り専用にする(書き込みの権限を外す)
  4. 段1で取ったハッシュ一覧をもう一度取り直して、複製前と比べる差分 0 件であること
  5. 元と複製先で、ページ数と総バイト数が一致することを確かめる
確かめること 合格
元が変わっていない ハッシュ一覧の差分が 0 件(→ 09 の B4
中身が欠けていない ページ数・総バイト数が一致(→ B5)
元が書けなくなっている 元フォルダへの書き込みが拒否される(試して、拒否されることを確かめる)

🔴 元フォルダを作業場所にしない

以後の作業は、すべて複製先で行います。 元フォルダは、引っ越しが終わるまで触りません。

終わりの印

  • ハッシュ一覧の差分 0 件の出力が残っている
  • ページ数が一致している出力が残っている
  • 元フォルダへ書こうとして拒否された出力が残っている

4. 段4 — 3画面を作る(複製した側で)

複製した側で、01〜04 の仕様どおりに作ります。ここで初めて「作る」作業に入ります。

画面 何をするか 仕様
ポータル(デスク) 🔴 新設しません。複製した Wiki のトップを、そのままポータルにします。トップのいちばん上に、3つの入口(デスク / 案件の板 / 型の升目)を並べます 04_portal06 の3〜5節
PM(案件のかんばん) CSV(表)から生成器で作ります。段2で決めた URL を渡します 01_data02_pm05_build
SW(仕事の型の升目) 同じく生成器で作ります 01_data03_sw05_build

表(CSV)の中身は、このパックの data/ を差し替えて使います。 🔴 サンプルの中身をそのまま使わないでください。領域(area)と工程(stage)は、あなたの会社が実際にやっている仕事のまとまりで切ります。

🔴 型を先に作らないこと

SW の升目は、初日はほぼ全部「空」です。それで合っています。 空の升目を埋めるために、仕事の無い手順書を書き起こさないでください。 やった瞬間に、この画面は「宿題リスト」になって、見られなくなります。

終わりの印

段2で決めた3つの URL が、全部 200 で開ける(→ 09 の B1)。 HTTP 200 だけでは終わりません。それぞれの中身を取って、想定の見出しが入っていることまで見ます。


今回「ちぐはぐ」に見えた原因は、画面ごとにヘッダーが違ったことです。 3画面すべてに、まったく同じヘッダーを入れます。「似たもの」ではなく「同じもの」です。

5-1. 共通ヘッダーの仕様

# 出すもの 中身 どの画面でも
1 サイト名 会社名 or 仕事場の名前。左端。押すとポータルのトップへ 同じ文字・同じ位置
2 デスク ポータルのトップへ。中身(手順書・記録)を読む場所 同じ
3 案件の板 /pm/ へ。いま何が動いているか 同じ
4 型の升目 /sw/ へ。どの型が残ったか 同じ
5 言葉の決め 用語のページへ(シェルフ / プロジェクト / カード / 章) 同じ
6 いまどこに居るかの印 開いている画面のボタンだけ、色を変える 印の付け方も同じ

5-2. 決めごと

決めごと 内容
並び順 🔴 上の表の 1 → 6 の順で固定。画面ごとに並べ替えない
置く場所 🔴 全画面で、ページのいちばん上。スクロールしても残る形にする
文言 🔴 一字一句同じ。「案件の板」を別の画面で「PM」と書かない
作り方 🔴 ヘッダーの元ネタを1か所に置き、3画面ともそこから読む。画面ごとに書き写さないこと。書き写した瞬間に、また不揃いが始まります
リンク先 段2で決めた3つの URL。相対パスで書かない(画面の階層が違うと切れます)

🔴 判定は「目で見て似ている」ではありません

3枚の HTML からヘッダーの部分を抜き出して、文字として比べます。 差分が0行になって、はじめて合格です(→ 09 の B3)。

終わりの印

3枚のヘッダーを抜き出して比べた出力があり、差分が 0 行


6. 段6 — つながりを確かめる(6か所)

段2で決めた URL を渡してもう一度生成したうえで、6か所を実際に押します。

# どこを押す どこへ行けば正解
1 ポータルの「案件の板」 PM
2 ポータルの「型の升目」 SW
3 PM の「← ポータル」 ポータルのトップ
4 SW の「← ポータル」 ポータルのトップ
5 PM の「型 n / 総数」 SW
6 SW の「進行中 n件」 PM

さらに、複製したページから元 Wiki を指しているリンクを全部叩いて、404 が0件であることを確かめます(→ 09 の B10)。

🔴 6か所すべてが通って、はじめて完了です

1か所でも切れていたら、段2の URL が違っています。画面を手で直して辻褄を合わせないこと。 URL を直して、もう一度生成し直します。

終わりの印

6か所を押して、6回とも目的の画面が出た。リンク切れの検査の出力が残っていて、4040件


7. 段7 — 並行運用(元 Wiki と、新しい3画面を両方動かす)

すぐには引っ越しません。しばらく両方動かして、新しい側だけで仕事が回るかを見ます。

7-1. どちらを見るかのルール(先に決めます)

場面 見る場所
今日どれを進めるか決める 🔴 新しい側(ポータル → 案件の板)
手順書・議事録・調査を読む 🔴 新しい側(複製したデスク)
新しい側に無い、古い記録を探す 元 Wiki(読み取り専用)
書き足す・直す 🔴 新しい側だけ。元 Wiki には書きません(書けないようにしてあります)

🔴 同じことを2か所に書かないでください

書く場所を2つ持つ運用は、一人では1日ももちません。 元 Wiki は読むだけ。書くのは新しい側だけ、と決めます。

7-2. 記録すること(並行運用の間)

記録するもの どこに
元 Wiki を見に行った回数と、その理由 デスクの「決めたこと(決定ログ)」の棚に、1行ずつ
新しい側で困ったこと 同上
PM のカードが動いた回数 板を見れば分かるので、記録不要

7-3. 🔴 引っ越す / 戻す の判断表

先に決めておきます。後から決めると、いつまでも移せません。

こうなったら どうする
新しい側だけで仕事が回った日が続いた(目安:2週間) 段8へ進む(引っ越す)
元 Wiki を見に行った回数が、ほぼ 0 になった ✅ 段8へ進む
6か所の行き来が、期間中ずっと切れなかった ✅ 段8へ進む
元 Wiki を見に行く回数が減らない 引っ越さない。何を探しに行っているかを調べ、その中身を複製先に持ってくる
新しい側に書いたのに、元 Wiki にも書いてしまった ⏸ 引っ越さない。書く場所のルールを決め直す
PM のカードが2週間まったく動いていない 🔴 戻す。画面の問題ではなく、板の作り(列・工程)が仕事と合っていません。段4からやり直す
ヘッダーが、また画面ごとに違っている 🔴 戻す。段5の「元ネタを1か所」が守られていません

終わりの印

判断表が紙に書けていて、記録が溜まり始めている。「いつ引っ越すか」が、人の気分ではなく表で決まる状態。


8. 段8 — 引っ越し(条件を満たしたら、正本を移す)

段7の判断表で ✅ が揃ったら、正本を新しい側に移します。

やること:

# やること 中身
1 URL を入れ替える 人が見ている入口の URL が、新しい側を指すようにする。🔴 人の見る URL は変えません。中身の向き先だけを変えます
2 リンクを張り替える 複製先から元 Wiki を指しているリンクを、複製先の中のページを指すように直す。直したら、もう一度 404 0件を確かめる
3 元 Wiki のトップに案内を貼る この Wiki は引っ越しました → 新しい場所」の1枚。元の中身は消しません
4 元を読み取り専用のまま凍結する 段3でそうしてあります。そのままにします
5 🔴 戻し方を書き残す 「何を、どう戻せば、元の状態に帰れるか」を1ページにする。デスクの「決めたこと」の棚に置く

戻し方に必ず書くこと

項目 書く内容
元 Wiki の場所 フォルダのパスと、凍結した日
入口の向き先を戻す手順 段8の1番の逆
複製先の場所 フォルダのパス
戻すと失われるもの 🔴 引っ越し後に新しい側へ書いたものは、元 Wiki には入っていません。先に取り出す手順を書く

🔴 元 Wiki を削除しないこと

引っ越しが終わっても、元 Wiki のファイルは消しません。 容量が問題になるまで、読み取り専用のまま置いておきます。

終わりの印

  • 人の見る URL を開くと、新しい側が出る
  • 元 Wiki のトップに「引っ越しました」の案内が出る
  • 戻し方のページが1枚ある
  • リンク切れの検査が 404 0件

9. 🔴 やってはいけないこと

やってはいけないこと 何が起きるか
元 Wiki を直接書き換える 失敗したときに戻せません。元は読み取り専用のままです
画面の HTML を手で直す PM と SW は生成物です。次に生成した瞬間に消えます。直す場所は表(CSV)だけ
URL を後から変える 焼き込まれたリンクが全部切れます。段2で決めて、以後変えません
ヘッダーを画面ごとに書き写す また不揃いになります。元ネタは1か所だけ
いまのモックアップを再利用する ちぐはぐの原因そのものです。捨ててから始めます
型を先に作る 宿題リストになって、見られなくなります
段を飛ばす 特に 段2(URL)を飛ばすと、段4以降が全部やり直しになります
並行運用を省いて、いきなり引っ越す 戻せません
200 が返ったことを「出来た」とする 中身を取って読むまでが確認です
コメント機能を同時に作る 常駐サーバが要る別の作りものです。どちらも中途半端になります
個人情報を画面に出す person.csv の氏名・メール・電話は、どの画面にも出しません

10. 詰まったときに、人に聞くこと(🔴 右腕が勝手に決めてはいけない判断)

下の8つは、工夫して先へ進まず、その場で止めて聞いてください。

# こういうとき 聞くこと
1 領域(area)と工程(stage)が決められない 「うちの仕事は、どこからどこまでを1つのまとまりと考えますか」。🔴 勝手にきれいな分類を作らないこと
2 元 Wiki の中に、複製してよいか分からないものがある(個人情報・見積・給与など) 「これは複製先に持っていってよいですか」。判断を代わりにしないこと
3 URL を変えたくなった(段2の3行を変えたい) 「この URL に変えてよいですか。変えると、すでに張ったリンクを全部張り直します」
4 元 Wiki のページの構造と、デスクの6つの棚が合わない 「いまのフォルダを、6つの棚のどれに入れますか」。合わせるために元の中身を並べ替えないこと
5 引っ越してよい条件を満たしたか判断がつかない 「段7の判断表の、この行はどう見ますか」。自分で ✅ を付けないこと
6 仕様どうしが食い違っている(このパックの中で矛盾を見つけた) 「09と10で、ここが食い違って読めます。どちらが正ですか」。片方を勝手に採らないこと
7 受入条件が通らない09 の B1〜B10 のどれかが落ちる) 「Bn が、この出力で落ちています」と出力そのものを添えて報告する。🔴 条件の方を緩めないこと
8 型を作りたくなった(升目が空すぎて気になる) 聞くまでもありません。作らないでください。空は正常です

11. 報告の仕方

「出来ました」と言うときは、下の3つを添えます。

添えるもの 中身
受入条件の出力 09 の B1〜B10 を実際に実行した、出力そのもの。「確認しました」だけの報告は受け取られません
わざと壊した検査の結果 壊した CSV を1回食わせて、止まったこと(B9)。壊しても通るなら、検査は入っていません
確かめていない部分 🔴 見ていないところがあれば「未検証」と書く。黙って「完了」と書かないこと

この仕組み全体の1文

PM が動かし、SW が数え、デスク(= Wiki)が中身を持つ。

これで実装指示は終わりです。09_requirements(何を作るのか) に戻る。

📦 このパックの入口 | pmsw-pack.zip をそのまま落とす