Skip to content

CRUD権限ポリシーとCLI引数解析を整理し0.4.1へ更新 - #16

Merged
igapyon merged 1 commit into
develfrom
devel-tiga0728udc
Jul 28, 2026
Merged

CRUD権限ポリシーとCLI引数解析を整理し0.4.1へ更新#16
igapyon merged 1 commit into
develfrom
devel-tiga0728udc

Conversation

@igapyon

@igapyon igapyon commented Jul 28, 2026

Copy link
Copy Markdown
Owner

概要

CRUD権限の解析と操作ごとのアクセス方針を整理し、新しい操作が追加された際に
未定義の権限で実行されない構造へ変更しました。あわせてCLI引数解析を独立した
処理へ分離し、未知・重複オプションや余分な引数を明示的な使用法エラーとして
扱うようにしました。

製品バージョンは0.4.0から0.4.1へ更新しました。

変更内容

CRUD権限と操作ポリシー

  • 環境変数と--allowで共通利用するCRUD権限パーサーを追加
  • 既定のREAD権限と対応する4権限の定義を一元化
  • 全59操作のmutation分類と必要権限を明示的なポリシーとして定義
  • 未知の操作を環境設定やBacklogクライアントの解決前に拒否
  • ポリシー未定義の操作を暗黙のREADとして扱わず、設定エラーとして停止

CLI引数解析

  • CLI引数解析を独立した純粋関数へ分離
  • 未知のオプション、重複オプション、余分な位置引数を終了コード2で拒否
  • help--versiontools listtracecallごとの引数条件を明示
  • 厳格な引数規則を--helpへ追加

バージョンとトレーサビリティ

  • package.json、lock、製品情報、開発資料を0.4.1へ更新
  • 操作対応表を再生成し、対象製品バージョンを更新
  • CLIとruntimeのバージョン検証を更新

動作確認

  • npm run trace:refresh:59操作の対応表を生成
  • npm test:41テスト成功
  • npm run smoke:node:成功

## 概要

CRUD権限の解析と操作ごとのアクセス方針を整理し、新しい操作が追加された際に
未定義の権限で実行されない構造へ変更しました。あわせてCLI引数解析を独立した
処理へ分離し、未知・重複オプションや余分な引数を明示的な使用法エラーとして
扱うようにしました。

製品バージョンは`0.4.0`から`0.4.1`へ更新しました。

## 変更内容

### CRUD権限と操作ポリシー

- 環境変数と`--allow`で共通利用するCRUD権限パーサーを追加
- 既定のREAD権限と対応する4権限の定義を一元化
- 全59操作のmutation分類と必要権限を明示的なポリシーとして定義
- 未知の操作を環境設定やBacklogクライアントの解決前に拒否
- ポリシー未定義の操作を暗黙のREADとして扱わず、設定エラーとして停止

### CLI引数解析

- CLI引数解析を独立した純粋関数へ分離
- 未知のオプション、重複オプション、余分な位置引数を終了コード2で拒否
- `help`、`--version`、`tools list`、`trace`、`call`ごとの引数条件を明示
- 厳格な引数規則を`--help`へ追加

### バージョンとトレーサビリティ

- `package.json`、lock、製品情報、開発資料を`0.4.1`へ更新
- 操作対応表を再生成し、対象製品バージョンを更新
- CLIとruntimeのバージョン検証を更新

## 動作確認

- `npm run trace:refresh`:59操作の対応表を生成
- `npm test`:41テスト成功
- `npm run smoke:node`:成功
@igapyon
igapyon merged commit 3aa8010 into devel Jul 28, 2026
4 checks passed
@igapyon
igapyon deleted the devel-tiga0728udc branch July 28, 2026 11:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant