Skip to content

[Task]: Add Redis governance document loading #35

Description

@rian-be

Summary

Add dedicated document loading layer for Redis backed governance requests so request documents can be resolved from keys, loaded in bulk, and materialized consistently for higher level query reads.

Goal

Make Redis backed governance reads structurally clear and reusable by separating document key creation, payload loading, and request materialization from query orchestration.

Scope

What should be implemented?

  • Add the ModularityKit.Mutator.Governance.Redis.Storage.Documents area for Redis document reads
  • Define document key creation for request identifiers
  • Support bulk payload loading for request documents
  • Support request document materialization from Redis payloads
  • Support optional ordering for materialized request reads where needed
  • Add a document reader that coordinates keys, payload reads, and materialization
  • Reuse the shared Redis serialization path for request payloads
  • Keep document loading logic internal to the Redis provider boundary

Acceptance Criteria

  • Redis request documents can be loaded through dedicated document read layer
  • Document key creation is separated from payload loading
  • Payload loading is separated from request materialization
  • Higher level Redis query services can reuse the same document read path
  • Document loading behavior remains aligned with the Redis serialization strategy
  • Document loading logic does not leak into governance abstractions

Notes

Redis backed governance queries should not mix candidate selection, payload access, and materialization in one place. dedicated document loading layer keeps the provider easier to evolve and test while preserving one consistent read path for request documents.

This should align with the Redis provider storage strategy and serialization ADRs.

Related ADRs:

  • ADR-029: Governance Redis Provider Package
  • ADR-030: Governance Redis Request Storage and Query Strategy
  • ADR-031: Governance Redis Serialization and Document Compatibility

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