Initialize central bot memory files
Copied from payfrit-food/memory/ — 12 bots with their current memory state. This is now the canonical location for bot memory across all Payfrit projects. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
e5261a1e0b
commit
b9f3d17f70
12 changed files with 276 additions and 0 deletions
27
memory/alex.md
Normal file
27
memory/alex.md
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
# ALEX — Weedops Project Coordinator
|
||||
|
||||
## What I'm Working On
|
||||
- weedops.site — cannabis industry platform
|
||||
- Pitch deck for fundraising
|
||||
- Marketing materials
|
||||
|
||||
## Project Status
|
||||
- **Phase**: Fundraising — targeting talent agency venture arms
|
||||
- **Website**: weedops-theme (WordPress) at C:\dev\weedops-theme — basic theme exists
|
||||
- **Pitch deck**: In progress
|
||||
- **Marketing**: In progress
|
||||
- **Coding**: None at this time — focus is fundraising + marketing
|
||||
|
||||
## MM Setup (COMPLETED 2026-03-16)
|
||||
- alex-bot added to Payfrit MM team and town-square channel
|
||||
- Intro posted to town-square
|
||||
- DM channel with John established
|
||||
|
||||
## Delegated Tasks
|
||||
- (none yet — waiting for direction from John)
|
||||
|
||||
## Notes From John
|
||||
- No real coding right now — focus is marketing and raising a round
|
||||
- Targeting talent agency venture arms for funding
|
||||
- Alex's role is PM/coordinator — delegates to team when coding starts
|
||||
- Team reboot in progress 2026-03-16 — waiting for all bots to confirm ready
|
||||
9
memory/ava.md
Normal file
9
memory/ava.md
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
# AVA — Graphic Designer
|
||||
## What I'm Working On
|
||||
- (update this as you work)
|
||||
## Brand Guidelines
|
||||
- (colors, fonts, spacing rules)
|
||||
## Assets Created
|
||||
- (track what you've made)
|
||||
## Notes From John
|
||||
- (save anything John tells you to remember)
|
||||
15
memory/jude.md
Normal file
15
memory/jude.md
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
# JUDE — WordPress Theme Developer
|
||||
## What I'm Working On
|
||||
- Built and deployed consumer landing page for food.payfrit.com (2026-03-16)
|
||||
- Awaiting John's feedback on the new landing page
|
||||
## Pages Status
|
||||
- food.payfrit.com — NEW consumer product landing page deployed
|
||||
- Hero with phone mockup showing scan > rate > alternatives flow
|
||||
- How It Works (3 steps), Features (6 cards), Privacy (zero stats), CTA
|
||||
- Green (#16a34a), Inter font, fully responsive
|
||||
- Old scanning portal backed up to /portal/old/
|
||||
- /sponsor/ — sponsor dashboard (unchanged)
|
||||
- /api/ — API endpoints (unchanged)
|
||||
## Notes From John
|
||||
- Wants consumer product page for the Payfrit Food scanning app
|
||||
- Key value prop: Scan barcode > learn about item > select alternative > order for delivery
|
||||
18
memory/kira.md
Normal file
18
memory/kira.md
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
# KIRA — General Agent
|
||||
## What I'm Working On
|
||||
- Investigated "Product not found" issue on dev version of Payfrit Food Android
|
||||
- Both dev and prod use same DB (payfrit_food on 10.10.0.1) — APIs return identical data
|
||||
- Installed fresh devDebug + prodDebug builds on John's Moto G 2025 (ZA222XB44V)
|
||||
- Waiting for John to re-test and report back with specific barcode if still failing
|
||||
## Cross-Team Coordination
|
||||
- (none active)
|
||||
## Notes From John
|
||||
- Prod works great
|
||||
- Dev version showed "Product not found" on a known good product
|
||||
- Wants both dev and prod installed on device
|
||||
## Build Notes
|
||||
- payfrit-food-android has dev/prod flavors (environment dimension)
|
||||
- Dev: com.payfrit.food.dev, API: dev.payfrit.com/food/api, app name "Food BETA"
|
||||
- Prod: com.payfrit.food, API: food.payfrit.com/api, app name "Payfrit Food"
|
||||
- Build command: JAVA_HOME="/c/Program Files/Java/jdk-17" java -cp gradle/wrapper/gradle-wrapper.jar org.gradle.wrapper.GradleWrapperMain installDevDebug (or installProdDebug)
|
||||
- gradlew.bat doesn't work from bash — must invoke java directly with the wrapper jar
|
||||
44
memory/koda.md
Normal file
44
memory/koda.md
Normal file
|
|
@ -0,0 +1,44 @@
|
|||
# KODA — Claude Code Agent
|
||||
## What I'm Working On
|
||||
- Session 5 (2026-03-17) — Fixed QA v2 medium/low issues #5-#10 (commit add171e)
|
||||
- All criticals/highs from Luna's v2 report confirmed fixed by Luna
|
||||
- Remaining: #7 (cert pinning — deliberate decision, root only) and #11 (beacon cache plaintext — low risk, accepted)
|
||||
|
||||
## Notes From John
|
||||
- "just do everything in any order, you're fast!!"
|
||||
- Migrating to VPS (dev.payfrit.com) — will restart there in VS Code
|
||||
- All teammates are AI agents; names are for routing/specialization, not persona roleplay
|
||||
|
||||
## Decisions Made
|
||||
- Async scan flow for barcode lookups (202 + polling)
|
||||
- Barcode normalization: try both UPC-A and EAN-13
|
||||
- OkHttp read timeout bumped to 60s for slow OFF lookups
|
||||
- Cert pinning: ISRG Root X1 ONLY (LE intermediates rotate unpredictably)
|
||||
- Tab approval: member-side polling every 3s, 2min timeout, then graceful message
|
||||
- Cart errors use toast instead of dialog to prevent stacking
|
||||
|
||||
## Session 5 Fixes (commit add171e)
|
||||
- #5: CartActivity tab rejection — ic_error icon + "Order rejected" message
|
||||
- #6: Api.kt ephemeral key parsing — try/catch for malformed JSON
|
||||
- #8: MenuActivity cart error — dialog replaced with StyledToast
|
||||
- #9: AccountActivity URI restoration — try/catch wrapper
|
||||
- #10: AppState isLoggedIn/isOnTab — elvis operator instead of !! assertions
|
||||
|
||||
## Session 4 Fixes
|
||||
### getDetail.php — PlatformFee missing (commit b5394ae)
|
||||
- Fixed: total now includes PlatformFee
|
||||
|
||||
### Task creation — TaskTypeID missing (commit 628172c)
|
||||
- Fixed: added TaskTypeID=0 to submitCash.php, submit.php, webhook.php
|
||||
|
||||
## E2E Test Results (Order 100, business 55)
|
||||
- All fees computed correctly
|
||||
|
||||
## Luna QA v1 — ALL RESOLVED (commit f62a0bd)
|
||||
## Luna QA v2 — 9/11 fixed, 2 accepted (cert pinning + beacon cache)
|
||||
|
||||
## KDS Task Creation (commit 07abcee)
|
||||
- submitCash.php + submit.php create kitchen tasks
|
||||
|
||||
## Pending Tasks
|
||||
- No blockers — waiting for John's next task
|
||||
32
memory/luna.md
Normal file
32
memory/luna.md
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
# LUNA — QA & Testing
|
||||
|
||||
## Known Bugs
|
||||
- **KDS not showing orders** (investigating): Order 97 stuck at StatusID=0 (never submitted). Order 96 submitted but had no Task. Root cause unclear — KDS queries Orders directly (StatusID >= 1), not Tasks. So missing Task wasn't the KDS issue. Need to determine why order 97 never submitted (app-side?).
|
||||
- **KDS task creation gap** (fixed by Koda, commit 07abcee): submitCash.php and submit.php now create Tasks at StatusID=1. BUT task is missing TaskTypeID/CategoryID — only creates generic "Prepare Order" task, not proper type-mapped ones from _createOrderTasks.php. Needs follow-up.
|
||||
- **Sales tax issue** (clarified by Koda): 07abcee did NOT touch tax calc. Real issue was getDetail.php not including PlatformFee in total. Fixed by Koda in commit b5394ae.
|
||||
- **god.payfrit.com 502** (fixed): Lucee service crashed, Raj restarted it.
|
||||
|
||||
## payfrit-android QA v2 (2026-03-17)
|
||||
- Fresh QA pass completed after Koda's fixes
|
||||
- 11 new findings: 2 Critical, 2 High, 4 Medium, 3 Low
|
||||
- Critical: race condition in TabApprovalHelper, NPE in AccountActivity photo upload
|
||||
- High: missing business tax rate error handling, virtual ID returns 0
|
||||
- Report: /c/dev/payfrit-android/qa/code-review-findings-v2.md
|
||||
- 9/11 v1 bugs confirmed fixed by Koda ✓
|
||||
|
||||
## Test Results
|
||||
- payfrit-beacon-android: Static + API reviewed (report: /c/dev/payfrit-beacon/qa/code-review-findings.md)
|
||||
- payfrit-android: v1 complete, v2 complete (report: /c/dev/payfrit-android/qa/code-review-findings-v2.md)
|
||||
- payfrit-works-android: Static + API complete (report: /c/dev/payfrit-works-android/qa/code-review-findings.md)
|
||||
|
||||
## Pending Verification
|
||||
- payfrit-android v2 critical bugs — waiting for Koda to fix
|
||||
- Koda's KDS task creation fix (07abcee) — need to verify task is created properly with new cash order
|
||||
- Koda's getDetail.php PlatformFee fix (b5394ae) — need to verify order detail shows correct total
|
||||
|
||||
## Notes From John
|
||||
- KDS bug reported: ordered $1 soda from John's Beverages (cash), nothing showed in KDS
|
||||
- Order 97 was StatusID=0, never submitted — asked John to retry
|
||||
- Sales tax not being computed on new orders (turned out to be PlatformFee missing from getDetail.php)
|
||||
- Asked me to coordinate with @koda on fixes
|
||||
- Wants fresh QA on payfrit-android (done 2026-03-17)
|
||||
13
memory/mike.md
Normal file
13
memory/mike.md
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# MIKE — Backend Developer
|
||||
## What I'm Working On
|
||||
- Dev channel project: created BotChannels migration, running it now via SSH on dev.payfrit.com
|
||||
|
||||
## Notes From John
|
||||
- Everyone on the team is AI except @john — never deny being AI if asked
|
||||
- Names (mike, sarah, raj, etc.) are just labels to differentiate between bot instances — no "-bot" suffix
|
||||
- All bots have been renamed without the -bot suffix
|
||||
- I can always SSH into dev.payfrit.com to run DB migrations and server commands
|
||||
- No mysql client locally — use SSH for DB work
|
||||
|
||||
## Schema Changes Log
|
||||
- 2026-03-17: Created sql/bot-channels-migration.sql — BotChannels table for multi-channel bot support
|
||||
34
memory/nora.md
Normal file
34
memory/nora.md
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
# NORA — Sponsor Portal
|
||||
## What I'm Working On
|
||||
- OTP login deployed, John testing
|
||||
|
||||
## Sponsor Features Status
|
||||
- Sponsor login: LIVE — OTP via SMS (no passwords), phone or email
|
||||
- Sponsor registration: LIVE — OTP verify → business profile form
|
||||
- Token purchases: LIVE (api/sponsor/buyTokens.php) — Bearer auth + SponsorProfiles
|
||||
- Product management: LIVE (api/sponsor/products.php) — API key auth + SponsorProfiles
|
||||
- Stripe webhook: LIVE (api/webhook/stripe.php) — credits SponsorProfiles
|
||||
- OTP send: LIVE (api/sponsor/sendOTP.php) — Twilio SMS, 6-digit code, 10-min expiry
|
||||
|
||||
## Architecture Notes
|
||||
- Auth: OTP flow → payfrit.OTPCodes table → payfrit.UserTokens for sessions
|
||||
- No passwords in sponsor portal — OTP only
|
||||
- Sponsor data: payfrit_food.SponsorProfiles (was Sponsors) — keyed by UserID
|
||||
- tt_SponsorType: translation table (1=Brand, 2=Retailer, 3=Artisan)
|
||||
- payfrit.Users.SponsorTypeID: quick flag (0=not sponsor, 1-3=sponsor type)
|
||||
- API key auth (X-API-Key) for product management endpoints
|
||||
- Bearer token auth for buyTokens and register
|
||||
- Twilio config: config/twilio.json (shared creds with payfrit-api)
|
||||
- Dev mode: DEV_OTP returned in sendOTP response for testing
|
||||
- If user has no sponsor profile, login returns NeedsSponsorProfile=true + token
|
||||
- Migration SQL: sql/unified-auth-migration.sql (RAN 2026-03-17)
|
||||
|
||||
## John's Sponsor Profile
|
||||
- UserID: 1, SponsorTypeID: 3 (Artisan), 10 tokens, login: 3104268588 or pinkyfloyd@gmail.com
|
||||
|
||||
## Notes From John
|
||||
- food.payfrit.com is the consumer-facing WordPress site
|
||||
- Sponsor portal at food.payfrit.com/portal or similar
|
||||
- John wants OTP login only, no passwords
|
||||
- John requested field labeled "Phone / Email"
|
||||
- John requested tt_SponsorType translation table
|
||||
8
memory/priya.md
Normal file
8
memory/priya.md
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
# PRIYA — HR & Recruiting
|
||||
## Team Status
|
||||
- Schwifty added as employee 13 — Swift App Coder (iOS apps) — 2026-03-16
|
||||
## Hiring Pipeline
|
||||
- Schwifty (employee 13) — onboarded, bootstrap block added to TEAM-BOOTSTRAP.md
|
||||
## Notes From John
|
||||
- "call them Schwifty" — new team member, Swift app coder, employee 13
|
||||
- @raj can help with any additional setup needs for new bots
|
||||
48
memory/raj.md
Normal file
48
memory/raj.md
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
# RAJ — Bot Server Builder
|
||||
## What I'm Working On
|
||||
- DONE: Wrote Standard Toolbox section in TEAM-BOOTSTRAP.md
|
||||
- DONE: Embedded tailored toolbox into all 13 bot bootstrap blocks
|
||||
- DONE: Forwarded BotBootstrap DB plan to @mike via DM
|
||||
- DONE: Built dm, mention-check, thread-reply commands in mm.sh
|
||||
- DONE: Created mm-mention-check.sh (scans all channels for @mentions/@all/DMs)
|
||||
- DONE: Updated all 13 bootstrap /loop commands to use mention-check
|
||||
- DONE: Created #dev channel, added mike/koda/sarah/kira/luna/raj
|
||||
- DONE: All accounts renamed without -bot suffix (John's request)
|
||||
- PLANNED: God mode bootstrap popup with copy button per bot
|
||||
- PLANNED: Better online detection (ping bot DM, check response within 60s)
|
||||
- PLANNED: Quick reboot block (short version, re-reads memory + re-bootstraps MM)
|
||||
- PLANNED: Email accounts for all agents on MIAB (raj@payfrit.com etc)
|
||||
- DONE: Fixed nginx duplicate config (removed dev.payfrit.com.bak from sites-enabled)
|
||||
- DONE: Created #dev channel (kghnpj1cufgp7k4y8fojut44wc), added mike/koda/sarah/kira/luna/raj
|
||||
- 500 errors were Anthropic API side, not our server
|
||||
## Infrastructure State
|
||||
- Worker pipeline: worker.sh runs every 30s via cron on dev server
|
||||
- Outgoing webhooks: per-bot webhooks owned by webhook-bot user
|
||||
- Incoming webhook: posts as bot identities with custom username/avatar
|
||||
- Bot poller: payfrit-bot-poller.service — works, has 403 noise on inaccessible channels (harmless)
|
||||
- Bot worker: payfrit-bot-worker.service — picks BotTasks, runs Claude Code CLI
|
||||
- VS Code tunnel: REMOVED (2026-03-17) — web VS Code too limited for bot bootstrapping
|
||||
- God mode: https://god.payfrit.com/#bots — shows bot status, backend at /var/www/payfrit-food/bot/god-api.php
|
||||
- /var/www/payfrit-food/memory/ permissions: john:www-data 775 (fixed 2026-03-17)
|
||||
- API: currently returning 500 errors (2026-03-17 evening)
|
||||
## Session Summary (2026-03-17 session 2)
|
||||
- Bootstrapped, greeted John, started 1m polling loop
|
||||
- Replied to Luna/Koda in #qa about QA findings on payfrit-android
|
||||
- Wrote Standard Toolbox reference section in TEAM-BOOTSTRAP.md
|
||||
- Embedded tailored Toolbox into all 13 bot blocks (git, SSH, deploy, DB, URLs, work checklist)
|
||||
- John asked for: two-block system (full + quick reboot), god mode bootstrap popups, better online detection
|
||||
- John wants bootstrap blocks moved to DB (BotBootstrap table with SharedBlock + PersonalBlock)
|
||||
- John wants email accounts on MIAB for all agents
|
||||
- 500 errors hitting — John says sit tight and plan
|
||||
## Decisions
|
||||
- Local bootstrap is preferred — each bot gets a Claude Code tab locally
|
||||
- Server-side poller/worker handles automated responses when bots arent bootstrapped locally
|
||||
- Bootstrap blocks should move to DB for easier management via god mode
|
||||
## Notes From John
|
||||
- Prefers local bootstrap over server-side solutions
|
||||
- Wants two bootstrap modes: full start + quick reboot
|
||||
- Wants god mode to show copyable bootstrap blocks per bot
|
||||
- Wants better online/offline detection for bots
|
||||
- Wants email accounts on MIAB for all agents
|
||||
- 500 errors were Anthropic API, not our server
|
||||
- No -bot suffix when referring to teammates (use @mike not @mike-bot)
|
||||
13
memory/sarah.md
Normal file
13
memory/sarah.md
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# SARAH — Frontend Developer / Night Manager
|
||||
## What I'm Working On
|
||||
- Completed: Team Bootstrap copy UI on god.payfrit.com/pages/bots.html
|
||||
|
||||
## Notes From John
|
||||
- Team Bootstrap section added to bots page per John + Raj's request
|
||||
- API endpoints: ?action=bootstraps (list), ?action=bootstrap&username=X (full block)
|
||||
- @raj handles bot infra questions
|
||||
|
||||
## Decisions Made
|
||||
- Added bootstrap section below existing bot grid in bots.html (not a separate page)
|
||||
- Used same card grid pattern as bot cards, with copy-to-clipboard + toast
|
||||
- Toast reusable via showToast(msg, isError) for future use on this page
|
||||
15
memory/zara.md
Normal file
15
memory/zara.md
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
# ZARA — User Portal
|
||||
## What I'm Working On
|
||||
- Bootstrapped 2026-03-16
|
||||
- Portal at food.payfrit.com — barcode scanning, health scores, alternatives
|
||||
|
||||
## Portal Features Status
|
||||
- Barcode scanning: working (API path fixed 2026-03-16)
|
||||
- Health scores: built
|
||||
- Premium modal: built (Stripe checkout wired up 2026-03-15)
|
||||
- API scan endpoint: fixed curl fallback for HTTPS (2026-03-16)
|
||||
|
||||
## Notes From John
|
||||
- food.payfrit.com hosted on wp.payfrit.com (Apache), not dev server
|
||||
- Git clone at /var/www/food.payfrit.com/, pulls from Forgejo
|
||||
- API path must be absolute '/api' not relative '../api'
|
||||
Loading…
Add table
Reference in a new issue