ewderna and Claude Opus 5.5
46905b1e79
map: P-3に排他キーが実機の割り当て先を共有する問題を追加する
...
VIAの割り当てはrow/col単位で保存されるため、同じ接続先の排他キーは
実機では1つの割り当て先を共有する。書き込み・読み出しでのPHYキーとの
対応を未決事項と完了条件に加え、未決事項を箇条書きに分けた。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01CBmwYrXocgCoFJfxVcKSGH
2026-09-23 14:51:21 +09:00
ewderna and Claude Opus 5.5
63da6e77d8
map: キーマップレイヤーを並び順と独立した名前で識別する
...
レイヤーを切り替える動作も名前で参照し、番号へは出力時に並び順から
変換する。並べ替えや挿入で参照先がずれないようにするため。
スキーマのlayerからidを外し、MAP内で一意なnameを識別子とする。
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01CBmwYrXocgCoFJfxVcKSGH
2026-09-23 14:51:21 +09:00
ewderna and Claude Opus 5
54f292b08e
agent: decide/doc-lintを更新し、.agents と .claude を同期
...
codexが .agents 側で更新した内容を .claude へ取り込み、名前依存の箇所だけ
置換した。両ツリーの差分はCLAUDE.md/AGENTS.mdとパスの表記のみ。
- 非採用一覧の掲載基準をルール1の変更に合わせる
- 本文の「未決」はリンク・課題追加・言及削除のいずれかを判断する(ルール4)
- 責務を外へ移したあと、担当範囲が分かる一文と参照が残っているか確認する
- doc-lintに未確認事項リンクの参照先・ラベル整合の検査(ERROR)と、
リンクのない課題番号・参照なしの「未決」「未定」の検出(WARN)を追加
- load() のコードフェンス処理が ~~~ や長さ違いを扱えていなかったのを修正
- .Codex という実在しないパスの参照を .agents に修正
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MtVk8W4yK6j3eCqQpEQBLS
2026-09-22 22:32:18 +09:00
ewderna and Claude Opus 5
2fa910ed74
docs: 検討済み・非採用の掲載基準を再提案防止の必要性に変える
...
件数と古さで機械的に落とすと、再提案を防ぐために必要な案が先に消える。
掲載の可否を「実際に検討した別方針で再提案されうるか」で判断し、本文の
制約文で足りるものは重複させない。落とした案がなければセクションを設けない。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MtVk8W4yK6j3eCqQpEQBLS
2026-09-22 22:32:08 +09:00
ewderna and Claude Opus 5
bc2d33f856
docs: 本文から未確認事項へのリンク形式を運用ルール4に追加
...
本文で「未決」とだけ書くと、末尾のどの項目に対応するか読む側が追えない。
同一ファイル内・他ファイルからのリンク形式を定め、問いの内容は
`## 未確認事項` にだけ置いて二重管理を避ける。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MtVk8W4yK6j3eCqQpEQBLS
2026-09-22 22:04:29 +09:00
ewderna and Claude Opus 5
142357a440
map: MAPレイヤーを新設し、実機との読み書きとVIA対応を決める
...
MAPエディタは割り当ての編集に加え、実機への書き込みと読み出しを一組で
提供する。新規キーボードの設計から実機での調整までを主眼に置くため。
最初の通信プロトコルはVIAとし、独自プロトコルの追加やそのための
ファームウェアのフォークは行わない。
VIA向けキーボード定義の生成はFirmware Generator、ビルドと書き込みは
IDEの責務として、MAP編集の外に置いた。VIAで通信できることと、MAPが
そのデータを所有することは区別する。
Journal: journal/2026-09-22-map-via-workflow.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MtVk8W4yK6j3eCqQpEQBLS
2026-09-22 22:04:16 +09:00
ewderna
26df6edc06
agent: add skills for codex( simply copy)
2026-09-22 21:27:25 +09:00
ewderna
a80f5ea215
agent: add AGENTS.md for codex (simply redirect)
2026-09-22 19:57:13 +09:00
ewderna and Claude Opus 5
5b671976d5
docs: 保留課題をbacklogへ分離し、運用ルール5を追加
...
未確認事項が「現在の仕様が答えに依存するもの」と「答えが出なくても進められる
もの」を混ぜて抱えていた。後者を backlog/README.md へ移し、仕様書の未確認事項を
前者だけに絞る。移す際は保留中の対応範囲・暫定仕様を仕様書本文に明記し、
backlogへの移動が仮説の採用を意味しないようにする。
PHY・ELC・IDXの10件を移し、3ファイルとも未確認事項が空になった。
ルール4では、事実確認の「格上げ条件」と意思決定の「完了条件」を区別する。
仕様書側の保留課題はbacklogの区分へのリンク箇条書きだけに固定し、
末尾は保留課題 → 検討済み・非採用 → 未確認事項の順に置く。
doc-lintをルール5に対応させ、backlogを検査対象に加えた。回帰テストを追加。
Journal: journal/2026-09-22-document-backlog.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01DKW58HEg8zAQoLrkWByPfD
2026-09-22 19:52:39 +09:00
ewderna and Claude Opus 5
66a594a378
elc: 走査方向の決定と追加指定をFirmware Generatorに置く
...
ELCは配線を保存し、どちら側のピン群を駆動してどちら側から読み取るかは
出力器が選ぶ。追加指定が必要な場合は出力設定で受け取る。
複数の適切な方法から出力器が選べるなら一意性は要らないので、配線だけから
全方式の走査手順が一意に決まることをELCの成立条件にしない。
これは責任分担の決定であり、各方式の実配線を検証した結果ではない。
P-3は方式ごとの走査設定の確認として残す。
Journal: journal/2026-09-22-elc-scan-settings.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01DKW58HEg8zAQoLrkWByPfD
2026-09-22 19:52:14 +09:00
ewderna and Claude Opus 5
76c349fa0c
idx: 全バリアントを1つのorderに並べ、出力時に取捨して番号を詰める
...
排他キーも別々の要素として並べる。出力はバリアントを選択した構成を単位とし、
対象外のキーを除いた並びの位置をそのままキー番号にする。同じ配線の排他キーは
選択後に同時には残らないため、番号を共有させる必要がない。
保存したorderは選択で書き換えず、番号の互換性は出力レイアウトごとに扱う。
6d0eba9 で「IDXは番号を共有できる」と書いたが、共有をやめる形に変える。
コミュニティレイアウトの並びを取捨で得られるかは、この方式では未検証のため
IDXのP-1として残す。
Journal: journal/2026-09-22-idx-variant-output.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01DKW58HEg8zAQoLrkWByPfD
2026-09-22 18:36:09 +09:00
ewderna and Claude Opus 5
c31360a772
phy: 行の先頭以外の r, rx, ry を取り込みで受け入れる(P-16解消)
...
KLE本家は拒否するが、VIAとRemapは読む。Remapで扱える基板を取り込めない
状態にしないため、位置を問わず受け入れる。本家のコードから行頭チェックを
外した挙動をそのまま採る。出力は従来どおり行頭にのみ置く。
Journal: journal/2026-09-21-kle-lenient-row.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01SSKcJLPAaPLchG4LXxk6cY
2026-09-21 21:57:45 +09:00
ewderna and Claude Opus 5
6d0eba9346
phy: 複数のバリアントで成立するキーはVariantごとに複製して置く
...
隣り合うキャップが同じフットプリントを食い合う基板(MACRO1)があり、選択を独立な
VariantGroupに必ず分解できるわけではない。分解を強いると、キャップが重なる組み合わせを
作れてしまう。複製してもELCは接続先を、IDXは番号を共有できるので他レイヤーは壊れない。
どのキーノードが同じ物理キーかはBeyond KLEが判定せず、設計者の情報として扱う。
前のコミットで「独立したVariantGroupに分けて表す」と書いたが、MACRO1は下段を含めると
分解できない。あわせて訂正する。
Journal: journal/2026-09-21-variant-shared-key.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01246a5KFLmwcRXriZvX8fdJ
2026-09-21 21:34:10 +09:00
ewderna and Claude Opus 5
8e7d21534d
phy: 未確認事項のP-16を番号順の位置へ移す
...
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01246a5KFLmwcRXriZvX8fdJ
2026-09-21 19:01:27 +09:00
ewderna and Claude Opus 5
e1aee6c92c
elc: LEDチェーンをバリアントごとに分けないことを確定する
...
QMKの rgb_matrix はボードに1つで、レイアウトごとに分かれない。
バリアント固有の位置にLEDが載る基板も載らない基板も実在するが、どちらもチェーンは1本で、
選択によって並びが変わらない。載らないキーはPHYのper-key LEDの有無でそのまま表せる。
Journal: journal/2026-09-21-led-chain-variant.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01246a5KFLmwcRXriZvX8fdJ
2026-09-21 19:01:00 +09:00
ewderna and Claude Opus 5
d7a0f99cb4
idx: コミュニティレイアウトの並びが取捨だけでは得られない場合を記録する
...
QMKの実データで、コミュニティレイアウトとの173組のうち30組(すべてISO系)が
`LAYOUT_all` の並びの部分列にならない。同じマトリクス位置がレイアウトによって
別の物理キーになり、残ったキーの読み順が変わるため。
埋め方は未定として未確認事項に残す。
Journal: journal/2026-09-21-community-layout-order.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01246a5KFLmwcRXriZvX8fdJ
2026-09-21 19:01:00 +09:00
ewderna and Claude Opus 5
ea7bf01e72
phy: 選択肢をまたぐ共通キーは独立したVariantGroupに分けて表す
...
VIAの定義824件を調べ、複数の選択肢で成立するキーを持つ基板を2件見つけた(LW67、MACRO1)。
どちらも独立した2つの選択を1つの選択肢リストに畳んだもので、VariantGroupを2つ置けば
キーを複製せずに表せる。残るのは、積のうち一部しか提供しない基板の扱いだけになった。
Journal: journal/2026-09-21-variant-shared-key.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01246a5KFLmwcRXriZvX8fdJ
2026-09-21 19:00:46 +09:00
ewderna and Claude Opus 5
12a47fe822
phy: 公開KLE JSON 1505件で変換可否を確かめ、書き戻しの制約を加える
...
VIAの定義とKLE本家のプリセット・サンプルを集め、本家の serial.js を通して往復させた。
幾何は全件無損失で、PHYで表せないKLEの幾何情報は無かった。
KLEは p, sm, sb, st を空文字に戻す指定を無視するため、混在する配置は書き戻せない。
本家が読めないJSONも実在するので、取り込みの寛容さを問いとして残す。
Journal: journal/2026-09-21-kle-corpus.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01246a5KFLmwcRXriZvX8fdJ
2026-09-21 19:00:32 +09:00
ewderna and Claude Opus 5
ebe1434860
phy: KLE出力の rx, ry をクラスター原点で共有し、座標を丸める
...
KLEが1行にまとめるのは r, rx, ry が一致し y が厳密に等しいキーだけなので、
同じ絶対角度のキーには共通の軸を与え、絶対座標への変換で入った誤差は丸めて落とす。
ErgoDox・Kinesis Advantage で元のKLE JSONとバイト単位で一致する出力になった。
Journal: journal/2026-09-21-kle-output-rowgroup.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01246a5KFLmwcRXriZvX8fdJ
2026-09-21 19:00:17 +09:00
ewderna and Claude Opus 5
69d9c73fff
phy: プロファイルをファイル単位の器に置き、キーはIDで参照する
...
保存形式に PhyFile を書き、profiles を木の外に出した。同じ定義を複数のキーに
複製しないため、Key.profile は実体ではなくIDの参照にする。
ビジュアル表現は上面矩形の4辺インセット + R とし、非対称な上面を表せる形にした。
プロファイル内の距離はすべてmmに統一。
Journal: journal/2026-09-21-profile-container.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01246a5KFLmwcRXriZvX8fdJ
2026-09-21 18:58:38 +09:00
ewderna and Claude Opus 5
a175ee3c53
PHY: レイアウトバリアントを木のノードとして導入し、ELC/IDXの扱いを決める
...
交換可能なキークラスタ(ISO Enter、スペース周りのキー数など)を、
VariantGroup / Variant の2ノードでPHYの木に表す。全バリアントのキーを
同時に持ち、単一の配置を要求する出力のときだけ1つ選んで畳む。
ELCは選択に関係なくsupersetを配線する。排他キー同士は同じ接続先を共有してよい。
IDXはキー番号の空間を1つに保ち、同じ接続先に配線された排他キーは
`order` の配列要素として同じ番号を共有する。
Journal: journal/2026-09-21-multi-layout.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01JPCpuPv6hDN76RgNe2PsRR
2026-09-21 09:34:51 +09:00
ewderna and Claude Opus 5
2eb2867c13
IDX: キー番号の正本としてIDXレイヤーを確定し、MAPの参照をPHYへ移す
...
キー番号はPHYの幾何からもELCの配線からも導出できない決めごとなので、IDXが正本を持つ。
公開した基板のキー番号は他人のキーマップが依存する公開インターフェースであり、
出力のたびに生成し直さず固定する。
「最も重要な抽象化層」「最も欠けている層」という位置づけは誤りだったので落とした。
QMKのLAYOUTマクロの引数順、ZMKのmatrix transformのmap、KMKのcoord_mappingとして
既に存在していて、形式化されていないだけである。
あわせて2点。MAPはキー番号ではなくPHYのキーIDを参照する(IDXへの挿入でMAPがずれないため)。
IDXの保存形式は order: string[] とし、ELCのLEDChain.orderと同じく並びの位置を番号とする。
phase1-json-schema.md の P-1 を解消。
Journal: journal/2026-09-21-idx-necessity.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-21 08:52:27 +09:00
ewderna and Claude Opus 5
fdd3c7def1
workflow: 既存フローとの対応だけを残し、確定した仕様に追従させる
...
解決策・プロトコル・次のアクションの各節は layers と phase1 の重複だったため削除し、
工程分析とその課題だけの文書にした。レイヤーの定義は layers を正とする旨を冒頭に置く。
工程の対応先は、回路設計をELCのみ、ファームウェア基本設定をPHY+IDX+ELCに修正。
PCB製造は品種とフットプリントを持たないため対応なしとした。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 22:02:39 +09:00
ewderna and Claude Opus 5
d858361586
schema: IDX/ELCスキーマを確定した仕様に追従させる
...
ELCをELCレイヤー.mdの保存形式で書き直した。microcontrollerとmatrixの列挙は
捨てたモデルなので削除し、提供者・端子・LEDチェーンに置き換え。参照先もIDXからPHYへ。
IDXからはrow/colとラベルを外し、キーIDとキー番号の対応だけにした。
PHYはcompatibilityブロックを、キー側と同じ形のファイル単位kleCompatibilityに置換。
clusterのnameは保存形式に無いため必須から外した。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 21:56:32 +09:00
ewderna and Claude Opus 5
8c47e547b4
layers: レイヤー構造を確定した仕様に追従させる
...
ELCがPHYのノードIDを直接参照すると決めたので、IDX→ELCの直列フローを
PHY→ELC / PHY→IDX の並列に改めた。row/colとLED番号をIDXの出力から外し、
KLEをビュワーとして扱う記述に合わせた。ツール名2つが捨てたモデルを
含んでいたため改名。アナログ値の解釈を持つ層が未定なのでP-1に立てた。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 21:48:43 +09:00
ewderna and Claude Opus 5
5bba75d1e8
ELC: ELCレイヤーの初版。ピン提供者による配線表現
...
muxを「ピンを増やす装置」として抽象化し、提供者が提供する論理ピンを
キーの端子が指す形にした。直結もmux経由も同じ形になり、多段muxは
入れ子で表せる。
配線方式(マトリクス / direct / charlieplexing)は列挙せず、端子の
接続先の組み合わせとして表す。row / col は正本に含めない。
射程は配線のみとし、センサの品種・出力特性・キャリブレーションは
持たない。PCB設計の手前までというPHYの線に揃えた。
Journal: journal/2026-09-20-elc-pin-provider.md
Journal: journal/2026-09-20-elc-scope.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 20:24:56 +09:00
ewderna and Claude Opus 5
eb96ff02d8
PHY: LEDの識別番号をELCが持つことを明記(P-11解消)
...
RGB効果が使うのは物理座標で、インデックスは配線で決まるアドレス。
チェーン順序を設計者が恣意的に決めてよいのは確かだが、決めた順序は
そのまま配線の指示になるため、電気的な情報としてELCが持つ。
IDXに別の論理インデックスを置くと二重管理になり、食い違えば別のLEDが
光るため、IDXはLEDの番号を持たない。
検証ではなく決めによる解消。
Journal: journal/2026-09-20-led-index-layer.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 20:24:56 +09:00
ewderna and Claude Opus 5
900dfff65e
schema: PHYスキーマをPHYレイヤー.mdに追従させる
...
size に x2〜h2、key に switchOffset / partGroup / orientation /
perKeyLED / decal / ghost / labels を追加し、部品ノードを component
として定義して root と cluster.children に加えた。
key.metadata は廃止し、labels をトップレベルへ移した。残る見た目の
属性は保持する先の層が決まっていない(P-6)ため、構造化せず
kleCompatibility に不透明なまま置く。
PHYレイヤー.md 側の「スキーマが追従していない」注記を削除。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 14:31:47 +09:00
ewderna and Claude Opus 5
b9997f8272
PHY: 各ノードがIDを持つことを明記
...
木の中のノードを一意に指すために必要で、キーのIDはIDXからの参照先に
なっている。スキーマ側には元からあったが本文に書いていなかった。
部品ノードも同じ形でIDを持つ。
あわせて木の説明から部品ノードが抜けていたのを補った。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 14:31:31 +09:00
ewderna
d8db442fd5
chore: table style
2026-09-20 14:09:03 +09:00
ewderna and Claude Opus 5
58c952f6a3
PHY: クラスター自動推定をやめ、手動の組み替え操作を持つ(P-3解消)
...
絶対配置を保ったままクラスターを作り、原点と基準角度を動かせる操作を持つ。
reparent と reframe の2演算に還元され、Transform が剛体変換なので結果は必ず表せる。
これに伴い、スナップは手作業入力時のみ・相対グリッドとし、計算結果には適用しない。
Journal: journal/2026-09-20-cluster-manual-grouping.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 14:04:02 +09:00
ewderna and Claude Opus 5
2ec3dd4a1a
PHY: LEDをキーのbooleanと汎用の部品ノードに分ける(P-10解消)
...
per-key LEDは位置に自由度がないため、キーが持つboolean 1つにする。
設計者が位置を決める部品はLED専用ノードにせず、変換と部品グループだけを持つ
部品ノードとして一般化する。表裏とチェーン順序はPHYに持たない。
Journal: journal/2026-09-20-led-node.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 10:53:57 +09:00
ewderna and Claude Opus 5
bbea89798d
PHY: スイッチの品種を持たず、部品グループのラベルだけ残す
...
フットプリントの選択はPCB設計ツール側の仕事で、Beyond KLEはその手前までを扱う。
前の決定で品種を持つ根拠にした「3pinの明示」はKiCadに渡す情報の話だったため、
端子配置とソケット方式を落とし、解釈しない部品グループのラベルと向きだけを残す。
キーごとの検出方式はELCが持つ(2端子前提ではHEの配線を組めないため)。
未知の端子配置の問い(P-9)は、品種を持たなくなったので消滅。
Journal: journal/2026-09-20-switch-terminal-reversal.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01RCUFZ7vmSqQyGAPUFNWoiz
2026-09-20 09:26:44 +09:00
ewderna and Claude Opus 5
1e22853218
PHY: スイッチを端子配置・ソケット方式・向きの3軸で持つ(P-7解消)
...
ブランドは持たない。同じボードに対して利用者がスイッチを選べるため、
ボード設計の情報ではない。KLEの sm, sb, st は端子配置と対応させず、
見た目の属性と同じく不透明なまま退避して書き戻す。
未知の端子配置の扱い(P-9)とLEDノード(P-10)を未確認事項に追加。
Journal: journal/2026-09-20-switch-terminal.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-20 08:42:41 +09:00
ewderna and Claude Opus 5
f6ca7434bc
PHY: スイッチ位置をキーごとのオフセットとして持つ(P-5解消)
...
キャップ形状からはスイッチ位置が決まらない(Stepped Caps Lockはずれ、XFERはずれない)ため、
(w, h) 矩形の中心からのオフセットをキーのローカル座標系で持つ。既定値0。
Journal: journal/2026-09-19-switch-offset.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-19 11:15:03 +09:00
ewderna and Claude Opus 5
13df64f6ff
PHY: KLE固有の形状・属性の受け止め先を決める(P-4解消)
...
- 長方形でないキーは Size に x2, y2, w2, h2 を加えて持つ
- デカール・ゴーストはキーとして持ち、フラグで区別する
- ラベルは参考情報として持つ(取り込み時の照合に使う)
- 見た目の属性はKLEへ書き戻せるよう保持する。保持する層は未決
未決部分は P-5〜P-8 に分離。空の見出し「何かある?」も削除。
Journal: journal/2026-09-19-kle-key-attributes.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-19 11:14:43 +09:00
ewderna and Claude Opus 5
7493fe2939
過去の自作 kbd-editor を土台にせず、コードも持ち込まない
...
kbd-editor はフラットな絶対座標の Key[] を直接書き換える作りで、
kle-ng と同じく PHY の相対座標の木とは合わない。加えて作者の記憶では
KLE本体(全権利留保)を参考に書いた部分が多く、由来を切り分けられない。
概念の参考は可とした。
P-2 に振り返りで得た材料(Nuxt不要・SVG描画が有力)を追記し、
格上げ条件から「振り返り」を外した。
Journal: journal/2026-09-19-kbd-editor-review.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-19 10:19:08 +09:00
ewderna and Claude Opus 5
ec36a5139a
typescript-implementation-plan.md を運用ルールに沿って再編
...
決まったことだけを書く文書にし、implementation-plan.md に改名した。
TypeScriptの採否も技術選定のやり直しに含まれるため。
本文には自作の決定と検証用サンプルを残した。データ例は旧形式なので
変換が必要と明記した(変換は後日)。技術スタック・構成・フェーズ・
優先度・セットアップ手順はjournalに原文のまま移し、未確認事項に
P-2 技術選定、P-3 リポジトリ構成を立てた。CLAUDE.md の地図も更新。
Journal: journal/2026-09-18-typescript-implementation-plan.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-18 22:24:02 +09:00
ewderna and Claude Opus 5
9ebe302691
json-schema: PHYスキーマを相対座標モデルとKLE往復の決定に合わせる
...
cd6a94f(相対座標・回転中心なし)と 1a9a2a0(KLE往復は照合)の反映漏れを直す。
- position を $defs/transform (x, y, rotation) に置き換え、rotationOrigin を削除
- size を width/height から w/h に揃え、親の変換を受けないことを明記
- elements を root / children に改名
- kleCompatibility.originalIndex を削除(KLEは保存時にキーを並べ替える)
- 使用例を新しい形に更新し、スキーマで検証が通ることを確認
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-18 22:17:36 +09:00
ewderna and Claude Opus 5
300fb18e4a
PHY Editor は既存エディタを改造せず自作する
...
PHYの正本を相対座標の木にしたため、フラットな絶対座標配列を直接
書き換える既存エディタ(KLE, kle-ng)を改造しても、編集操作の中核は
書き直しになる。ijprest KLE は全権利留保でフォーク不可。
実装計画の既存記述は未整理のまま、決定と制約だけを冒頭に追記した。
kle-serial2 の書き出しコードの出自を未確認事項 P-1 として残した。
Journal: journal/2026-09-18-editor-base.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-18 22:16:37 +09:00
ewderna and Claude Opus 5
bb1108763a
KLE互換ドキュメント2本を廃止し、裏取りした事実をPHYに書き戻す
...
kle-compatibility.md / kle-compatibility-analysis.md は埋め込み前提の
設計で、KLE往復の決定と矛盾していた。KLE本家ソースで確認できた事実だけを
PHYレイヤー.md に書き戻し、2本は削除した。
- ConfigObject の回転角度キーを ra から r に修正し、fa sm sb st を追加
- KLE出力で失われる情報、KLEの p がPHYのプロファイルと別物であることを明記
- KLEは保存時にキーを並べ替えるため、配列順は照合に使わない
- 過去のKLE JSONはPHYデータなしでも読めなければならない、という制約を追加
- 未確認事項に P-3 クラスター自動推定、P-4 KLE固有の形状・属性の受け止め先を追加
Journal: journal/2026-09-18-kle-compat-docs-retire.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-18 21:18:49 +09:00
ewderna and Claude Opus 5
1a9a2a06c5
PHY: KLE JSONに識別・構造情報を埋め込まず、取り込みは照合で行う
...
KLEは既存のビュワーとして使えればよく、KLEで編集された時点で
Beyond KLEのデータではないと線引きした。KLE JSONは素の形式で出力し、
他ツールにそのまま渡せる状態を保つ。
取り込みは手元のPHYデータとの形状+ラベル照合で行い、照合できない
キーはroot直下に置く。構造の復元は保証しない。照合基準の詳細は
未確認事項 P-2 として残した。
labelへのID埋め込み、別ファイルのクラスターJSON、ゴーストキー案は
いずれも不採用。
Journal: journal/2026-09-18-kle-roundtrip.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-18 21:01:34 +09:00
ewderna and Claude Opus 5
cd6a94f4f4
PHY: 座標を親からの相対に統一し、回転中心パラメータを廃止
...
クラスター単位の移動・回転を親ノード1つの書き換えで済ませるため、
各ノードは親から見た変換 (x, y, rotation) を持つことにし、絶対座標は
保持しないことにした。回転軸は常に自分自身のローカル原点に固定し、
KLE の rotation_x / rotation_y に相当するパラメータは持たない。
あわせてスナップの基準系をローカル座標系と明記し、親の変換を受けない
w, h を Transform から分離した。KLE出力時の行のまとまりは未解決の問い
として未確認事項に立てた。
Journal: journal/2026-09-18-phy-coordinate-model.md
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MdLT5x5ka5y6CaWLeE3EKb
2026-09-18 08:44:22 +09:00
ewderna and Claude Opus 5
55243f626d
初期検討段階のドキュメントと運用ルールを取り込む
...
ルール策定前に書かれた設計ドキュメント7点を、以降の基準点として
そのままの状態で記録する。CLAUDE.md のルール1〜4は未適用。
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01MdLT5x5ka5y6CaWLeE3EKb
2026-09-18 08:43:01 +09:00