Skip to content

feat(cli): deprecation follows a superseded Source's provenance, and forget retires it without --force - #1284

Merged
jasonssdev merged 11 commits into
mainfrom
feat/1268-retire-superseded-sources
Oct 3, 2026
Merged

jasonssdev merged 11 commits into
mainfrom
feat/1268-retire-superseded-sources

Conversation

@jasonssdev

Copy link
Copy Markdown
Owner

Summary

Deliverable 2 of "The Quiet Engine" arc (#1268), implementing the OpenSpec change openspec/changes/retire-superseded-sources/: deprecation follows provenance, and a superseded Source retires cleanly.

Spec deviation (applied to the forget-command delta and design D5): the generated ## Related bullet is pinned to the single phrase the builder and attach write, so a differently worded bullet counts as hand-written and still blocks.

Related issue

Closes #1259
Closes #1263
Refs #1268

Type of change

  • feat — new feature
  • fix — bug fix
  • docs — documentation only
  • refactor — no behavior change
  • test — tests only
  • chore / ci — tooling, build, or CI
  • Breaking change

How was this tested?

Checklist

  • My commits follow Conventional Commits.
  • I added or updated tests for the change.
  • I updated docs where behavior, interfaces, or the knowledge model changed.
  • Lint, format, type check, and tests pass locally (ruff, mypy, pytest).
  • Output remains OKF-conformant and derived stores stay reconstructible from the bundle + sources.
  • The change is consistent with the project's guiding principles (local-first, provenance, freshness, human-in-the-loop).

@jasonssdev jasonssdev added the size:exception PR exceeds the 400-line review budget with maintainer-accepted exception label Oct 2, 2026
…eferences

The bullet shape is now owned by okf.related_bullet; the delta spec pins the
generated phrase so a hand-edited bullet still blocks.

Refs #1268
Refs #1263
The superseding Source's supersedes edge and a surviving concept's generated
provenance entry and Related bullet are historical: previewed as edits,
count-confirmed, drift-guarded and removed in the same forget. Any other
reference still blocks; purge is untouched.

Refs #1268
Refs #1259
Refs #1263
@jasonssdev
jasonssdev force-pushed the feat/1268-retire-superseded-sources branch from d23229f to 4eac777 Compare October 3, 2026 03:25
@jasonssdev
jasonssdev merged commit 86e7dae into main Oct 3, 2026
9 checks passed
@jasonssdev
jasonssdev deleted the feat/1268-retire-superseded-sources branch October 3, 2026 03:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:exception PR exceeds the 400-line review budget with maintainer-accepted exception

Projects

None yet

1 participant