fix(repo): Version unification and repo hygiene improvements
Version Unification: - Updated README.md version from 2.2.0 → 1.0.11 - Updated src/definitions.ts version from 2.0.0 → 1.0.11 - Documented package.json as source of truth Repo Hygiene: - Added *.tar.gz and docs.tar.gz to .gitignore - Added build/reports/ and .gradle/nb-cache/ to .gitignore - Strengthened Android .gradle exclusions Created docs/FEEDBACK-RESPONSE-PLAN.md with action plan for addressing ChatGPT feedback. Verification: - Version headers now match package.json ✅ - .gitignore strengthened ✅
This commit is contained in:
@@ -68,3 +68,10 @@ workflow/
|
|||||||
screenshots/
|
screenshots/
|
||||||
*.zip
|
*.zip
|
||||||
*.gz
|
*.gz
|
||||||
|
*.tar.gz
|
||||||
|
docs.tar.gz
|
||||||
|
|
||||||
|
# Build reports and caches
|
||||||
|
build/reports/
|
||||||
|
.gradle/nb-cache/
|
||||||
|
android/.gradle/
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Daily Notification Plugin
|
# Daily Notification Plugin
|
||||||
|
|
||||||
**Author**: Matthew Raymer
|
**Author**: Matthew Raymer
|
||||||
**Version**: 2.2.0
|
**Version**: 1.0.11 (see `package.json` for source of truth)
|
||||||
**Created**: 2025-09-22 09:22:32 UTC
|
**Created**: 2025-09-22 09:22:32 UTC
|
||||||
**Last Updated**: 2025-10-08 06:02:45 UTC
|
**Last Updated**: 2025-12-23 UTC
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,117 @@
|
|||||||
|
# ChatGPT Feedback Response Plan
|
||||||
|
|
||||||
|
**Purpose:** Action plan to address feedback from ChatGPT code review
|
||||||
|
**Owner:** Development Team
|
||||||
|
**Last Updated:** 2025-12-23
|
||||||
|
**Status:** active
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Priority 1: Quick Wins (High ROI, Low Risk)
|
||||||
|
|
||||||
|
### 1.1 Repo Hygiene ✅ IN PROGRESS
|
||||||
|
- [x] Check what build artifacts are tracked in git
|
||||||
|
- [ ] Remove tracked build artifacts from git
|
||||||
|
- [ ] Strengthen `.gitignore` (add `*.tar.gz`, `build/reports/`, etc.)
|
||||||
|
- [ ] Verify `package.json` `files` field excludes build artifacts
|
||||||
|
- [ ] Clean up any nested archives
|
||||||
|
|
||||||
|
### 1.2 Version Unification ✅ IN PROGRESS
|
||||||
|
- [ ] Update `README.md` version from 2.2.0 → 1.0.11
|
||||||
|
- [ ] Update `src/definitions.ts` version from 2.0.0 → 1.0.11
|
||||||
|
- [ ] Add CI check script to verify version consistency
|
||||||
|
- [ ] Document version policy: `package.json` is source of truth
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Priority 2: Structural Improvements (Medium ROI, Medium Risk)
|
||||||
|
|
||||||
|
### 2.1 Native Plugin Refactoring
|
||||||
|
- [ ] Analyze `DailyNotificationPlugin.kt` (~2,782 lines) - extract services
|
||||||
|
- [ ] Analyze `DailyNotificationPlugin.swift` (~2,047 lines) - extract services
|
||||||
|
- [ ] Create service extraction plan:
|
||||||
|
- `SchedulerService`
|
||||||
|
- `PermissionService`
|
||||||
|
- `Power/ExactAlarmService`
|
||||||
|
- `ReactivationService`
|
||||||
|
- `RollingWindowService`
|
||||||
|
- `Storage/StateRepository`
|
||||||
|
- `FetcherBridge`
|
||||||
|
- [ ] Implement refactoring in small, mergeable batches
|
||||||
|
|
||||||
|
### 2.2 TODO Classification
|
||||||
|
- [ ] Audit all TODOs/FIXMEs/HACKs (found 34 instances)
|
||||||
|
- [ ] Classify into:
|
||||||
|
- **Must ship** (correctness, rate-limits, TTL, scheduling)
|
||||||
|
- **Nice-to-have** (perf metrics, stats, diagnostics)
|
||||||
|
- **Future** (Phase 2)
|
||||||
|
- [ ] Create issues for "must ship" items
|
||||||
|
- [ ] Move "Phase 2" items behind feature flags or to planning docs
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Priority 3: CI/CD Infrastructure (High ROI, Low Risk)
|
||||||
|
|
||||||
|
### 3.1 CI Workflows
|
||||||
|
- [ ] Create `.github/workflows/ci.yml`:
|
||||||
|
- Node/TS: lint, typecheck, unit tests, build, `npm pack` check
|
||||||
|
- Android: `./gradlew test` + `lint` + `assembleDebug`
|
||||||
|
- iOS: `xcodebuild test` (macOS runner)
|
||||||
|
- [ ] Add merge gates on CI passing
|
||||||
|
- [ ] Document CI setup in `ci/README.md`
|
||||||
|
|
||||||
|
### 3.2 Test Coverage
|
||||||
|
- [ ] Identify critical paths needing tests:
|
||||||
|
- Backoff policy correctness
|
||||||
|
- Idempotency key behavior
|
||||||
|
- Watermark monotonicity
|
||||||
|
- TTL-at-fire logic
|
||||||
|
- Rolling window / rate-limit counters
|
||||||
|
- Permission flows (Android 13+, exact alarm, battery optimization)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Priority 4: Packaging & Workspace (Medium ROI, Low Risk)
|
||||||
|
|
||||||
|
### 4.1 Workspace Package Dist
|
||||||
|
- [ ] Check if `packages/polling-contracts/dist/` is committed
|
||||||
|
- [ ] If committed, remove from git
|
||||||
|
- [ ] Add `prepack` script to build subpackage before publish
|
||||||
|
- [ ] Update `package.json` `files` to control publishing
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Priority 5: Documentation (Low ROI, Low Risk)
|
||||||
|
|
||||||
|
### 5.1 Documentation Consolidation
|
||||||
|
- [ ] Update `README.md` with clear entry points:
|
||||||
|
- Install
|
||||||
|
- Minimal usage example
|
||||||
|
- Platform setup (Android/iOS)
|
||||||
|
- Troubleshooting link
|
||||||
|
- Architecture link
|
||||||
|
- [ ] Add Compatibility Matrix:
|
||||||
|
- Capacitor versions supported
|
||||||
|
- Android minSdk/targetSdk
|
||||||
|
- iOS min version
|
||||||
|
- Exact alarm behavior notes per Android version
|
||||||
|
- [ ] Add Behavioral Contracts section:
|
||||||
|
- Guaranteed behaviors (monotonic watermark, idempotency, TTL)
|
||||||
|
- Best-effort behaviors (delivery in Doze, background fetch timing)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Execution Order
|
||||||
|
|
||||||
|
1. **Week 1**: Quick wins (Repo hygiene, Version unification)
|
||||||
|
2. **Week 2**: CI/CD infrastructure
|
||||||
|
3. **Week 3-4**: Native plugin refactoring (in batches)
|
||||||
|
4. **Week 5**: TODO classification and cleanup
|
||||||
|
5. **Week 6**: Documentation improvements
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
**See also:**
|
||||||
|
- [ChatGPT Feedback Package](./progress/05-CHATGPT-FEEDBACK-PACKAGE.md) — Original feedback
|
||||||
|
- [System Invariants](../SYSTEM_INVARIANTS.md) — Enforced invariants
|
||||||
|
|
||||||
+1
-1
@@ -5,7 +5,7 @@
|
|||||||
* Aligned with Android implementation and test requirements
|
* Aligned with Android implementation and test requirements
|
||||||
*
|
*
|
||||||
* @author Matthew Raymer
|
* @author Matthew Raymer
|
||||||
* @version 2.0.0
|
* @version 1.0.11 (see package.json for source of truth)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Import SPI types from content-fetcher.ts
|
// Import SPI types from content-fetcher.ts
|
||||||
|
|||||||
Reference in New Issue
Block a user