{
  "id": "studio-a7182bdc-151c-4bc6-8559-f5d04ef4136f",
  "scope": "studio_project",
  "source_of_truth": "supabase.studio_artifacts",
  "source_path": "studio_artifacts/a7182bdc-151c-4bc6-8559-f5d04ef4136f",
  "source_kind": "supabase_json",
  "visibility": "internal",
  "renderer_id": "design_doc.dreamborn-forge.generated.v1",
  "design_system": "dreamborn-design-system:forge",
  "generated_at": "2026-05-10T18:19:39.273Z",
  "artifact_type": "v1-data-model-spec",
  "schema_version": "3",
  "title": "Limitless V1 Lean Thought-to-Action Data Model",
  "summary": "v1-data-model-spec artifact · for Limitless OS · status draft",
  "status": "draft",
  "version": 3,
  "phase_id": null,
  "project_id": "07dee66f-8143-4f4d-9af9-b1ed413d2767",
  "project_slug": "limitless-limitless-os-07dee66f",
  "project_title": "Limitless OS",
  "client_id": "limitless",
  "platform_project_id": null,
  "created_at": "2026-05-10T02:01:23.240419+00:00",
  "updated_at": "2026-05-10T02:23:19.448+00:00",
  "format_source": "supabase_json",
  "content_shape": [
    "title",
    "source",
    "purpose",
    "entities",
    "client_id",
    "project_id",
    "updated_at",
    "hcs_mapping",
    "project_name",
    "artifact_type",
    "status_models",
    "schema_version",
    "output_type_map",
    "refinement_note",
    "lean_v1_entities",
    "design_principles",
    "related_artifacts",
    "lifecycle_examples",
    "collapsed_entity_map",
    "open_design_questions"
  ],
  "content_data": {
    "title": "Limitless V1 Lean Thought-to-Action Data Model",
    "source": "atlas-codex",
    "purpose": "Design the V1 data model for turning captured thoughts into memory, decisions, tasks, projects, drafts, approvals, workflow rules, questions, outcomes, and learning updates. This is design-only and does not create database objects yet.",
    "entities": [
      {
        "name": "thought",
        "notes": "Existing Limitless MCP stores source=limitless-mcp and tag=limitless-os.",
        "purpose": "Raw captured input from Seth/ChatGPT/Claude/voice/email. The source of future memory and work.",
        "key_fields": [
          "id",
          "content",
          "source",
          "captured_by",
          "captured_at",
          "tags",
          "metadata",
          "embedding",
          "project_id"
        ],
        "relationships": [
          "has many thought_classifications",
          "has many thought_outputs",
          "may link to projects/tasks/drafts/decisions"
        ],
        "source_of_truth": "Projects Supabase public.brain_memory in current MCP implementation; future app model may wrap this with Limitless-specific tables/views."
      },
      {
        "name": "thought_classification",
        "notes": "One thought can have multiple classifications and lanes.",
        "purpose": "Agent-generated interpretation of what a thought might become.",
        "key_fields": [
          "id",
          "thought_id",
          "classifier_agent_id",
          "output_types",
          "lanes",
          "topics",
          "sensitivity",
          "confidence",
          "reasoning_summary",
          "created_at"
        ],
        "relationships": [
          "belongs to thought",
          "feeds thought_outputs"
        ],
        "source_of_truth": "Limitless V1 app/read model"
      },
      {
        "name": "thought_output",
        "notes": "This is the join record that explains how one thought became multiple things.",
        "purpose": "Concrete routed result proposed or created from a thought.",
        "key_fields": [
          "id",
          "thought_id",
          "classification_id",
          "output_type",
          "entity_type",
          "entity_id",
          "status",
          "route_reason",
          "created_by_agent_id",
          "created_at"
        ],
        "relationships": [
          "belongs to thought",
          "points to memory_item/decision/task/project/draft/workflow_rule_candidate/question"
        ],
        "source_of_truth": "Limitless V1 app/read model"
      },
      {
        "name": "memory_item",
        "notes": "Canonical operating principles require Seth approval.",
        "purpose": "Structured durable context derived from a thought or outcome.",
        "key_fields": [
          "id",
          "source_thought_id",
          "memory_type",
          "content",
          "topics",
          "canonical",
          "sensitivity",
          "created_by_agent_id",
          "approved_by",
          "created_at"
        ],
        "relationships": [
          "may reference thoughts",
          "may inform agents",
          "may link to decisions/projects/workflow rules"
        ],
        "source_of_truth": "Projects brain_memory and/or future Limitless memory read model"
      },
      {
        "name": "decision",
        "notes": "Strategic/business decisions are Seth-owned.",
        "purpose": "A recorded direction, priority, rule, or tradeoff with rationale.",
        "key_fields": [
          "id",
          "source_thought_ids",
          "title",
          "decision",
          "rationale",
          "owner",
          "decision_date",
          "status",
          "supersedes_decision_id",
          "related_project_id"
        ],
        "relationships": [
          "may belong to project",
          "may create tasks/workflow rules",
          "may update memory"
        ],
        "source_of_truth": "Studio artifact or Limitless decision read model"
      },
      {
        "name": "task",
        "notes": "Task = do this. It should be small enough to complete or route in one work cycle.",
        "purpose": "A concrete action for an agent or human. Tasks are the execution unit.",
        "key_fields": [
          "id",
          "hcs_topic",
          "hcs_event_id",
          "source_thought_ids",
          "project_id",
          "lane",
          "task_type",
          "summary",
          "assigned_agent_id",
          "human_owner",
          "priority",
          "due_timing",
          "sensitivity",
          "approval_required",
          "status"
        ],
        "relationships": [
          "may belong to project",
          "may produce draft/approval/outcome",
          "may originate from thought_output"
        ],
        "source_of_truth": "HCS queue for claim/audit; Supabase read model for current state"
      },
      {
        "name": "project",
        "notes": "Project = build or operate this system. Seth approves promotion from thought/task to project.",
        "purpose": "A larger initiative made of tasks, decisions, drafts, workflow rules, milestones, risks, and approvals.",
        "key_fields": [
          "id",
          "title",
          "goal",
          "why_it_matters",
          "owner",
          "status",
          "source_thought_ids",
          "success_criteria",
          "risks",
          "approval_gates",
          "created_at"
        ],
        "relationships": [
          "has many tasks",
          "has many decisions",
          "has many drafts",
          "has many workflow_rule_candidates",
          "has many outcomes"
        ],
        "source_of_truth": "Studio project/artifact when canonical; Limitless app read model for operational project cards"
      },
      {
        "name": "draft",
        "notes": "All V1 drafts require approval before external send/publish.",
        "purpose": "Language generated for review: message, script, post, newsletter, education snippet, SOP text, or brief.",
        "key_fields": [
          "id",
          "source_thought_ids",
          "task_id",
          "project_id",
          "draft_type",
          "audience",
          "content",
          "tone_notes",
          "risk_flags",
          "created_by_agent_id",
          "status"
        ],
        "relationships": [
          "belongs to task/project optionally",
          "requires approval_request before external use",
          "may create memory_update after edits"
        ],
        "source_of_truth": "Limitless V1 app/read model; final canonical docs may become Studio artifacts"
      },
      {
        "name": "approval_request",
        "notes": "Approval owners include Seth, Betsy/front office, clinician/performance team, and privacy/guardrail review.",
        "purpose": "Human review request for a draft, task, project promotion, workflow rule, or sensitive memory update.",
        "key_fields": [
          "id",
          "target_entity_type",
          "target_entity_id",
          "approval_owner",
          "approval_reason",
          "allowed_actions",
          "status",
          "reviewed_by",
          "reviewed_at",
          "edits",
          "decision_note"
        ],
        "relationships": [
          "belongs to draft/task/project/workflow_rule/memory item",
          "creates outcome"
        ],
        "source_of_truth": "HCS review queue plus Supabase read model"
      },
      {
        "name": "workflow_rule_candidate",
        "notes": "Automation_mode values: manual_only, draft_only, human_approved, eligible_for_future_automation.",
        "purpose": "Proposed repeatable rule, SOP, checklist, cadence, or automation boundary discovered from thoughts/outcomes.",
        "key_fields": [
          "id",
          "source_thought_ids",
          "title",
          "rule_statement",
          "trigger",
          "action",
          "owner",
          "automation_mode",
          "approval_required",
          "status",
          "risk_flags"
        ],
        "relationships": [
          "may belong to project",
          "may create tasks",
          "may become SOP/artifact after approval"
        ],
        "source_of_truth": "Limitless app/read model until approved; approved rules may become Studio artifacts/SOPs"
      },
      {
        "name": "clarification_question",
        "notes": "Questions prevent weak assumptions from becoming bad tasks.",
        "purpose": "A question generated when thought intent, owner, sensitivity, or next action is unclear.",
        "key_fields": [
          "id",
          "source_thought_id",
          "question",
          "asked_to",
          "reason",
          "status",
          "answer",
          "answered_at",
          "followup_output_id"
        ],
        "relationships": [
          "belongs to thought",
          "may produce classification/output after answer"
        ],
        "source_of_truth": "Limitless app/read model / HCS human queue"
      },
      {
        "name": "outcome",
        "notes": "Outcomes close the learning loop.",
        "purpose": "What happened after approval/action: accepted, edited, rejected, sent, published, scheduled, converted, deferred, escalated, or became SOP.",
        "key_fields": [
          "id",
          "entity_type",
          "entity_id",
          "outcome_type",
          "outcome_summary",
          "human_actor",
          "agent_id",
          "hcs_event_id",
          "created_at",
          "metrics"
        ],
        "relationships": [
          "belongs to any output entity",
          "may create memory_update",
          "may update project/task status"
        ],
        "source_of_truth": "Limitless app/read model with optional HCS completion event refs"
      },
      {
        "name": "memory_update",
        "notes": "Examples: Seth prefers shorter CTAs, Betsy wants two follow-up attempts before escalation, this content claim needs clinician review.",
        "purpose": "Structured learning created from an outcome, edit, rejection, or repeated pattern.",
        "key_fields": [
          "id",
          "source_outcome_id",
          "update_type",
          "content",
          "topics",
          "applies_to_agents",
          "approved_by",
          "created_at"
        ],
        "relationships": [
          "belongs to outcome",
          "informs future classifications/drafts/routing"
        ],
        "source_of_truth": "Projects brain_memory / Limitless memory model"
      }
    ],
    "client_id": "limitless",
    "project_id": "07dee66f-8143-4f4d-9af9-b1ed413d2767",
    "updated_at": "2026-05-10T02:23:19.448Z",
    "hcs_mapping": {
      "principle": "HCS carries queue/audit pointers, not sensitive bodies. Full content lives in authorized stores/read models.",
      "hcs_payload_fields": [
        "task_id",
        "role_topic_slug",
        "entity_type",
        "entity_id",
        "project_id",
        "sensitivity",
        "opaque_source_refs",
        "created_at"
      ],
      "forbidden_in_hcs_payloads": [
        "PHI body text",
        "payer details",
        "patient financial details",
        "full draft text when sensitive",
        "staff-sensitive content"
      ]
    },
    "project_name": "Limitless OS",
    "artifact_type": "v1-data-model-spec",
    "status_models": {
      "task_status": [
        "queued",
        "claimed",
        "drafted",
        "awaiting_approval",
        "approved",
        "completed",
        "deferred",
        "rejected",
        "escalated",
        "blocked"
      ],
      "draft_status": [
        "drafted",
        "awaiting_approval",
        "approved",
        "edited",
        "rejected",
        "published_or_sent",
        "archived"
      ],
      "project_status": [
        "proposed",
        "approved",
        "active",
        "paused",
        "completed",
        "cancelled"
      ],
      "approval_status": [
        "requested",
        "approved",
        "approved_with_edits",
        "rejected",
        "deferred",
        "escalated"
      ],
      "workflow_rule_status": [
        "candidate",
        "under_review",
        "approved_manual",
        "approved_draft_only",
        "approved_human_gated",
        "rejected",
        "superseded"
      ]
    },
    "schema_version": "3",
    "output_type_map": [
      {
        "approval": "none unless sensitive/canonical",
        "use_when": "The thought is useful context but not actionable yet.",
        "output_type": "memory",
        "primary_entity": "memory_item"
      },
      {
        "approval": "Seth for strategic/business decisions",
        "use_when": "The thought records a direction, tradeoff, or priority.",
        "output_type": "decision",
        "primary_entity": "decision"
      },
      {
        "approval": "depends on action sensitivity",
        "use_when": "There is one clear next action someone can do.",
        "output_type": "task",
        "primary_entity": "task"
      },
      {
        "approval": "Seth approves project promotion",
        "use_when": "The thought implies a multi-step system, campaign, workflow, or initiative.",
        "output_type": "project",
        "primary_entity": "project"
      },
      {
        "approval": "required before send/publish/use externally",
        "use_when": "The next useful output is language or content.",
        "output_type": "draft",
        "primary_entity": "draft"
      },
      {
        "approval": "Seth/Betsy or clinician depending on domain",
        "use_when": "The thought describes repeatable behavior or an automation candidate.",
        "output_type": "sop_workflow_rule",
        "primary_entity": "workflow_rule_candidate"
      },
      {
        "approval": "answered by assigned human owner",
        "use_when": "Intent, owner, risk, or next action is unclear.",
        "output_type": "question",
        "primary_entity": "clarification_question"
      }
    ],
    "refinement_note": "Version 2 collapses conceptual entities that do not need independent V1 lifecycles. The goal is fewer tables/read models while preserving all behavior from the original design.",
    "lean_v1_entities": [
      {
        "name": "thoughts",
        "notes": "Current implementation source is Projects public.brain_memory through the Limitless MCP.",
        "purpose": "Raw captured input from Seth/ChatGPT/Claude/voice/email. Source material for routing, memory, tasks, projects, and drafts.",
        "lifecycle": [
          "captured",
          "classified/routed",
          "referenced",
          "archived if needed"
        ],
        "key_fields": [
          "id",
          "content",
          "source",
          "captured_by",
          "captured_at",
          "tags",
          "metadata",
          "embedding",
          "project_id"
        ]
      },
      {
        "name": "thought_routes",
        "notes": "Replaces thought_classification and thought_output.",
        "purpose": "Combined classification and output-routing record. Represents what a thought may become and what entity was created if accepted.",
        "lifecycle": [
          "proposed",
          "accepted",
          "rejected",
          "superseded",
          "created_entity"
        ],
        "key_fields": [
          "id",
          "thought_id",
          "route_type",
          "lane",
          "topics",
          "sensitivity",
          "confidence",
          "reasoning_summary",
          "agent_id",
          "status",
          "entity_type",
          "entity_id",
          "human_owner",
          "created_at"
        ],
        "route_types": [
          "memory",
          "decision",
          "task",
          "project",
          "draft",
          "sop_workflow_rule",
          "question"
        ]
      },
      {
        "name": "tasks",
        "notes": "Replaces standalone clarification_question. Task = do this.",
        "purpose": "Concrete execution unit for agents or humans. Also represents clarification questions.",
        "lifecycle": [
          "queued",
          "claimed",
          "drafted",
          "awaiting_approval",
          "approved",
          "completed",
          "deferred",
          "rejected",
          "escalated",
          "blocked"
        ],
        "key_fields": [
          "id",
          "hcs_topic",
          "hcs_event_id",
          "source_thought_ids",
          "project_id",
          "lane",
          "task_type",
          "summary",
          "assigned_agent_id",
          "human_owner",
          "priority",
          "due_timing",
          "sensitivity",
          "approval_required",
          "status"
        ],
        "task_types": [
          "front_office_action",
          "content_action",
          "approval",
          "clarification",
          "review",
          "sop_candidate",
          "project_step"
        ]
      },
      {
        "name": "projects",
        "notes": "Project = build or operate this system. Seth approves promotion to project.",
        "purpose": "Multi-step initiative/container for systems, campaigns, workflows, templates, or operating improvements.",
        "lifecycle": [
          "proposed",
          "approved",
          "active",
          "paused",
          "completed",
          "cancelled"
        ],
        "key_fields": [
          "id",
          "title",
          "goal",
          "why_it_matters",
          "owner",
          "status",
          "source_thought_ids",
          "success_criteria",
          "risks",
          "approval_gates",
          "created_at"
        ]
      },
      {
        "name": "drafts",
        "notes": "Workflow/SOP candidates can be drafts when they are proposed text rather than multi-step projects.",
        "purpose": "Generated language or structured artifact body for review: message, script, social post, newsletter, education snippet, SOP text, brief, or project note.",
        "lifecycle": [
          "drafted",
          "awaiting_approval",
          "approved",
          "edited",
          "rejected",
          "published_or_sent",
          "archived"
        ],
        "key_fields": [
          "id",
          "source_thought_ids",
          "task_id",
          "project_id",
          "draft_type",
          "audience",
          "content",
          "tone_notes",
          "risk_flags",
          "created_by_agent_id",
          "status",
          "version"
        ]
      },
      {
        "name": "approval_requests",
        "notes": "Approval owners: Seth, Betsy/front office, clinician/performance team, privacy/guardrail review.",
        "purpose": "Human review request for a draft, task, project promotion, sensitive memory item, or automation boundary decision.",
        "lifecycle": [
          "requested",
          "approved",
          "approved_with_edits",
          "rejected",
          "deferred",
          "escalated"
        ],
        "key_fields": [
          "id",
          "target_entity_type",
          "target_entity_id",
          "approval_owner",
          "approval_reason",
          "allowed_actions",
          "status",
          "reviewed_by",
          "reviewed_at",
          "edits",
          "decision_note"
        ]
      },
      {
        "name": "outcomes",
        "notes": "Outcomes close the loop and feed memory_items.",
        "purpose": "What happened after action/review: accepted, edited, rejected, sent, published, scheduled, converted, deferred, escalated, became SOP, or became project.",
        "lifecycle": [
          "recorded",
          "learned_from",
          "archived"
        ],
        "key_fields": [
          "id",
          "entity_type",
          "entity_id",
          "outcome_type",
          "outcome_summary",
          "human_actor",
          "agent_id",
          "hcs_event_id",
          "created_at",
          "metrics"
        ]
      },
      {
        "name": "memory",
        "notes": "Replaces memory_items naming. Raw MCP capture remains public.brain_memory / limitless.thoughts. RedKey platform memory remains public.agent_memory. Product-scoped reusable memory is limitless.memory.",
        "purpose": "Cleaned, structured, reusable product memory for Limitless OS agents. This is distinct from raw MCP thought capture and RedKey platform agent_memory.",
        "lifecycle": [
          "proposed",
          "active",
          "canonical",
          "superseded",
          "archived"
        ],
        "key_fields": [
          "id",
          "source_type",
          "source_id",
          "memory_type",
          "content",
          "topics",
          "applies_to_agents",
          "canonical",
          "status",
          "sensitivity",
          "approved_by",
          "created_at"
        ],
        "memory_types": [
          "context",
          "operating_principle",
          "decision",
          "preference",
          "approved_language",
          "rejection_learning",
          "workflow_learning",
          "content_theme"
        ],
        "product_name": "Limitless Memory",
        "code_domain_name": "limitlessMemory",
        "database_design_name": "limitless.memory"
      }
    ],
    "design_principles": [
      "Separate entities only when they have materially different lifecycle, ownership, approval, or query needs.",
      "Thoughts remain the raw source; routes explain what the system thinks a thought should become.",
      "Tasks are the execution unit; projects are the multi-step initiative/container.",
      "Drafts, approvals, outcomes, and memory each have separate lifecycles and stay separate.",
      "Clarifying questions are human tasks, not a separate entity.",
      "Decisions are memory items in V1 unless they become project-level decisions later.",
      "Workflow/SOP candidates are drafts or projects in V1; approved rules can later become canonical artifacts."
    ],
    "related_artifacts": {
      "agent_team_spec": "36c57e41-dbda-434b-ba2b-42e13cff1c29",
      "v1_agent_contracts": "75daba90-3cc4-4f30-bbc8-046dba537a55",
      "v1_hybrid_loop_spec": "19911d80-32bc-4890-b033-c028aa0c0122",
      "implementation_roadmap": "3bbfdbc8-0578-4542-8d64-8f64886b60a2"
    },
    "lifecycle_examples": [
      {
        "thought": "Betsy should not have to remember to follow up with unscheduled evals.",
        "records_created": [
          "thought",
          "thought_classification: task + project + sop_workflow_rule",
          "project: Unscheduled Eval Follow-Up System",
          "tasks: define cadence, draft templates, decide approval rules, identify source list, test with historical evals",
          "workflow_rule_candidate: unscheduled eval follow-up cadence",
          "approval_request: Seth/Betsy approve workflow rule",
          "outcome and memory_update after review"
        ]
      },
      {
        "thought": "Runners think cadence fixes everything, but it is usually load tolerance.",
        "records_created": [
          "thought",
          "thought_classification: memory + draft + patient_education",
          "memory_item: clinical/performance philosophy note",
          "draft: social post/reel script",
          "approval_request: Seth plus clinical review if claim-heavy",
          "outcome: edited/published/deferred",
          "memory_update: approved phrasing and claim boundary"
        ]
      }
    ],
    "collapsed_entity_map": [
      {
        "reason": "Classification and routing are one lifecycle in V1: proposed route, accepted/rejected, optional entity created.",
        "original": [
          "thought_classification",
          "thought_output"
        ],
        "replacement": "thought_routes"
      },
      {
        "reason": "Both are durable product memory with different source_type/memory_type values, scoped to Limitless OS.",
        "original": [
          "memory_item",
          "memory_update"
        ],
        "replacement": "limitless.memory"
      },
      {
        "reason": "A question is human work with owner, status, and outcome.",
        "original": [
          "clarification_question"
        ],
        "replacement": "tasks where task_type=clarification"
      },
      {
        "reason": "A proposed SOP text is a draft; a repeatable system is a project. Approved canonical rules can become artifacts later.",
        "original": [
          "workflow_rule_candidate"
        ],
        "replacement": "drafts or projects"
      },
      {
        "reason": "Most V1 decisions are durable Limitless product memory. Split later only if decisions need independent approval/versioning lifecycle.",
        "original": [
          "decision"
        ],
        "replacement": "limitless.memory where memory_type=decision"
      }
    ],
    "open_design_questions": [
      "Should V1 projects be Studio artifacts immediately, or lightweight operational project cards that only become Studio artifacts after Seth approval?",
      "Should content projects and operational projects share the same project entity or use typed project categories?",
      "Which approval events should write back into brain_memory as durable learning versus stay only in operational logs?",
      "What is the first external source after MCP: GoHighLevel/CM Hub, PT Everywhere export, Gmail, call logs, or manual queue entry?"
    ],
    "task_vs_project_rules": [
      {
        "rule": "Create a task when the next action is concrete and can be done in one work cycle.",
        "output": "task",
        "example_thought": "Draft a text for unscheduled eval follow-up this week."
      },
      {
        "rule": "Create a project when the thought implies a repeatable system, campaign, workflow, or multi-step build.",
        "output": "project with tasks",
        "example_thought": "Betsy should not have to remember unscheduled eval follow-ups."
      },
      {
        "rule": "Create both when there is a clear immediate action and a larger system hiding behind it.",
        "output": "content draft task plus lead-nurture project candidate",
        "example_thought": "We need a better knee pain post and a follow-up process for people who ask about it."
      },
      {
        "rule": "Ask a question when project scope is implied but success criteria or owner is unclear.",
        "output": "clarification_question",
        "example_thought": "We need to get more aggressive with follow-up."
      }
    ],
    "naming_refinement_note": "Version 3 renames memory_items to product-scoped Limitless Memory. Human/product name is Limitless Memory; database design name is limitless.memory; code/domain name is limitlessMemory.",
    "implementation_guidance": [
      "Do not implement the original 13-entity model for V1 unless a lifecycle need emerges.",
      "Use thought_routes as the key traceability table from raw thought to created work.",
      "Use tasks for clarification questions, approval work, and project steps.",
      "Use limitless.memory for decisions and learning until decisions need their own lifecycle.",
      "Keep raw MCP captures in public.brain_memory / limitless.thoughts until curated into Limitless Memory.",
      "Keep HCS payloads as opaque pointers to tasks/projects/drafts/approvals, never sensitive bodies."
    ],
    "memory_scope_distinction": {
      "rule": "Do not treat raw Seth brainstorming as canonical Limitless Memory until it is cleaned, structured, and optionally approved.",
      "raw_mcp_capture": "public.brain_memory / limitless.thoughts",
      "redkey_platform_memory": "public.agent_memory",
      "product_scoped_reusable_memory": "limitless.memory"
    },
    "final_recommended_v1_model": [
      "thoughts",
      "thought_routes",
      "tasks",
      "projects",
      "drafts",
      "approval_requests",
      "outcomes",
      "memory"
    ],
    "revised_lifecycle_examples": [
      {
        "thought": "Betsy should not have to remember to follow up with unscheduled evals.",
        "records_created": [
          "thought",
          "thought_route: route_type=project, lane=front_office, status=accepted",
          "project: Unscheduled Eval Follow-Up System",
          "tasks: define cadence, draft templates, decide approval rules, identify source list, test with historical evals",
          "draft: proposed SOP/follow-up cadence text",
          "approval_request: Seth/Betsy approve workflow",
          "outcome",
          "memory_item: approved workflow preference or rejection learning"
        ]
      },
      {
        "thought": "Runners think cadence fixes everything, but it is usually load tolerance.",
        "records_created": [
          "thought",
          "thought_routes: memory + draft + review as separate route records",
          "memory_item: clinical/performance philosophy note",
          "draft: social post/reel script",
          "approval_request: Seth plus clinician review if claim-heavy",
          "outcome",
          "memory_item: approved phrasing and claim boundary"
        ]
      }
    ],
    "revised_task_vs_project_rules": [
      {
        "rule": "Create a task when the next action is concrete and can be completed or routed in one work cycle.",
        "entity": "tasks",
        "example": "Draft a text for unscheduled eval follow-up this week."
      },
      {
        "rule": "Create a project when the thought implies a repeatable system, campaign, workflow, template set, or multi-step build.",
        "entity": "projects plus child tasks",
        "example": "Betsy should not have to remember unscheduled eval follow-ups."
      },
      {
        "rule": "Create both when there is an immediate action and a larger system hiding behind it.",
        "entity": "task for draft plus project candidate for lead nurture",
        "example": "We need a knee pain post and a follow-up process for people who ask about it."
      },
      {
        "rule": "Create a clarification task when scope, owner, or success criteria are unclear.",
        "entity": "tasks where task_type=clarification",
        "example": "We need to get more aggressive with follow-up."
      }
    ],
    "final_recommended_database_design": [
      "limitless.thoughts",
      "limitless.thought_routes",
      "limitless.tasks",
      "limitless.projects",
      "limitless.drafts",
      "limitless.approval_requests",
      "limitless.outcomes",
      "limitless.memory"
    ],
    "final_recommended_code_domain_names": [
      "thoughts",
      "thoughtRoutes",
      "tasks",
      "projects",
      "drafts",
      "approvalRequests",
      "outcomes",
      "limitlessMemory"
    ],
    "recommended_implementation_order_after_design": [
      "Define contracts/tests for thought_classification and thought_output routing.",
      "Create operational read-model tables for tasks, projects, drafts, approvals, outcomes, and memory_updates.",
      "Keep current MCP brain_memory as thought capture source.",
      "Add HCS queue projection only after local read model is validated.",
      "Build human review surfaces before any external send/publish automation."
    ]
  },
  "sections": [
    {
      "title": "Artifact Shape",
      "level": 2,
      "body": "- title: Limitless V1 Lean Thought-to-Action Data Model\n- source: atlas-codex\n- purpose: Design the V1 data model for turning captured thoughts into memory, decisions, tasks, projects, drafts, approvals, workflow rules, questions, outcomes, and learning updates. This is design-only and does not create database objects yet.\n- entities: 13 items\n- client id: limitless\n- project id: 07dee66f-8143-4f4d-9af9-b1ed413d2767\n- updated at: 2026-05-10T02:23:19.448Z\n- hcs mapping: principle: string, hcs_payload_fields: object, forbidden_in_hcs_payloads: object\n- project name: Limitless OS\n- artifact type: v1-data-model-spec\n- status models: task_status: object, draft_status: object, project_status: object, approval_status: object, workflow_rule_status: object\n- schema version: 3"
    }
  ],
  "html_path": "projects/limitless-limitless-os-07dee66f/artifacts/v1-data-model-spec-a7182bdc.html",
  "json_path": "projects/limitless-limitless-os-07dee66f/artifacts/v1-data-model-spec-a7182bdc.json"
}