All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
1.39.0 - 2026-09-03
- add terraform source links to all entities; add catalog creation and scorecard links to README (5e6a2a9 by Jeff Schnitter).
- hyperlink .tf filenames in Data Model diagram to GitHub blob URLs (CX-43) (7f5fb9b by Jeff Schnitter).
- add setup.py for terraform solution (CX-43) (1e6398a by Jeff Schnitter).
- add terraform-delta files for terraform solution (CX-43) (2f88b46 by Jeff Schnitter).
- add scorecards.tf for terraform solution (CX-43) (6427bca by Jeff Schnitter).
- add supply-chain.tf for terraform solution (CX-43) (e53be4a by Jeff Schnitter).
- add ecommerce.tf for terraform solution (CX-43) (35e82d5 by Jeff Schnitter).
- add teams.tf for terraform solution (CX-43) (3cd5911 by Jeff Schnitter).
- add terraform provider config files (CX-43) (cd0fe59 by Jeff Schnitter).
- add terraform solution scaffold and README (CX-43) (d7775d6 by Jeff Schnitter).
- revert ownership CQL to clean expression (no null-safe needed) (002086c by Jeff Schnitter).
- correct team type, link type, role format, and scorecard CQL (CX-43) (8638e6f by Jeff Schnitter).
- remove scorecard hyperlink from data model diagram (3cb3136 by Jeff Schnitter).
- remove spurious 404 from scorecard id lookup in terraform solution (bde1fa1 by Jeff Schnitter).
- prefix all terraform demo entity tags with terraform-demo- (b1a2233 by Jeff Schnitter).
- use numeric scorecard ID for UI hyperlinks; update URL skill (5f351dd by Jeff Schnitter).
- scorecard tags link to /admin/scorecards/; domain source links; fix scorecard vs entity tag extraction (9c8ceb2 by Jeff Schnitter).
- revert entity URLs back to /admin/resources?tag=; fix deploys URL in github-actions-deploy template; update cortex-app-urls skill (dbf1986 by Jeff Schnitter).
- entity page URLs from /admin/resources?tag= to /admin/service/; add cortex-app-urls skill to repo (9319ce6 by Jeff Schnitter).
- hyperlink entity tags in Data Model diagram for terraform solution (CX-43) (10a3e73 by Jeff Schnitter).
- hide Import report menu option when import report is empty (CX-43) (6486e40 by Jeff Schnitter).
- add Data Model ASCII diagram to README for post-install menu (CX-43) (b316457 by Jeff Schnitter).
- add After Installing section to README for post-install menu (CX-43) (d31270c by Jeff Schnitter).
- scope scorecard to terraform-demo group to avoid evaluating all services (CX-43) (d9d073b by Jeff Schnitter).
- rename scorecard to avoid collision with customer scorecards (CX-43) (40080e5 by Jeff Schnitter).
- define ladder levels in ascending rank order (CX-43) (221f7ad by Jeff Schnitter).
- use named link types in all scorecard link rules (CX-43) (cb2427f by Jeff Schnitter).
- try links.length > 0 for Silver has-any-link rule (CX-43) (2d9fb68 by Jeff Schnitter).
- links.size() > 0 -> links().length > 0 for Silver rule (CX-43) (afab489 by Jeff Schnitter).
- use links("runbook").length > 0 for Gold runbook rule (CX-43) (f91c42e by Jeff Schnitter).
- replace links.exists() with links.size() >= 2 for Gold rule (CX-43) (571df30 by Jeff Schnitter).
- remove type="team" from team entities, fix custom data expression (CX-43) (dee1eb8 by Jeff Schnitter).
- always copy template files so re-runs pick up updates (CX-43) (7acff09 by Jeff Schnitter).
- use ownership.teams().length expressions in scorecard (CX-43) (868f2f4 by Jeff Schnitter).
- correct team member schema and scorecard expressions (CX-43) (5b101b5 by Jeff Schnitter).
- correct team entity type and README cleanup (CX-43) (c2b6efc by Jeff Schnitter).
1.38.0 - 2026-09-01
- basePath -> basepath in monorepo solution yaml files (CX-41) (8d9feb9 by Jeff Schnitter).
1.37.0 - 2026-09-01
- add monorepo solution (CX-41) (44e71ef by Jeff Schnitter).
1.36.0 - 2026-08-31
- add intermediate UPDATE callbacks to Jenkins pipeline (a46bae2 by Jeff Schnitter).
- add jenkins_auth Cortex secret to workflow and setup (7f0b37e by Jeff Schnitter).
- add Codespace lifecycle management with delete-on-teardown (b1d7e7c by Jeff Schnitter).
- add Cortex integration steps and orchestration to JenkinsDeploySetup (2235df3 by Jeff Schnitter).
- add Jenkins job and credential creation helpers to JenkinsDeploySetup (bedc73f by Jeff Schnitter).
- add JenkinsDeploySetup class with prompts and Codespace provisioning (1e2b594 by Jeff Schnitter).
- add Jenkins devcontainer for GitHub Codespaces (00c2d52 by Jeff Schnitter).
- add Cortex workflow template for triggering Jenkins deploys (cdf4b4a by Jeff Schnitter).
- add Jenkinsfile template with Cortex deploy recording and async callback (26e7746 by Jeff Schnitter).
- add jenkins-deploy catalog entity and scorecard (25452d7 by Jeff Schnitter).
- skip test_gitops_logs_page_size when API returns 504 (df0a96f by Jeff Schnitter).
- skip gitops-logs get test when API returns 504 instead of failing (a187183 by Jeff Schnitter).
- limit gitops-logs get test to single page to avoid fetch-all timeout (0c7cdd0 by Jeff Schnitter).
- correct exemption status assertion after revoke (REVOKED not REJECTED) (5516c60 by Jeff Schnitter).
- broaden <script> regex to match Jenkins config.xml regardless of CDATA format (9752982 by Jeff Schnitter).
- use triple braces for jenkins_auth secret to avoid HTML escaping (887aa0e by Jeff Schnitter).
- suppress 'Done! Watch your deploy' message on workflow failure (7304a17 by Jeff Schnitter).
- use default password instead of API token for jenkins_auth secret (d6f224e by Jeff Schnitter).
- print action-level details when workflow run fails (495ee31 by Jeff Schnitter).
- handle 400 as conflict when creating jenkins_auth Cortex secret (b066cd5 by Jeff Schnitter).
- restore auth header in jenkins trigger workflow (75be774 by Jeff Schnitter).
- remove auth header from jenkins trigger workflow for Unsecured demo (77c5546 by Jeff Schnitter).
- remove & from Cortex secrets template syntax (2b92036 by Jeff Schnitter).
- move buildUrl to top-level url field in deploy payload (5576bf0 by Jeff Schnitter).
- remove credentials from entity custom metadata, use Cortex secrets (50067ae by Jeff Schnitter).
- patch existing job's script CDATA instead of replacing full config.xml (c0c5d69 by Jeff Schnitter).
- remove plugin version attrs from job XML and soften update failure (e74b1bf by Jeff Schnitter).
- always update Jenkins job config and reduce workflow timeout (169315b by Jeff Schnitter).
- add Authorization header to Jenkins callback curl (2ea25e6 by Jeff Schnitter).
- resolve Jenkins callback and BUILD_URL issues in deploy pipeline (0d7c60a by Jeff Schnitter).
- make Jenkins unsecured/no-CSRF for demo; remove auth from workflow trigger (2f49764 by Jeff Schnitter).
- replace Script Console with REST API for Jenkins token generation (5600b67 by Jeff Schnitter).
- set Jenkins admin password via Groovy init script; improve setup robustness (f2dd7cf by Jeff Schnitter).
- substitute real Jenkins URL into workflow at import time (4ad5fc9 by Jeff Schnitter).
- use state file as ownership record; ask user before reusing Codespace (4db07b3 by Jeff Schnitter).
- replace Codespace identity heuristic with Jenkins connectivity probe (6aff0dc by Jeff Schnitter).
- set port 8080 public via devcontainer.json instead of ports REST API (7e4493c by Jeff Schnitter).
- add context text before Codespace/existing Jenkins prompt (1e4215d by Jeff Schnitter).
- save GitHub PAT between runs (hidden=True instead of secret=True) (5ffe405 by Jeff Schnitter).
- verify Codespace identity before reusing on re-run (36f787b by Jeff Schnitter).
- reuse existing Codespace on re-run instead of provisioning a second one (275a52b by Jeff Schnitter).
- register Codespace port via API before setting visibility; warn about public Jenkins requirement (829c38f by Jeff Schnitter).
1.35.0 - 2026-08-19
- add scaffolders commands for the public Scaffolder API (#237) (443a16b by Aaron Wirick).
1.34.0 - 2026-08-14
- add Workday integration solution (a5c84ac by Jeff Schnitter).
1.33.0 - 2026-08-14
1.32.0 - 2026-08-13
1.31.0 - 2026-08-13
- extract local GitHub Actions for callback and deploy registration (862852b by Jeff Schnitter).
- persist solution answers to ~/.cortex/solutions/ with --no-prompt support (528e295 by Jeff Schnitter).
- add entity-aware deploy workflow and incremental GH callbacks (88e65a3 by Jeff Schnitter).
- add UI/API branch to Cortex workflow for manual vs API invocation (9cdb333 by Jeff Schnitter).
- offer to create PAT GitHub integration when none is configured (43793af by Jeff Schnitter).
- embed cortex-deploy.yml in Cortex workflow run response template (5de4a6e by Jeff Schnitter).
- link GitHub repo to Cortex entity during post-install setup (222f99a by Jeff Schnitter).
- add IN_PROGRESS intermediate callbacks before terminal callback (7887ffb by Jeff Schnitter).
- use Cortex GitHub integration creds for async workflow trigger for CX-6 (723cb85 by Jeff Schnitter).
- add Cortex async workflow for GitHub Actions deploy trigger for CX-6 (22ec396 by Jeff Schnitter).
- add solutions post-install subcommand and install hook (35fbce9 by Jeff Schnitter).
- add SET_VARIABLES step to write UI inputs back to workflow variables (d1398c5 by Jeff Schnitter).
- restructure workflow so trigger-deploy is outside the branch (c7bc805 by Jeff Schnitter).
- set joiningAction to null in trigger-github-deploy workflow (f79b9f1 by Jeff Schnitter).
- substitute github-owner and repo-name defaults into Cortex workflow at import (41b0bfe by Jeff Schnitter).
- simplify runResponseTemplate to use only variables (929ba4c by Jeff Schnitter).
- use application/openapi;charset=UTF-8 content type for entity PATCH (55127c6 by Jeff Schnitter).
- use PATCH not PUT for entity git link (405 Method Not Allowed) (8ef5ee0 by Jeff Schnitter).
- add required timestamp field to deploys API call (cdea066 by Jeff Schnitter).
- remove 'first' from deploy completion message (310a003 by Jeff Schnitter).
- sort GitHub integrations alphabetically by alias (9b1717e by Jeff Schnitter).
- remove IN_PROGRESS callbacks (rejected by Cortex), reduce timeout to 120s (d52a414 by Jeff Schnitter).
- use jq for callback JSON, needs.build.result for status, correct template path (14e319e by Jeff Schnitter).
- change workflow trigger prompt to not assume it is the first run (413ac51 by Jeff Schnitter).
- remove deploy-count custom metric, drive scorecard from deploys() CQL (92d853d by Jeff Schnitter).
- reflect actual job status in Cortex callback and surface run data in template (f641b52 by Jeff Schnitter).
- correct post_steps result extraction and step numbering (9bebb21 by Jeff Schnitter).
- correct Cortex workflow import and async callback for GitHub Actions deploy (3c0ac85 by Jeff Schnitter).
- add Authorization header to Cortex callback step for CX-6 (4030392 by Jeff Schnitter).
- remove empty headers from workflow action for CX-6 (5723ecd by Jeff Schnitter).
- correct HTTP_REQUEST_ASYNC integration syntax for CX-6 (15250fb by Jeff Schnitter).
- pass workflow variables directly in initialContext for CX-6 (548b0d0 by Jeff Schnitter).
- use hyphens in workflow variable slugs for CX-6 (dc58067 by Jeff Schnitter).
- flush captured import output to terminal on failure for CX-6 (4a7f9e9 by Jeff Schnitter).
- correct Cortex app URL pattern in post-install output for CX-6 (e0a4bb9 by Jeff Schnitter).
- improve post-install setup UX for CX-6 (c9681cf by Jeff Schnitter).
- use customMetrics expressions in deploy-health scorecard (d61c35d by Jeff Schnitter).
- address reviewer issues in solutions post-install (a2d41d2 by Jeff Schnitter).
- enforce 404-only repo creation, drop unused import, use public key bytes() (ee5332e by Jeff Schnitter).
1.30.0 - 2026-08-07
- suppress Trivy false positives for msgpack and setuptools CVEs (3936a0f by Jeff Schnitter).
1.29.0 - 2026-08-07
- color-coded budget compliance in team-ai-spend plugin (de53dd5 by Jeff Schnitter).
- add AI spend scorecard and team rollups to ai-spend solution (5831624 by Jeff Schnitter).
- add custom-metrics directory support to backup import (ee6a3be by Jeff Schnitter).
- budget line, split bar colors, and per-segment tooltips (277a858 by Jeff Schnitter).
- read metric values from d.data, not d.values (673ea71 by Jeff Schnitter).
- read entity tag from ctx.entity.tag, not ctx.tag (cb1a775 by Jeff Schnitter).
- detect leaf employees by adjacency map presence, not entity type (69d8ed8 by Jeff Schnitter).
- walk team hierarchy recursively in team-ai-spend plugin (e32ce0f by Jeff Schnitter).
- scope ai-spend-scorecard to ai-spend-demo group teams only (b0cfa5f by Jeff Schnitter).
- use kind: GENERIC with types.include for scorecard team filter (0d3b9fa by Jeff Schnitter).
- correct entity relationships endpoint and response parsing in plugin (ed6503c by Jeff Schnitter).
- use proxyFetch for authenticated API calls in plugin (47f3b91 by Jeff Schnitter).
- use MessageChannel protocol for Cortex plugin context (getContext) (a326e5e by Jeff Schnitter).
- make --tag-or-id optional in plugins replace, defaulting to tag in file (6b6b998 by Jeff Schnitter).
- create plugin when tag does not exist in force mode (f679efe by Jeff Schnitter).
- correct CQL group filter syntax to hasGroup() (5ba9e88 by Jeff Schnitter).
- include plugins in solutions uninstall (5474cef by Jeff Schnitter).
- scope team-ai-spend plugin to x-cortex-groups: ai-spend-demo (68e18ba by Jeff Schnitter).
- add x-cortex-team members to team entities (67711b4 by Jeff Schnitter).
- reshape sample ai-spend metrics to show steep adoption growth curve (8379d19 by Jeff Schnitter).
- add manual step to create Data Explorer Tabular View in After Installing (ce7b0c7 by Jeff Schnitter).
- add manual step to create team-member catalog in After Installing (dc5513c by Jeff Schnitter).
- enable createCatalog for team-member relationship type (3c8cb88 by Jeff Schnitter).
- restructure ai-spend README to match solutions install conventions (40b2448 by Jeff Schnitter).
- correct install command in ai-spend README (b67e5cb by Jeff Schnitter).
- remove createCatalog from team-member (API support pending) (5fc27a9 by Jeff Schnitter).
1.28.0 - 2026-07-30
- upgrade setuptools and msgpack in Docker image to fix Trivy HIGH vulnerabilities (2314894 by Jeff Schnitter).
1.27.0 - 2026-07-30
- add ai-agents solution with governance scorecard (89016e1 by Jeff Schnitter).
- show login instructions and prompt before opening browser (376188d by Jeff Schnitter).
1.26.0 - 2026-07-27
- add ai-skills solution and sync command (c6f58c6 by Bradley Sauln).
1.25.0 - 2026-07-27
- remove environment-dependent skip from solutions no-auth tests (9799311 by Jeff Schnitter).
- address final review findings in entity-types update and post_coverage.py (b3cecb4 by Jeff Schnitter).
- entity-types update calls nonexistent client method (d230323 by Jeff Schnitter).
1.24.0 - 2026-07-23
- add aws and k8s subcommands to catalog, handle connection errors (6a75a53 by Jeff Schnitter).
- correct three more test bugs exposed by ConnectionError handler (8f79f96 by Jeff Schnitter).
- correct validate URL construction for 12 integrations (b2bb8dc by Jeff Schnitter).
1.23.0 - 2026-07-17
- remove background box from inline code in README display (ad11bd7 by Jeff Schnitter).
- rename 'Full README' menu option to 'README' (3bca9a4 by Jeff Schnitter).
- rename 'Project diagram' menu option to 'Data Model' (e4c81bb by Jeff Schnitter).
- add diagram legend, future CQL note, fix full-readme hyperlinks, trim README sections (9fe214f by Jeff Schnitter).
- Ctrl+O toggle for live import output (ec246b4 by Jeff Schnitter).
- add import report option to post-install menu (c4d6e3f by Jeff Schnitter).
- add post-install interactive menu and clean up install output (776972f by Jeff Schnitter).
- add solutions uninstall command (f646a4b by Jeff Schnitter).
- expand to 4 envs / 10 services, improve create-release workflow (61e3ef1 by Jeff Schnitter).
- update workflows with response templates and improved create-release (f3bfba5 by Jeff Schnitter).
- add versions relationship type connecting service to service-version (dc94faa by Jeff Schnitter).
- add no-vulnerabilities pass/fail scorecard for environments and releases (6c075c3 by Jeff Schnitter).
- remove --force from solutions install (57138c5 by Jeff Schnitter).
- add --solutions-dir flag, --plain flag, move github-starter to tests, fix ASCII diagram (3fe169d by Jeff Schnitter).
- add building-solutions Claude skill (04b1ca4 by Jeff Schnitter).
- populate environments solution with entity types, sample data, scorecard, and workflows (12e7823 by Jeff Schnitter).
- add solutions package scaffold with environments bundle (99382b1 by Jeff Schnitter).
- add solutions package scaffold with github-starter bundle (a974f1e by Jeff Schnitter).
- surface API errors in import summary, fix environments solution install (2aa0fa9 by Jeff Schnitter).
- correct entity hyperlink URL to /admin/resources?tag=, add hyperlink hint to data model (2884c6a by Jeff Schnitter).
- diagram hyperlinks and trim to installed sample data (e635c6c by Jeff Schnitter).
- _get_ui_url handles None url in auth params (2eae2a6 by Jeff Schnitter).
- Ctrl+o toggle and add OSC 8 hyperlinks in diagram (1ff0095 by Jeff Schnitter).
- Ctrl+o toggle - use os.read() to bypass stdin buffering (2d60571 by Jeff Schnitter).
- response template links use ?tag= query param format (1c1fc92 by Jeff Schnitter).
- use context.entity.id for response template links in all workflows (88d4049 by Jeff Schnitter).
- correct response template links to use /admin/resources/ URL format (b1ba08f by Jeff Schnitter).
- use unrestricted filters for versions relationship type (8d28762 by Jeff Schnitter).
- correct all entity/relationship/workflow formats for successful install (572c2b3 by Jeff Schnitter).
- correct relationship format and add workflow filter fields (0f2ff94 by Jeff Schnitter).
- correct directory names and file formats in building-solutions skill (a31a538 by Jeff Schnitter).
- correct solution directory structure for backup importer compatibility (d7c8716 by Jeff Schnitter).
- --plain renders markdown in black, no color stripping (29786cc by Jeff Schnitter).
- remove no-vulnerabilities scorecard (CQL relationship traversal not yet supported) (e959c72 by Jeff Schnitter).
- simplify to 1 release per environment, add notifications versions (0062e8f by Jeff Schnitter).
- remove environment suffix from release tags (a41da28 by Jeff Schnitter).
1.22.0 - 2026-07-14
- show README after install by default (--no-info to suppress); update github-starter README with install instructions (4b996c2 by Jeff Schnitter).
- add solutions install command (a6a21a7 by Jeff Schnitter).
- add solutions info command (de17360 by Jeff Schnitter).
- add solutions list command (02655a1 by Jeff Schnitter).
- add solutions command skeleton, cli wiring, and auth bypass (0018115 by Jeff Schnitter).
- add solutions package scaffold with github-starter bundle (8c010d7 by Jeff Schnitter).
- render code blocks as cyan text instead of Rich dark panels in solutions info (ef8c766 by Jeff Schnitter).
- strip frontmatter and left-justify headings in solutions info (485a061 by Jeff Schnitter).
- handle missing api_key in config section in _build_client (9b140a7 by Jeff Schnitter).
1.21.1 - 2026-07-14
- convert deploy timestamps to UTC before sending #patch (685811e by Hanna Vigil).
1.21.0 - 2026-07-07
- add login command, alphabetize help, remove workflows Beta label (a89c6c7 by Jeff Schnitter).
1.20.1 - 2026-07-06
- two-pass re-import for catalog entities with x-cortex-relationships #patch (1d75640 by Jeff Schnitter).
1.20.0 - 2026-06-11
- add integration tests for users roles list (ef639c6 by Jeff Schnitter).
- add users roles list command (52013c9 by Jeff Schnitter).
- add explicit pytest import to test_users.py (517b60a by Jeff Schnitter).
1.19.2 - 2026-06-10
- update Docker base image for CVE-2026-45447 and add docker/ to publish triggers #patch (1bcef87 by Jeff Schnitter).
1.19.1 - 2026-06-09
- remove invalid RST transition that breaks PyPI rendering #patch (00e2d96 by Jeff Schnitter).
1.19.0 - 2026-06-01
- resolve Python 3.14 crash from builtin list shadowing in custom_events (95e3f79 by Jeff Schnitter).
1.18.0 - 2026-06-01
- add Python 3.14 support and update CI to test on 3.14 by default (90c5654 by Jeff Schnitter).
- pin safety<3.8.0 to fix broken poetry audit in CI (f706a6c by Jeff Schnitter).
- update idna to 3.17 to address CVE bypass (Dependabot #22) (cb60c3c by Jeff Schnitter).
1.17.0 - 2026-05-20
- add CLI support for 32 new integrations (58c8960 by Jeff Schnitter).
1.16.0 - 2026-05-14
- shared minikube cluster, env prompting, cortex deploy recipes (ff7c67d by Jeff Schnitter).
- add Cortex Helm values and env vars for minikube deploy (23a8994 by Jeff Schnitter).
- consolidate internal tooling — axon, k8s, prometheus, ui, functional tests (1fd70fe by Jeff Schnitter).
- add ske-setup, ske-test, and ske-stop Justfile recipes (6f56dca by Jeff Schnitter).
- add SKE Helm values and ArgoCD Application manifest (3d83ca5 by Jeff Schnitter).
- add ConfigMap Promise for SKE Cortex integration test (7942967 by Jeff Schnitter).
- add SKE directory structure and env config (dc0cd54 by Jeff Schnitter).
- add init.py to trigger publish workflow for urllib3 update (854dcb0 by Jeff Schnitter).
- update urllib3 to 2.7.0 to resolve high-severity CVEs (904a144 by Jeff Schnitter).
- prompt for env vars before starting minikube (3da7a87 by Jeff Schnitter).
- review fixes — quote .env values, fix pod selector, remove dead PID files (4931dae by Jeff Schnitter).
- use external script for env prompting to fix just quoting bug (5816d65 by Jeff Schnitter).
- use correct Cortex API endpoint for Entity Type check in ske-test (94f774e by Jeff Schnitter).
- wait for cert-manager webhook CA, let SKE auto-create Destination (a4983fe by Jeff Schnitter).
- update SKE recipes with GitStateStore, Destination, and git-based resource requests (8dad6be by Jeff Schnitter).
- correct SKE setup — add cert-manager, use latest version, fix integrationAlias (4e1d2d7 by Jeff Schnitter).
- indent inline Python in ske-test recipe for just compatibility (8a57c3c by Jeff Schnitter).
1.15.0 - 2026-04-15
- pytest CVE fix, beta label updates, test improvements (9cbe2a0 by Jeff Schnitter).
- add env var checks for functional tests in Justfile (ea3036c by Jeff Schnitter).
- add list-branches functional test (3d9b9b6 by Jeff Schnitter).
- add functional test data import test (efddc65 by Jeff Schnitter).
- add session fixtures for functional tests (ea6b2c0 by Jeff Schnitter).
- add GitHub helper functions for functional tests (8874ac0 by Jeff Schnitter).
- add list-branches workflow YAML for functional tests (f0310ac by Jeff Schnitter).
- add cortex workflows get-run command (88d92cc by Jeff Schnitter).
- add cortex workflows run command (c1519dc by Jeff Schnitter).
- add functional test infrastructure for GitHub workflow action blocks (d0c0ecc by Jeff Schnitter).
- use configurable GITHUB_INTEGRATION_ALIAS and assert import success (24851a7 by Jeff Schnitter).
- remove publish.yml from paths trigger to prevent accidental releases (4b8a71e by Jeff Schnitter).
1.14.0 - 2026-04-02
- update GH Actions to Node 24 and fix dependabot security alerts (7d2f482 by Jeff Schnitter).
1.13.0 - 2026-04-02
- pass GH_TOKEN to checkout action for protected branch push (7ad96e4 by Jeff Schnitter).
1.12.0 - 2026-04-02
- use GH_TOKEN PAT for publish workflow git push to protected main branch (ad8b16c by Jeff Schnitter).
1.11.0 - 2026-04-02
- Add User-Agent header to CLI API requests (#195) (8e94411 by Jeff Schnitter).
- add entity relationships API support with optimized backup/restore (#160) (6fc38bb by Jeff Schnitter).
- add support for Cortex Secrets API (#161) (32c9f45 by Jeff Schnitter).
- correct New Relic integration commands to match API (#192) (a54f13a by Jeff Schnitter).
- only retry on 429 rate limit errors, not 5xx server errors (#179) (a037024 by Jeff Schnitter).
- initialize results and failed_count before directory check in import functions (#178) (b5f0c5a by Jeff Schnitter).
- change default logging level from INFO to WARNING (#177) (d7e6963 by Jeff Schnitter).
- only retry on 429 rate limit errors, not 5xx server errors (b292e67 by Jeff Schnitter).
- initialize results and failed_count before directory check in import functions (4165886 by Jeff Schnitter).
- change default logging level from INFO to WARNING (8e58ea0 by Jeff Schnitter).
- remove rate limiter initialization log message (#168) (5741d35 by Jeff Schnitter).
- add client-side rate limiting and make tests idempotent (#165) #minor (e54dca3 by Jeff Schnitter).
- optimize test scheduling with --dist loadfile for 25% faster test runs (0d99232 by Jeff Schnitter).
1.10.0 - 2026-01-23
1.9.0 - 2026-01-12
- Update urllib3 to address CVE-2025-66418 and CVE-2025-66471 #patch (#188) (4fba98b by Jeff Schnitter).
1.7.0 - 2025-11-18
1.6.0 - 2025-11-13
- remove rate limiter initialization log message (#169) #patch (015107a by Jeff Schnitter).
1.5.0 - 2025-11-13
1.4.0 - 2025-11-05
- remove unnecessary mock decorator from _get_rule helper function (3e09a81 by Jeff Schnitter).
- separate trigger-evaluation test to avoid scorecard evaluation race conditions (8c1ba4f by Jeff Schnitter).
- rename test_deploys.py to test_000_deploys.py for early scheduling (f36aae2 by Jeff Schnitter).
- optimize test scheduling with --dist loadfile for 25% faster test runs (#157) (8879fcf by Jeff Schnitter).
1.3.0 - 2025-11-04
- improve backup import/export performance with parallel processing (8a3b4d5 by Jeff Schnitter).
- add retry logic for scorecard create to handle active evaluations (cc40b55 by Jeff Schnitter).
- use json.dump instead of Rich print for file writing (c66c2fe by Jeff Schnitter).
- ensure export/import output is in alphabetical order (9055f78 by Jeff Schnitter).
- ensure CORTEX_BASE_URL is available in publish workflow (743579d by Jeff Schnitter).
- add HTTP connection pooling to CortexClient for massive speedup (6117eb3 by Jeff Schnitter).
- optimize backup export with increased parallelism and reduced API calls (3bdd45a by Jeff Schnitter).
1.2.0 - 2025-11-04
- handle 409 Already evaluating in trigger-evaluation test (6715ea8 by Jeff Schnitter).
- remove entity_relationships imports from wrong branch (3d467f6 by Jeff Schnitter).
- ensure base_url defaults correctly when not set (cadf62e by Jeff Schnitter).
1.1.0 - 2025-11-04
1.0.6 - 2025-10-31
- ensure base_url override is honored when parsing config file (c9678e9 by Jeff Schnitter).
1.0.5 - 2025-08-25
- correct end endpoint for adding multiple configurations (8e325bb by Jeff Schnitter).
1.0.4 - 2025-08-01
- add sub-command needs to include tenant and password parameters (6ea99a4 by Jeff Schnitter).
1.0.3 - 2025-06-19
- add get-personal sub-command (e117047 by Jeff Schnitter).
1.0.2 - 2025-06-16
1.0.1 - 2025-06-16
1.0.0 - 2025-06-13
0.27.0 - 2025-01-04
0.26.7 - 2024-11-18
- docker/Dockerfile to reduce vulnerabilities (4c0ab3e by snyk-bot).
0.26.6 - 2024-07-30
- docker/Dockerfile to reduce vulnerabilities (778ec0f by snyk-bot).