Skip to content

feat: テナント匿名アクセス設定 & policies create ヘルプ改善#78

Merged
miya0001 merged 2 commits into
mainfrom
feat/anonymous-access-and-policy-help
Mar 19, 2026
Merged

feat: テナント匿名アクセス設定 & policies create ヘルプ改善#78
miya0001 merged 2 commits into
mainfrom
feat/anonymous-access-and-policy-help

Conversation

@miya0001

@miya0001 miya0001 commented Mar 19, 2026

Copy link
Copy Markdown
Member

Summary

  • admin tenants update--anonymous-access / --no-anonymous-access オプションを追加し、テナントの匿名アクセス (settings.features.anonymousAccessEnabled) を CLI から切り替え可能にした
  • admin policies create のヘルプに target フィールドのスキーマ例・有効な attributeId 一覧・matchFunction オプションを追加
  • 匿名アクセスポリシー作成例を policies create の examples に追加

Details

#76: テナント匿名アクセス設定

geonic admin tenants update <id> --anonymous-access      # 有効化
geonic admin tenants update <id> --no-anonymous-access   # 無効化
  • サーバー側スキーマ (settings.features.anonymousAccessEnabled) に準拠
  • JSON 引数との同時指定時は JSON を優先、どちらもなければ対話モードにフォールバック

#75: policies create ヘルプ改善

  • target フィールド付きの実用的な JSON 例を追加
  • Target カテゴリ: subjects, resources, actions
  • 各カテゴリの有効な attributeId を一覧表示
  • matchFunction (string-equal, string-regexp, glob) を記載

Test plan

  • admin tenants update --anonymous-access{ settings: { features: { anonymousAccessEnabled: true } } } を PATCH
  • admin tenants update --no-anonymous-accessfalse を PATCH
  • JSON 引数がフラグより優先される
  • 引数もフラグもない場合は parseJsonInput にフォールバック
  • 変更対象ファイル (policies.ts, tenants.ts) のカバレッジ 100%
  • lint, typecheck, 全628テスト通過

Closes #75, Closes #76

Summary by CodeRabbit

  • 新機能

    • admin tenants update コマンドに --anonymous-access / --no-anonymous-access フラグを追加しました。
  • ドキュメント

    • admin policies create コマンドのヘルプにスキーマ例を追加。target フィールドの詳細説明とペイロード例が充実しました。

…ate のヘルプに target スキーマ例を追加

- admin tenants update に --anonymous-access / --no-anonymous-access フラグを追加し、
  テナントの anonymousAccessEnabled を CLI から直接切り替え可能にした (#76)
- admin policies create のヘルプに target フィールド (subjects, resources, actions,
  environments) の構造と実用的な JSON 例を追加 (#75)
- 匿名アクセスポリシーの作成例を policies create の examples に追加
- テナント update の --anonymous-access フラグに対するテスト4件を追加

Closes #75, Closes #76
- anonymousAccessEnabled を settings.features 配下のネスト構造に修正
  (トップレベルではなく settings.features.anonymousAccessEnabled)
- policy target から environments フィールドを削除(サーバー未サポート)
- action の attributeId を "action" から "method" (HTTP method) に修正
- target の matchFunction オプション (string-equal, string-regexp, glob) を記載
- subjects/resources/actions の有効な attributeId 一覧をヘルプに追加
@coderabbitai

coderabbitai Bot commented Mar 19, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 07da6174-cabd-4e63-8ab8-a16fb81e8f4f

📥 Commits

Reviewing files that changed from the base of the PR and between 745ca86 and f2d5ecb.

📒 Files selected for processing (4)
  • CHANGELOG.md
  • src/commands/admin/policies.ts
  • src/commands/admin/tenants.ts
  • tests/admin-tenants.test.ts

📝 Walkthrough

Walkthrough

テナントの匿名アクセス設定を管理するための CLI フラグ --anonymous-access / --no-anonymous-access を追加し、ポリシー作成時のヘルプに target フィールドの詳細なスキーマ例を追加した。テスト戦強化とドキュメント更新も含まれている。

Changes

Cohort / File(s) Summary
ドキュメント更新
CHANGELOG.md, src/commands/admin/policies.ts
CHANGELOG に 2026-03-19 エントリを追加。ポリシー作成コマンドのヘルプテキストを拡張し、target フィールドのスキーマ例(subjectsresourcesactionsenvironments)と matchFunction オプションの詳細を記載。
機能実装
src/commands/admin/tenants.ts
admin tenants update コマンドに --anonymous-access / --no-anonymous-access フラグを追加。フラグが指定された場合、settings.features.anonymousAccessEnabled をネストされたペイロードとして構築。JSON 入力の有無とフラグの優先順位を制御。
テスト追加
tests/admin-tenants.test.ts
匿名アクセスフラグの動作を検証するテストケースを追加。フラグのみ、JSON と併用時、フラグなし時の 3 つのシナリオをカバー。

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~15 minutes

Poem

🐰 ウサギより贈る、お祝いの歌 🐰
匿名さんへ、アクセスの道を開きました
ターゲットの形も、ドキュメントも明確に
CLI フラグで、テナント設定も思い通り
賢い変更が、一歩また一歩と進みます ✨

🚥 Pre-merge checks | ✅ 5 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed PRタイトルは、テナント匿名アクセス設定と policies create ヘルプ改善という2つの主要な機能追加を適切に要約しており、変更内容の主要な部分を正確に反映しています。
Linked Issues check ✅ Passed PR #75と#76の要件がすべて満たされています。#75のadmin policies createヘルプにtargetフィールドのスキーマ例を追加し、#76のadmin tenants update--anonymous-access/--no-anonymous-accessオプションを実装し、テストが充実しています。
Out of Scope Changes check ✅ Passed すべての変更がリンク済みissues(#75, #76)の要件に直接関連しており、scope外の変更は認識されません。CHANGELOG.md、src/commands/admin/policies.ts、src/commands/admin/tenants.ts、tests/admin-tenants.test.tsのすべての変更が対象の機能に関連しています。
Description check ✅ Passed PR概要は詳細かつ明確で、変更内容、テスト計画、対象issueがすべて記載されています。日本語で実装の詳細、テスト範囲、JSON優先度ロジックなど、レビューに必要な情報が網羅されています。

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/anonymous-access-and-policy-help
📝 Coding Plan
  • Generate coding plan for human review comments

Comment @coderabbitai help to get the list of available commands and usage tips.

@miya0001
miya0001 merged commit ccb339e into main Mar 19, 2026
11 of 13 checks passed
@miya0001
miya0001 deleted the feat/anonymous-access-and-policy-help branch April 3, 2026 07:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

1 participant