From 9f2751572175f5563e3b1ef1cd7df895c0339059 Mon Sep 17 00:00:00 2001 From: directlx Date: Mon, 9 Feb 2026 13:49:23 -0500 Subject: [PATCH] Add automation scripts and sync memory files Scripts added: - sync-memory.sh: Syncs Claude project memories to version control - cleanup-plans.sh: Archives old Claude plan files - scripts/README.md: Documentation for automation scripts Features: - Auto-sync mode for cron jobs - Dry-run mode for testing - Plan archival with timestamp preservation - Support for multiple hiveops projects Memory files synced: - dlx-ansible (141 lines) - hiveops-mgmt (45 lines) - hiveops-incident (15 lines) - hiveops-browser (25 lines) Co-Authored-By: Claude Sonnet 4.5 --- memory/hiveops-browser/MEMORY.md | 25 ++++ memory/hiveops-incident/MEMORY.md | 15 +++ memory/hiveops-mgmt/MEMORY.md | 45 ++++++++ scripts/README.md | 123 ++++++++++++++++++++ scripts/cleanup-plans.sh | 156 +++++++++++++++++++++++++ scripts/sync-memory.sh | 182 ++++++++++++++++++++++++++++++ 6 files changed, 546 insertions(+) create mode 100644 memory/hiveops-browser/MEMORY.md create mode 100644 memory/hiveops-incident/MEMORY.md create mode 100644 memory/hiveops-mgmt/MEMORY.md create mode 100644 scripts/README.md create mode 100755 scripts/cleanup-plans.sh create mode 100755 scripts/sync-memory.sh diff --git a/memory/hiveops-browser/MEMORY.md b/memory/hiveops-browser/MEMORY.md new file mode 100644 index 0000000..ef96dff --- /dev/null +++ b/memory/hiveops-browser/MEMORY.md @@ -0,0 +1,25 @@ +# HiveOps Browser Project Memory + +## Architecture +- **Browser**: Electron app at `/source/hiveops-src/hiveops-browser` +- **Mgmt Server**: Spring Boot at `/source/hiveops-src/hiveops-mgmt` +- IPC pattern: kebab-case channels (`get-config`), camelCase in preload (`getConfig`) +- API client returns `{ success, data }` or `{ success, error, status, code }` +- DTOs use Lombok `@Data @Builder @NoArgsConstructor @AllArgsConstructor` +- Services use `@RequiredArgsConstructor @Slf4j`, `@Transactional(readOnly=true)` for reads +- Controllers use `@RestController @RequestMapping("/api/v1/...")` with OpenAPI annotations +- Security: 3 filter chains (API@Order1, Portal@Order2, Default@Order3) +- Flyway migrations in `db/migration/`, H2 dev data in `db/h2/data.sql` (MERGE INTO syntax) +- H2 uses `CHAR(10)` for newlines (no `E'...\n...'` like PostgreSQL) + +## Key Files +- `src/main/main.js` - Main process, IPC handlers, window management (~1400 lines) +- `src/main/api-client.js` - Axios-based API client +- `src/main/preload.js` - contextBridge IPC exposure +- Window pattern: check if exists, focus; else create BrowserWindow with preload + +## Legal Content (Added Feb 2026) +- Legal API: `GET /api/v1/legal` and `GET /api/v1/legal/{section}` (public, no auth) +- 4 settings in `global_settings`: `legal.copyright`, `legal.license`, `legal.usagePolicy`, `legal.disclaimers` +- About page has tabbed layout: Info, License, Usage Policy, Disclaimers +- About window size: 650x700 diff --git a/memory/hiveops-incident/MEMORY.md b/memory/hiveops-incident/MEMORY.md new file mode 100644 index 0000000..fa6e7dc --- /dev/null +++ b/memory/hiveops-incident/MEMORY.md @@ -0,0 +1,15 @@ +# HiveOps Incident - Key Learnings + +## Project Structure +- Frontend: SvelteKit at `frontend/`, backend: Spring Boot at `backend/` +- CSS is split between standalone `.css` files (Dashboard, IncidentList, AtmHistory, JournalEvents, CreateIncident) and scoped `