@unowdev/docgraph
v0.1.2
Published
Markdown dependency watcher and consistency queue CLI
Readme
@unowdev/docgraph
Markdown文書の依存グラフを管理し、更新波及に応じて needs-check キューを生成するCLIです。
必要環境
- Node.js LTS (
>=18)
インストール(推奨: プロジェクトローカル)
方式3(devDependency)を標準運用とします。
# 公開済みパッケージを使う場合
npm i -D @unowdev/docgraph公開前にローカルパッケージを検証する場合:
# 利用側プロジェクトで実行(このリポジトリ構成の例)
npm i -D file:../../packagepackage.json 例:
{
"scripts": {
"docgraph": "docgraph"
}
}実行例:
npm run docgraph -- init
npm run docgraph -- watch --once
npm run docgraph -- needs-check --jsonCIの最小確認例:
npm ci
npm exec -- docgraph --help方式3の詳細運用(配布チャネル、固定ポリシー、更新/移行/障害対応)は
demo/install_method3/OPERATIONS_GUIDE.md を参照してください。
配布物ドライラン(npm pack 生成tarballの利用側検証)は
demo/install_method3/tarball_release_smoke.sh を参照してください。
コマンド
docgraph init- ワークスペース直下に
.docgraph/state.jsonを作成します。
- ワークスペース直下に
docgraph watch- 起動時に初期同期(
.md走査、deps/rdeps構築、未登録文書versions=1)を行い、継続監視します。
- 起動時に初期同期(
docgraph needs-checkneeds-check文書を決定的順序(impact降順、path昇順)で表示します。
docgraph needs-check --jsonreason/changedUpstreams/diffRefsを含むJSONを返します。
docgraph next --json- キュー先頭1件をJSONで返します(空なら
null)。
- キュー先頭1件をJSONで返します(空なら
docgraph mark <path> [--actor <id>] [--summary <text>]- 対象文書の依存閉包スナップショットを
completionに記録し、auditを追記してcleanに遷移させます。 broken文書はmarkできません。
- 対象文書の依存閉包スナップショットを
state.json 主要フィールド
versions: 文書ごとの整数バージョンdeps: 参照元 -> 参照先rdeps: 参照先 -> 参照元status:clean | needs-check | brokencompletion:mark時点の{ checkedAt, snapshot }broken: 解決不能参照の理由queue:needs-checkキュー(path,priorityKey,reason,changedUpstreams)diffs: 直前版との差分参照(diffRefは.docgraph/diffs/...)audit:markの監査証跡
監査証跡(audit)の意味
audit[path] には mark 実行ごとに以下が追記されます。
at: 実行時刻actor: 実行者(--actor、DOCGRAPH_ACTOR、USER、unknownの順で解決)snapshot: 依存閉包+自身のバージョン写像reviewedUpstreams:mark実行時点でのchangedUpstreamsresultSummary: 任意の要約テキストdocHash: 対象文書内容のSHA-256
