feat: 화려한 테마 4종 + bold 펄스 채널(pulse_style)#2
Merged
Conversation
브레인스토밍 합의 결과를 spec으로 정리. 2단계 설계: - Phase 1: neon/aurora/sunset/spectrum 색 프리셋 4종(데이터만, render 무변경) - Phase 2: pulse_style 승격(calm/flash/hue/swap), 발동 구간·효과 설정화 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
TDD bite-sized 9개 태스크. Phase 1(themes.rs 데이터)·Phase 2(theme.rs pulse_style 분기 + pulse 명령). calm 경로 불변 회귀 게이트 명시. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
각 테마는 THEME_KEYS 8개 전부 구체값. 화려한 4종은 처음부터 bold pulse_style(neon·spectrum=hue, aurora·sunset=flash)을 갖되 Phase 2 render 분기 전까지는 무시되어 calm 동작. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
CI fmt-check 게이트 통과용. 동작 변화 없음. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
neon이 출시 테마가 되면서 parse_theme_prompt("neon")이 더는 에러가 아니다.
미지 테마 분기 검증용 입력을 invalid_theme로 교체.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
영문/한국어 테마 테이블에 neon/aurora/sunset/spectrum 행 추가, theme 유효값 목록 5종→9종 갱신. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
calm 경로는 수학적 동치로 보존(기존 스냅샷 테스트 그대로 통과). hue는 기준색 hue를 한 주기 동안 360° 회전, flash는 calm wave에 감마(2.2) 적용. RGB<->HSV 변환 헬퍼는 hue_rotate가 호출한다. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
swap만 글리프 고정 불변식을 해제(펄스 ON 위상 후반 교대). calm/flash/hue는 글리프 고정 유지. PULSE_STYLES/is_known_pulse_style는 쓰기 경로 검증 SSOT. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
theme::is_known_pulse_style/PULSE_STYLES를 쓰기 경로 검증에 사용하면서 이전 커밋의 임시 #[allow(dead_code)] 2개 제거(이제 실사용). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
main이 install::set_pulse_style를 호출하면서 이전 커밋의 임시 #[allow(dead_code)] 제거(이제 실사용). pulse 인자 없으면 현재 스타일 출력. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
rgb_hsv_roundtrip_within_tolerance 테스트의 인라인 ColorSpec 구조체 리터럴이 rustfmt 기준에 맞게 확장됨. 기능 변경 없음. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
calm/flash/hue/swap 스타일, 화려한 테마 bold 기본, pulse_on/off_threshold 발동 구간, understatus pulse 명령 사용법 추가. Configuration 표의 pulse_style 설명 및 How it works 단락도 4종 스타일 기준으로 갱신. 영문 + 한국어 병렬 섹션 모두 추가. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- config.rs PulseConfig.pulse_style 필드 doc: 레거시 'bold' 설명을 실제 4종(calm/flash/hue/swap)으로 교체 - themes.rs: pulse_style '데드 데이터' 주석을 라이브 채널로 갱신 - README: 화려한 4종 글리프 열을 실제 load_glyphs로 수정(calm 복붙 오류) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
understatus pulse hue typo 처럼 잉여 인자를 조용히 무시하고 config를 기록하던 동작을 막는다. 두 명령 모두 동일하게 has_extra_args로 가드. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
손편집된 미지 pulse_style(레거시 bold 포함)을 로드 시 1줄 경고하고 calm으로 진행. 값은 보존, render가 calm 폴백. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
flash가 calm과 같은 테라코타 끝점이라는 표현을 각 테마의 pulse_palette 끝점으로 정정(신규 테마는 테라코타 아님). pulse_on/off_threshold 히스테리시스(냉각 중 지속) 한 줄 보강. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
neon/aurora/sunset/spectrum추가 (총 9종,src/themes.rs순수 데이터). render 무변경.pulse_style을 실제 시각 채널로 승격:calm(기본)/flash(감마 2.2 강화 호흡)/hue(틴트 hue 360° 회전)/swap(hue + 글리프 모양 교대). RGB↔HSV 헬퍼 추가.understatus pulse <style>(교체) /understatus pulse(현재값) 추가. config.toml[pulse].pulse_style만 안전 병합 기록.neon·spectrum=hue,aurora·sunset=flash; 기존 5종은calm유지(개별 키로 재정의 가능).pulse_on_threshold/pulse_off_threshold로 조절(새 코드 없음).불변식 / 회귀 안전
\x1b[1m) 금지 불변식 유지 — 화려함은 색/글리프로만.pulse_style은 런타임 calm 폴백 + 쓰기 경로 하드 검증.Test plan
cargo test— 177 passedcargo clippy --all-targets -- -D warnings— cleancargo fmt --check— cleancargo build --release— greenunderstatus pulse <style>set/show/reject 동작설계/계획 문서:
docs/superpowers/specs/2026-06-04-flashy-themes-design.md,docs/superpowers/plans/2026-06-04-flashy-themes.md🤖 Generated with Claude Code