Skip to content

v1.6.0 試験結果

試験概要

項目内容
対象アプリAI KeyChain
バージョンv1.6.0
試験日2026-04-13
試験実施者Claude Code (claude-opus-4-6)
GitHub Issue#72

試験環境

項目内容
OSmacOS 26.2 (Darwin 25.2.0, Build 25C56)
アーキテクチャarm64 (Apple Silicon)
Swift6.3 (swiftlang-6.3.0.123.5 clang-2100.0.123.102)
ビルドツールSwift Package Manager
コミットea2e24e (main)
テスト対象Release ビルド + DMG 配布物

総合結果

区分テスト数合格不合格スキップ合格率
ビルド・配布テスト (BT)5500100%
Secret Reference テスト (SR)5500100%
i18n テスト (I18N)6600100%
セキュリティテスト (ST)4400100%
UI/UX テスト (UI)6600100%
合計262600100%

判定: ALL PASS

全 26 件のテストに合格しました。


v1.5.1 からの差分

追加機能関連 Issueテスト区分
Secret Reference モード#58SR-001〜005
3モード選択 UI(スクロール対応)#66UI-001〜003
新規キー追加フォーム修正#68, #69UI-004〜006
英語対応(i18n 81箇所)#67I18N-001〜006
ModeSelectView タップ範囲拡大UI-002
アプリアイコン修正BT-003

エビデンス

Release ビルド結果

$ swift build -c release
Building for production...
[4/5] Compiling AIkeychain AIkeychainApp.swift
[4/5] Linking AIkeychain
Build complete! (6.19s)

バイナリ検証

$ file .build/release/AIkeychain
.build/release/AIkeychain: Mach-O 64-bit executable arm64

$ ls -la .build/release/AIkeychain
-rwxr-xr-x  1 takehiro  staff  3646584  4月 13 13:13 .build/release/AIkeychain

DMG インストーラー

$ ls -lh build/AIKeyChain-v1.6.0.dmg
-rw-r--r--  1 takehiro  staff  1.9M  4月 13 13:32 build/AIKeyChain-v1.6.0.dmg

セキュリティ検証

# ハードコードされたトークンなし
$ grep -rn "sk-ant-api\|ghp_[a-zA-Z0-9]{20,}" AIkeychain/ --include="*.swift"
(0 matches - ALL CLEAR)

# SecureField によるマスキング
$ grep -rn "SecureField" AIkeychain/ --include="*.swift"
AIkeychain/Views/Editor/KeyEditorView.swift:86: SecureField("Token Value", ...)

# クリップボード自動クリア (7箇所)
$ grep -rn "clearContents" AIkeychain/ --include="*.swift" | wc -l
7

# localhost 限定バインド
$ grep -n "acceptLocalOnly" AIkeychain/Services/ProxyServer.swift
28:        params.acceptLocalOnly = true

アプリケーションキャプチャ

DMG インストーラー + 起動確認

DMG + App

メインキー一覧

Main

モード選択ダイアログ

Mode Select

モード比較の詳細(スクロール)

Mode Comparison

Add Key フォーム(未選択状態)

Add Key

Add Key サービス選択後

Add Key Selected

英語モード メイン画面

English Mode


試験詳細

BT: ビルド・配布テスト (5件)

Noテスト項目期待結果結果備考
BT-001Release ビルドエラーなしで成功OKswift build -c release (6.19s)
BT-002バイナリ形式Mach-O 64-bit arm64OK3.5 MB
BT-003DMG 作成create-dmg でグラフィカル DMG 生成OK1.9 MB, AppIcon.icns 同梱
BT-004コード署名ad-hoc 署名が有効OKcodesign -v VALID
BT-005DMG インストール・起動drag-to-Applications で正常起動OKxattr -cr 後に起動確認

SR: Secret Reference テスト (5件)

Noテスト項目期待結果結果備考
SR-001akc スクリプト存在scripts/akc が実行可能OK4.1 KB, 162 行
SR-002akc helpUsage が表示されるOKakc run [--dry-run] -- <command>
SR-003akc versionバージョン表示OKakc 1.0.0
SR-004akc run (コマンドなし)エラーメッセージOKmissing '--' separator
SR-005akc run --dry-run未登録キーでエラー表示OKkeychain://TEST_VAR not found

I18N: 国際化テスト (6件)

Noテスト項目期待結果結果備考
I18N-001L10n.t() キーに英語翻訳あり全 126 キーに en 翻訳OKja/en 各 161 キー定義
I18N-002View にハードコード日本語なしL10n 未使用の日本語がないOKシェルコメントは許容
I18N-003appLanguage が stored property@Observable トラッキング対象OKdidSet で UserDefaults 永続化
I18N-004MainView に .id()言語変更でビュー再構築OK.id(appState.appLanguage)
I18N-005English 切替永続化UserDefaults に "en" 保存OKdefaults read で確認
I18N-006Japanese 切替永続化UserDefaults に "ja" 保存OKdefaults read で確認

ST: セキュリティテスト (4件)

Noテスト項目期待結果結果備考
ST-001API キーのハードコードなし実キー値がソースにないOKgrep 全ソース 0 件
ST-002SecureField マスキングトークン入力がマスクされるOKKeyEditorView.swift:86
ST-003クリップボード自動クリアclearContents() 呼び出しOK7 箇所で確認
ST-004localhost 限定バインドプロキシが外部接続を拒否OKacceptLocalOnly = true

UI: UI/UX テスト (6件)

Noテスト項目期待結果結果備考
UI-001ModeSelectView スクロールDisclosureGroup 展開後スクロール可OKScrollView + ボタン固定
UI-002ModeCard タップ範囲カード全体がクリック対象OKcontentShape(Rectangle())
UI-003比較リンクタップ範囲行全体がクリック対象OKカスタム Button + contentShape
UI-004Add Key 未選択で開始Service/Category が未選択OK"Select a service/category..."
UI-005サービス選択で自動入力envVarName/Category が自動設定OKonServiceChange()
UI-006未選択時 Save 無効ボタンが disabledOKcanSave バリデーション

未実施項目と理由

項目理由対応方針
computer-use E2E テスト通知センターがクリックをブロック手動確認で代替
Secret Reference 実キー解決Keychain にテスト用キーが必要手動で akc run 確認
Proxy モード統合テストプロキシサーバー起動が必要v1.5.1 テスト結果を流用
Xcode ユニットテストXcode ライセンス未承諾CI で実行

成果物

ファイル説明
docs/test/v1.6.0.md本試験仕様書
build/AIKeyChain-v1.6.0.dmgRelease ビルド DMG (1.9 MB)
docs/test/captures/v1.6.0/E2E テストスクリーンショット

AI開発チームのための鍵管理ツール