Skip to content

feat: consume @dnd-mapp/changelog from the public registry - #12

Merged
NoNamer777 merged 11 commits into
mainfrom
feat/consume-published-changelog
Aug 23, 2026
Merged

feat: consume @dnd-mapp/changelog from the public registry#12
NoNamer777 merged 11 commits into
mainfrom
feat/consume-published-changelog

Conversation

@NoNamer777

Copy link
Copy Markdown
Member

Summary

Switches this repo from the in-tree scripts/changelog copy to the published @dnd-mapp/changelog package (now on the public npm registry). pnpm-workspace.yaml gains a @dnd-mapp/changelog catalog entry pinned ~1.0.0, the now-empty scripts/* workspace entry is dropped, and release-prepare.yml/release-publish.yml call pnpm exec changelog instead of node scripts/changelog/index.ts. The .npmrc GitHub Packages scope override is removed since @dnd-mapp/changelog now resolves from npm's default public registry and no other @dnd-mapp package is currently consumed via GitHub Packages.

Verified locally: pnpm exec changelog check/bump-level run correctly against the installed package, and format-check/lint-md pass with the deleted directory gone. This branch was cut fresh from main, independent of the still-open feat/rewrite-ci-for-npm-publish (PR #11).

Related issues

Part of dnd-mapp/template-app-angular#55, itself part of the Extract scripts/changelog into a published npm package map.

Replaces the in-tree scripts/changelog copy with the published
@dnd-mapp/changelog devDependency, drops the now-empty scripts
workspace entry, and switches release-prepare.yml/release-publish.yml
to `pnpm exec changelog`. The GitHub Packages .npmrc scope is removed
since the package now resolves from npm's default public registry.
…e split

scripts/changelog was the only workspace package with its own typecheck
script, so `pnpm -r run typecheck` errors now that it's gone. The `-w`/`-r`
split for tests and lint-ts existed for the same reason and collapses to a
plain `pnpm run` now that the workspace has just the one package.
Existed to authenticate against GitHub Packages for scoped @dnd-mapp/*
packages, which no longer applies now that @dnd-mapp/changelog is public.

@dnd-mapp-bot dnd-mapp-bot left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Standards

Missing CHANGELOG entry (hard). This PR changes CI/build setup that's copied into every newly scaffolded repo: .github/workflows/release-prepare.yml, release-publish.yml, .github/actions/ci/action.yml, pnpm-workspace.yaml, and package.json, plus removing .npmrc and the whole scripts/changelog/ folder. Yet CHANGELOG.md still shows only the empty ## [Unreleased] heading. Per Changelog Conventions, a template repo's consumer-facing scope explicitly includes "changed CI or build setup that's copied into the new repo" and "added/removed... scripts," and the entry belongs "in the same pull request as the change it describes."

No other hard Standards violations turned up. Commits follow Conventional Commits and are grouped by intent, and no new uses: lines were added, so the existing SHA-pinning convention isn't touched.

Spec

Checked against template-app-angular#55 (the direct spec) and its parent map #48.

  • All four #55 asks are done for this repo:
    • @dnd-mapp/changelog added as a devDependency
    • the scripts/* workspace entry removed
    • .npmrc deleted
    • both release workflow call sites switched to pnpm exec changelog
  • Minor incompleteness: .github/actions/prepare-workspace/action.yml's setup-node step still sets scope: '@dnd-mapp'. This is leftover from the GitHub Packages setup and is now dead, since no registry-url pairs with it and .npmrc's registry override is gone. It's harmless as a no-op, but it's the one loose thread from "delete or rewrite .npmrc... for the public registry" not fully carried through to its companion config.
  • For visibility, not a defect: 8acc020 and 6858ff3 extend beyond #55's literal four-item list into pull-request.yml, push-main.yml, and .github/actions/ci/action.yml. Both look like direct, narrowly-scoped fallout of the migration rather than scope creep: dropping scripts/* breaks pnpm -r run typecheck, and removing the GitHub Packages .npmrc scope makes the packages: read permission dead.

Summary: Standards: 1 finding (hard, missing CHANGELOG entry). Spec: 2 findings (1 minor incompleteness, 1 informational note). No missing or wrong core requirements.

Per review feedback on PR #12 — CI/build setup copied into scaffolded
repos is consumer-facing for a template repository.
scope only takes effect alongside registry-url, which was never set
here; it became dead once the GitHub Packages .npmrc override was
removed.
@NoNamer777

Copy link
Copy Markdown
Member Author

Thanks for the review. Addressed both findings.

  • Missing CHANGELOG entry: added Added, Removed, and Changed entries under ## [Unreleased]. They cover the migration to @dnd-mapp/changelog, the removed scripts/changelog implementation, the dropped .npmrc registry override, and the release workflow updates. (726fb36)
  • Dead scope: '@dnd-mapp': removed it from prepare-workspace/action.yml's setup-node step. It only takes effect alongside registry-url, which isn't set here. (b86d2f7)

Also fixed an unrelated, pre-existing bug while in CHANGELOG.md: the [Unreleased] link pointed at template-app-angular's commit history instead of this repo's.

@dnd-mapp-bot dnd-mapp-bot left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary

Reviewed since main (merge-base) across Standards and Spec axes. The core migration is implemented cleanly. It:

  • Swaps in-tree scripts/changelog for the published @dnd-mapp/changelog package.
  • Drops the scripts/* workspace entry.
  • Switches release workflows to pnpm exec changelog.
  • Removes the GitHub Packages .npmrc override.

It matches template-app-angular#55 and the parent map #48. Two things below need a fix before merge; one is a minor, optional note.

Needs a fix

pnpm-workspace.yaml: orphaned commander catalog entry. scripts/changelog was commander's only catalog:default consumer, and this PR deletes it. pnpm-lock.yaml's own regenerated catalogs: section correctly dropped commander, since nothing resolves it via the workspace catalog anymore. (@dnd-mapp/changelog pins its own commander dependency in its own package.json, not through this workspace catalog.) But pnpm-workspace.yaml line 41 still declares commander: ~15.0.0, now dead and out of sync with the lockfile it's supposed to describe. Worth dropping alongside the rest of the scripts/changelog cleanup.

Missing CHANGELOG entries for CI/build changes. This repo's Changelog Conventions require a template repo's changelog to record "changed CI or build setup that's copied into the new repo." Beyond the @dnd-mapp/changelog package swap (documented), this PR also makes several undocumented CI/build changes:

  • Removes the "Run typechecks" CI step.
  • Collapses the -w/-r lint-ts and test-ci invocations into a single pnpm run.
  • Drops the packages: read permission from pull-request.yml and push-main.yml.
  • Drops the scope: '@dnd-mapp' input from prepare-workspace/action.yml.

These all ship into newly-scaffolded repos, and none are captured in CHANGELOG.md.

Minor / optional

Three commits (b86d2f7, 6858ff3, 8acc020) use fix(ci): for removing now-dead CI config rather than fixing broken behavior. GitHub Repository Conventions follows Conventional Commits, where fix is conventionally reserved for bug fixes. chore(ci): may read more accurately, though the dead config would eventually error on its own, so fix is defensible too. Judgement call, not blocking.

See inline comments on CHANGELOG.md and docs/agents/review-comments.md.

Comment thread CHANGELOG.md
Comment thread docs/agents/review-comments.md
commander was only consumed by scripts/changelog, which this branch
already deleted. The lockfile dropped it automatically, but
pnpm-workspace.yaml's catalog still listed it as dead weight.
Folds the ### Added entry into ### Changed since nothing new was
added for a template consumer: the changelog CLI's source just moved.

Also records the CI/build changes shipped earlier in this branch that
were missing changelog entries, per this repo's conventions for
changes copied into scaffolded repos.
@NoNamer777

Copy link
Copy Markdown
Member Author

Thanks for the second pass. Addressed both blocking findings:

  • Orphaned commander catalog entry: removed from pnpm-workspace.yaml (f9a5341). The lockfile was already in sync, so no lockfile changes were needed.
  • Missing CHANGELOG entries for CI/build changes: added entries for the typecheck-step removal, the lint-ts/test-ci -w/-r collapse, the dropped packages: read permission, and the dropped setup-node scope input. Also folded ### Added into ### Changed per the inline comment. (d7b0e27)

Left the fix(ci): vs chore(ci): commit-type note as-is since you called it a judgement call either way. See inline reply on docs/agents/review-comments.md for that one.

@dnd-mapp-bot dnd-mapp-bot left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

Standards: No hard violations of documented conventions (SHA pinning, changelog format/categories, template consumer-facing scope, commit grouping by intent). Everything is clean there.

One judgement call: b86d2f7 ("fix(ci): drop the now-dead setup-node scope input") and 6858ff3 ("fix(ci): drop the dead packages:read permission") arguably read better as chore(ci). This config wasn't actually broken until earlier commits on this same branch made it dead. Conventional Commits doesn't strictly forbid either reading, so this is minor.

Spec: All four items requested in dnd-mapp/template-app-angular#55 are implemented:

  • @dnd-mapp/changelog added as a devDependency
  • scripts/changelog removed
  • the scripts/* workspace entry dropped
  • .npmrc removed
  • both release-prepare.yml/release-publish.yml updated to pnpm exec changelog

The ~1.0.0 pin reasonably resolves the spec's open pin-policy question and stays consistent with this repo's existing catalog conventions. No missing or incorrectly-implemented requirements found.

@NoNamer777

Copy link
Copy Markdown
Member Author

Re: fix(ci) vs chore(ci) for the dead-config-removal commits (b86d2f7, 6858ff3, 8acc020)

Leaving these as fix(ci): rather than switching to chore(ci):. The config wasn't inert when it was written. It became actively wrong once earlier commits on this branch made it dead: a scope input with no matching registry-url, and a packages: read permission nothing uses. Removing that mismatch reads to me as fixing a now-incorrect state, not routine maintenance. It's a defensible call either way under Conventional Commits, so happy to reclassify if you'd rather keep fix reserved strictly for behavioral bugs.

@dnd-mapp-bot dnd-mapp-bot left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed the changelog-migration diff against issue #55 and this repo's documented conventions (GitHub Repository Conventions, Changelog Conventions). Spec conformance looks complete: nothing missing, nothing implemented wrong. One small changelog-formatting note inline. No prior open threads from me on this PR to re-raise.

Comment thread CHANGELOG.md
Changed now precedes Removed, matching the canonical category order.

@dnd-mapp-bot dnd-mapp-bot left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed the diff since main against this org's Standards (commit/CI/changelog conventions) and Spec (issue #55, part of map #48).

One finding below: docs/agents/review-comments.md looks like it's missing a CHANGELOG.md entry. Everything else checks out: the CI/workflow cleanup, pnpm-workspace.yaml catalog changes, and .npmrc removal all match spec and standards. I didn't find any implementation issues or unrequested scope beyond what earlier rounds on this PR already covered.

Comment thread CHANGELOG.md

@dnd-mapp-bot dnd-mapp-bot left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed via /code-review (Standards + Spec axes) against main.

Standards: no hard violations. SHA-pinning doesn't apply (no new uses: entries added), and CHANGELOG.md uses only valid Keep a Changelog categories in canonical order. One nit with no single diff line to anchor to: b86d2f7, 6858ff3, and 8acc020 use fix(ci): for removing now-dead config (a permission, an input, a step) rather than fixing broken behavior. chore(ci): arguably fits "delete dead config" better, though Conventional Commits doesn't forbid fix here.

Spec (dnd-mapp/template-app-angular#55): every concrete ask is implemented, with nothing missing or wrong:

  • @dnd-mapp/changelog added as a tilde-pinned devDependency
  • scripts/changelog and its workspace entry removed
  • .npmrc's registry override deleted
  • all four release-prepare.yml/release-publish.yml call sites switched to the installed CLI

Comment thread CHANGELOG.md Outdated
Comment thread CHANGELOG.md
Drop PR-specific phrasing from the review-comments entry and trim the
duplicate migration framing between the Changed and Removed sections.

@dnd-mapp-bot dnd-mapp-bot left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed the migration from the in-tree scripts/changelog copy to the published @dnd-mapp/changelog package against issue #55.

All five requirements are implemented correctly:

  • @dnd-mapp/changelog added as a devDependency with a catalog pin
  • scripts/* fully removed from the workspace
  • .npmrc cleaned up
  • Both release workflows switched to pnpm exec changelog

The CI permission, typecheck, and split cleanup goes slightly beyond the issue's literal text. It checks out as a genuine, disclosed consequence of the migration rather than scope creep. No standards violations found.

Nothing further to flag. The prior review round already caught and resolved the changelog-formatting and scope questions worth raising.

@NoNamer777
NoNamer777 merged commit bcf6759 into main Aug 23, 2026
1 check passed
@NoNamer777
NoNamer777 deleted the feat/consume-published-changelog branch August 23, 2026 21:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants