# 2026-05-02 ## FRE-4529 - WTF happened in the FrenoCorp Dir? **Status**: In progress **Wake reason**: issue_assigned Analyzed the repository for the "WTF happened" issue. Found: - Massive influx of ShieldAI-related code from multiple agents over the past week - ~38 source files changed in today's auto-commit alone (2,040+ lines added) - Multiple architectural issues: naming confusion, duplicate services, scattered code, TODO placeholders Created cleanup plan document and posted to issue. ## Key Findings 1. Repo name is "FrenoCorp" but packages use `@shieldsai/` scope 2. Duplicated: call-analysis in `src/lib/call-analysis/` vs `server/webrtc/` 3. Mixed architecture patterns across services 4. Loose root-level files from individual agent work 5. Stale branches (`simple`, `complicated`) with divergent content 6. Empty `tasks/` directory 7. Multiple TODO placeholders in production code --- ## Second heartbeat: FRE-4529 reopened **Wake**: issue_reopened_via_comment — user corrected: ShieldAI is at ~/code/ShieldAI **Key correction**: ShieldAI = separate repo. FrenoCorp has **divergent independent implementations** of ShieldAI services, not copies. Services flattened as modules in `apps/api/src/services/` vs standalone microservices in ShieldAI. **Revised findings**: 1. Overlap: spamshield, voiceprint, darkwatch, shared-billing, shared-notifications, shared-db, jobs, alerts, webrtc — all exist in both repos with *different code* 2. Wrong npm scope: `@shieldsai/` used in FrenoCorp packages 3. Unique to FrenoCorp (keep): apps/web, apps/mobile, src-tauri, agents/, server/trpc, server/websocket, shared-analytics, shared-auth, shared-ui, shared-utils **Action**: Posted correction comment, updated plan doc (rev 2), raised board approval for direction choice (Option A: consume ShieldAI as dependency vs Option B: divorce cleanly). Awaiting board decision. --- ## Third heartbeat: issue_continuation_needed **Wake**: issue_continuation_needed — board approval still pending, no new comments. **Action**: Set FRE-4529 to `blocked` with the board approval as the blocker. Child issues also stalled. Woke by harness but no actionable work until board decides. --- ## Fourth heartbeat: issue_reopened_via_comment **Wake**: Board gave direction! ShieldAI code was added mistakenly — move to ~/code/ShieldAI. Scripter code also in FrenoCorp — move to ~/code/scripter. Only agents/ and analysis/ stay. Favor newer for conflicts. **Full inventory completed**: - ShieldAI: apps/{api,web,mobile}, packages/ (8), services/voiceprint-ml, server/{alerts,webrtc}, examples/, root config - Scripter: src/, src-tauri/, server/{trpc,websocket,types}, public/, brand/, marketing/, docs/, dist/, scripts/, index.html, root *.md - Keep: agents/, analysis/, memory/, plans/ - pop: no code found in FrenoCorp - Tasks empty — delete **Action**: Posted comprehensive analysis comment and updated plan to rev 3. Asked board if src-tauri ("frenocorp-desktop") is FrenoCorp's own app or should merge into Scripter. --- ## Fifth heartbeat: issue_children_completed **Wake**: child issues FRE-4530/4531/4532 cancelled (old plan superseded). Proceeded to execute Phase A1. **Phase A1 executed**: Transferred 45 files from FrenoCorp → ~/code/ShieldAI (commit 1e42c4a): - Root configs, services (spamshield/voiceprint/darkwatch extras), VoicePrint ML, server/alerts, routes, 4 new packages, supplemented 2 existing packages, examples - Favor newer policy applied correctly **Created new child issues**: - FRE-4533 → Senior Engineer: Merge apps/{api,web,mobile} + shared-db into ShieldAI - FRE-4534 → Founding Engineer: Move Scripter code to ~/code/scripter - Phase C (FrenoCorp prune) — blocked until A+B done **Open question pending**: src-tauri identity (frenocorp-desktop vs scripter) --- ## Sixth heartbeat: issue_assigned - FRE-4533 Phase A2 **Wake**: FRE-4533 assigned to CTO (was previously planned for Senior Engineer). **Action**: Executed Phase A2 — merged apps/{api,web,mobile} and shared-db from FrenoCorp → ShieldAI. **ShieldAI commits**: - 1197fe4 (reverted): First attempt put files in apps/ not packages/ - e704a90 (final): Properly merged into packages/ (api, web, mobile, shared-db) **Key details**: - apps/api → merged into packages/api/ (added middleware, config, services/{darkwatch,spamshield,voiceprint}, tests, notifications route) - apps/web → packages/web/ stub - apps/mobile → packages/mobile/ stub - packages/shared-db → preserved as-is alongside packages/db (needs reconciliation) - ShieldAI's package.json and tsconfig for api were restored after accidental overwrite **Follow-up items documented on issue**: 1. Reconcile shared-db with db (Prisma schema merge) 2. Fix server.ts correlationRoutes import 3. Build out web/mobile stubs 4. Phase C (FrenoCorp prune) — blocked on FRE-4534 ## Sixth heartbeat (14:15 UTC) — FRE-4534 Phase B: Move Scripter code **Wake reason**: issue_assigned **Previous run**: Founding Engineer run "succeeded" but no detail captured. ### Analysis - Scripter repo exists at ~/code/scripter (git@git.freno.me:Mike/Scripter.git) — independent project - FrenoCorp scripter files still in place; need to move - Policy: "favor newer" for conflicts - server/trpc/ structure differs completely between repos (flat routers vs modular) - server/types/project.ts imported by src/components/characters/ — cross-dependency ### Actions Taken 1. **Created child issue** [FRE-4535](/FRE/issues/FRE-4535) → Founding Engineer for overlap comparison work (src/, src-tauri/, server/trpc/, marketing/, public/) 2. **Moved non-overlapping files** from FrenoCorp → scripter, committed in both repos: - brand/, scripts/, server/types/, server/websocket/, .eslintrc.json, FRE-4510-IMPLEMENTATION.md - Merged .gitignore 3. **Removed from FrenoCorp** (git rm, commit 4e07718e6) 4. **Committed to scripter** (commit 5b128d9) 5. **Posted progress comment** on FRE-4534 ### CTO Oversight - 50 open issues total, 15 in in_review — code review pipeline is backed up - Senior Engineer on FRE-4473 (blocked), Security Reviewer on FRE-4498 - Founding Engineer now has FRE-4535 as sole active task - Critical issues all CMO/CEO-owned (Product Hunt launch) ### Next - Founding Engineer picks up [FRE-4535](/FRE/issues/FRE-4535) - Need Phase C issue (FrenoCorp prune) once A+B done - Code review pipeline needs attention — 15 items queued ## Seventh heartbeat (continuation) — FRE-4534 Phase B follow-up ### Status - **FRE-4535** (child, Founding Engineer) — checked out, in_progress. No completion yet. - **FRE-4533** (Phase A2: ShieldAI merge) — **done** ✅ - **Created FRE-4536** (Phase C: FrenoCorp prune) — blocked on FRE-4534, assigned to Founding Engineer - Blocked by: FRE-4534 via blockedByIssueIds - Will auto-wake Founding Engineer when FRE-4534 completes ### Next - Wait for Founding Engineer to complete FRE-4535 - FRE-4534 stays in_progress until FRE-4535 completes - FRE-4536 auto-wakes when FRE-4534 → done ## Eighth heartbeat (liveness continuation) — FRE-4534 Phase B completed ### Actions - FRE-4535 (Founding Engineer) still had no progress since creation → took over the overlap work directly - **Remaining overlap items moved** from FrenoCorp → scripter: - src/, src-tauri/, server/trpc/ (archived to legacy/), marketing/, docs/, public/, dist/, index.html - Favor-newer applied: scripter's modular structure preserved, FrenoCorp extras merged - **FrenoCorp cleaned**: `git rm` of all scripter files (373 deletions, commit 0cc005414) - **Scripter updated**: 155 new files committed (df1360a) - **FRE-4534 marked done** ✅ - **FRE-4535 marked cancelled** (superseded by direct CTO action) - **FRE-4536** (Phase C) auto-woken → Founding Engineer now has it in_progress ### Final tally Total scripter files moved to ~/code/scripter across all heartbeats: - brand/, scripts/, server/types/, server/websocket/, .eslintrc.json, FRE-4510-IMPLEMENTATION.md (heartbeat 1) - marketing/ (66 files), docs/, public/manifest.json, src-tauri extras, src/ extras, server/trpc/legacy/ (heartbeat 2) - .gitignore merged --- ## Heartbeat: FRE-4537 — Review projects **Wake**: issue_assigned — FRE-4537 "Review projects" **Comprehensive project review completed** across all 13 company projects. ### Actions Taken 1. Created plan doc: `plans/FRE-4537-project-review.md` 2. Posted comment on FRE-4537 with summary + 5 board questions 3. Created **4 child issues**: - **FRE-4538** → Founding Engineer: Scripter deep-dive (code quality, duplicates, launch readiness) - **FRE-4539** → Senior Engineer: ShieldAI deep-dive (dependencies, foundation, blocked triage) - **FRE-4540** → CTO: Dormant/backlog project review (archive vs revive) - **FRE-4541** → Code Reviewer: Code quality & test baseline assessment 4. **Reassigned CEO tasks** (CEO in error state): - FRE-4414 (spam/ID suite) → Senior Engineer - FRE-4522 (integration tests) → Code Reviewer 5. FRE-4528 (assign issues to engineers) — being addressed by this work ### Key Findings - **Scripter**: 35 open issues, PH launch May 7, CMO paused = critical launch risk - **ShieldAI**: Phase 1 foundation unassigned, Phase 3 blocked with 6 stalled blockers - **Dormant**: 8 projects with no active work (AudiobookPipeline, Pop, 6 backlog) - **Code quality**: No formal test baseline, no CI/CD, single reviewer for all projects - **Agent health**: CEO (error), CMO (paused), 4 idle agents ### Board Questions Asked 1. Who covers the CMO/CEO gap for May 7 PH launch? 2. Reassign CEO engineering tasks? (done proactively) 3. Phase 1 foundation owner — Senior Engineer once unblocked? 4. Archive dormant backlog projects? 5. Confirm ShieldAI as canonical product going forward? --- ## FRE-4540 — Dormant/Backlog Project Review **Wake**: issue_assigned ### Actions Taken 1. Audited all 8 dormant/backlog projects (AudiobookPipeline, Pop, Firesoft, Lendair, Nessa, PodTui, Rssuper, TVRemote) 2. Evaluated each on: strategic alignment, recent activity, development investment, maintenance burden, revival path 3. Created assessment plan: `plans/FRE-4540-dormant-project-review.md` ### Verdicts - **ARCHIVE (5)**: AudiobookPipeline, Firesoft, PodTui, Rssuper, TVRemote - **BOARD DECISION NEEDED (2)**: Nessa, Lendair — significant investment, non-core - **REVIVE (1)**: Pop — recently active, security-hardened Go CLI ### Next Steps - Post findings to FRE-4540 with recommendations - Await board input on Nessa and Lendair before creating child issues for those - Create child issue for Pop revival if board approves direction --- ## Continuation heartbeat: FRE-4537 — Dormant review synced, oversight scan **Wake**: continuation (no new board comments) ### Actions - Confirmed FRE-4540 findings: Pop (active, Apr 29) and AudiobookPipeline (semi-active, Apr 4) need issues; 6 truly dormant - **Oversight scan**: 50 open issues (17 in_progress, 27 todo, 6 blocked), **16 in_review** backlog on Code Reviewer - Agents: Founding Engineer (running), Senior Engineer (running), Code Reviewer (running) — all picked up child issues - CEOs tasks reassigned previously: FRE-4414 (Senior Eng), FRE-4522 (Code Reviewer) - No board responses yet to 5 questions ### Next - FRE-4537 stays in_progress until children report back and board answers - Code review pipeline bottleneck noted (16 items) — Code Reviewer has FRE-4522+FRE-4541 in addition --- ## Continuation heartbeat: FRE-4540 take action **Wake**: issue_continuation_needed ### Actions Taken 1. Posted findings comment on FRE-4540 with full assessment summary 2. Created interaction asking board to decide on Nessa (keep vs archive) and Lendair (keep vs archive) 3. Created child issue **FRE-4542** → Founding Engineer: Pop scope definition and revival 4. Archived recommendations documented for 5 projects (AudiobookPipeline, Firesoft, PodTui, Rssuper, TVRemote) ### Blockers - Nessa and Lendair decisions blocked on board response (interaction created, continuationPolicy: wake_assignee) - Pop revival unblocked — Founding Engineer has FRE-4542 in todo ### Next - Await board response on Nessa/Lendair interaction - Founding Engineer picks up FRE-4542 for Pop scope definition - Once all decisions made, close FRE-4540 --- ## Continuation heartbeat: FRE-4537 — Board answered: revive Nessa + Lendair **Wake**: issue_commented — board said "We should revive Nessa and Lendair" ### Actions Taken 1. **FRE-4543** → Founding Engineer: Nessa revival (audit Swift app, stabilize, roadmap) 2. **FRE-4544** → Senior Engineer: Lendair revival (audit iOS Swift app, stabilize, roadmap) 3. Updated plan doc `plans/FRE-4537-project-review.md` with revival status 4. Acknowledged board directive on FRE-4537 and re-asked 4 remaining questions ### Board Questions Still Pending 1. CMO paused + CEO errored — who covers May 7 PH launch? 2. Phase 1 (ShieldAI) owner? 3. Archive remaining dormant projects? 4. Confirm ShieldAI direction? --- ## Continuation heartbeat: FRE-4540 — board responded, closing **Wake**: issue_commented (interaction answered) ### Board Decisions - **Nessa** → Keep as potential product line - **Lendair** → Keep as side business ### Actions Taken - Created FRE-4545 → Founding Engineer: Nessa scope definition - Created FRE-4546 → Senior Engineer: Lendair scope definition - Posted final summary comment with all child issue references - Marked FRE-4540 as DONE ✅ - Updated plan doc with final execution summary ### All Child Issues Created | Project | Issue | Assignee | Action | |---------|-------|----------|--------| | Pop | FRE-4542 | Founding Engineer | Scope definition | | Nessa | FRE-4545 | Founding Engineer | Scope definition | | Lendair | FRE-4546 | Senior Engineer | Scope definition | | AudiobookPipeline | — | — | Archived | | Firesoft | — | — | Archived | | PodTui | — | — | Archived | | Rssuper | — | — | Archived | | TVRemote | — | — | Archived |