Repository navigation
Releases: mostafa-helmy-sp/isc-advanced-policy-framework
Releases · mostafa-helmy-sp/isc-advanced-policy-framework
Release list
v1.0.2
1.0.2 - 2026-09-26
Fixed
- HTTP 429 retries now actually happen. The SDK replaces every axios error with an
ApiErrorthat has noresponseor headers, so the 1.0.1 retry check never matched (73 unretried 429s in a customer run). Retries now run in axios interceptors on the SDK'sConfiguration.axiosInstance, before that conversion. - Retries are tuned for high concurrency:
- up to 15 retries for 429
- exponential backoff with widening jitter that honors
Retry-After - a shared cooldown that holds all requests after any 429
- Transient 5xx and network errors are retried up to 5 times, for read-only and idempotent requests only. Creates and updates are never retried on these errors.
- Policy
errorMessagesnow show the HTTP status, ISC error text, andtrackingId, labelled by query side or owner, e.g.Entitlement Query 1 [...]: Error finding entitlements using Search API: HTTP 429 Too Many Requests: Rate Limit Exceeded (gave up after 15 retries). - An unexpected exception while processing one policy is recorded on that policy instead of aborting the aggregation.
- Circular entitlement nesting no longer recurses forever when nested entitlement resolution is enabled.
Changed
- Lines logged while processing a policy include a
policyNamefield. - Every policy logs a finish line, at WARN with its errors when it has any.
- Account list and account read call
keepAliveevery 60 seconds, so long retry waits don't hit the 3-minute SaaS command timeout. - API requests time out after 120 seconds.
- Added
axiosas a direct dependency. - Enabled
isolatedModulesintsconfig.json, which ts-jest requires withmodule: Node16.
v1.0.1
1.0.1
Fixed
- Replaced ineffective SDK
axios-retry/retriesConfigwith application-level HTTP 429 retry (honorsRetry-After, exponential backoff, INFO logging). - Surface real API failure messages on policy
errorMessagesinstead of collapsing failed searches into misleading "returns no entitlements" errors. Applies across Search, owner resolution, SOD policy lookup/create/update, campaign lookup/create/update, entitlement hierarchy, and governance-group member lookup.
Changed
- Default
maxConcurrentPolicieslowered from 10 to 3 to reduce rate-limit pressure on large batch aggregations. - Removed unused
axios-retrydependency. - Pinned
sailpoint-api-clientto 2.1.25 so ncc can bundleform-data(2.1.27+ breaks connector load withFormDataCtor is not a constructor).
Artifact
Download advanced-policy-framework-1.0.1.zip below and upload it to your ISC org when creating/updating the SaaS connector.
v1.0.0
1.0.0
First stable release after the SDK 2.0 modernization and modular refactor (development releases were tracked as 0.13.0–0.14.0).
Highlights
- Migrated to
sailpoint-api-client2.x with per-service v1 APIs - Refactored monolithic client into focused service modules with typed configuration
- CSV support for policy
Leveland pipe-delimitedCoOwners - Unit tests, GitHub Actions CI, and expanded documentation
Performance
- Parallelize independent API calls within each policy
- Session-scoped owner and governance-group member lookup cache
- Bounded parallel policy processing via
maxConcurrentPolicies(default 10) - Batched Search API queries for large entitlement and access profile ID lists
Artifact
Download advanced-policy-framework-1.0.0.zip below and upload it to your ISC org when creating the SaaS connector.