Onprest v1.2.6 を公開しました
リリース
Onprest v1.2.6 をリリースしました。
Onprest は、オンプレミス環境のレガシーデータベースを REST API / MCP から安全に利用するための OSS です。データベースそのものや SQL を外部公開するのではなく、オンプレ側で定義した capability だけを gateway 経由で呼び出せる構成にしています。
v1.2.6 は、導入時の切り分けと、更新系 capability を運用する際の安全確認を中心としたリリースです。
- 診断コマンド
doctorを追加。設定、データベースの準備状況、gateway への DNS 解決・疎通・TLS・認証をまとめて確認(業務 capability は実行せず、稼働中の agent 接続も置き換えない) - gateway 側の診断用の検証には専用の Ed25519 署名ドメインを使用し、既存のチャレンジ・リプレイ防止・リクエスト制限を共有。診断の詳細は保護されたログに記録し、公開される出力に認証情報や接続情報は含めない
- 更新系 capability に任意の
policy.max_affected_rowsを追加。不正な値や SELECT への指定は設定検証の時点で拒否し、実行時に上限を超えた更新はコミット前にロールバック - 上限超過はロールバックの確定後に
AGENT_AFFECTED_ROWS_EXCEEDEDとして返却(REST は HTTP 409、MCP はisError)。ロールバックを確認できない場合は従来どおり結果不明として扱う。公開されるエラーに件数は含めず、gateway のリクエストログではcountを null として記録 - 更新は成功したものの応答が失われた場合に備え、業務キーと全項目の比較で実際の反映状況を確認する突合手順を、PostgreSQL / MySQL / SQL Server / Oracle の例つきで追加
- 一致・未反映・不一致・確認不能という各結果の読み取り方、REST / MCP で応答が失われた場合の例、検証用データベースの準備・変更・後片付けのコマンドをドキュメント化
- CLI、設定、API、ログ、セキュリティ、運用まわりのドキュメントを更新
policy.max_affected_rows は任意の設定で、既存の capability 定義や REST / MCP の仕様に変更はありません。今回のリリースにより、導入や設定変更のときに問題箇所を agent 側だけで切り分けられるようになり、更新系を使う場合も想定を超える件数の更新を未然に止め、応答が失われたときに実際の反映状況を確認できるようになりました。
GitHub: https://github.com/viewlegacy/onprest
Documentation: https://docs.onprest.viewlegacy.com/