Overview · Decisions

Open Decisions

Fresh · 0d

All decisions waiting on Pablo. Spark's recommendation per item, plus the option set Spark considered. Each item routes through the humans-last principle: API/automation > AI research + draft > AI-assisted human signature > paid human consultant.

Active 11

  1. 1. SAT regime for SA ↔ Pablo G. revenue split (RUBISCO2 + AFI). Spark Automations contracts Pablo González for design work. The fiscal shape determines deductibility, IMSS exposure, and tax bracket. Three structural options:
    • Salary — Pablo G. on SA's payroll. Most IMSS exposure, simplest accounting, predictable.
    • Per-deliverable contractor invoice — Pablo G. invoices SA per part / phase. RIF or RESICO regime.
    • Royalty on net profit per unit — Pablo G. takes a % of each RUBISCO2 unit shipped. Variable. SAT classifies as derechos de autor or regalía depending on framing.
    Spark plan when greenlit: read LISR primary (Capítulo II for personas físicas con activ. empresariales, RESICO rules), pull IMSS LSS for cuotas obrero-patronales, model each shape against Pablo's projected annual RUBISCO2 income. Output: comparison sheet with after-tax take-home per shape. Pablo signs filings via SAT online portal with his e.firma. No human accountant unless audit.
  2. 2. Migration of HLV / RUBISCO2 into Spark Automations/Clients/. Skeleton exists at Spark Automations/Clients/. Actual moves of Horus Loves Vision/ and RUBISCO2/ are deferred. Why deferred: ~50+ path references in CLAUDE.md, MEMORY.md, CadQuery scripts, n8n payloads, and ~/.claude/skills/cad-twin/projects/rubisco2.md need updating in the same operation. A partial migration leaves the system half-broken.
    • Atomic single pass — grep all references, move folders, rewrite paths, smoke-test one CadQuery script and one render. Single commit-equivalent.
    • Stay flat — keep folders at root, document the conceptual structure but don't physically migrate. Cheaper, more confusing.
    Atomic pass when Pablo greenlights. Spark estimates ~30 min of careful rewriting. Risk: missing a reference and breaking a script. Mitigation: smoke-test a CadQuery + a render after the rewrite.
  3. 3. WhatsApp bridge — Pablo ↔ Spark personal channel. Pablo wants to talk to Spark from his phone via WhatsApp. Existing infrastructure: Kapso (already integrated for Luis at Horus), n8n routing, ask-audio skill for voice notes. Distinct from the resolved 2026-04-28 SA Meta Business Account WhatsApp question (that one is for the Spark Automations corporate identity / LinkedIn approval workflow).
    • Kapso new SA-owned number — provision via Kapso API. Free tier exhausted by Luis's number, so this needs a tier upgrade or a new Kapso account for SA. Recommended.
    • Physical phone + WhatsApp Web bridge — buy a phone, run WhatsApp Web, scrape. Brittle, against humans-last.
    • Reuse SA Meta Business test number — same channel as the LinkedIn approval workflow. Risks: 5-tester cap shared with approval flow; mixes corporate and personal traffic.
    Kapso new number on a fresh SA account, separate from Horus's Kapso, when Pablo greenlights the small monthly cost. Keep this distinct from the SA Meta Business test number to avoid the 5-tester ceiling.
  4. 4. IMPI trademark drafts (Horus + Spark Automations). Two brands worth registering: Horus Loves Vision (mark + wordmark) and Spark Automations (mark + wordmark). MARCANET (IMPI's online search) lets you check conflicts. The application portal accepts e.firma filings.
    • Spark drafts + Pablo signs — Spark searches MARCANET for conflicts, drafts the application forms, classifies under appropriate Niza classes. Pablo signs with e.firma. Recommended.
    • Hire IP lawyer — only if a conflict / opposition arises, not for the standard path.
    Spark runs the conflict check + drafts when Pablo greenlights. Filing fee is the only cost.
  5. 5. Public Spark Automations site. Internal dashboard exists. Public version requires (a) legal-disclosable copy, (b) Pablo sign-off on showing RUBISCO2 renders, (c) hosting decision. Status update Apr 27: public-site repo built — pablogona/spark-automations-public, ready for Pablo to import. Vercel-ready. Logo cropped + bumped to 80px nav, SVGs vectorized. Brief workflow on Gemini Flash, accepts GEMINI_API_KEY or GOOGLE_API_KEY.
    • Import the prebuilt repo + deploy — Pablo imports pablogona/spark-automations-public into Vercel under spark-automations.com. Live in ~10 min. Recommended now that AFI + Miguel exist as candidate case studies.
    • Continue deferring — keep internal-only.
    Import now. The repo is built; cost is ~10 min of import + DNS. Two real SA-direct clients (Miguel, AFI) exist for case-study language when ready.
  6. 6. Luis funnel ManyChat→Kapso swap deploy. Local JSON has been ready since Apr 22. Never deployed to n8n. The swap is structurally correct (6 reminder slots converted from 7-node chains to 2-node Kapso pattern, 41 nodes removed, 12 added). But there are still 6 ManyChat nodes that target Luis/host (not leads) — those need a separate surgery pass.
    • Deploy current swap, do host-target surgery later — partial deploy, partial coverage. Risky.
    • Finish host-target surgery, then deploy in one pass — cleaner, ~hours of work. Recommended.
    • Shelve — abandon the swap. Loses the work invested.
    Finish host-target surgery in next session, then deploy in one pass with smoke-test on Tere's CRM before Luis's.
  7. 7. AFI — implement diagnostic recs vs hand off the report. Apr 27: site diagnostic delivered (full report). Headline finding: result-screen CTA is a dead button — primary conversion leak. PWA broken. SEO floor absent. No founder presence on site.
    • A — Send report as-is — Pablo forwards to Marianita + Violeta, they decide. 5 min Pablo time. Risk: recs sit if no internal dev.
    • B — Spark implements rec #1 (CTA wiring) + #3 (SEO basics) on Netlify — ~3-4 hours Spark, deliver before/after. Converts diag into a service moment ahead of app/flow billing. Recommended.
    • C — Full Next.js / Astro rebuild — 1-2 weeks. Premature unless AFI commits to 12+ month brand investment. Not a prereq for app/flow.
    Option B. Demonstrates capability + builds trust before quoting larger app/flow scope.
  8. 7b. AFI — companion app proposal v2: friend rate ($1,500) + send. Apr 28: AFI shared a third-party developer quote ($2,000 USD / 10 weeks / solo Gabriel Lazo / RN+Expo+Supabase / no Belvo / no compliance — Drive link, local PDF). Marianita is a friend of Pablo's, equity / partnership upside on the table → friend pricing intent. v1 of the SA proposal was built against a $90k figure Gemini hallucinated from this PDF — fully retracted. v2 (afi-proposal.html) lands at $1,500 USD, solo Pablo (LLM-augmented), 12 work-weeks across Q3 2026, 60-day post-launch support included. Same SA scope vs Gabriel: + Belvo, + compliance brief, + ownership-from-day-1.
    • Send v2 as drafted — $1,500 friend rate, transparent "friend pricing" framing, equity conversation as separate parallel stream with Diego. Recommended.
    • Lower the price further — $1,000 / $750 / $0 + equity-only. Stronger gesture; less of a signal that Pablo's time has value. Risks the "free is suspicious" reaction.
    • Keep $1,500 but bundle the equity terms into the same doc — single signing event. Cleaner if equity is decided already, messier if it's still under discussion. Tier 3: keep separate.
    Option (a) — send v2 as drafted. Methodology indicators ("salud financiera" framework) still need explicit ask of Marianita as Phase 0 dependency — flag in cover note. Equity is its own conversation between Pablo + Diego + AFI; don't anchor build pricing to it.
  9. 8. Mairsa motor evaluation (RUBISCO2). Linda López lead (+52 1 33 1478 8415) — alternative to OLI's USD $4,870/motor quote via Eduardo Mon. New supplier, no spec sheet on file yet, no V2 RFQ sent.
    • Send V2 RFQ — Spark drafts RFQ from bible v3.0 motor specs, Pablo approves before send. Tag email VERIFIED-DIRECT (Linda is direct contact, not distributor). Captures via n8n executions for audit trail.
    • Wait — keep OLI as the only quoted source.
    Send RFQ this week. OLI at USD $4,870/motor × N units is non-trivial; even one alternative quote materially de-risks the BOM.
  10. 9. FinTech project scope (Diego sub-thread). Diego flagged a separate FinTech opportunity in WhatsApp. Currently zero documentation. Surfaces tonight in the 22:00 PdC call. Open question: is this a Spark Automations engagement, a Horus engagement, a Pablo personal engagement, or a SA + Diego co-investment?
    • Surface tonight, document tomorrow — Pablo asks Diego for the 1-pager on the call, Spark turns it into a charter file under Spark Automations/Clients/<name>/CLAUDE.md (mirroring AFI structure).
    • Defer until Diego sends a deck — wait passively.
    Surface tonight. AFI showed that capturing the kickoff in writing fast (CLAUDE.md + meetings/) keeps decisions traceable.
  11. 10. Unified-auth Internal site — revive or retire. Earlier direction had the Internal dashboard behind a unified-auth layer (admin login). Commit 9087f06 broke that path; current Internal site sits behind Vercel SSO + Cloudflare Worker basic auth (Path A + Path D from README_DEPLOY.md). The unified-auth code still exists but is dormant. Outstanding need: revert 9087f06 and configure Vercel env vars if reviving.
    • Revive — revert 9087f06, set Vercel env vars (AUTH_SECRET, etc.), wire _auth/users.json as the source of truth. Gives a single auth surface across Internal + future SA tools.
    • Retire — declare Vercel SSO + Cloudflare Worker the canonical auth, delete the dormant unified-auth code, archive _auth/users.json. Recommended pending Pablo's call. Two-layer auth already works; reviving is a project, not a fix.
    Retire unless Pablo wants self-issued credentials for non-Vercel-account collaborators. Two-auth-layer is operational and the cost of a third path isn't justified by current users (Pablo only).
  12. 11. Kapso WhatsApp for Spark — legacy cleanup. Original SA WhatsApp direction (decision #3 history) was a fresh Kapso account separate from Horus's. Half-done work exists from that path. Apr 28 decision: SA Meta Business Account direct via Meta Cloud API supersedes this for the LinkedIn approval workflow. Open question: clean up the Kapso work or keep it as a backup channel.
    • Clean up — delete unused Kapso scaffolding, document the supersession in MEMORY.md, keep Horus's Kapso (Luis production phone) untouched. Recommended.
    • Keep parallel as backup — finish provisioning the SA Kapso account anyway. Cost: ongoing Kapso fees + maintenance overhead for a redundant channel.
    Clean up. SA Meta Business covers the corporate WhatsApp need; Horus Kapso continues serving Luis. A second SA-side Kapso instance is dead weight.

Resolved 2

  1. R1. drum_v2.py V1/V2 spec mismatch. Resolved 2026-04-28 — option A (Audit + correct). Apr 27 finding: RUBISCO2/Sand Separator/docs/v2/cadquery_output/drum_v2/drum_v2.step tessellated to 2580 × 1240 × 1790 mm bbox (V1 dims = 700 OD × 2500 mm). Bible v3.0 §3 froze V2 at 1100 OD × 4000 mm on Apr 24. Witness-mesh report at research/v1-witness-experiment/REPORT.md. Resolution: Bible v3.0 §3 is canonical. Executor will rename the existing file to drum_v1.py (or archive), build a fresh drum_v2.py from bible specs (1100 OD × 4000 mm), re-tessellate and assert the 1100/4000 bbox, then re-export comp_drum.glb for the CAD viewer. Annex B (May 31) draws from the corrected file.
  2. R2. Spark Automations Meta Business Account — WhatsApp number selection. Resolved 2026-04-28 — Meta test number first. LinkedIn auto-post pipeline (handoff item 7) needs a WA number on the SA Meta Business Account to push interactive approval buttons. Three forks: Meta test number (free, 5-tester cap), Twilio MX (~$1/mo, real phone), dedicated MX SIM. Resolution: start with Meta test number. Pablo + Diego + Pablo G. = 3 testers, fits the 5 cap. Zero recurring cost. Migrate to Twilio MX or a dedicated SIM only if (a) approver count exceeds 5, or (b) Spark Automations begins addressing real customers from the same line. No automation work blocks on this — proceed with the rest of the LinkedIn pipeline once Pablo finishes the Meta Business onboarding wizard and provides WA_TOKEN_SA + WA_PHONE_ID_SA.