Files
git.stella-ops.org/docs/dev/aoc-normalization-removal-notes.md
2025-10-31 18:50:15 +02:00

1.6 KiB

AOC Normalization Removal Notes

Last updated: 2025-10-29

Goal

Document follow-up actions for CONCELIER-CORE-AOC-19-004 as we unwind the final pieces of normalization from the ingestion/runtime path.

Current Findings

  • AdvisoryRawService and MongoAdvisoryRawRepository already preserve upstream ordering and duplicate aliases (trim-only). No additional code changes required there.
  • Observation layers (AdvisoryObservationFactory, AdvisoryObservationQueryService) still canonicalise aliases, PURLs, CPEs, and references. These need to be relaxed so Policy/overlays receive raw linksets and can own dedupe logic.
  • Linkset mapper continues to emit deterministic hints. We will keep the mapper but ensure observation output can surface both raw and canonical views for downstream services.

Next Steps

  1. Introduce a raw linkset projection alongside the existing canonical mapper so Policy Engine can choose which flavour to consume. 2025-10-31: AdvisoryObservation now surfaces RawLinkset; Mongo documents store both canonical & raw shapes; tests/goldens updated.
  2. Update observation factory/query tests to assert duplicate handling and ordering with the relaxed projection. 2025-10-31.
  3. Refresh docs (docs/ingestion/aggregation-only-contract.md) once behaviour lands to explain the “raw vs canonical linkset” split.
  4. Coordinate with Policy Guild to validate consumers against the new raw projection before flipping defaults. ↺ Ongoing — see action items in docs/dev/raw-linkset-backfill-plan.md (2025-10-31 handshake with POLICY-ENGINE-20-003 owners).