Skip to content

docs: fix stale repo URLs + refresh README for post-beta state#53

Merged
Musiker15 merged 1 commit into
mainfrom
docs/readme-and-urls
May 25, 2026
Merged

docs: fix stale repo URLs + refresh README for post-beta state#53
Musiker15 merged 1 commit into
mainfrom
docs/readme-and-urls

Conversation

@Musiker15
Copy link
Copy Markdown
Member

Summary

Two related concerns bundled into one PR because they touch the same set of files:

1. Stale musiker15/mskanban URLs everywhere

The project moved from the musiker15/* personal namespace to the MSK-Scripts org. Confirmed broken (github.com/musiker15/mskanban404), and release.yml actually pushes containers via ghcr.io/\${{ github.repository_owner }}MSK-Scripts. Fixed in:

  • README badges + install snippets + cosign verify command
  • CHANGELOG compare links + container reference
  • SECURITY private-reporting link + cosign + gh attestation verify --owner + advisories link
  • CONTRIBUTING good-first-issue / bug / translation issue links + clone command
  • CLAUDE.md dev-setup clone command (left cloud.musiker15.de references intact — those are the maintainer's personal Nextcloud)
  • docs/public-launch.md launch checklist
  • docs/deployment/mskanban.service Documentation= URL

Also normalised the CoC email: conduct@musiker15.deconduct@msk-scripts.de so it matches SECURITY.md's security@msk-scripts.de. Brand domain across the board.

Kept as-is: github.com/musiker15 (the maintainer's personal handle), cloud.musiker15.de (personal Nextcloud), [@musiker15@social.example] (placeholder Mastodon handle).

2. README content drift since v0.1.0-beta

Test plan

  • pnpm typecheck clean
  • pnpm lint clean
  • Final grep -rn 'musiker15/mskanban\|ghcr.io/musiker15\|--owner musiker15\|conduct@musiker15\|security@musiker15' --include='*.md' --include='*.service' returns no results
  • All section anchors still intact (no rename of headings)
  • Manual: README badges render once merged (the CI / CodeQL / container badges should now show real status instead of "private" / 404)

Note on case

Used MSK-Scripts for github.com/... URLs (matches actual GitHub casing) but msk-scripts for ghcr.io/... paths (registry requires lowercase). GitHub URLs are case-insensitive so the badge URLs work either way; ghcr.io is strict.

🤖 Generated with Claude Code

Two motivations bundled because both touch the same set of files:

1. The project moved from the `musiker15/*` personal namespace to the
   `MSK-Scripts` organisation. README badges, install snippets,
   security-reporting links, CONTRIBUTING clone command, CHANGELOG
   compare links, and the systemd unit's Documentation= URL all
   still pointed at the old `github.com/musiker15/mskanban` and
   `ghcr.io/musiker15/mskanban` — confirmed 404 / wrong owner
   (`release.yml` actually pushes to `ghcr.io/${{ github.repository_owner }}`
   which resolves to MSK-Scripts). Same fix in
   docs/public-launch.md and docs/deployment/mskanban.service.

   CODE_OF_CONDUCT.md was the odd one out, using `conduct@musiker15.de`
   while SECURITY.md uses `security@msk-scripts.de`. Aligned both on
   the brand domain.

   Note: I deliberately kept `github.com/musiker15` (the maintainer
   handle, not the project) and `cloud.musiker15.de` (personal
   Nextcloud) — those are personal, not stale.

2. README's feature highlights, view count, and status table were
   pre-v0.1.0-beta:
   - "Four views per board" → "Five views" (Timeline / Gantt landed
     post-beta in #49, see CHANGELOG [Unreleased])
   - "TOTP today, WebAuthn / Passkeys planned" → both shipped
   - Added: Milestones, Burn-Down chart, Timeline (Gantt), board-
     level presence (Yjs awareness), Automation engine v1 with
     ADR 0010
   - Status table: phase 10 ✅ (v0.1.0-beta released 2026-05-24);
     added a "post-beta" row listing the unreleased features
   - Replaced the broken `docs/crypto/` link with a pointer to
     ADR 0003 + threat-model
   - Added a one-line pointer to the user-facing docs site at
     docu.msk-scripts.de/ecosystem/mskanban

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Signed-off-by: Musiker15 <info@musiker15.de>
@Musiker15 Musiker15 merged commit 5177161 into main May 25, 2026
8 checks passed
@Musiker15 Musiker15 deleted the docs/readme-and-urls branch May 25, 2026 15:46
Musiker15 added a commit to MSK-Scripts/documentation that referenced this pull request May 25, 2026
…#11)

The MSKanban container is built and pushed via the project's
release.yml workflow using ghcr.io/${{ github.repository_owner }} —
which resolves to MSK-Scripts, not musiker15. The two remaining
mentions in the docs (index.md container badge + privacy.md audit-
status table) were leftovers from the original README copy.

Mirrors MSK-Scripts/mskanban#53 which fixed the same URLs in the
project's own root markdown files.

Signed-off-by: Musiker15 <info@musiker15.de>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Musiker15 added a commit that referenced this pull request May 25, 2026
…#57)

Two changes that ship together because they both prepare the
upcoming v0.2.0-beta tag:

1. **CHANGELOG**: `[Unreleased]` (190 lines, multiple duplicate
   Added/Changed sections) is consolidated and renamed to
   `[0.2.0-beta] — 2026-05-25`. Missing entries for the recent
   #53#56 (URL cleanup, auto-deploy + domain fix + env.example
   inline-comment fix) are added. A fresh `[Unreleased]` placeholder
   sits above. Link references at the bottom updated:
     [Unreleased]: ...compare/v0.2.0-beta...HEAD
     [0.2.0-beta]: ...compare/v0.1.0-beta...v0.2.0-beta

2. **release.yml**: adds an "Extract CHANGELOG section for this
   release" step before softprops/action-gh-release. It uses awk's
   `index()` (not regex) so awk-implementation differences over `\[`
   escaping can't break it, then writes the matching section to
   `release-body.md`. The action's `body_path:` prepends that to
   the auto-generated PR list — best of both: hand-curated
   narrative + complete commit/PR audit trail.

   The step also logs a `::warning::` and falls through to
   auto-only if the CHANGELOG has no matching section, so a future
   tag with no curated notes still produces a release.

Verified locally with `awk -v marker="## [0.2.0-beta]" '...'
CHANGELOG.md` — 53 lines extracted, no leakage from neighbouring
sections.

Signed-off-by: Musiker15 <info@musiker15.de>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.

1 participant