OPERATIONS
Operations
運用中 / MVP運用面daemonとGatewayは、稼働しているかだけでなく、リクエストを受けられる状態か、背景Taskが回復可能な状態かを確認できる運用面を持ちます。診断ではプロセスの存在だけで完了とせず、health・readiness・ログ・DB状態を合わせて確認します。
Knowledge Societyを常駐させる
Knowledge SocietyはCLIの常駐機能ではありません。murasamed に MURASAME_SOCIETY=1 を設定したときだけ、daemon内のSimulation Schedulerが永続Jobを処理します。 CLIを閉じても、投入済みのCouncil、Claim、Candidate、Jobはdaemon側に残ります。
MURASAME_SOCIETY=1
MURASAME_SOCIETY_PLAYERS=opencode
MURASAME_OPENCODE_MODEL=zai-coding-plan/glm-5.3
MURASAME_SOCIETY_MAX_PLAYERS=1
# Coding Planの呼び出し開始間隔(既定60秒)
MURASAME_OPENCODE_MIN_INTERVAL_MS=60000OpenCodeの開始間隔は、同一ホスト上のSocietyとカード評価Workerで共有します。失敗時も予約済みの間隔を維持するため、再試行が短時間に集中しません。日次のModel Call、Token、Verification上限はSociety全体で管理します。
Societyの観測と停止
murasame society stats
murasame society runtime status
murasame society jobs list
murasame society runtime pause
murasame society runtime resumeruntime pause は社会時間を止めます。再開するまで新しいJobの実行を進めませんが、既存の状態と監査イベントは保持します。JobのLease切れは次のTickで再キューされます。
Health / Readiness
/health
Liveness。プロセスが応答できるかを確認します。認証不要の診断Endpointで、Tokenやユーザー名などの秘密情報は返しません。
/ready
Readiness。daemonはDB migration完了かつshutdown中でないこと、Gatewayは認証ソースが有効かつshutdown中でないことを確認します。
EndpointのHTTP応答だけでなく、問題時の理由と実際のlistener・ログを同時に確認します。
CLIで確認する
murasame status
murasame status --jsonmurasame statusはdaemon / Gatewayの状態と理由を表示します。JSON形式は監視や後続の診断へ渡す用途に使います。認証不要のhealth / readinessのみを使うため、通常の会話Tokenを診断用途へ流しません。
停止・再起動とTask回復
- SIGTERM / SIGINTではgraceful shutdownを行い、背景Taskを中断・failedとしてDBへ確定します。正常終了はexit 0です。
- 再起動時には、前回プロセスが残した
status='running'の背景Taskをfailedへ確定する回復処理が冪等に走ります。 - systemd等で常駐させる場合は
Restart=on-failureを推奨します。停止・再起動後はstatusとログで回復結果を確認します。 - 長時間TaskはDBの状態とログを持つため、プロセス再起動後も追跡できます。
Distillerの継続処理
DistillerはTopic Queue、lease、retry / backoff、Checkpoint / resumeを持つPoC運用面です。systemd timerで時間制限付きのWindowを日次運転し、クラッシュやSIGTERMの後は未処理Topicから再開します。Graph bridgeの失敗は次回起動時に再試行します。
Distillerの注意
候補採掘とProposal作成は自動化できますが、未検証のNode・Edge・Cardをconfirmed / verifiedへ自動昇格させる機能ではありません。運用後はProposal、Provenance、失敗理由、次回再試行を確認します。
障害時の確認順
murasame status --jsonでdaemon / Gatewayのhealth・readyと理由を確認する。- 実際のPID、listener、systemd状態、journalを確認し、古いプロセスや別ポートと取り違えない。
- DB migration、背景Taskのstatus、最後のログ、Distillerのlease / retryを確認する。
- 再起動した場合は、残存
runningTaskがfailedへ回復されたことと、再開対象が残っていることを確認する。
詳細な障害切り分けと常駐登録はリポジトリの docs/18-mvp-ops-runbook.md を正本とします。このページはPortalでの運用面の入口です。