Skip to content

refactor(theme): remove the Night profile (Dreamcoder is Light and Dark only) - #15

Merged
Dreamcoder08 merged 6 commits into
mainfrom
pr/05-remove-night-profile
Sep 29, 2026
Merged

Dreamcoder08 merged 6 commits into
mainfrom
pr/05-remove-night-profile

Conversation

@Dreamcoder08

@Dreamcoder08 Dreamcoder08 commented Sep 29, 2026 •

Copy link
Copy Markdown
Owner

Summary

The design system has exactly two modes, Dreamcoder Light and Dreamcoder Dark. The Night render profile (derived from Dark) is removed end to end. The scheduler never activated it and the 16:00 timer trigger only re-applied Light.

Changes

  • Night removed from palette, settings, renderer contract, targets manifest/schema, tokens and every renderer
  • dreamcoder night rejected as an unknown command; apply-theme-mode.sh and theme-auto.sh drop the profile argument
  • 33 generated *-night* artifacts deleted (Herdr, Kitty, Starship, Ghostty, Warp, ...)
  • Live docs and specs rewritten for Light/Dark; timer keeps 07:00 (light) and 18:00 (dark)
  • A legacy persisted theme.render_profile is ignored as an unknown setting

Verification

Every tracked *dark*/*light* artifact is byte-identical to the pre-change baseline; full suites green. Size: 768 authored additions and 5,383 deletions, of which ~2.9k are generated Night artifacts and ~2.1k removed Night code; no cohesive split fits 400 lines, so a size:exception is recommended.

Chain Context

Field Value
Chain ML4W 2.16 + Herdr 0.9.1 + Light/Dark-only stabilisation
Tracker PR Not needed (stacked PRs to main)
Position 5 of 6
Base pr/04-shell-safety
Depends on #14
Follow-up #16
Review budget 6151 / 400
Starts at the tip of pr/04-shell-safety
Ends with refactor(theme): remove the Night profile (Dreamcoder is Light and Dark only)

Chain Overview

main
 └── #11 fix(ml4w)
  └── #12 fix(install)
   └── #13 fix(theme)
    └── #14 fix(shell)
     └── 📍 #15 refactor(theme)
      └── #16 chore(quality)

Scope

  • Includes: see Changes above
  • Excludes:
  • Legacy Dusk token set (still used; separate decision)
  • Archived openspec, CHANGELOG and docs/superpowers history

Autonomy

  • CI is expected to pass for this PR branch
  • This PR has one deliverable scope
  • This PR can be rolled back without unrelated changes
  • Tests, docs, or manual verification cover this unit

Dreamcoder ships only Light and Dark. Drop night_palette and the render
profile loader, the theme.render_profile setting and resolver, the night
render variant from the renderer contract, targets manifest and every
renderer, the Night coverage paths in sync, and the night activation
choice. A persisted legacy theme.render_profile is now an unknown setting
that loads with a warning and is preserved. Light and Dark output is
byte-identical.
apply-theme-mode.sh takes only the Light/Dark mode: the render profile
argument, the Night artifact gate and the kanagawa Night palette are gone,
and cursor-cli.env no longer exports DREAMCODER_THEME_PROFILE. The
dreamcoder dispatcher now rejects night as an unknown command, theme-auto
stops pinning a profile, and pi-theme selects by mode only.
Remove the 33 tracked *-night* theme artifacts (terminal, prompt, editor,
desktop, and every Herdr config.night.toml) that sync no longer produces,
and drop the Night kitty variant from the CI install simulation.
Remove the Night render profile from the live docs, specs, deployment
profile and repository settings, and drop the 16:00 trigger from the theme
timer so it switches at 07:00 (Light) and 18:00 (Dark).
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