Skip to content

Make role catalogue expansion resilient - #26

Merged
first-assist merged 1 commit into
mainfrom
agent/router-role-catalogue-resilience
Aug 22, 2026
Merged

first-assist merged 1 commit into
mainfrom
agent/router-role-catalogue-resilience

Conversation

@first-assist

@first-assist first-assist commented Aug 22, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • align the router, ORM auth feature, and AI re-exports on generic agql-auth 0.18 typed authorization-role claims
  • make role-scope catalogue loading lazy, stale-while-revalidate, lock-light, and explicit on unknown grants
  • support environment-derived URLs, secret request headers, independent signature lifetime/leeway, and configurable retry backoff
  • bump affected public crates and update changelogs, migration notes, examples, generated inventory, and reference docs

This is consumer-neutral infrastructure: any issuer can supply typed compact authorization grants and any resource server can resolve a signed catalogue without making that issuer a startup dependency. No consumer-specific identifier or policy appears in the diff.

Verification

  • cargo test -p graphql-orm-router --features auth-agql (70 passed + binary smoke)
  • cargo test -p graphql-orm-router --no-default-features (60 passed + binary smoke)
  • cargo test -p graphql-orm --test backend_coexistence_fixture --no-default-features --features sqlite,auth-agql
  • cargo clippy -p graphql-orm-router --features auth-agql -- -D warnings
  • cargo clippy -p graphql-orm --no-default-features --features sqlite,auth-agql -- -D warnings
  • PostgreSQL and MSSQL graphql-orm auth-agql compile lanes
  • cargo clippy -p graphql-orm-ai --lib --no-default-features --features sqlite -- -D warnings
  • warnings-denied Rustdoc for router, ORM, and AI
  • cargo fmt --all -- --check
  • documentation and generated-inventory checks
  • dependency trees resolve one agql-auth 0.18.0 revision
  • neutrality grep of the diff for consumer identifiers/policy strings: empty

The full core test lane reaches one pre-existing trybuild compiler-wording mismatch in retention_wrong_entity.stderr; the changed auth tests and the complete backend-coexistence fixture pass, and this branch does not touch retention diagnostics.

Documentation impact

Updated root and crate changelogs, migration guides, configuration/operations docs, README version surfaces, backend/auth references, and the generated package inventory.

  • Documentation updated

@Dastari
Dastari force-pushed the agent/router-role-catalogue-resilience branch from d8c1830 to 6c5620d Compare August 22, 2026 13:41
@first-assist
first-assist merged commit 8c19dbf into main Aug 22, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant