From 7a402f6d6d3059a7cedae4c4eb50b5dc9028c03b Mon Sep 17 00:00:00 2001 From: Tim Schindler Date: Thu, 19 Feb 2026 18:22:11 +0100 Subject: [PATCH 1/2] fix: correct SDK profile filename from grant.json to grant The SDK's FileSystemProfilesLoader saves profiles without a .json extension. The displayed path and documentation incorrectly showed grant.json. --- CLAUDE.md | 2 +- cmd/configure.go | 4 ++-- cmd/configure_test.go | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 1fb1d4d..a30323d 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -84,7 +84,7 @@ Custom `SCAAccessService` follows SDK conventions: ## Config - App config: `~/.grant/config.yaml` -- SDK profile: `~/.idsec_profiles/grant.json` +- SDK profile: `~/.idsec_profiles/grant` ## Authentication - Use the `/grant-login` skill when you need to authenticate to the grant CLI (e.g., before manual testing) diff --git a/cmd/configure.go b/cmd/configure.go index 0dd28bd..27aba29 100644 --- a/cmd/configure.go +++ b/cmd/configure.go @@ -23,7 +23,7 @@ func NewConfigureCommand() *cobra.Command { Long: `Configure grant by providing your CyberArk username and optional Identity URL. This command creates two configuration files: -- SDK profile at ~/.idsec_profiles/grant.json +- SDK profile at ~/.idsec_profiles/grant - App config at ~/.grant/config.yaml The Identity URL is optional — the SDK can auto-discover it from your username. @@ -114,7 +114,7 @@ func runConfigure(cmd *cobra.Command, saver profileSaver, tenantURL, username st home, _ := os.UserHomeDir() profileDir = filepath.Join(home, ".idsec_profiles") } - profilePath := filepath.Join(profileDir, "grant.json") + profilePath := filepath.Join(profileDir, "grant") // Create app config cfg := &config.Config{ diff --git a/cmd/configure_test.go b/cmd/configure_test.go index 1c9f94f..937a31e 100644 --- a/cmd/configure_test.go +++ b/cmd/configure_test.go @@ -69,7 +69,7 @@ func TestConfigureCommand(t *testing.T) { }, wantContain: []string{ "Profile saved to", - "grant.json", + "grant", "Config saved to", "config.yaml", }, @@ -110,7 +110,7 @@ func TestConfigureCommand(t *testing.T) { }, wantContain: []string{ "Profile saved to", - "grant.json", + "grant", "Config saved to", "config.yaml", }, From a531a2f69dc1c051a3893e72e1cb73aac2b0d50e Mon Sep 17 00:00:00 2001 From: Tim Schindler Date: Thu, 19 Feb 2026 18:25:31 +0100 Subject: [PATCH 2/2] docs: prepare CHANGELOG for v0.3.0 release --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 53c365e..615b0ea 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ All notable changes to this project will be documented in this file. ## [Unreleased] +## [0.3.0] - 2026-02-19 + ### Added - Local file-based eligibility cache (`~/.grant/cache/`) with 4-hour default TTL — skips API roundtrip on subsequent runs