{
  "schema": "aiidiots.profit-lab.v1",
  "status": "active",
  "asOf": "2026-06-25",
  "humanRoute": "/profit",
  "publicLedger": "/profit-lab-latest.json",
  "acceptanceCommand": "npm run profit:acceptance",
  "minimumProbabilityToProfitPct": 0.05,
  "minimumTargetProfitUsd": 100,
  "requiredLift": {
    "probabilityPctPoints": 0.01,
    "targetProfitUsd": 1,
    "executionRailStatus": 1,
    "rule": "Every new idea must raise probability by at least 0.01 percentage points, raise target profit by at least $1, or move at least one required execution rail from missing to partial or ready."
  },
  "hardRules": [
    "No stock picks, brokerage actions, gambling, or capital deployment.",
    "No profit claim without an honest probability, payout target, time window, and verdict.",
    "Every idea must ship a deployed or runnable artifact, not just a suggestion for Justin.",
    "Every idea must explain how money could arrive without requiring a new upfront investment.",
    "Every future pass must beat the prior probability by at least 0.01 percentage points, beat the prior target profit by at least $1, or move at least one required execution rail from missing to partial or ready.",
    "If the agent cannot find a money path, it must mark the idea failed instead of inventing confidence.",
    "If a buyer cannot act without a conversation, probability must stay at the floor or only rise with evidence.",
    "If payment cannot be captured automatically, the system cannot claim passive income.",
    "If fulfillment still requires Justin, the system cannot claim autonomous profit.",
    "Each pass must name one idea and every execution rail needed to run it: buyer path, payment or wallet, paid-order detection, fulfillment, delivery, tracking, and lead source.",
    "If a required execution rail is missing, the next pass must build or connect that rail before adding more copy.",
    "If the rules are not producing leads, revenue, or verified blocker removal, the rules must be changed before another idea is scored."
  ],
  "selfOptimizationLoop": {
    "baseline": {
      "probabilityToProfitPct": 0.05,
      "targetProfitUsd": 100
    },
    "firstPrinciplesGates": [
      "Pick exactly one money idea.",
      "List every tool, account, wallet, checkout, inbox, script, lead source, and tracking record needed to execute it.",
      "Trace the exact path from stranger attention to buyer action to money capture.",
      "Name the single blocker that most prevents money from arriving.",
      "Ship one artifact that removes or measures that blocker.",
      "Update probability only when a blocker is removed or real buyer behavior is recorded.",
      "Raise target profit only when the offer, price, or order size can plausibly support the new payout.",
      "Recalculate expected value as probabilityToProfitPct / 100 * targetProfitUsd.",
      "Append the result to the ledger and make the next idea beat it."
    ],
    "allowedLiftTypes": ["distribution", "conversion", "payment", "fulfillment", "delivery", "price", "evidence", "structured_intake", "execution_rail"],
    "blockedLiftTypes": ["copy_only", "renaming", "new_page_without_buyer_action", "manual_selling_handoff", "fake_confidence"],
    "executionKit": {
      "requiredRails": ["buyer_path", "payment_capture", "order_detection", "fulfillment", "delivery", "lead_source", "evidence_tracking"],
      "rule": "No idea is complete until the ledger names the execution rails it needs and marks each ready, partial, missing, or blocked.",
      "missingRailPolicy": "A missing rail becomes the next idea unless a different rail is proven to be a tighter blocker.",
      "externalActionGate": "Wallets, payment processors, public posting, spending, purchases, and account creation require Justin approval before action."
    },
    "ruleMutationTrigger": "If a pass produces no lead, no revenue, and no verified blocker removal, the next pass must tighten the rules or downgrade the probability before proposing another offer.",
    "nextIdeaAlgorithm": [
      "Read the latest ledger idea.",
      "List the missing money-loop stages and execution rails: traffic, buyer action, payment or wallet, paid-order detection, fulfillment, delivery, measurement.",
      "Reject ideas that do not improve one missing stage.",
      "If checkout, wallet, lead source, delivery, or tracking is required and missing, tool up that rail first.",
      "Choose the smallest shipped artifact that improves probability or target payout.",
      "If the lift is an execution rail, keep probability flat until real buyer behavior or money movement appears.",
      "Keep probability at the floor unless the artifact removes a real blocker.",
      "Run npm run profit:acceptance before treating the idea as active."
    ]
  },
  "executionRails": [
    {
      "id": "buyer_path",
      "label": "Buyer path",
      "status": "partial",
      "purpose": "A stranger or known lead must know the offer exists and understand what action to take.",
      "nextAction": "Pick one qualified lead source or outbound lane for the $1,000 build-spec offer."
    },
    {
      "id": "payment_capture",
      "label": "Payment or wallet",
      "status": "missing",
      "purpose": "Money must be capturable without a manual negotiation loop.",
      "nextAction": "Create an approved checkout, payment link, invoice rail, or wallet receiving path for the offer.",
      "humanGate": "Requires Justin approval before account creation, wallet creation, payment processor setup, or money movement."
    },
    {
      "id": "order_detection",
      "label": "Paid-order detection",
      "status": "missing",
      "purpose": "The agent must know when a buyer has paid or committed.",
      "nextAction": "Add a webhook, inbox receipt parser, payment export, or manual ledger receipt that marks paid orders."
    },
    {
      "id": "fulfillment",
      "label": "Fulfillment artifact",
      "status": "partial",
      "purpose": "The system must produce the promised deliverable after intake.",
      "nextAction": "Harden the teardown generator into the first build-spec draft path."
    },
    {
      "id": "delivery",
      "label": "Delivery",
      "status": "missing",
      "purpose": "The deliverable must reach the buyer without relying on Justin to remember it.",
      "nextAction": "Add an approved delivery route after payment and fulfillment complete."
    },
    {
      "id": "lead_source",
      "label": "Lead source",
      "status": "partial",
      "purpose": "At least one qualified buyer path must exist before probability can rise.",
      "nextAction": "Use /profit-lead-source.json to run one approved outreach, referral, or placement test and record the receipt."
    },
    {
      "id": "evidence_tracking",
      "label": "Evidence tracking",
      "status": "partial",
      "purpose": "Revenue, leads, conversions, and blockers must be recorded even when zero.",
      "nextAction": "Tie every request, payment, delivery, and miss back to the Profit Lab ledger."
    }
  ],
  "currentTopline": {
    "ideaId": "idea-4-qualified-lead-source-rail",
    "probabilityToProfitPct": 0.05,
    "targetProfitUsd": 1000,
    "expectedValueUsd": 0.5,
    "windowDays": 45,
    "nextRequiredLift": "Idea 5.0 must execute one approved lead-source placement or add approved payment capture. Probability cannot rise until a buyer response, payment signal, or verified blocker removal exists."
  },
  "offer": {
    "id": "profit-loop-build-spec-1000",
    "priceUsd": 1000,
    "agentInbox": "corpus@agentmail.to",
    "subject": "Profit Loop build-spec request",
    "cta": "mailto:corpus@agentmail.to?subject=Profit%20Loop%20build-spec%20request",
    "deliverable": "Structured teardown plus build specification: money path, probability, blockers, first deployed move, fulfillment plan, and acceptance gate."
  },
  "ideas": [
    {
      "id": "idea-1-yolo-workbench-contract",
      "version": "1.0",
      "title": "YOLO Workbench contract",
      "status": "shipped",
      "verdict": "failed_product",
      "prediction": {
        "probabilityToProfitPct": 0.05,
        "targetProfitUsd": 100,
        "expectedValueUsd": 0.05,
        "windowDays": 30,
        "confidence": "low",
        "rationale": "It may help sell agent implementation by proving rigor, but it had no trigger, no offer, no call to action, and no lead capture."
      },
      "deployedArtifact": "/yolo-workbench-latest.json",
      "moneyPath": "Indirect credibility only; no buyer action existed.",
      "constraints": ["No trigger", "No offer", "No buyer path", "Useful mainly to agents already in the repo"],
      "nextLift": "Add a real Profit section, live offer, and ledger.",
      "tracking": {
        "actualRevenueUsd": 0,
        "actualLeads": 0,
        "actualConversions": 0
      }
    },
    {
      "id": "idea-2-profit-loop-teardown",
      "version": "2.0",
      "title": "$100 Profit Loop teardown",
      "status": "shipped",
      "verdict": "live_money_attempt",
      "prediction": {
        "probabilityToProfitPct": 0.06,
        "targetProfitUsd": 100,
        "expectedValueUsd": 0.06,
        "windowDays": 30,
        "confidence": "low",
        "rationale": "A tiny but real conversion path exists: a visitor can request a paid teardown from the page. Traffic is likely low, payment is manual, and fulfillment is not fully automated."
      },
      "deployedArtifact": "/profit",
      "moneyPath": "Public page offers a $100 teardown of a broken agent loop or automation idea, routed to an agent inbox for intake.",
      "constraints": ["No ad spend", "No new SaaS account", "No payment processor yet", "Relies on organic site traffic or direct sharing"],
      "nextLift": "Future pass must add distribution, payment, automation, or a higher-value offer.",
      "lift": {
        "type": "conversion",
        "improved": "probability",
        "fromIdeaId": "idea-1-yolo-workbench-contract",
        "evidence": ["Published /profit as a public offer page", "Added a specific $100 price", "Added a live mailto request path"]
      },
      "tracking": {
        "actualRevenueUsd": 0,
        "actualLeads": 0,
        "actualConversions": 0
      }
    },
    {
      "id": "idea-3-structured-intake-build-spec",
      "version": "3.0",
      "title": "$1,000 structured intake + build-spec generator",
      "status": "shipped",
      "verdict": "live_money_attempt",
      "prediction": {
        "probabilityToProfitPct": 0.05,
        "targetProfitUsd": 1000,
        "expectedValueUsd": 0.5,
        "windowDays": 45,
        "confidence": "low",
        "rationale": "The lift is payout, not confidence. A $1,000 build-spec offer, structured intake, schema, and runnable teardown generator make a larger order plausible. Probability stays at the floor because traffic, automatic payment capture, paid-order detection, and delivery automation are still missing."
      },
      "deployedArtifact": "/profit",
      "artifacts": ["/profit#structured-intake", "/profit-lab-intake.schema.json", "scripts/profit-lab-teardown.mjs"],
      "moneyPath": "Visitor opens /profit, selects the $1,000 build-spec offer, completes the structured intake, and sends a machine-readable request to corpus@agentmail.to. The intake can be run through scripts/profit-lab-teardown.mjs to produce the first deliverable. Money is still captured manually, so this is not autonomous profit.",
      "constraints": ["No automatic payment capture", "No automatic paid-order detection", "No executed outbound lead source", "No automatic delivery", "No real conversion evidence yet"],
      "nextLift": "Idea 4.0 must tool up a missing execution rail: checkout/payment capture, wallet/payment receiving path, paid-order detection, delivery, or a qualified lead source. Probability cannot rise for copy edits or another explanation page.",
      "lift": {
        "type": "price",
        "improved": "targetProfit",
        "fromIdeaId": "idea-2-profit-loop-teardown",
        "evidence": [
          "Raised the live offer from $100 teardown to a $1,000 build-spec target",
          "Added structured intake that produces a machine-readable order record",
          "Added a runnable fulfillment script that can turn intake JSON into a teardown artifact"
        ]
      },
      "tools": ["/profit#structured-intake", "/profit-lab-intake.schema.json", "npm run profit:teardown -- --intake ./intake.json --out ./teardown.md"],
      "execution": {
        "idea": "Sell one $1,000 Profit Loop build spec.",
        "requiredRails": ["buyer_path", "payment_capture", "order_detection", "fulfillment", "delivery", "lead_source", "evidence_tracking"],
        "missingRails": ["payment_capture", "order_detection", "delivery", "lead_source"],
        "nextExecutionMove": "Tool up payment capture or a qualified lead source before creating another offer or raising probability."
      },
      "tracking": {
        "actualRevenueUsd": 0,
        "actualLeads": 0,
        "actualConversions": 0
      }
    },
    {
      "id": "idea-4-qualified-lead-source-rail",
      "version": "4.0",
      "title": "Qualified lead-source rail",
      "status": "active",
      "verdict": "live_money_attempt",
      "prediction": {
        "probabilityToProfitPct": 0.05,
        "targetProfitUsd": 1000,
        "expectedValueUsd": 0.5,
        "windowDays": 45,
        "confidence": "low",
        "rationale": "The lift is execution readiness, not confidence. The system now has a concrete target buyer, qualification rules, placement options, outreach copy, and receipt schema for one approved lead-source test. Probability stays at the floor because no outreach has been sent, no buyer has responded, and payment capture is still missing."
      },
      "deployedArtifact": "/profit-lead-source.json",
      "artifacts": ["/profit-lead-source.json", "/profit", "/profit-lab-latest.json"],
      "moneyPath": "Use the qualified lead-source kit to place the existing $1,000 build-spec offer in front of one approved founder/operator/agency buyer. If a qualified buyer responds, route them through /profit structured intake and then payment capture once approved.",
      "constraints": ["No outreach sent yet", "No public post approved yet", "No automatic payment capture", "No paid-order detection", "No delivery automation", "External contact requires Justin approval"],
      "nextLift": "Idea 5.0 must execute one approved lead-source placement or add approved payment capture. Probability cannot rise until a buyer response, payment signal, or verified blocker removal exists.",
      "lift": {
        "type": "execution_rail",
        "improved": "executionRail",
        "fromIdeaId": "idea-3-structured-intake-build-spec",
        "evidence": [
          "Added /profit-lead-source.json as a machine-readable lead-source rail",
          "Defined target buyer and qualification criteria",
          "Added outreach copy and receipt fields for one approved placement test",
          "Moved lead_source from missing to partial while keeping probability at the floor"
        ]
      },
      "tools": ["/profit-lead-source.json", "/profit#structured-intake", "npm run profit:teardown -- --intake ./intake.json --out ./teardown.md"],
      "execution": {
        "idea": "Sell one $1,000 Profit Loop build spec.",
        "requiredRails": ["buyer_path", "payment_capture", "order_detection", "fulfillment", "delivery", "lead_source", "evidence_tracking"],
        "missingRails": ["payment_capture", "order_detection", "delivery"],
        "nextExecutionMove": "Run one approved lead-source placement or tool up approved payment capture before raising probability."
      },
      "tracking": {
        "actualRevenueUsd": 0,
        "actualLeads": 0,
        "actualConversions": 0
      }
    }
  ],
  "researchLessons": [
    {
      "source": "https://x.com/kyronis_talks/status/2069314840280383605",
      "lesson": "Use role separation: one agent plans, one builds, one judges, and the cycle continues until the app works."
    },
    {
      "source": "https://x.com/akshay_pachaar/status/2069404367497953592",
      "lesson": "The loop itself is cheap; the advantage is context, tools, evals, and memory around the loop."
    },
    {
      "source": "https://x.com/hrswatigupta/status/2068920851442143252",
      "lesson": "Prompting only matters when it is concrete enough to drive action, not when it is motivational prose."
    },
    {
      "source": "https://www.anthropic.com/engineering/building-effective-agents",
      "lesson": "Use simple composable agent patterns first; add autonomy only when the task justifies the cost and latency."
    },
    {
      "source": "https://code.claude.com/docs/en/hooks-guide",
      "lesson": "Use deterministic hooks and gates for rules the model should not merely remember."
    },
    {
      "source": "https://code.claude.com/docs/en/code-review",
      "lesson": "Use reviewer agents to search for correctness, security, regressions, and false completion before shipping."
    }
  ],
  "tracking": {
    "cadence": "Update on every Profit Lab YOLO pass and after any inbound paid teardown request.",
    "nextReviewDue": "2026-07-24",
    "actualRevenueUsd": 0,
    "actualLeads": 0,
    "actualConversions": 0,
    "notes": "Predictions are subjective priors until traffic and lead data exist. The ledger is allowed to be pessimistic; it is not allowed to be empty."
  }
}
