{
  "version": "2026.05.28-open-source-course-v13-generation-gate",
  "model": "open-source-course-plus-paid-support",
  "mission_priority": "Homeless and disabled veterans get first access to the practical training path.",
  "rule": "Teach the lane first. Scaffold local learning and proof only. Connect the folder to Codee backend, but real client HTML output, hosted activation, scans, delivery rooms, and support stay locked until Codee.chat verifies enable, payment/session state, activation token, or owner approval.",
  "generation_safety_policy": {
    "manifest_url": "/assets/codee/codee-generation-policy.json",
    "rule_name": "No generation without enable",
    "plain_rule": "Open-source course pages teach and preview. Generated client HTML, hosted deploys, delivery rooms, and Stripe-connected outputs must begin through Codee.chat with an enable value, paid/session state, or owner-approved gate.",
    "free_allowed": ["course reading", "browser preview", "protected upload", "JSON proof packet", "route proof"],
    "gated": ["generated index.html export", "hosted route", "delivery room", "Stripe-connected output", "managed support"]
  },
  "codee_alpha_intelligence": {
    "meaning": "Alpha intelligence",
    "domains": [
      "science",
      "technology",
      "ethics",
      "society",
      "capital"
    ],
    "mission": "Help undercapitalized people build useful business tools, then reinvest mission gains into Invest In Vets.",
    "claim_rule": "Do not claim unrestricted human-level intelligence; define Ai K9 Codee as Alpha intelligence."
  },
  "accessibility_rule": "Courses use short text, large controls, proof-first steps, and voice-friendly wording for disabled-veteran learners.",
  "five_layer_course_model": [
    {
      "layer": 1,
      "id": "index-to-income-images",
      "name": "Index to Income Images",
      "lab_url": "/index2income/images/",
      "lesson": "Upload up to 50 screenshots, flyers, covers, logos, or proof images into CodeEmail so Codee can sort the starting assets.",
      "student_output": "A protected CodeEmail image batch with source assets ready for QRCodee, CodeeFlyer, and CodeeApp lessons.",
      "latest_upload_manifest": "/index2income/images/uploaded-images.json",
      "latest_upload_scan": {
        "uploaded_date": "2026-05-28",
        "expected_upload_count": 10,
        "stored_file_count": 9,
        "unique_file_count": 8,
        "duplicate_file_count": 1,
        "status": "review_ready_one_expected_file_missing_or_not_stored"
      },
      "proof_required": ["Upload image batch.", "Open CodeEmail message.", "Confirm each image has a protected download link.", "Check duplicate or missing image warnings before moving to Layer 2."]
    },
    {
      "layer": 2,
      "id": "hello-world-index",
      "name": "Hi World Index File",
      "lab_url": "/index2income/hello-world/",
      "lesson": "Create the smallest possible business folder: one index.html page that says Hi World and opens without a 404.",
      "student_output": "A simple index file and proof that a folder can become a public business page.",
      "proof_required": ["Create index.html.", "Open it locally or hosted.", "Confirm the route does not 404."]
    },
    {
      "layer": 3,
      "id": "qrcodee",
      "name": "QRCodee Creation",
      "lab_url": "/index2income/qrcodee/",
      "lesson": "Turn the working link into a branded QRCodee image with logo, color, destination, and scan proof.",
      "student_output": "A branded QR image tied to a working destination.",
      "proof_required": ["Create QR image.", "Scan from phone.", "Confirm it reaches the same page."]
    },
    {
      "layer": 4,
      "id": "service-layer",
      "name": "Service Lane",
      "lab_url": "/codee-course-teacher.html?course=codeeflyer",
      "lesson": "Choose a lane such as QRCodee, CodeeFlyer, CodeeApp, CodeeCard, CodeeBeeper, CodeeBlog, or Business Suite and turn it into a sellable offer with a referral link.",
      "student_output": "One service page, one CTA, one reference link, and a proof packet.",
      "proof_required": ["Choose service lane.", "Add offer and CTA.", "Attach referral code when selling.", "Save proof packet."]
    },
    {
      "layer": 5,
      "id": "high-ticket-consultation",
      "name": "High-Ticket Consultation Expansion",
      "lab_url": "/codee-chat.html?service=codee-business-suite&autostart=1&source=index2income-layer5",
      "lesson": "Escalate proven service clients into Codee Business Suite, consultation, WordPress help, or custom launch support.",
      "student_output": "A qualified consultation path for clients who want done-for-you work instead of only the open-source lesson.",
      "proof_required": ["Confirm client need.", "Show service proof.", "Use Stripe/Klarna checkout when ready.", "Deliver through the client delivery room."]
    }
  ],
  "affiliate_lane_model": {
    "public_url": "/codee-affiliate.html",
    "rule": "Affiliates share service reference links. Sales are tracked by ref tag and reviewed for weekly verified payouts.",
    "required_fields": ["name", "phone or social handle", "payout method", "payout destination", "service lane"],
    "payout_safety_rule": "Payouts are not promised instantly; they are approved weekly after sale verification, refund risk review, and owner payout status update."
  },
  "backend_connection_model": {
    "connect_command": "python3 codee.py connect ./qrcodee-course --service codeeqr --email owner@example.com",
    "activate_command": "python3 codee.py activate ./qrcodee-course --service codeeqr",
    "verify_command": "python3 codee.py verify ./qrcodee-course --service codeeqr",
    "hooks_command": "python3 codee.py hooks ./qrcodee-course --write",
    "connectors_command": "python3 codee.py connectors ./qrcodee-course --write",
    "platform_command": "python3 codee.py platform ./qrcodee-course --business \"My Business\" --service qrcodee --write --force",
    "agent_core_command": "python3 codee.py agent-core ./qrcodee-course --business \"My Business\" --service qrcodee --write --force",
    "accessibility_command": "python3 codee.py accessibility ./qrcodee-course --business \"My Business\" --service qrcodee --write --force",
    "memory_vault_command": "python3 codee.py memory-vault init ./qrcodee-course --business \"My Business\" --service qrcodee --force",
    "memory_add_command": "python3 codee.py memory-vault add ./qrcodee-course --kind preference --text \"Remember my preferred offer, colors, tone, and delivery style.\" --tag preference",
    "memory_search_command": "python3 codee.py memory-vault search ./qrcodee-course --query \"preferred offer colors delivery\"",
    "heartbeat_command": "python3 codee.py heartbeat ./qrcodee-course --service codeeqr --url https://clients.codee.chat/codee-cli.html",
    "task_command": "python3 codee.py task create ./qrcodee-course --title \"Make QRCodee live\" --service codeeqr --prompt \"Verify the QRCodee folder, connect it to backend, and prepare hosted activation.\" --send",
    "task_run_command": "python3 codee.py task run ./qrcodee-course --task-id <TASK_ID> --write-platform --route-check --target-url https://example.com --send-result",
    "agents_command": "python3 codee.py agents ./qrcodee-course --write",
    "permissions_command": "python3 codee.py permissions ./qrcodee-course --mode suggest --write",
    "memory_command": "python3 codee.py memory ./qrcodee-course --business \"My Business\" --service qrcodee --write",
    "mcp_command": "python3 codee.py mcp ./qrcodee-course --write",
    "payment_rule": "The CLI may scaffold learning folders and proof packets, but generated client HTML export, hosted public activation, delivery rooms, and managed support remain locked until Codee.chat enable, payment/session, or owner-approved gate is verified.",
    "backend_endpoints": [
      "/api/codee/cli/connect",
      "/api/codee/cli/connection/{connection_id}",
      "/api/codee/cli/timeline/{connection_id}",
      "/api/codee/cli/connectors",
      "/api/codee/cli/tasks",
      "/api/codee/cli/tasks/{task_id}",
      "/api/codee/cli/tasks/{task_id}/result",
      "/api/codee/cli/activate"
    ]
  },
  "training_enhancement_manifest_url": "/assets/codee/codee-training-enhancements.json",
  "proof_console_url": "/codee-training-proof.html",
  "proof_gate_version": "2026.05.26-training-proof-v1",
  "suite_smoke_command": "python3 codee.py course-smoke ./qrcodee-course",
  "proof_gates": [
    "folder_created",
    "route_opens",
    "asset_loads",
    "qr_scans",
    "cta_verified",
    "packet_saved",
    "hosting_decision"
  ],
  "core_courses": [
    {
      "id": "qrcodee",
      "name": "QRCodee Open-Source Course",
      "lab_url": "/index2income/qrcodee/",
      "cli_scaffold": "python3 codee.py course-init ./qrcodee-course --course qrcodee --business \"My Business\" --target-url https://example.com",
      "cli_connect": "python3 codee.py connect ./qrcodee-course --service codeeqr --email owner@example.com",
      "cli_activate": "python3 codee.py activate ./qrcodee-course --service codeeqr",
      "cli_verify": "python3 codee.py verify ./qrcodee-course --service codeeqr",
      "cli_smoke": "python3 codee.py course-smoke ./qrcodee-course",
      "cli_complete": "python3 codee.py trainee-progress . --course qrcodee --status complete --proof-url \"https://example.com\"",
      "lesson": "Create one QR image. Connect one destination. Prove it scans.",
      "student_output": "A branded QR path, scan checklist, proof page, and locked activation packet.",
      "paid_path": "QRCodee done-for-you image, hosted landing page, delivery room, and route scans.",
      "proof_required": [
        "Scan QR from a phone.",
        "Tap QR image on hosted page.",
        "Confirm target route opens.",
        "Save exported packet."
      ]
    },
    {
      "id": "codeeflyer",
      "name": "Codee Flyer Open-Source Course",
      "lab_url": "/index2income/codeeflyer/",
      "cli_scaffold": "python3 codee.py course-init ./codeeflyer-course --course codeeflyer --business \"My Business\" --target-url https://example.com",
      "cli_connect": "python3 codee.py connect ./codeeflyer-course --service codeeflyer --email owner@example.com",
      "cli_activate": "python3 codee.py activate ./codeeflyer-course --service codeeflyer",
      "cli_verify": "python3 codee.py verify ./codeeflyer-course --service codeeflyer",
      "cli_smoke": "python3 codee.py course-smoke ./codeeflyer-course",
      "cli_complete": "python3 codee.py trainee-progress . --course codeeflyer --status complete --proof-url \"https://example.com\"",
      "lesson": "Drag one image, write one offer, add one CTA, and prove the route.",
      "student_output": "One flyer folder with index.html, image assets, CTA copy, route checklist, and locked activation packet.",
      "paid_path": "Codee Flyer 100 or Codee Flyer 250 with hosting, QRCodee styling, and delivery support.",
      "proof_required": [
        "Confirm flyer image is readable on mobile.",
        "Tap CTA button.",
        "Scan QR image.",
        "Confirm CTA and QR open the same route."
      ]
    },
    {
      "id": "codeeapp",
      "name": "Codee App Open-Source Course",
      "lab_url": "/index2income/codeeapp/",
      "cli_scaffold": "python3 codee.py course-init ./codeeapp-course --course codeeapp --business \"My Business\" --target-url https://example.com",
      "cli_connect": "python3 codee.py connect ./codeeapp-course --service codeeapp250 --email owner@example.com",
      "cli_activate": "python3 codee.py activate ./codeeapp-course --service codeeapp250",
      "cli_verify": "python3 codee.py verify ./codeeapp-course --service codeeapp250",
      "cli_smoke": "python3 codee.py course-smoke ./codeeapp-course",
      "cli_complete": "python3 codee.py trainee-progress . --course codeeapp --status complete --proof-url \"https://example.com\"",
      "lesson": "Turn one guide into an app-style page with cover, bullets, QR, and buyer path.",
      "student_output": "A guidebook app folder with cover art, buyer action, QR path, delivery notes, and locked activation packet.",
      "paid_path": "Codee App 250 with client upload, hosted guidebook view, Stripe buyer path, and delivery room.",
      "proof_required": [
        "Confirm cover image loads.",
        "Tap buyer or download action.",
        "Scan QR return path.",
        "Confirm buyer lands on download or delivery route."
      ]
    }
  ],
  "advanced_service_courses": [
    {
      "id": "codeecard",
      "name": "Codee Card Service Course",
      "why": "A profile card is the easiest personal-brand proof lane after QR, flyer, and app.",
      "paid_path": "Done-for-you Codee Card with booking, message path, resume/profile blocks, and hosted proof."
    },
    {
      "id": "delivery-room",
      "name": "Delivery Room + Support CLI Course",
      "why": "Clients need a permanent place to return, request edits, view products, and prove what they bought.",
      "paid_path": "Hosted delivery room, Codee support request packets, scans, and 30-day support."
    },
    {
      "id": "booking-room",
      "name": "Booking + Checkout Room Course",
      "why": "Many businesses need a consultation or event date flow before a full site.",
      "paid_path": "Embedded booking or Stripe-hosted payment flow connected to the client page."
    },
    {
      "id": "business-suite",
      "name": "Codee Business Suite Course",
      "why": "This teaches how the smaller lanes combine into one client business package.",
      "paid_path": "Codee Business Suite with QRCodee, flyers, Codee App, Codee Blog, Codee Card, shell site, and support."
    }
  ]
}
