hyperledger-identus / hyperledger-identus/sdk-rust
Factory: migrate pre-policy metric receipts with auditable historical linkage
- Dominant language
- Rust
- Stars
- 0
- Forks
- 0
- Avg merge
- 39m
- Merged PRs (30d)
- 153
Description
## Problem
Five retained work-item metric records predate the authoritative PR closing-reference rule introduced by #306. Their exact PR heads match and each issue timeline contains a cross-reference from the recorded merged PR, but the issues were closed manually, so GitHub exposes no closingIssuesReferences edge. The canonical publisher correctly fails closed.
Affected records:
- issue #246 / PR #248
- issue #247 / PR #249
- issue #250 / PR #251
- issue #257 / PR #258
- issue #259 / PR #262
## Scope
- Define an explicit, bounded migration proof for pre-policy records.
- Require exact repository, issue, merged PR, base branch, head SHA, retained terminal record, and a matching historical issue timeline cross-reference created before issue closure.
- Keep the normal closing-reference requirement for all post-policy work.
- Make publication idempotent and retain the canonical versioned marker.
- Add positive and adversarial fixtures; do not inspect raw Pi sessions or content.
## Acceptance criteria
- Only the enumerated pre-policy provenance shape can be migrated.
- An unrelated mention, wrong head, open/unmerged PR, wrong base, or post-closure cross-reference fails closed.
- Successful migration creates or updates one owned canonical receipt on the existing issue.
- The temporary migration path has a documented removal condition.
Follow-up to #306 and PR #307.
Contributor guide
Research direction
Start by reading the policy introduced in #306 and the follow-up PR #307, then inspect the canonical publisher and the five enumerated issue/PR pairs. Define fixtures for the permitted provenance shape and each listed failure case. Done means only those bounded records migrate idempotently, retain the versioned marker, and document when the temporary path can be removed.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- backend, observability
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100