Skip to content

Epic: Tag Introspection & Manifests #50

@veggerby

Description

@veggerby

Goal

Make QuantityKindTag metadata queryable and exportable for tooling and documentation.

Purpose

Enable external tools, code generators, and documentation systems to discover and validate quantity kind metadata. Provide programmatic access to tag hierarchies and enable deterministic exports for versioning and validation.

Scope

  • Prefix/tag query APIs (e.g., GetByPrefix("Domain."))
  • Deterministic JSON manifest output for tooling and docs
  • Test coverage for tag rules and manifest stability

Deliverables

  1. Public query APIs for tags by prefix, name, or pattern
  2. JSON manifest generator with deterministic output
  3. Tag validation rules enforcement (reserved roots, naming conventions)
  4. Comprehensive tests for query APIs and manifest stability
  5. Documentation with usage examples for tooling integration

Acceptance Criteria

  • Public API enables querying tags by prefix/name with clear semantics
  • Manifest is deterministic across runs and properly versioned
  • Tests ensure reserved root enforcement (Core, Domain, Application, Custom)
  • Manifest output is stable and suitable for version control
  • Query performance is acceptable for common use cases
  • Documentation includes integration examples for common tooling scenarios

Technical Notes

  • See docs/quantity-kind-governance.md for tag hierarchy rules
  • Manifest format should be machine-readable and human-reviewable
  • Query APIs must be deterministic and thread-safe
  • Consider caching for performance if needed (with appropriate invalidation)

Risk & Mitigation

Risk: Tag queries may have performance issues with large tag sets
Mitigation: Implement efficient lookup structures; add performance tests; consider caching

Risk: Manifest format changes could break external tooling
Mitigation: Version the manifest format; provide migration guidance; maintain backward compatibility where possible

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions