Skip to content

[Task]: Add Redis governance identifier set loading #37

Description

@rian-be

Summary

Add dedicated identifier loading layer for Redis backed governance queries so request identifiers can be resolved from sets and normalized consistently before document loading.

Goal

Make Redis backed governance reads cleaner and more reusable by separating low level set operations and identifier normalization from higher level candidate selection and query orchestration.

Scope

What should be implemented?

  • Add the ModularityKit.Mutator.Governance.Redis.Storage.Identifiers area for Redis identifier set loading
  • Define identifier set operations for member reads, unions, and intersections
  • Add low level set loader for request id reads
  • Add normalization for raw Redis values into distinct request identifiers
  • Add higher level identifier reader for candidate selection consumers
  • Reuse identifier loading across Redis candidate execution paths
  • Keep identifier loading behavior internal to provider boundary
  • Keep identifier loading aligned with keyspace and candidate selection design

Acceptance Criteria

  • Redis request identifiers can be loaded through dedicated identifier read layer
  • Low level set operations are separated from higher level identifier reads
  • Raw Redis values are normalized into distinct non empty request identifiers
  • Candidate execution can reuse the same identifier loading path for single set, union, and intersection reads
  • Identifier loading logic remains internal to boundary
  • Identifier handling stays aligned with Redis candidate selection and query read design

Notes

Redis backed governance queries rely on request id sets as an intermediate read model. Treating identifier loading as concern keeps candidate selection simpler and avoids spreading Redis set logic across the provider.

This should align with the Redis provider storage strategy and candidate selection design.

Related ADRs:

  • ADR-029: Governance Redis Provider Package
  • ADR-030: Governance Redis Request Storage and Query Strategy

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No fields configured for Task.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions