@a9n-shoji/rvw 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/README.md +39 -12
- package/dist/cli.mjs +486 -54
- package/dist/cli.mjs.map +4 -4
- package/dist/web/assets/DocumentViewer-CNgHpCuL.js +1560 -0
- package/dist/web/assets/WalkthroughViewer-BVB3ETHG.js +1 -0
- package/dist/web/assets/{abnfDiagram-N423BO3Z-BK5Jn86N.js → abnfDiagram-N423BO3Z-0v-ndtqQ.js} +1 -1
- package/dist/web/assets/architecture-TIHT7OUA-BjGWtjPU.js +1 -0
- package/dist/web/assets/{architectureDiagram-T3A2C74G-C4e8BOKi.js → architectureDiagram-T3A2C74G-WSNJ-tZE.js} +1 -1
- package/dist/web/assets/{blockDiagram-VBNYF7ZC-vGkPzqEX.js → blockDiagram-VBNYF7ZC-lmMbEUwI.js} +1 -1
- package/dist/web/assets/{c4Diagram-5PPSVZJV-CFw7KfN7.js → c4Diagram-5PPSVZJV-BrN5YVV8.js} +1 -1
- package/dist/web/assets/channel-DkH22XO0.js +1 -0
- package/dist/web/assets/{chunk-2GRJ4B5K-CGyf7P1B.js → chunk-2GRJ4B5K-gt2JPyrH.js} +1 -1
- package/dist/web/assets/{chunk-4I5QYGJK-B9gVU0IX.js → chunk-4I5QYGJK-Cg5GZ_-7.js} +1 -1
- package/dist/web/assets/{chunk-5RXB4S5H-CxKRHj4A.js → chunk-5RXB4S5H-BdhRGvxW.js} +1 -1
- package/dist/web/assets/{chunk-6Q2QTUOP-wTr3poCO.js → chunk-6Q2QTUOP-B1DYWNVJ.js} +1 -1
- package/dist/web/assets/{chunk-7Z6QIM7H-DO3-rKs9.js → chunk-7Z6QIM7H-D2YImamZ.js} +1 -1
- package/dist/web/assets/{chunk-GF5L2VYU-Hf7UNoHx.js → chunk-GF5L2VYU-CWtwL_CM.js} +1 -1
- package/dist/web/assets/{chunk-I66GZJ75-BsgBf6m-.js → chunk-I66GZJ75-DdoGlxMt.js} +1 -1
- package/dist/web/assets/{chunk-JQJVKLGR-C8FDquLg.js → chunk-JQJVKLGR-CVWAp3XP.js} +1 -1
- package/dist/web/assets/{chunk-KBJHAD2P-32ugraBx.js → chunk-KBJHAD2P-BBacwg3J.js} +1 -1
- package/dist/web/assets/{chunk-NSK5VX7P-BRGpsxOZ.js → chunk-NSK5VX7P-1AsXiBV3.js} +1 -1
- package/dist/web/assets/{chunk-QR6OTTB3-C1LfXMA9.js → chunk-QR6OTTB3-DL2s5pNp.js} +1 -1
- package/dist/web/assets/{chunk-UBXNYLIW-CjykxAbY.js → chunk-UBXNYLIW-mu3fkNQI.js} +1 -1
- package/dist/web/assets/{chunk-W5SLKNZC-DTzd_oWg.js → chunk-W5SLKNZC-BAwhMBBb.js} +1 -1
- package/dist/web/assets/{chunk-WRU74C26-BOKlupGY.js → chunk-WRU74C26-C7IeXZaP.js} +1 -1
- package/dist/web/assets/classDiagram-JCYQIIEL-C6Z4rmZR.js +1 -0
- package/dist/web/assets/classDiagram-v2-OCEON4UE-C6Z4rmZR.js +1 -0
- package/dist/web/assets/{cynefin-VYW2F7L2-FyhSpENE.js → cynefin-VYW2F7L2-DNisGvNv.js} +1 -1
- package/dist/web/assets/{cynefinDiagram-MW4NZA55-uFUTQ3i8.js → cynefinDiagram-MW4NZA55-BA27gOTz.js} +1 -1
- package/dist/web/assets/{dagre-VZM6K2ZE-BlESSHVb.js → dagre-VZM6K2ZE-vo_1YAuM.js} +1 -1
- package/dist/web/assets/{diagram-7IWD3JNH-CVtjyPlA.js → diagram-7IWD3JNH-DLLdUj0_.js} +1 -1
- package/dist/web/assets/{diagram-B4RE2ZJO-B3alEF-G.js → diagram-B4RE2ZJO-BV0WyNA-.js} +1 -1
- package/dist/web/assets/{diagram-LBJQPF4R-Dz-CRzSx.js → diagram-LBJQPF4R-DXxKSx2U.js} +1 -1
- package/dist/web/assets/{diagram-Q27KOJAE-B7x_WZC5.js → diagram-Q27KOJAE-DsQ2GzIK.js} +1 -1
- package/dist/web/assets/{diagram-UB23O5K3-Di7vh04u.js → diagram-UB23O5K3-DfjElFP1.js} +1 -1
- package/dist/web/assets/{ebnfDiagram-BXEA7PRR-CVXtwzOH.js → ebnfDiagram-BXEA7PRR-cYu0XV1a.js} +1 -1
- package/dist/web/assets/{erDiagram-JOGREHBK-C73ySvzv.js → erDiagram-JOGREHBK-DnsLBHaV.js} +1 -1
- package/dist/web/assets/eventmodeling-45OFAUF4-BUAcQ5NU.js +1 -0
- package/dist/web/assets/flowDiagram-UKHOOZJN-hAe9ojjP.js +1 -0
- package/dist/web/assets/{ganttDiagram-PKOTCBZU-DnFdkwyo.js → ganttDiagram-PKOTCBZU-CVD5gq3E.js} +1 -1
- package/dist/web/assets/{gitGraph-TEB2WS4Q-D9IlUiGc.js → gitGraph-TEB2WS4Q-C_j0n-Kw.js} +1 -1
- package/dist/web/assets/{gitGraphDiagram-DS77QQ5N-C8RcHadx.js → gitGraphDiagram-DS77QQ5N-qACevJmW.js} +1 -1
- package/dist/web/assets/index-Coye1BY5.js +384 -0
- package/dist/web/assets/{index-B8_aim9s.css → index-DFdYNMZE.css} +1 -1
- package/dist/web/assets/{info-DKCQHKI2-D8vjRWaN.js → info-DKCQHKI2-Cmkbz3Yi.js} +1 -1
- package/dist/web/assets/{infoDiagram-6WML65LV-JfN0KNPZ.js → infoDiagram-6WML65LV-CDrAem7M.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-WSZJBQD7-C2AwcyHY.js → ishikawaDiagram-WSZJBQD7-DXgCnFqW.js} +1 -1
- package/dist/web/assets/{journeyDiagram-NVQOT4AX-spVPyB4C.js → journeyDiagram-NVQOT4AX-1KW-I7DV.js} +1 -1
- package/dist/web/assets/{kanban-definition-27J2QSJJ-DovZ9YwS.js → kanban-definition-27J2QSJJ-CCt75OuF.js} +1 -1
- package/dist/web/assets/{line-CLgOPnWr.js → line-DQfkDi_r.js} +1 -1
- package/dist/web/assets/markdown-source-map-_dS1q5Dg.js +7 -0
- package/dist/web/assets/{mermaid-parser.core-DyixRB1x.js → mermaid-parser.core-B7TMMtY0.js} +3 -3
- package/dist/web/assets/{mermaid.core-BqpBcETK.js → mermaid.core-B93x-7Mk.js} +4 -4
- package/dist/web/assets/{mindmap-definition-FAOFIHXS-BbPO8pns.js → mindmap-definition-FAOFIHXS-Dyt28V6S.js} +1 -1
- package/dist/web/assets/{packet-7NZHBO7P-aNovgfCM.js → packet-7NZHBO7P-zQ0u35s3.js} +1 -1
- package/dist/web/assets/{pegDiagram-VL7TDLO6-2e4z4Op-.js → pegDiagram-VL7TDLO6-et0KHGIE.js} +1 -1
- package/dist/web/assets/{pie-RZYD4A2V-DNId-ti0.js → pie-RZYD4A2V-uur86LkQ.js} +1 -1
- package/dist/web/assets/{pieDiagram-7S7Q4E2Y-D5ZE6kTv.js → pieDiagram-7S7Q4E2Y-c027WPTB.js} +1 -1
- package/dist/web/assets/{quadrantDiagram-CIZ2JOQS-BwxDvFqg.js → quadrantDiagram-CIZ2JOQS-BtSV4E-0.js} +1 -1
- package/dist/web/assets/{radar-I7S5WNFK-C2R9CqOg.js → radar-I7S5WNFK-B_g0VZMF.js} +1 -1
- package/dist/web/assets/{railroad-3IZDKUUU-BcNatsBm.js → railroad-3IZDKUUU-VFLsM_Em.js} +1 -1
- package/dist/web/assets/railroad-abnf-AHOZXSZD-TVRi9_2L.js +1 -0
- package/dist/web/assets/railroad-ebnf-EBAXGLYW-B5B-JrS4.js +1 -0
- package/dist/web/assets/railroad-peg-LSFZ7HO6-CfIpa6ba.js +1 -0
- package/dist/web/assets/{railroadDiagram-AXF67PYL-CGJ_SZmV.js → railroadDiagram-AXF67PYL-uOtnxRbQ.js} +1 -1
- package/dist/web/assets/{requirementDiagram-LRYGKXZP-BedGrIx6.js → requirementDiagram-LRYGKXZP-DGSZAsj4.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-W5VNT64P-zK0XX_8d.js → sankeyDiagram-W5VNT64P-CCDk8Vxt.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-SI44F4Z6-DbI4quME.js → sequenceDiagram-SI44F4Z6-Ce-Jzdk5.js} +1 -1
- package/dist/web/assets/{stateDiagram-OKZ733FA-5dL9K4ba.js → stateDiagram-OKZ733FA-BYpYzyEa.js} +1 -1
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-BJFG9cb2.js +1 -0
- package/dist/web/assets/{swimlanes-SLNWSIFB-CnNbnSFl.js → swimlanes-SLNWSIFB-BL-CUc6d.js} +1 -1
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-BS8L8fb1.js +8 -0
- package/dist/web/assets/{timeline-definition-Z64GVDOM-ht7Pc9Lh.js → timeline-definition-Z64GVDOM-p9pkof_K.js} +1 -1
- package/dist/web/assets/{treeView-QDETBFTQ-B-GVm6gh.js → treeView-QDETBFTQ-dRhXTU9p.js} +1 -1
- package/dist/web/assets/{treemap-6X3UGDF4-DZ5ImJjV.js → treemap-6X3UGDF4-CZHe3dIh.js} +1 -1
- package/dist/web/assets/{vennDiagram-T6HMQDX7-DVnsZuuc.js → vennDiagram-T6HMQDX7-ipODJegx.js} +1 -1
- package/dist/web/assets/{wardley-OPB4EBWU-CLk0x8RD.js → wardley-OPB4EBWU-CxHlVjkF.js} +1 -1
- package/dist/web/assets/{wardleyDiagram-T6FBY63Y-BgtlhJqk.js → wardleyDiagram-T6FBY63Y-YarkIncH.js} +1 -1
- package/dist/web/assets/{xychartDiagram-ELKLHX3M-CXEN46LP.js → xychartDiagram-ELKLHX3M-Cw1M-7a4.js} +1 -1
- package/dist/web/index.html +2 -2
- package/migrations/009_comment_watch.sql +30 -0
- package/package.json +1 -1
- package/skills/rvw/SKILL.md +84 -5
- package/skills/rvw/agents/openai.yaml +2 -2
- package/skills/rvw-walkthrough/SKILL.md +17 -8
- package/skills/rvw-walkthrough/references/walkthrough-authoring.md +105 -0
- package/skills/rvw-watch-comments/SKILL.md +175 -0
- package/skills/rvw-watch-comments/agents/openai.yaml +4 -0
- package/skills/rvw-watch-comments/scripts/watch-state.mjs +724 -0
- package/dist/web/assets/DocumentViewer-Bpo61duW.js +0 -1560
- package/dist/web/assets/MarkdownImagePlaceholder-6RCNwzwM.js +0 -36
- package/dist/web/assets/WalkthroughViewer-B5mozyWo.js +0 -2
- package/dist/web/assets/architecture-TIHT7OUA-CNniK53V.js +0 -1
- package/dist/web/assets/channel-D9mpRLqV.js +0 -1
- package/dist/web/assets/classDiagram-JCYQIIEL-1i-imYTn.js +0 -1
- package/dist/web/assets/classDiagram-v2-OCEON4UE-1i-imYTn.js +0 -1
- package/dist/web/assets/eventmodeling-45OFAUF4-lqF-K7-h.js +0 -1
- package/dist/web/assets/flowDiagram-UKHOOZJN-BjY-fuKE.js +0 -1
- package/dist/web/assets/index-BWaG4LjN.js +0 -355
- package/dist/web/assets/railroad-abnf-AHOZXSZD-BZPZwTjc.js +0 -1
- package/dist/web/assets/railroad-ebnf-EBAXGLYW-CpdNBsnS.js +0 -1
- package/dist/web/assets/railroad-peg-LSFZ7HO6-R8jDubES.js +0 -1
- package/dist/web/assets/stateDiagram-v2-UEYNNEHI-ChRa8APT.js +0 -1
- package/dist/web/assets/swimlanesDiagram-ULZ7WXOC-QmkQO3yp.js +0 -8
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,30 @@
|
|
|
5
5
|
|
|
6
6
|
## [Unreleased]
|
|
7
7
|
|
|
8
|
+
## [0.2.0] - 2026-08-20
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
|
|
12
|
+
- Agentが新しい未解決threadを安全なMarkdownで記録できる`comment.create` CLI capability
|
|
13
|
+
- Agentが既存post本文と関連commitを置き換えられる`comment.edit` CLI capability
|
|
14
|
+
- browserの戻る/進むで、review scopeやworkspace layoutを変えずに辿れるreading history
|
|
15
|
+
- PR commentを継続監視し、重複なく返信できる`rvw-watch-comments` Skill
|
|
16
|
+
|
|
17
|
+
### Changed
|
|
18
|
+
|
|
19
|
+
- reviewerの目的とrepository固有の指示に合わせて説明を組み立てるWalkthrough authoring guide
|
|
20
|
+
- `rvw-watch-comments`がclaim直後に確認中replyを追加し、同じreplyを最終結果へ更新するよう改善
|
|
21
|
+
|
|
22
|
+
### Fixed
|
|
23
|
+
|
|
24
|
+
- 不正なMermaidを含むcommentを表示すると、一時的なerror SVGがcomment外へ残りviewer下部を覆う問題
|
|
25
|
+
|
|
26
|
+
## [0.1.1] - 2026-08-17
|
|
27
|
+
|
|
28
|
+
### Fixed
|
|
29
|
+
|
|
30
|
+
- 大規模repositoryでファイルを開閉した際に、非表示のQuick Open候補を二乗時間で再計算してUIが停止する問題
|
|
31
|
+
|
|
8
32
|
## [0.1.0] - 2026-08-17
|
|
9
33
|
|
|
10
34
|
### Added
|
package/README.md
CHANGED
|
@@ -92,6 +92,7 @@ viewerはこの流れのために次を提供します。
|
|
|
92
92
|
- `@pierre/vscode-icons`による全画面共通の言語/tooling file icon
|
|
93
93
|
- ファイル名fuzzy検索、Gitによるrealtime全文fixed-string検索(case / whole-word、file grouping、行jump)
|
|
94
94
|
- PR全体、PR本文、ファイル全体、行範囲、Walkthrough全体へのコメント
|
|
95
|
+
- コメントと返信のsafe GFM表示(repository内link/同一commit相対画像、表示専用Mermaidを含む)
|
|
95
96
|
- 未解決/解決済み、返信、Outdated追跡
|
|
96
97
|
- Agentへ渡す一件・一覧・複数選択した`rvw://comment/<uuid>`参照のコピー
|
|
97
98
|
- Agentが提示したWalkthrough、exact code reference、選択可能なMermaid node
|
|
@@ -137,8 +138,9 @@ Agentは現在内容を読み、同じ`rvw://walkthrough/<uuid>`を更新して
|
|
|
137
138
|
|
|
138
139
|
## Codex / Claude Code Skills
|
|
139
140
|
|
|
140
|
-
アプリ本体からローカルSkillをインストールします。一度のinstallで、コメント処理用の`rvw
|
|
141
|
-
Walkthroughのpublish・改善・削除用の`rvw-walkthrough
|
|
141
|
+
アプリ本体からローカルSkillをインストールします。一度のinstallで、コメント処理用の`rvw`、
|
|
142
|
+
Walkthroughのpublish・改善・削除用の`rvw-walkthrough`、新規コメント監視用の
|
|
143
|
+
`rvw-watch-comments`が入ります。Skill名と内容はCodex / Claude Codeで共通で、
|
|
142
144
|
platform指定は配置先だけを選びます。
|
|
143
145
|
|
|
144
146
|
```bash
|
|
@@ -149,8 +151,8 @@ rvw skill status
|
|
|
149
151
|
|
|
150
152
|
既定の配置先は次です。
|
|
151
153
|
|
|
152
|
-
- Codex: `~/.agents/skills/rvw`、`~/.agents/skills/rvw-walkthrough`
|
|
153
|
-
- Claude Code: `~/.claude/skills/rvw`、`~/.claude/skills/rvw-walkthrough`
|
|
154
|
+
- Codex: `~/.agents/skills/rvw`、`~/.agents/skills/rvw-walkthrough`、`~/.agents/skills/rvw-watch-comments`
|
|
155
|
+
- Claude Code: `~/.claude/skills/rvw`、`~/.claude/skills/rvw-walkthrough`、`~/.claude/skills/rvw-watch-comments`
|
|
154
156
|
|
|
155
157
|
rvwがインストールしたSkillには同梱版digestを記録します。`skill status --json`と`doctor --json`は、
|
|
156
158
|
管理済みの旧版なら`updateAvailable: true`、ローカル編集なら`locallyModified: true`、記録のない差異なら
|
|
@@ -173,12 +175,28 @@ rvw://comment/00000000-0000-4000-8000-000000000000
|
|
|
173
175
|
rvw Skillを使って、https://github.com/owner/repository/pull/123 の未解決コメントを確認してください。
|
|
174
176
|
```
|
|
175
177
|
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
検証してpublishします。Walkthrough全体へのコメントから説明を改善する場合は、現在内容を取得して同じURIを
|
|
179
|
-
更新し、重複した「改訂版」を追加しません。
|
|
178
|
+
Agentにreview結果をRVWへ残してもらう場合は、対象PRとコメント作成を明示します。Agentはcommit済みの
|
|
179
|
+
exact sourceを確認し、通常の未解決threadを一件ずつ作成します。
|
|
180
180
|
|
|
181
|
-
|
|
181
|
+
```text
|
|
182
|
+
rvw Skillを使って、https://github.com/owner/repository/pull/123 をreviewし、見つけた指摘をRVWのコメントとして作成してください。
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
Walkthroughを作る場合は、説明したい対象と必要な作成指示をセッションへ伝えて`rvw-walkthrough` Skillを使います。
|
|
186
|
+
Skillは明示された指示を優先し、未指定の作成判断だけを既定guideで補って、reviewerが変更または実装対象の
|
|
187
|
+
mental modelを作るための最初の読解経路を構成します。文書の見出しや説明順序は固定せず、commit固定の
|
|
188
|
+
reference付きartifactとして検証してpublishします。Walkthrough全体へのコメントから説明を改善する場合は、
|
|
189
|
+
現在内容を取得して同じURIを更新し、重複した「改訂版」を追加しません。
|
|
190
|
+
|
|
191
|
+
新規root commentとreplyを継続監視する場合は`rvw-watch-comments` Skillを起動します。全登録PRを
|
|
192
|
+
約10秒間隔で監視し、起動前の既存未解決commentは処理しません。自分のPRのfix-and-pushを起動taskへ
|
|
193
|
+
明示許可した場合だけ、live PR authorと起動時のGitHub loginが一致するPRで修正・test・commit・pushを
|
|
194
|
+
行えます。fork PRではlive head repository、branch、OIDとpush先も一致させます。他人またはauthor不明の
|
|
195
|
+
PRは常にcode/GitHub read-onlyで調査します。batchをclaimすると各threadへ`🔎 確認中です…`を即時返信し、
|
|
196
|
+
完了時は同じreplyを最終結果へ編集します。Skill同梱のtask-state toolがrepository外のSQLiteへcursor、
|
|
197
|
+
queue、retry、thread単位のstatus post、自己返信抑制をtransactionalに保存します。
|
|
198
|
+
|
|
199
|
+
三つのSkillはSQLiteを直接読まず、`rvw protocol --json`、`rvw comment ... --json`、
|
|
182
200
|
`rvw walkthrough get/update/publish/delete ... --json`、`rvw pr sync --stdin --json`だけを利用します。
|
|
183
201
|
ローカルDBやrepositoryへアクセスできないCloud Agentは対象外です。
|
|
184
202
|
|
|
@@ -200,18 +218,22 @@ resetは対象PRのコメント、返信、コメント対象、Walkthrough、co
|
|
|
200
218
|
|
|
201
219
|
## CLI protocol
|
|
202
220
|
|
|
203
|
-
機械向けコマンドはstdoutへJSON
|
|
221
|
+
機械向けコマンドはstdoutへJSONだけを出します。長時間の`comment watch`だけはRFC 7464 JSON text
|
|
222
|
+
sequenceを出します。
|
|
204
223
|
|
|
205
224
|
```bash
|
|
206
225
|
rvw protocol --json
|
|
207
226
|
rvw agent ping --json
|
|
208
227
|
rvw agent status --json
|
|
209
228
|
rvw pr refresh <PR_REF> --json
|
|
229
|
+
rvw comment create --stdin --json
|
|
210
230
|
rvw comment list <PR_REF> --state unresolved --limit 50 --offset 0 --json
|
|
231
|
+
rvw comment watch [--after <CURSOR>] [--interval 10] --json-seq
|
|
211
232
|
rvw comment get <COMMENT_URI> --json
|
|
212
233
|
rvw comment get <COMMENT_URI> --include-pr-body --json
|
|
213
234
|
rvw comment get <COMMENT_URI> --live --json
|
|
214
235
|
rvw comment reply <COMMENT_URI> --stdin --json
|
|
236
|
+
rvw comment edit <COMMENT_URI> --post <POST_ID> --stdin --json
|
|
215
237
|
rvw comment resolve <COMMENT_URI> --json
|
|
216
238
|
rvw comment reopen <COMMENT_URI> --json
|
|
217
239
|
rvw walkthrough get <WALKTHROUGH_URI> --json
|
|
@@ -227,6 +249,10 @@ rvw pr attach <PR_REF> --repository <PATH> --json
|
|
|
227
249
|
stdinをcloseし、shellではpipe、quoted heredoc、input redirectionのいずれかを使います。起動済みの
|
|
228
250
|
対話commandへJSONと改行だけを送るとEOF待ちになります。
|
|
229
251
|
|
|
252
|
+
`comment create`は登録済みPR、通常のcomment target、本文、任意のAgent名をstdin JSONで受け取り、
|
|
253
|
+
未解決のroot threadを一件作成します。repository targetはexact commit、path、任意のinclusive line rangeを
|
|
254
|
+
指定し、viewerと同じ文書・行検証を通ります。作成してもbrowserを開かず、tabやcommit選択を変更しません。
|
|
255
|
+
|
|
230
256
|
`comment list`は未解決を既定として`unresolved` / `resolved` / `all`をページング列挙し、各threadの
|
|
231
257
|
root post preview、post件数、最新head時点のOutdated判定を返します。`hasMore`なら`nextOffset`から
|
|
232
258
|
続けて取得し、完全なthreadは`comment get`で読みます。listと通常の`comment get`はPR本文を省略し、
|
|
@@ -235,7 +261,7 @@ root post preview、post件数、最新head時点のOutdated判定を返しま
|
|
|
235
261
|
`comment get`は最新PRのtitle、base/head、serviceが導出したplacement、対象commitのbounded source
|
|
236
262
|
excerptを返すため、AgentはOID比較でOutdatedを推測しません。
|
|
237
263
|
|
|
238
|
-
`comment get --live`はGitHubの現在値とcacheの差をread-onlyで確認し、DBを更新しません。`pr sync`はGitHub上の最新PR状態を取得し、任意の`commentUpdates`を同じSQLite transactionで反映します。保存先がdirtyでも同じrepositoryのcleanなworktreeを`--repository`で選べ、確認済みの未追跡fileだけは`--allow-untracked`で許可できます。local branchがGitHub headより単にbehindな場合や最終同期後にforce-pushされた場合はcheckoutを変更せず同期します。`pr sync`と`comment reply
|
|
264
|
+
`comment get --live`はGitHubの現在値とcacheの差をread-onlyで確認し、DBを更新しません。`pr sync`はGitHub上の最新PR状態を取得し、任意の`commentUpdates`を同じSQLite transactionで反映します。保存先がdirtyでも同じrepositoryのcleanなworktreeを`--repository`で選べ、確認済みの未追跡fileだけは`--allow-untracked`で許可できます。local branchがGitHub headより単にbehindな場合や最終同期後にforce-pushされた場合はcheckoutを変更せず同期します。`comment create`は非冪等です。`pr sync`と`comment reply`は任意の冪等keyを受け、`comment edit`は同じpostの完全置換なので安全に再試行できます。
|
|
239
265
|
|
|
240
266
|
`rvw agent ping/status --json`はsocket path、接続結果とOS error詳細、期待/接続先DB、選択transport、
|
|
241
267
|
fallback理由を表示します。人向け出力にも同じ診断項目を表示します。`RVW_AGENT_SOCKET_PATH`を明示した場合は
|
|
@@ -296,7 +322,8 @@ atomicなowner lockを取得した一つのNode processだけがlistenし、owne
|
|
|
296
322
|
`rvw doctor --json`はmode/ownerだけでなくwrite transactionとAgent疎通も報告します。
|
|
297
323
|
|
|
298
324
|
ローカルHTTP serverは`127.0.0.1`だけへbindしてHost / Originを検証し、write APIは
|
|
299
|
-
`application/json`だけを受理し、CORSを有効にしません。コメントと返信は
|
|
325
|
+
`application/json`だけを受理し、CORSを有効にしません。コメントと返信はUTF-8 GFM Markdown sourceとして
|
|
326
|
+
保存し、raw HTMLをsanitizeします。外部画像は取得せず、repository相対画像だけをexact commitから取得します。
|
|
300
327
|
CLIとfrontend bundleに含まれる第三者softwareのlicenseはpackage内の
|
|
301
328
|
`dist/cli-THIRD_PARTY_NOTICES.txt`と`dist/web/THIRD_PARTY_NOTICES.txt`へbuild時に収録します。
|
|
302
329
|
|