Skip to content

Legacy @spec tags point at archived change dirs (~253 unresolved gate-46 anchors) #13

Description

@rubenvdlinde

Surfaced while fixing the same rot for this session's changes (PR #12).

openspec archive moves openspec/changes/<slug>/specs/… into openspec/changes/archive/<date>-<slug>/…, so any @spec tag pointing at a change directory breaks. gate-46 currently reports 427 unresolved anchors, essentially all of it from changes archived in earlier waves.

Mechanically fixable — a canonical target clearly exists

Slug in @spec Retarget to Occurrences / files
dashboard-public-share openspec/specs/dashboard-public-share/spec.md 57 / 16
dashboard-acknowledgements openspec/specs/dashboard-acknowledgements/spec.md 40 / 13
dashboard-kiosk-mode openspec/specs/dashboard-kiosk-mode/spec.md 34 / 7
role-based-content openspec/specs/role-feature-permissions/spec.md 24 / 7
dashboard-quota-limits openspec/specs/dashboard-quota-limits/spec.md 13 / 7
nc-dashboard-widget-proxy openspec/specs/legacy-widget-bridge/spec.md + openspec/specs/widgets/spec.md 6 / 2
adopt-apphost openspec/specs/prometheus-metrics/spec.md 4 / 2

Needs a judgement call — only tasks.md referenced, no single canonical file

retrofit-2026-05-24-annotate-launchpad (61/21), groupfolder-storage-backend (53/16), resource-serving (13/2), runtime-shell (8/3), launchpad-legacy-quality-cleanup (7/6), admin-group-management (6/5), launchpad-adopt-or-abstractions (4/3).

Prevention

Annotate @spec openspec/specs/<capability>/spec.md — the canonical path — never a change dir. A change dir is temporary by construction. Worth adding to the annotation guidance so each wave stops re-creating this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions