Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 12 additions & 1 deletion .husky/pre-commit
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,3 +1,14 @@
#!/bin/sh

# Prevent commits on main branch
BRANCH=$(git rev-parse --abbrev-ref HEAD)
if [ "$BRANCH" = "main" ]; then
echo "🚫 Direct commits to main branch are not allowed."
echo "Please create a feature branch first:"
echo " git checkout -b feature/your-feature-name"
exit 1
fi

npm run lint
npm run typecheck
npm run test:unit -- --coverage
npm run test:unit -- --coverage
19 changes: 0 additions & 19 deletions opencode/plans/feat-config.md

This file was deleted.

13 changes: 7 additions & 6 deletions opencode/plans/feat-stats.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,16 @@
- **Feature**: Usage statistics collection and display.
- **Branch**: `feature/usage-stats`
- **Status**: `Pending`
- **Depends On**: N/A
- **Summary**: This plan covers recording session statistics to a local file with protection against race conditions from concurrent instances. It adds a new `--stats` command to display the data. It introduces one new dependency.

---

### Checklist

- `[ ]` **(Mandatory)** Install `proper-lockfile` dependency to manage concurrent file access.
- `[ ]` **(Mandatory)** Create `src/stats.ts` module with file-locking logic for reading and writing `stats.json`.
- `[ ]` **(Mandatory)** Integrate session recording into `DoroApp`, calling the stats module upon session completion.
- `[ ]` **(Mandatory)** Add `--stats` flag handling to `src/cli.ts` to trigger the stats view.
- `[ ]` **(Mandatory)** Create `src/stats-ui.ts` to render the statistics in a clean, responsive, full-screen view.
- `[ ]` **(Mandatory)** Verify changes by running the type checker and adding new unit tests for the stats logic.
- [ ] **(Mandatory)** Install `proper-lockfile` dependency to manage concurrent file access.
- [ ] **(Mandatory)** Create `src/stats.ts` module with file-locking logic for reading and writing `stats.json`.
- [ ] **(Mandatory)** Integrate session recording into `DoroApp`, calling the stats module upon session completion.
- [ ] **(Mandatory)** Add `--stats` flag handling to `src/cli.ts` to trigger the stats view.
- [ ] **(Mandatory)** Create `src/stats-ui.ts` to render the statistics in a clean, responsive, full-screen view.
- [ ] **(Mandatory)** Verify changes by running the type checker and adding new unit tests for the stats logic.
18 changes: 0 additions & 18 deletions opencode/plans/fix-pause-audio.md

This file was deleted.

19 changes: 9 additions & 10 deletions opencode/plans/ui-themes.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,17 @@
- **Feature**: Premium UI theme system with multiple palettes and user selection.
- **Branch**: `feature/ui-themes`
- **Status**: `Pending`
- **Depends On**: `feat-config.md`
- **Summary**: Introduce a theme manager, add two extra default themes, and persist the selection via config.
- **Depends On**: N/A (config system already implemented)
- **Summary**: Introduce a theme manager, add two extra default themes, and persist the selection via config. Extends existing color scheme system from 2 to 4 themes.

---

### Checklist

- [ ] Install `chalk` v5.
- [ ] Create `src/theme.ts` with registry for `modern`, `calm`, `vivid`, `monochrome` palettes.
- [ ] Refactor UI components to use theme tokens.
- [ ] Add `--theme` CLI flag.
- [ ] Implement keyboard shortcut `c` to toggle themes.
- [ ] Update config handling to persist selected theme (depends on `feat-config` plan).
- [ ] Write unit tests for theme manager.
- [ ] Document usage and customization.
- [ ] **(Mandatory)** Create `src/theme.ts` with registry for `modern`, `calm`, `vivid`, `monochrome` palettes.
- [ ] **(Mandatory)** Refactor UI components to use theme tokens from theme manager.
- [ ] **(Mandatory)** Add `--theme` CLI flag for setting theme at startup.
- [ ] **(Mandatory)** Update config handling to persist selected theme (extends existing colorScheme field).
- [ ] **(Mandatory)** Write unit tests for theme manager.
- [ ] **(Optional)** Document usage and customization.
- [ ] **(Mandatory)** Verify changes by running the type checker and unit tests.
27 changes: 0 additions & 27 deletions opencode/plans/vrt.md

This file was deleted.

Loading