@quietloudlab/ai-interaction-atlas 1.0.2 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/data.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/data/meta.ts","../src/data/layers.ts","../src/data/ai_tasks.ts","../src/data/human_tasks.ts","../src/data/system_tasks.ts","../src/data/artifacts.ts","../src/data/constraints.ts","../src/data/touchpoints.ts","../src/data/templates.ts","../src/data/examples.ts","../src/data.ts"],"names":[],"mappings":"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","file":"data.mjs","sourcesContent":["\nimport { Meta } from '../types';\n\nexport const META: Meta = {\n title: \"AI Interaction Atlas\",\n description: \"A comprehensive library of interaction patterns for designing human-centered AI systems.\",\n version: \"1.0\",\n schema_version: \"1.1.0\"\n};\n","\nimport { Layer } from '../types';\n\nexport const LAYERS: Layer[] = [\n {\n id: \"layer_inbound\",\n name: \"Inbound\",\n slug: \"Sensing\",\n role: \"Sensing & Structuring\",\n description: \"How the system perceives and organizes input from the world.\",\n color: \"#4A8A3F\",\n guidance: {\n when_to_use: \"When handling raw user input or environmental data.\",\n typical_position: \"Start of flow.\",\n red_flags: [\"Ignoring noise\", \"Assuming structured input\"]\n }\n },\n {\n id: \"layer_internal\",\n name: \"Internal\",\n slug: \"Reasoning\",\n role: \"Reasoning & Deciding\",\n description: \"The cognitive processing and business logic application.\",\n color: \"#3D6B8F\",\n guidance: {\n when_to_use: \"For complex decision making or analysis.\",\n typical_position: \"Middle of flow.\",\n red_flags: [\"Black box logic\", \"Undefined confidence thresholds\"]\n }\n },\n {\n id: \"layer_outbound\",\n name: \"Outbound\",\n slug: \"Expressing\",\n role: \"Expressing & Creating\",\n description: \"Generating outputs and presenting them to the user.\",\n color: \"#8F3D3D\",\n guidance: {\n when_to_use: \"When presenting results.\",\n typical_position: \"End of flow.\",\n red_flags: [\"Overwhelming detail\", \"Hallucinations\"]\n }\n },\n {\n id: \"layer_interactive\",\n name: \"Interactive\",\n slug: \"Learning\",\n role: \"Acting & Learning\",\n description: \"Feedback loops, continuous improvement, and environmental interaction.\",\n color: \"#8F6E3D\",\n guidance: {\n when_to_use: \"For systems that adapt over time or act in environments.\",\n typical_position: \"Continuous loop.\",\n red_flags: [\"Feedback ignoring\", \"Model drift\", \"Unsafe actions\"]\n }\n }\n];\n","\nimport { AiTask } from '../types';\n\nexport const AI_TASKS: AiTask[] = [\n // --- Inbound ---\n {\n id: \"task_detect\",\n layer_id: \"layer_inbound\",\n name: \"Detect\",\n slug: \"detect\",\n task_type: \"ai\",\n elevator_pitch: \"Locate and identify objects in image, video, audio, or other data.\",\n example_usage: \"Spotting pedestrians in a video feed.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_image\", label: \"Image\" }], \n optional: [{ id: \"data_video\", label: \"Video\" }, { id: \"data_video_stream\", label: \"Video Stream\" }, { id: \"data_point_cloud\", label: \"LiDAR/3D\" }, { id: \"data_multimodal\", label: \"AV Stream\" }, { id: \"data_audio_stream\", label: \"Audio Stream\" }] \n }, \n outputs: { \n primary: { id: \"data_bbox\", label: \"Detections\", isArray: true }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }, { id: \"data_heatmap\", label: \"Attention Map\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"optional\" },\n ux_notes: { risk: \"False negatives and false positives\", tip: \"Visualize bounding boxes with confidence scores\", anti_patterns: [\"Using in safety-critical applications without human verification\"] },\n capabilities: [\n { name: \"Object Detection\", tag: \"object-detection\", example: \"Camera identifying and boxing every vehicle entering a parking lot\" },\n { name: \"Keypoint Detection\", tag: \"keypoint-detection\", example: \"Tracking shoulder, elbow, and wrist positions during a pushup\" },\n { name: \"Zero-Shot Detection\", tag: \"zero-shot-object-detection\", example: \"Finding cats in photos without ever training on cat images\" },\n { name: \"Voice Activity Detection\", tag: \"voice-activity-detection\", example: \"Video conferencing tool unmuting a mic when user starts speaking\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"identifying objects, sounds, and text across uploaded images, audio, and documents\" }\n ],\n relations: [\n { target_id: \"task_monitor\", type: \"enables\", strength: \"strong\", reason: \"Detections are the raw signals that monitoring systems aggregate.\" },\n { target_id: \"task_classify\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Detected objects (crops) are often passed to a classifier for finer detail.\" },\n { target_id: \"task_segment\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Detection provides regions of interest for detailed segmentation.\" },\n { target_id: \"task_synthesize\", type: \"incompatible_with\", strength: \"strong\", reason: \"Do not attempt to summarize bounding box coordinates directly as prose.\" }\n ]\n },\n {\n id: \"task_extract\",\n layer_id: \"layer_inbound\",\n name: \"Extract\",\n slug: \"extract\",\n task_type: \"ai\",\n elevator_pitch: \"Pull specific data fields from documents they already have.\",\n example_usage: \"Getting answers from a document.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Source Content\" }], \n optional: [{ id: \"data_text\", label: \"Query\" }, { id: \"data_markup\", label: \"HTML/XML\" }, { id: \"data_image\", label: \"Visual Context\" }] \n }, \n outputs: { \n primary: { id: \"data_json\", label: \"Extracted Value\" }, \n metadata: [{ id: \"data_text\", label: \"Source Span\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"small\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Hallucinated values\", tip: \"Highlight source text to show provenance\", anti_patterns: [\"Extracting from unreliable sources without verification\"] },\n capabilities: [\n { name: \"Question Answering\", tag: \"question-answering\", example: \"Asking 'What's the warranty period?' and getting '2 years' from a 50-page manual\" },\n { name: \"Table Question Answering\", tag: \"table-question-answering\", example: \"Asking 'Which region had highest sales in Q3?' from a spreadsheet table\" },\n { name: \"Document Question Answering\", tag: \"document-question-answering\", example: \"Getting 'March 15, 2025' when asking 'When does this contract expire?' from a PDF\" },\n { name: \"Token Classification\", tag: \"token-classification\", example: \"Highlighting every name, company, and date in a legal document\" },\n { name: \"Visual Question Answering\", tag: \"visual-question-answering\", example: \"Asking 'How many people are wearing hats?' about a crowd photo\" },\n { name: \"Image-Text-to-Text\", tag: \"image-text-to-text\", example: \"Producing the total spend on grocery items vs candy from a receipt photo\" },\n { name: \"Audio-Text-to-Text\", tag: \"audio-text-to-text\", example: \"Pulling action items assigned to a specific person from a meeting recording.\" },\n { name: \"Video-Text-to-Text\", tag: \"video-text-to-text\", example: \"Asking 'When does the speaker mention pricing?' on a 2-hour webinar video\" }\n ],\n relations: [\n { target_id: \"task_verify\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"LLM extraction is prone to hallucination; always verify critical data against source.\" },\n { target_id: \"system_save_db\", type: \"enables\", strength: \"strong\", reason: \"Structuring unstructured data is the primary prerequisite for database storage.\" },\n { target_id: \"task_classify\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Extracted structured fields (invoice type, support category) are often classified for routing.\" }\n ]\n },\n {\n id: \"task_estimate\",\n layer_id: \"layer_inbound\",\n name: \"Estimate\",\n slug: \"estimate\",\n task_type: \"ai\",\n elevator_pitch: \"Measure distances, depths, and dimensions from images or sensors.\",\n example_usage: \"Estimating depth in an image.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_image\", label: \"Input Media\" }], \n optional: [{ id: \"data_sensor_stream\", label: \"Sensor Data\" }] \n }, \n outputs: { \n primary: { id: \"data_depth_map\", label: \"Depth/Heat Map\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }, { id: \"data_optical_flow\", label: \"Motion Vectors\" }] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"realtime\", data_requirements: \"large\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Inaccuracy in edge cases\", tip: \"Show range/uncertainty bounds\", anti_patterns: [\"Using in safety-critical navigation without sensor fusion\"] },\n capabilities: [\n { name: \"Depth Estimation\", tag: \"depth-estimation\", example: \"Phone camera measuring that your wall is 10 feet away for AR picture frame placement\" },\n { name: \"Keypoint Detection\", tag: \"keypoint-detection\", example: \"Motion capture detecting actor's joint positions for animation rigging\" },\n { name: \"Pose Estimation\", tag: \"image-feature-extraction\", example: \"Extracting geometric features to estimate room dimensions from a single photo\" }\n ],\n relations: [\n { target_id: \"task_plan\", type: \"enables\", strength: \"medium\", reason: \"Spatial estimation (depth/distance) provides the world-model for planning paths.\" },\n { target_id: \"task_segment\", type: \"enables\", strength: \"medium\", reason: \"Depth information improves segmentation accuracy.\" }\n ]\n },\n {\n id: \"task_explain\",\n layer_id: \"layer_internal\",\n name: \"Explain / Interpret\",\n slug: \"explain\",\n task_type: \"ai\",\n elevator_pitch: \"Reveals the contributing factors behind a model's prediction.\",\n example_usage: \"Highlighting which words in a resume caused the 'Rejection' classification.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Model Output\" }], \n optional: [{ id: \"data_image\", label: \"Source Media\" }, { id: \"data_text\", label: \"Source Text\" }] \n }, \n outputs: { \n primary: { id: \"data_heatmap\", label: \"Attribution Map\" }, \n metadata: [{ id: \"data_text\", label: \"Natural Language Explanation\" }] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"realtime\", data_requirements: \"small\", human_oversight: \"none\" },\n ux_notes: { risk: \"False sense of causality\", tip: \"Use highlighting to show correlation, not just causation. Consider post-hoc analysis tools like SHAP or LIME for showing which features contributed most.\", anti_patterns: [\"Over-explaining low-stakes decisions\"] },\n capabilities: [\n { name: \"Text Generation\", tag: \"text-generation\", example: \"Generating natural language explanation of classification decision with contributing factors\" }, // Part of sklearn/XGBoost\n { name: \"Question Answering\", tag: \"question-answering\", example: \"Answering 'Why was this flagged?' by retrieving the specific policy violation\" }, // Visual attribution\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Analyzing own historical workflows or agentic tool usage and generating a natural language summary\" }\n ],\n relations: [\n { target_id: \"task_classify\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Users often need to know why an item was classified a certain way.\" },\n { target_id: \"human_review\", type: \"enables\", strength: \"strong\", reason: \"Explainability tools help humans make faster review decisions.\" }\n ]\n },\n {\n id: \"task_forecast\",\n layer_id: \"layer_internal\",\n name: \"Forecast\",\n slug: \"forecast\",\n task_type: \"ai\",\n elevator_pitch: \"Predicts future values in a sequence based on historical trends.\",\n example_usage: \"Predicting server load for the next 24 hours.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_table\", label: \"Historical Series\" }], \n optional: [{ id: \"data_config\", label: \"Horizon\" }] \n }, \n outputs: { \n primary: { id: \"data_trajectory\", label: \"Forecast Line\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence Interval\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"batch\", data_requirements: \"large\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Black swan events\", tip: \"Always show confidence intervals (P90/P10)\", anti_patterns: [\"Presenting forecasts as certainty\"] },\n capabilities: [\n { name: \"Time Series Forecasting\", tag: \"time-series-forecasting\", example: \"Inventory system predicting when you will run out of an item in 3 weeks based on sales trends\" }\n ],\n relations: [\n { target_id: \"task_plan\", type: \"enables\", strength: \"strong\", reason: \"Forecasts (e.g., weather, stock) are the inputs for planning algorithms.\" },\n { target_id: \"system_monitor_model\", type: \"monitored_by\", strength: \"medium\", reason: \"Forecasts must be constantly checked against actuals to detect drift.\" }\n ]\n },\n {\n id: \"task_monitor\",\n layer_id: \"layer_inbound\",\n name: \"Monitor\",\n slug: \"monitor\",\n task_type: \"ai\",\n elevator_pitch: \"Identifies specific events or objects detected in continuous data streams.\",\n example_usage: \"Listening for glass breaking sounds.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Stream Source\" }], \n optional: [\n { id: \"data_video_stream\", label: \"Video Feed\" }, \n { id: \"data_audio_stream\", label: \"Audio Feed\" },\n { id: \"data_sensor_stream\", label: \"Telemetry\" }\n ] \n }, \n outputs: { \n primary: { id: \"data_signal\", label: \"Event Trigger\" }, \n metadata: [{ id: \"data_log\", label: \"Event Log\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"none\" },\n ux_notes: { risk: \"Alert fatigue from false positives\", tip: \"Group notifications and allow threshold adjustment\", anti_patterns: [\"No user control over sensitivity\"] },\n capabilities: [\n { name: \"Image Classification\", tag: \"image-classification\", example: \"Wildlife camera logging whenever it sees a bear vs deer\" },\n { name: \"Audio Classification\", tag: \"audio-classification\", example: \"Microphone monitor system sending a text if a smoke alarm is detected\" },\n { name: \"Video Classification\", tag: \"video-classification\", example: \"Ring doorbell sending notification when it sees 'Package Delivery' vs 'Person Walking By\" },\n { name: \"Voice Activity Detection\", tag: \"voice-activity-detections\", example: \"Zoom automatically switching to speaker view when someone starts talking\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"construction site camera alerting 'worker without hard hat'\" }\n ],\n relations: [\n { target_id: \"task_detect\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Detect identifies *where*, Monitor identifies *when* (and alerts).\" },\n { target_id: \"system_notification\", type: \"triggers\", strength: \"strong\", reason: \"The primary output of monitoring is alerting a human or system.\" }\n ]\n },\n {\n id: \"task_retrieve\",\n layer_id: \"layer_inbound\",\n name: \"Retrieve\",\n slug: \"retrieve\",\n task_type: \"ai\",\n elevator_pitch: \"Find relevant documents or items from large collections using semantic search.\",\n example_usage: \"Semantic search over a knowledge base.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Query\" }], \n optional: [{ id: \"data_embedding\", label: \"Vector Query\" }, { id: \"data_knowledge_graph\", label: \"Graph Context\" }, { id: \"data_image\", label: \"Visual Query\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Matches\", isArray: true }, \n metadata: [{ id: \"data_score\", label: \"Relevance Score\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"none\" },\n ux_notes: { risk: \"Irrelevant results\", tip: \"Allow filtering and show relevance scores\", anti_patterns: [\"No way to refine search\"] },\n capabilities: [\n { name: \"Feature Extraction\", tag: \"feature-extraction\", example: \"Finding similar products in a catalog even when descriptions use different words\" },\n { name: \"Image Feature Extraction\", tag: \"image-feature-extraction\", example: \"Reverse image search finding similar photos across your entire photo library\" },\n { name: \"Sentence Similarity\", tag: \"sentence-similarity\", example: \"Searching 'how to reset password' and finding doc titled 'Account Recovery Steps\" },\n { name: \"Visual Document Retrieval\", tag: \"visual-document-retrieval\", example: \"Finding scanned invoice by searching 'Acme Corp March invoice' across 10,000 scans\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Searching Notion with 'Q3 planning' and finding relevant docs, images, and meeting notes\" }\n ],\n relations: [\n { target_id: \"task_represent\", type: \"requires_input_from\", strength: \"strong\", reason: \"Semantic retrieval requires an embedding model (Represent) to vectorize the query.\" },\n { target_id: \"task_generate\", type: \"enables\", strength: \"strong\", reason: \"The 'R' in RAG. Retrieval provides the grounded context for Generation.\" },\n { target_id: \"task_rank\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Raw retrieval results are often noisy; Ranking re-orders them for precision.\" }\n ]\n },\n {\n id: \"task_segment\",\n layer_id: \"layer_inbound\",\n name: \"Segment\",\n slug: \"segment\",\n task_type: \"ai\",\n elevator_pitch: \"Cut out and separate specific chunks of image or other data.\",\n example_usage: \"Removing background from an image.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_image\", label: \"Source Image\" }], \n optional: [{ id: \"data_point_cloud\", label: \"3D Cloud\" }] \n }, \n outputs: { \n primary: { id: \"data_mask\", label: \"Masks\", isArray: true }, \n metadata: [{ id: \"data_json\", label: \"Polygons\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"large\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Artifacts at edges\", tip: \"Allow brush refinement for precision\", anti_patterns: [\"No manual correction tools\"] },\n capabilities: [\n { name: \"Image Segmentation\", tag: \"image-segmentation\", example: \"Photo editor selecting just the sky pixels to change color independently\" },\n { name: \"Mask Generation\", tag: \"mask-generation\", example: \"Video editor generating precise person outline for green screen replacement\" },\n { name: \"Semantic Segmentation\", tag: \"semantic-segmentation\", example: \"Self-driving car identifying road, sidewalk, vehicle, and pedestrian regions\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Outlining the damaged area in uploaded car accident photo for insurance claim\" }\n ],\n relations: [\n { target_id: \"task_transform\", type: \"enables\", strength: \"medium\", reason: \"Segmentation masks allow targeted transformation (inpainting) of specific image regions.\" },\n { target_id: \"task_detect\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Detection provides regions of interest for detailed segmentation.\" },\n { target_id: \"task_classify\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Segmented regions are often classified individually (e.g., multi-object scene understanding).\" }\n ]\n },\n\n // --- Internal ---\n {\n id: \"task_classify\",\n layer_id: \"layer_internal\",\n name: \"Classify\",\n slug: \"classify\",\n task_type: \"ai\",\n elevator_pitch: \"Categorize items into predefined groups.\",\n example_usage: \"Tagging support tickets by department.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Input Item\" }], \n optional: [{ id: \"data_list\", label: \"Taxonomy\" }] \n }, \n outputs: { \n primary: { id: \"data_classification\", label: \"Label\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }] \n } \n },\n implementation_notes: { maturity: \"commoditized\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Ambiguity in edge cases\", tip: \"Show top-k results with confidence scores\", anti_patterns: [\"Single classification without confidence threshold\"] },\n capabilities: [\n { name: \"Text Classification\", tag: \"text-classification\", example: \"Tagging support tickets as 'Billing', 'Technical', or 'General'\" },\n { name: \"Image Classification\", tag: \"image-classification\", example: \"Identifying 'Hot Dog' vs 'Not Hot Dog' in user photos\" },\n { name: \"Audio Classification\", tag: \"audio-classification\", example: \"Categorizing sound clips as 'Speech', 'Music', or 'Noise'\" },\n { name: \"Video Classification\", tag: \"video-classification\", example: \"Labeling video clips with 'Sports', 'News', 'Comedy'\" },\n { name: \"Zero-Shot Classification\", tag: \"zero-shot-classification\", example: \"Classifying tweets into arbitrary categories defined at runtime\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Classifying multimodal inputs into defined buckets\" }\n ],\n relations: [\n { target_id: \"system_rules\", type: \"enables\", strength: \"strong\", reason: \"Classification tags are the most common input for business logic (if 'Billing', route to 'Finance').\" },\n { target_id: \"task_generate\", type: \"incompatible_with\", strength: \"strong\", reason: \"Do not classify generative output directly for safety; use a specialized Verify task.\" },\n { target_id: \"task_explain\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Explainability provides transparency into *why* a label was assigned.\" }\n ]\n },\n {\n id: \"task_match\",\n layer_id: \"layer_internal\",\n name: \"Match\",\n slug: \"match\",\n task_type: \"ai\",\n elevator_pitch: \"Determine how similar two items are.\",\n example_usage: \"Finding duplicate customer records.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Item A\" }, { id: \"data_any\", label: \"Item B\" }], \n optional: [] \n }, \n outputs: { \n primary: { id: \"data_score\", label: \"Similarity\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"none\" },\n ux_notes: { risk: \"False matches\", tip: \"Side-by-side comparison for user verification\", anti_patterns: [\"Auto-merging without review\"] },\n capabilities: [\n { name: \"Sentence Similarity\", tag: \"sentence-similarity\", example: \"Matching user query 'refund policy' to FAQ 'How do I get my money back?'\" },\n { name: \"Feature Extraction\", tag: \"feature-extraction\", example: \"Comparing visual style of two logos\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Matching a resume PDF to a job description text\" }\n ],\n relations: [\n { target_id: \"system_rules\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Match scores usually feed into a threshold rule (if similarity > 0.9, merge).\" },\n { target_id: \"human_review\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"High-confidence matches should still be reviewed before merging.\" }\n ]\n },\n {\n id: \"task_rank\",\n layer_id: \"layer_internal\",\n name: \"Rank\",\n slug: \"rank\",\n task_type: \"ai\",\n elevator_pitch: \"Sort items by relevance, quality, or importance.\",\n example_usage: \"Search result ordering.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Items\", isArray: true }], \n optional: [{ id: \"data_text\", label: \"Context\" }, { id: \"data_preference_profile\", label: \"User Profile\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Sorted List\", isArray: true }, \n metadata: [{ id: \"data_score\", label: \"Rank Scores\", isArray: true }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"large\", human_oversight: \"none\" },\n ux_notes: { risk: \"Bias in ranking factors\", tip: \"Explain ranking factors and allow sorting options\", anti_patterns: [\"No transparency in ranking logic\"] },\n capabilities: [\n { name: \"Sentence Similarity\", tag: \"sentence-similarity\", example: \"Ordering help articles by semantic relevance to query\" },\n { name: \"Cross-Encoder Reranking\", tag: \"text-classification\", example: \"Re-ranking search results for higher precision\" },\n { name: \"Text Ranking\", tag: \"text-ranking\", example: \"Sorting product reviews by helpfulness\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Ranking candidate profiles against a job opening\" }\n ],\n relations: [\n { target_id: \"task_retrieve\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Retrieve fetches the candidates; Rank sorts them for the user.\" },\n { target_id: \"human_select_option\", type: \"enables\", strength: \"strong\", reason: \"Ranking prepares choices for human decision making.\" },\n { target_id: \"task_adapt\", type: \"updated_by\", strength: \"medium\", reason: \"User interactions can refine ranking over time.\" }\n ]\n },\n {\n id: \"task_regress\",\n layer_id: \"layer_internal\",\n name: \"Regress\",\n slug: \"regress\",\n task_type: \"ai\",\n elevator_pitch: \"Predict numerical values (price, score, rating) from structured data.\",\n example_usage: \"Predicting house prices from property attributes.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_table\", label: \"Features\" }], \n optional: [] \n }, \n outputs: { \n primary: { id: \"data_score\", label: \"Predicted Value\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence Interval\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Outliers and extrapolation errors\", tip: \"Visualize trend line and confidence bounds\", anti_patterns: [\"Using for out-of-distribution data without warnings\"] },\n capabilities: [\n { name: \"Tabular Regression\", tag: \"tabular-regression\", example: \"Predicting house price based on sq ft, location, and year built\" }\n ],\n relations: [\n { target_id: \"system_rules\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Regression predictions often trigger threshold-based actions.\" },\n { target_id: \"human_review\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"High-stakes predictions (medical, financial) require human review.\" },\n { target_id: \"task_forecast\", type: \"related_to\", strength: \"medium\", reason: \"If the data has a time dimension, switch from Regression to Forecasting.\" }\n ]\n },\n {\n id: \"task_synthesize\",\n layer_id: \"layer_internal\",\n name: \"Synthesize\",\n slug: \"synthesize\",\n task_type: \"ai\",\n elevator_pitch: \"Get the key points from multiple sources combined into one.\",\n example_usage: \"Summarizing meeting notes from multiple sources.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Source Texts\", isArray: true }], \n optional: [{ id: \"data_session_history\", label: \"History\" }] \n }, \n outputs: { \n primary: { id: \"data_text\", label: \"Summary\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"batch\", data_requirements: \"large\", human_oversight: \"recommended\" },\n ux_notes: { risk: \"Missing key details or introducing bias\", tip: \"Allow length adjustment and highlight source attribution\", anti_patterns: [\"No way to trace claims back to sources\"] },\n capabilities: [\n { name: \"Text Generation\", tag: \"text-generation\", example: \"Summarizing a long email thread into bullet points\" },\n { name: \"Summarization\", tag: \"summarization\", example: \"Generating a brief abstract for a research paper\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Summarizing key points from a recorded meeting video\" }\n ],\n relations: [\n { target_id: \"task_retrieve\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Synthesis usually operates on a set of retrieved documents.\" },\n { target_id: \"task_verify\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Summaries can drift from source facts; verification ensures fidelity.\" }\n ]\n },\n {\n id: \"task_verify\",\n layer_id: \"layer_internal\",\n name: \"Verify\",\n slug: \"verify\",\n task_type: \"ai\",\n elevator_pitch: \"Evaluate content/claims against evidence to determine accuracy, consistency, or compliance.\",\n example_usage: \"Fact checking a generated statement against source documents.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Claim\" }, { id: \"data_text\", label: \"Evidence\" }], \n optional: [{ id: \"data_knowledge_graph\", label: \"Facts\" }] \n }, \n outputs: { \n primary: { id: \"data_classification\", label: \"Verdict\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"realtime\", data_requirements: \"large\", human_oversight: \"recommended\" },\n ux_notes: { risk: \"False confidence in incorrect verdicts\", tip: \"Cite evidence sources directly\", anti_patterns: [\"Verifying creative writing\", \"Using for sentiment analysis\"] },\n capabilities: [\n { name: \"Zero-Shot Classification\", tag: \"zero-shot-classification\", example: \"Checking if a response contradicts the provided source text\" },\n { name: \"Question Answering\", tag: \"question-answering\", example: \"Verifying if the answer 'Yes' is supported by the policy document\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Verifying if the generated image matches the prompt requirements\" }\n ],\n relations: [\n { target_id: \"human_review\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Automated verification is imperfect; human review is the final gate for high-stakes claims.\" }\n ]\n },\n {\n id: \"task_represent\",\n layer_id: \"layer_internal\",\n name: \"Represent\",\n slug: \"represent\",\n task_type: \"ai\",\n elevator_pitch: \"Converts content into searchable format for semantic operations (usually automatic).\",\n example_usage: \"Creating embeddings for similarity search.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Raw Data\" }], \n optional: [] \n }, \n outputs: { \n primary: { id: \"data_embedding\", label: \"Vector\" }, \n metadata: [] \n } \n },\n implementation_notes: { \n maturity: \"established\", \n typical_latency: \"realtime\", \n data_requirements: \"medium\", \n human_oversight: \"none\" \n },\n ux_notes: { \n risk: \"Loss of semantic meaning in projection\", \n tip: \"Visualize with dimensionality reduction (t-SNE/UMAP)\", \n anti_patterns: [\"Mixing different embedding models\", \"Not normalizing vectors\"] \n },\n capabilities: [\n { name: \"Feature Extraction\", tag: \"feature-extraction\", example: \"Converting product descriptions into vectors for search\" },\n { name: \"Image Feature Extraction\", tag: \"image-feature-extraction\", example: \"Generating embeddings for visual search\" },\n { name: \"Sentence Transformers\", tag: \"sentence-similarity\", example: \"Creating semantic vectors for paragraphs\" },\n { name: \"Fill-Mask\", tag: \"fill-mask\", example: \"Predicting missing words in a sentence\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Representing mixed media as a single vector\" }\n ],\n relations: [\n { target_id: \"task_retrieve\", type: \"enables\", strength: \"strong\", reason: \"Embeddings are the foundation of semantic retrieval.\" },\n { target_id: \"task_match\", type: \"enables\", strength: \"medium\", reason: \"Vector similarity enables efficient matching.\" },\n { target_id: \"task_cluster\", type: \"enables\", strength: \"strong\", reason: \"Embeddings define the semantic space where clustering occurs.\" }\n ]\n },\n {\n id: \"task_cluster\",\n layer_id: \"layer_internal\",\n name: \"Cluster\",\n slug: \"cluster\",\n task_type: \"ai\",\n elevator_pitch: \"Find common patterns and group similar items automatically.\",\n example_usage: \"Discovering common themes in thousands of support tickets.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_embedding\", label: \"Item Embeddings\", isArray: true }], \n optional: [{ id: \"data_config\", label: \"Clustering Parameters\" }] \n }, \n outputs: { \n primary: { id: \"data_group\", label: \"Clusters\", isArray: true }, \n metadata: [{ id: \"data_score\", label: \"Silhouette Score\" }, { id: \"data_point\", label: \"Outliers\", isArray: true }] \n } \n },\n implementation_notes: { \n maturity: \"established\", \n typical_latency: \"batch\", \n data_requirements: \"large\", \n human_oversight: \"recommended\" \n },\n ux_notes: { \n risk: \"Incoherent groupings or 'noise' items\", \n tip: \"Use Generative AI (Synthesize) to auto-label the resulting clusters\", \n anti_patterns: [\"Forcing everything into a cluster (hiding outliers)\", \"Changing cluster definitions drastically between sessions\"] \n },\n capabilities: [\n { name: \"Feature Extraction\", tag: \"feature-extraction\", example: \"Grouping similar news articles\" }, \n { name: \"Sentence Similarity\", tag: \"sentence-similarity\", example: \"Clustering customer feedback into topics\" }\n ],\n relations: [\n { target_id: \"task_represent\", type: \"requires_input_from\", strength: \"strong\", reason: \"Clustering operates on the vector space created by the Represent task.\" },\n { target_id: \"task_synthesize\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Raw clusters are just ID numbers; Synthesis is needed to read the content and generate a descriptive label.\" },\n { target_id: \"human_organize\", type: \"enables\", strength: \"strong\", reason: \"Clustering provides the 'first draft' of organization for humans to refine.\" }\n ]\n },\n\n // --- Outbound ---\n {\n id: \"task_generate\",\n layer_id: \"layer_outbound\",\n name: \"Generate\",\n slug: \"generate\",\n task_type: \"ai\",\n elevator_pitch: \"Create new content from scratch based on input.\",\n example_usage: \"Drafting an email reply from bullet points.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Prompt\" }], \n optional: [{ id: \"data_image\", label: \"Image Context\" }, { id: \"data_session_history\", label: \"Chat History\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Generated Content\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"interactive\", data_requirements: \"large\", human_oversight: \"recommended\" },\n ux_notes: { risk: \"Hallucination and fabricated facts\", tip: \"Stream response and offer variations\", anti_patterns: [\"Generating facts without grounding\", \"Unbounded length without user control\"] },\n capabilities: [\n { name: \"Text Generation\", tag: \"text-generation\", example: \"Writing a blog post from a title\" },\n { name: \"Text-to-Image\", tag: \"text-to-image\", example: \"Generating a logo from a description\" },\n { name: \"Text-to-Video\", tag: \"text-to-video\", example: \"Creating a short animation from a script\" },\n { name: \"Text-to-Audio\", tag: \"text-to-audio\", example: \"Generating sound effects from text\" },\n { name: \"Unconditional Image Generation\", tag: \"unconditional-image-generation\", example: \"Generating random faces for avatars\" },\n { name: \"Text-to-3D\", tag: \"text-to-3d\", example: \"Creating a 3D asset from a prompt\" },\n { name: \"Image-to-3D\", tag: \"image-to-3d\", example: \"Converting a 2D logo to 3D\" },\n { name: \"Image-to-Video\", tag: \"image-to-video\", example: \"Animating a still image\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Generating code from a screenshot\" }\n ],\n relations: [\n { target_id: \"task_retrieve\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"RAG pattern: grounding generation in retrieved facts reduces hallucination.\" },\n { target_id: \"task_verify\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Generated content should be verified against sources when accuracy matters.\" },\n { target_id: \"human_edit\", type: \"enables\", strength: \"strong\", reason: \"Generative outputs are often starting points for human refinement.\" }\n ]\n },\n {\n id: \"task_transform\",\n layer_id: \"layer_outbound\",\n name: \"Transform\",\n slug: \"transform\",\n task_type: \"ai\",\n elevator_pitch: \"Modify style or format of existing content.\",\n example_usage: \"Style transfer on an image or paraphrasing text.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Source\" }], \n optional: [{ id: \"data_text\", label: \"Style Prompt\" }, { id: \"data_mask\", label: \"Region Mask\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Transformed Content\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"interactive\", data_requirements: \"medium\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Loss of fidelity or unintended changes\", tip: \"Show original vs transformed side-by-side\", anti_patterns: [\"No undo or revert option\"] },\n capabilities: [\n { name: \"Image-to-Image\", tag: \"image-to-image\", example: \"Turning a sketch into a photorealistic image\" },\n { name: \"Voice Conversion\", tag: \"audio-to-audio\", example: \"Changing a speaker's voice to sound like someone else\" },\n { name: \"Text Style Transfer\", tag: \"text2text-generation\", example: \"Rewriting formal text to be casual\" },\n { name: \"Video-to-Video\", tag: \"video-to-video\", example: \"Applying a style filter to a video\" },\n { name: \"Image-Text-to-Image\", tag: \"image-text-to-image\", example: \"Modifying an image based on instructions\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Refactoring code to a different language\" }\n ],\n relations: [\n { target_id: \"task_segment\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Targeted transforms (inpainting) require segmentation masks first.\" }\n ]\n },\n {\n id: \"task_translate\",\n layer_id: \"layer_outbound\",\n name: \"Translate\",\n slug: \"translate\",\n task_type: \"ai\",\n elevator_pitch: \"Convert content from one language or format to another.\",\n example_usage: \"Transcribing speech to text, or translating English to Spanish.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Source\" }], \n optional: [{ id: \"data_text\", label: \"Target Language\" }, { id: \"data_text\", label: \"Context Prompt\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Translated\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }] \n } \n },\n implementation_notes: { \n maturity: \"established\", \n typical_latency: \"realtime\", \n data_requirements: \"large\", \n human_oversight: \"optional\" \n },\n ux_notes: { \n risk: \"Lost nuance or cultural context\", \n tip: \"Keep original accessible for comparison\", \n anti_patterns: [\"Using for creative writing translation without post-editing\", \"Medical/legal without human review\"] \n },\n capabilities: [\n { name: \"Translation\", tag: \"translation\", example: \"Translating a website from English to French\" },\n { name: \"Automatic Speech Recognition\", tag: \"automatic-speech-recognition\", example: \"Transcribing a voicemail to text\" },\n { name: \"Text-to-Speech\", tag: \"text-to-speech\", example: \"Reading a news article aloud\" },\n { name: \"Image-to-Text\", tag: \"image-to-text\", example: \"Extracting text from a scanned document (OCR)\" },\n { name: \"Audio-Text-to-Text\", tag: \"audio-text-to-text\", example: \"Translating spoken Spanish to English text\" },\n { name: \"Image-Text-to-Text\", tag: \"image-text-to-text\", example: \"Describing a chart in text\" },\n { name: \"Video-Text-to-Text\", tag: \"video-text-to-text\", example: \"Generating subtitles for a video\" },\n { name: \"Image-Text-to-Video\", tag: \"image-text-to-video\", example: \"Animating a diagram based on text explanation\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Translating sign language video to text\" }\n ],\n relations: [\n { target_id: \"task_generate\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Translation often precedes generation in multilingual systems.\" },\n { target_id: \"task_verify\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Translations should be verified for accuracy in high-stakes contexts.\" },\n { target_id: \"task_represent\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Speech-to-text output is converted to embeddings for semantic search (voice search use case).\" }\n ]\n },\n\n // --- Interactive ---\n {\n id: \"task_adapt\",\n layer_id: \"layer_interactive\",\n name: \"Adapt\",\n slug: \"adapt\",\n task_type: \"ai\",\n elevator_pitch: \"Updates system behavior based on implicit or explicit feedback.\",\n example_usage: \"Personalizing recommendations based on click patterns.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_log\", label: \"Interaction Logs\" }], \n optional: [{ id: \"data_preference_profile\", label: \"User Profile\" }] \n }, \n outputs: { \n primary: { id: \"data_config\", label: \"Updated Model State\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"batch\", data_requirements: \"continuous\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Feedback loops and filter bubbles\", tip: \"Allow profile reset and show adaptation controls\", anti_patterns: [\"Over-indexing on recent clicks\", \"No transparency in what's being learned\"] },\n capabilities: [\n { name: \"Reinforcement Learning\", tag: \"reinforcement-learning\", example: \"Personalizing news feed based on dwell time\" },\n { name: \"Online Learning\", tag: \"tabular-classification\", example: \"Adapting spam filter based on user corrections\" }\n ],\n relations: [\n { target_id: \"human_provide_feedback\", type: \"requires_input_from\", strength: \"strong\", reason: \"Adaptation relies on signals from human interactions (clicks, ratings, edits).\" },\n { target_id: \"task_rank\", type: \"updates\", strength: \"strong\", reason: \"Adaptation refines ranking/recommendation models over time.\" },\n { target_id: \"task_retrieve\", type: \"updates\", strength: \"medium\", reason: \"User behavior can improve retrieval relevance.\" }\n ]\n },\n {\n id: \"task_act\",\n layer_id: \"layer_interactive\",\n name: \"Act\",\n slug: \"act\",\n task_type: \"ai\",\n elevator_pitch: \"Performs physical or digital actions in an environment.\",\n example_usage: \"Robot arm picking up an object, or API calling an external service.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_state_vector\", label: \"Environment State\" }], \n optional: [{ id: \"data_policy\", label: \"Policy/Strategy\" }] \n }, \n outputs: { \n primary: { id: \"data_action\", label: \"Action Command\" }, \n metadata: [{ id: \"data_score\", label: \"Q-value/Expected Reward\" }] \n } \n },\n implementation_notes: { \n maturity: \"emerging\", \n typical_latency: \"realtime\", \n data_requirements: \"continuous\", \n human_oversight: \"required\" \n },\n ux_notes: { \n risk: \"Physical damage or unintended consequences\", \n tip: \"Implement emergency stop and simulation mode\", \n anti_patterns: [\"No human supervision for high-risk actions\", \"No rollback mechanism\"] \n },\n capabilities: [\n { name: \"Reinforcement Learning\", tag: \"reinforcement-learning\", example: \"Optimizing server cooling based on load\" },\n { name: \"Robotics Control\", tag: \"robotics\", example: \"Robot arm sorting recycling materials\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Smart home system adjusting lights based on occupancy\" }\n ],\n relations: [\n { target_id: \"task_plan\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Planning determines action sequences before execution.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Action outcomes provide feedback signals for learning.\" },\n { target_id: \"human_stop_process\", type: \"enabled_by\", strength: \"strong\", reason: \"Users must be able to halt actions in progress.\" }\n ]\n },\n {\n id: \"task_explore\",\n layer_id: \"layer_interactive\",\n name: \"Explore\",\n slug: \"explore\",\n task_type: \"ai\",\n elevator_pitch: \"Tries new actions to discover optimal strategies.\",\n example_usage: \"A/B testing content variants automatically to find best performer.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_state_vector\", label: \"State\" }], \n optional: [{ id: \"data_policy\", label: \"Policy\" }] \n }, \n outputs: { \n primary: { id: \"data_action\", label: \"Trial Action\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"realtime\", data_requirements: \"continuous\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Suboptimal user experience during exploration\", tip: \"Limit exploration scope and duration\", anti_patterns: [\"Unlimited exploration in production\", \"No guardrails on tried actions\"] },\n capabilities: [\n { name: \"Epsilon-Greedy\", tag: \"reinforcement-learning\", example: \"Occasionally showing random products to learn user tastes\" },\n { name: \"Thompson Sampling\", tag: \"reinforcement-learning\", example: \"Allocating traffic to best performing headlines\" }\n ],\n relations: [\n { target_id: \"task_adapt\", type: \"enables\", strength: \"strong\", reason: \"Exploration generates diverse data for adaptation.\" },\n { target_id: \"task_act\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Exploration strategies select actions to try.\" }\n ]\n },\n {\n id: \"task_plan\",\n layer_id: \"layer_interactive\",\n name: \"Plan\",\n slug: \"plan\",\n task_type: \"ai\",\n elevator_pitch: \"Optimizes or generates a sequence of future actions to achieve a goal.\",\n example_usage: \"Route optimization or task scheduling.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Goal\" }], \n optional: [{ id: \"data_state_vector\", label: \"Current State\" }] \n }, \n outputs: { \n primary: { id: \"data_json\", label: \"Action Plan\", isArray: true }, \n metadata: [{ id: \"data_trajectory\", label: \"Path\" }] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"batch\", data_requirements: \"large\", human_oversight: \"recommended\" },\n ux_notes: { risk: \"Rigidity and failure to adapt to changes\", tip: \"Allow manual override and replanning\", anti_patterns: [\"No contingency for plan failure\"] },\n capabilities: [\n { name: \"Policy Learning\", tag: \"reinforcement-learning\", example: \"Optimizing delivery routes in real-time\" },\n { name: \"Motion Planning\", tag: \"robotics\", example: \"Autonomous drone navigating around obstacles\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Scheduling meeting times for a large team\" }\n ],\n relations: [\n { target_id: \"task_estimate\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Spatial estimation provides the world-model for planning.\" },\n { target_id: \"task_act\", type: \"enables\", strength: \"strong\", reason: \"Plans are executed as sequences of actions.\" }\n ]\n }\n];\n","\nimport { HumanTask } from '../types';\n\nexport const HUMAN_TASKS: HumanTask[] = [\n // Inbound\n {\n id: \"human_upload_file\",\n layer_id: \"layer_inbound\",\n name: \"Upload File\",\n slug: \"upload-file\",\n task_type: \"human\",\n elevator_pitch: \"User provides digital assets to the system.\",\n example_usage: \"Uploading a CSV for analysis.\",\n io_spec: { \n inputs: { required: [], optional: [] }, \n outputs: { primary: { id: \"data_file\", label: \"File Blob\" }, metadata: [] } \n },\n common_variants: [\"drag_and_drop\", \"camera_capture\", \"paste_from_clipboard\", \"url_import\"],\n relations: [\n { target_id: \"task_extract\", type: \"enables\", strength: \"strong\", reason: \"Uploaded files are the source for extraction workflows.\" }\n ]\n },\n {\n id: \"human_type_input\",\n layer_id: \"layer_inbound\",\n name: \"Type Input\",\n slug: \"type-input\",\n task_type: \"human\",\n elevator_pitch: \"User enters text data manually.\",\n example_usage: \"Typing a search query or chat message.\",\n io_spec: { \n inputs: { required: [], optional: [] }, \n outputs: { primary: { id: \"data_text\", label: \"Text String\" }, metadata: [] } \n },\n common_variants: [\"voice_dictation\", \"autocomplete_assisted\", \"template_fill\"],\n relations: [\n { target_id: \"task_represent\", type: \"enables\", strength: \"strong\", reason: \"Text input is converted to embeddings for semantic operations.\" },\n { target_id: \"task_generate\", type: \"enables\", strength: \"strong\", reason: \"User prompts drive content generation.\" }\n ]\n },\n {\n id: \"human_organize\",\n layer_id: \"layer_interactive\",\n name: \"Organize & Label\",\n slug: \"organize-label\",\n task_type: \"human\",\n elevator_pitch: \"User arranges items into groups, hierarchies, or applies semantic tags.\",\n example_usage: \"Dragging support tickets into categories or tagging images.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Items\", isArray: true }], \n optional: [{ id: \"data_group\", label: \"Suggested Clusters\", isArray: true }, { id: \"data_list\", label: \"Existing Taxonomy\" }] \n }, \n outputs: { \n primary: { id: \"data_classification\", label: \"Applied Labels\", isArray: true }, \n metadata: [{ id: \"data_list\", label: \"New Taxonomy\" }] \n } \n },\n common_variants: [\"card_sorting\", \"tagging\", \"drag_and_drop_grouping\", \"folder_management\", \"taxonomy_editing\"],\n relations: [\n { target_id: \"task_cluster\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Clustering provides the rough draft; Humans refine the structure.\" },\n { target_id: \"system_train\", type: \"enables\", strength: \"strong\", reason: \"Human organization creates the labeled 'Ground Truth' dataset needed to train Classifiers.\" },\n { target_id: \"task_classify\", type: \"enables\", strength: \"strong\", reason: \"Once humans define the categories (Organize), the AI can automate sorting them (Classify).\" }\n ]\n },\n {\n id: \"human_select_option\",\n layer_id: \"layer_internal\",\n name: \"Select Option\",\n slug: \"select-option\",\n task_type: \"human\",\n elevator_pitch: \"User chooses from predefined choices.\",\n example_usage: \"Filtering search results by category.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Options\", isArray: true }], optional: [] }, \n outputs: { primary: { id: \"data_selection\", label: \"Selection\" }, metadata: [] } \n },\n common_variants: [\"dropdown\", \"radio_button\", \"checkbox\", \"multi_select\"],\n relations: [\n { target_id: \"task_rank\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Ranking prepares choices for user selection.\" }\n ]\n },\n {\n id: \"human_review\",\n layer_id: \"layer_interactive\",\n name: \"Review & Approve\",\n slug: \"review-approve\",\n task_type: \"human\",\n elevator_pitch: \"User validates accuracy of system output.\",\n example_usage: \"Moderator checking flagged content.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Content\" }], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Decision\" }, metadata: [] } \n },\n common_variants: [\"approve\", \"reject\", \"request_changes\", \"escalate\"],\n relations: [\n { target_id: \"task_verify\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Automated verification precedes human review in hybrid workflows.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Review decisions provide training signals for adaptation.\" }\n ]\n },\n {\n id: \"human_edit\",\n layer_id: \"layer_outbound\",\n name: \"Edit Content\",\n slug: \"edit-content\",\n task_type: \"human\",\n elevator_pitch: \"User modifies system-generated content.\",\n example_usage: \"Rewriting an AI email draft.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Draft\" }], optional: [] }, \n outputs: { primary: { id: \"data_any\", label: \"Final Content\" }, metadata: [] } \n },\n common_variants: [\"refine\", \"rewrite\", \"tweak\", \"format\"],\n relations: [\n { target_id: \"task_generate\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Generated content is often refined by humans.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"weak\", reason: \"Edit patterns can inform future generation.\" },\n { target_id: \"task_generate\", type: \"commonly_followed_by\", strength: \"weak\", reason: \"Human edits can trigger regeneration for iterative refinement (edit patterns inform next generation).\" }\n ]\n },\n {\n id: \"human_provide_feedback\",\n layer_id: \"layer_interactive\",\n name: \"Provide Feedback\",\n slug: \"provide-feedback\",\n task_type: \"human\",\n elevator_pitch: \"Explicit signal of quality or preference.\",\n example_usage: \"Thumbs up/down on a response.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Target\" }], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Rating\" }, metadata: [] } \n },\n common_variants: [\"star_rating\", \"thumbs_up_down\", \"sentiment_select\"],\n relations: [\n { target_id: \"task_adapt\", type: \"triggers\", strength: \"strong\", reason: \"User feedback drives system adaptation.\" }\n ]\n },\n {\n id: \"human_start_process\",\n layer_id: \"layer_interactive\",\n name: \"Start Process\",\n slug: \"start-process\",\n task_type: \"human\",\n elevator_pitch: \"User initiates a workflow.\",\n example_usage: \"Clicking 'Run Analysis' button.\",\n io_spec: { \n inputs: { required: [], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Trigger\" }, metadata: [] } \n },\n common_variants: [\"button_click\", \"voice_command\", \"gesture\", \"scheduled_trigger\"],\n relations: []\n },\n {\n id: \"human_stop_process\",\n layer_id: \"layer_interactive\",\n name: \"Stop Process\",\n slug: \"stop-process\",\n task_type: \"human\",\n elevator_pitch: \"User interrupts a running workflow.\",\n example_usage: \"Emergency stop on a robot or canceling a generation.\",\n io_spec: { \n inputs: { required: [], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Interrupt\" }, metadata: [] } \n },\n common_variants: [\"emergency_stop\", \"pause\", \"cancel\", \"abort\"],\n relations: [\n { target_id: \"task_act\", type: \"enables\", strength: \"strong\", reason: \"Critical safety mechanism for physical actions.\" }\n ]\n },\n {\n id: \"human_compare\",\n layer_id: \"layer_interactive\",\n name: \"Compare Options\",\n slug: \"compare-options\",\n task_type: \"human\",\n elevator_pitch: \"User evaluates multiple items side-by-side to understand differences.\",\n example_usage: \"Comparing three AI-generated designs or two product recommendations.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Options\", isArray: true }],\n optional: [{ id: \"data_list\", label: \"Comparison Criteria\" }]\n },\n outputs: {\n primary: { id: \"data_text\", label: \"Comparison Notes\" },\n metadata: [{ id: \"data_json\", label: \"Comparison Matrix\" }]\n }\n },\n common_variants: [\"side_by_side_view\", \"diff_comparison\", \"a_b_testing\", \"variant_review\"],\n relations: [\n { target_id: \"task_rank\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Ranking provides initial ordering before detailed comparison.\" },\n { target_id: \"human_choose\", type: \"enables\", strength: \"strong\", reason: \"Comparison informs the choice decision.\" }\n ]\n },\n {\n id: \"human_choose\",\n layer_id: \"layer_internal\",\n name: \"Choose Winner\",\n slug: \"choose-winner\",\n task_type: \"human\",\n elevator_pitch: \"User picks one option as the final selection with commitment.\",\n example_usage: \"Selecting the best AI-generated email variant or choosing a design direction.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Options\", isArray: true }],\n optional: [{ id: \"data_text\", label: \"Comparison Notes\" }]\n },\n outputs: {\n primary: { id: \"data_any\", label: \"Chosen Option\" },\n metadata: [{ id: \"data_text\", label: \"Selection Reason\" }]\n }\n },\n common_variants: [\"pick_winner\", \"select_best\", \"final_decision\", \"commit_choice\"],\n relations: [\n { target_id: \"human_compare\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Users typically compare before choosing.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Choice patterns inform future recommendations.\" }\n ]\n },\n {\n id: \"human_flag\",\n layer_id: \"layer_interactive\",\n name: \"Flag Content\",\n slug: \"flag-content\",\n task_type: \"human\",\n elevator_pitch: \"User reports problematic content, errors, or policy violations.\",\n example_usage: \"Reporting inappropriate AI response or marking incorrect classification.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Content\" }],\n optional: []\n },\n outputs: {\n primary: { id: \"data_signal\", label: \"Flag\" },\n metadata: [{ id: \"data_text\", label: \"Reason\" }, { id: \"data_classification\", label: \"Issue Type\" }]\n }\n },\n common_variants: [\"report_issue\", \"mark_inappropriate\", \"escalate_problem\", \"submit_bug\"],\n relations: [\n { target_id: \"human_review\", type: \"triggers\", strength: \"strong\", reason: \"Flagged content requires human review.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Flags provide negative training signals.\" },\n { target_id: \"task_verify\", type: \"commonly_preceded_by\", strength: \"weak\", reason: \"Automated verification may identify flaggable content.\" }\n ]\n },\n {\n id: \"human_configure\",\n layer_id: \"layer_inbound\",\n name: \"Configure System\",\n slug: \"configure-system\",\n task_type: \"human\",\n elevator_pitch: \"User defines system parameters, preferences, and operational settings.\",\n example_usage: \"Setting confidence thresholds, model selection, or output format preferences.\",\n io_spec: {\n inputs: {\n required: [],\n optional: [{ id: \"data_config\", label: \"Current Settings\" }, { id: \"data_schema\", label: \"Config Schema\" }]\n },\n outputs: {\n primary: { id: \"data_config\", label: \"Configuration\" },\n metadata: []\n }\n },\n common_variants: [\"set_preferences\", \"define_thresholds\", \"customize_behavior\", \"adjust_parameters\"],\n relations: [\n { target_id: \"task_adapt\", type: \"enables\", strength: \"strong\", reason: \"Configuration defines system behavior for adaptation.\" },\n { target_id: \"task_route\", type: \"enables\", strength: \"medium\", reason: \"Routing rules are often defined through configuration.\" }\n ]\n },\n {\n id: \"human_annotate\",\n layer_id: \"layer_interactive\",\n name: \"Annotate & Mark Up\",\n slug: \"annotate-markup\",\n task_type: \"human\",\n elevator_pitch: \"User adds visual or spatial annotations to content (draw, highlight, comment).\",\n example_usage: \"Drawing boxes on images for object detection training or highlighting text passages.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Content\" }],\n optional: []\n },\n outputs: {\n primary: { id: \"data_any\", label: \"Annotated Content\" },\n metadata: [{ id: \"data_json\", label: \"Annotations\", isArray: true }]\n }\n },\n common_variants: [\"draw_bounding_boxes\", \"highlight_text\", \"add_markers\", \"spatial_markup\", \"redline\"],\n relations: [\n { target_id: \"task_detect\", type: \"enables\", strength: \"strong\", reason: \"Annotations provide ground truth for object detection training.\" },\n { target_id: \"task_segment\", type: \"enables\", strength: \"strong\", reason: \"Annotated regions train segmentation models.\" },\n { target_id: \"system_train\", type: \"enables\", strength: \"strong\", reason: \"Annotations are critical training data.\" }\n ]\n },\n {\n id: \"human_validate\",\n layer_id: \"layer_interactive\",\n name: \"Validate Data\",\n slug: \"validate-data\",\n task_type: \"human\",\n elevator_pitch: \"User checks data quality, completeness, and correctness against requirements.\",\n example_usage: \"Verifying uploaded data fields are complete or checking extraction accuracy.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Data\" }],\n optional: [{ id: \"data_schema\", label: \"Validation Rules\" }]\n },\n outputs: {\n primary: { id: \"data_signal\", label: \"Valid/Invalid\" },\n metadata: [{ id: \"data_text\", label: \"Issues Found\", isArray: true }]\n }\n },\n common_variants: [\"check_completeness\", \"verify_accuracy\", \"spot_check\", \"quality_audit\"],\n relations: [\n { target_id: \"task_extract\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Extracted data often requires validation.\" },\n { target_id: \"task_verify\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Automated verification precedes human validation.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"weak\", reason: \"Validation findings improve extraction accuracy.\" }\n ]\n },\n {\n id: \"human_voice_command\",\n layer_id: \"layer_inbound\",\n name: \"Voice Command\",\n slug: \"voice-command\",\n task_type: \"human\",\n elevator_pitch: \"User speaks a verbal command or query to the system.\",\n example_usage: \"Saying 'Alexa, turn on the lights' or asking 'What's the weather today?'\",\n io_spec: {\n inputs: { required: [], optional: [] },\n outputs: {\n primary: { id: \"data_speech\", label: \"Voice Input\" },\n metadata: [{ id: \"data_text\", label: \"Intent\" }]\n }\n },\n common_variants: [\"wake_word_activation\", \"continuous_listening\", \"push_to_talk\", \"voice_query\"],\n relations: [\n { target_id: \"task_transcribe\", type: \"enables\", strength: \"strong\", reason: \"Voice input must be transcribed to text.\" },\n { target_id: \"task_classify\", type: \"enables\", strength: \"strong\", reason: \"Voice commands are classified by intent.\" },\n { target_id: \"task_generate\", type: \"enables\", strength: \"strong\", reason: \"Voice queries often trigger generation.\" }\n ]\n },\n {\n id: \"human_gesture\",\n layer_id: \"layer_inbound\",\n name: \"Gesture Input\",\n slug: \"gesture-input\",\n task_type: \"human\",\n elevator_pitch: \"User performs physical gestures, hand tracking, or body movements as input.\",\n example_usage: \"Pinching fingers in VR to zoom, waving hand to skip track, or nodding head to confirm.\",\n io_spec: {\n inputs: { required: [], optional: [] },\n outputs: {\n primary: { id: \"data_signal\", label: \"Gesture\" },\n metadata: [{ id: \"data_pose\", label: \"Body Position\" }, { id: \"data_trajectory\", label: \"Movement Path\" }]\n }\n },\n common_variants: [\"hand_tracking\", \"head_nod\", \"body_pose\", \"controller_motion\", \"touchless_gesture\"],\n relations: [\n { target_id: \"task_detect\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Gesture detection recognizes hand/body movements.\" },\n { target_id: \"task_classify\", type: \"enables\", strength: \"strong\", reason: \"Gestures are classified by meaning (swipe, pinch, etc.).\" },\n { target_id: \"task_act\", type: \"enables\", strength: \"medium\", reason: \"Gestures can directly control physical systems.\" }\n ]\n },\n {\n id: \"human_navigate_space\",\n layer_id: \"layer_inbound\",\n name: \"Navigate Space\",\n slug: \"navigate-space\",\n task_type: \"human\",\n elevator_pitch: \"User moves through physical or virtual 3D environment.\",\n example_usage: \"Walking around a VR museum, teleporting in a game, or exploring AR overlays in a building.\",\n io_spec: {\n inputs: {\n required: [],\n optional: [{ id: \"data_point_cloud\", label: \"Environment Map\" }]\n },\n outputs: {\n primary: { id: \"data_trajectory\", label: \"Movement Path\" },\n metadata: [{ id: \"data_pose\", label: \"Current Position\" }]\n }\n },\n common_variants: [\"walk_in_vr\", \"teleport\", \"fly_navigation\", \"physical_movement\", \"gaze_navigation\"],\n relations: [\n { target_id: \"task_track\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Position tracking enables navigation.\" },\n { target_id: \"task_detect\", type: \"enables\", strength: \"medium\", reason: \"Navigation reveals what objects the user encounters.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"weak\", reason: \"Movement patterns inform spatial recommendations.\" }\n ]\n },\n {\n id: \"human_adjust_control\",\n layer_id: \"layer_inbound\",\n name: \"Adjust Control\",\n slug: \"adjust-control\",\n task_type: \"human\",\n elevator_pitch: \"User continuously adjusts a physical or virtual control (slider, knob, dial).\",\n example_usage: \"Turning a thermostat dial, adjusting volume slider, or dimming lights gradually.\",\n io_spec: {\n inputs: {\n required: [],\n optional: [{ id: \"data_config\", label: \"Current Value\" }]\n },\n outputs: {\n primary: { id: \"data_config\", label: \"Adjusted Value\" },\n metadata: [{ id: \"data_trajectory\", label: \"Adjustment Path\" }]\n }\n },\n common_variants: [\"slide_control\", \"rotate_knob\", \"drag_slider\", \"continuous_input\", \"fine_tuning\"],\n relations: [\n { target_id: \"task_act\", type: \"enables\", strength: \"strong\", reason: \"Control adjustments directly trigger physical actions.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Adjustment patterns inform preference learning.\" },\n { target_id: \"human_configure\", type: \"related_to\", strength: \"medium\", reason: \"Adjusting is continuous, configuring is discrete setup.\" }\n ]\n }\n];\n","\nimport { SystemTask } from '../types';\n\nexport const SYSTEM_TASKS: SystemTask[] = [\n // Inbound\n {\n id: \"system_read_db\",\n layer_id: \"layer_inbound\",\n name: \"Read Record\",\n slug: \"read-record\",\n task_type: \"system\",\n elevator_pitch: \"Retrieves existing data from persistent storage.\",\n example_usage: \"Fetching user profile by ID on login.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_text\", label: \"Record ID\" }],\n optional: [{ id: \"data_json\", label: \"Query Parameters\" }]\n },\n outputs: {\n primary: { id: \"data_db_record\", label: \"Record\" },\n metadata: []\n }\n },\n common_variants: [\"get_by_id\", \"fetch\", \"query\", \"search\", \"list\", \"batch_read\"],\n relations: [\n { target_id: \"task_retrieve\", type: \"enables\", strength: \"medium\", reason: \"Database reads provide the corpus for retrieval systems.\" },\n { target_id: \"system_create_db\", type: \"commonly_preceded_by\", strength: \"weak\", reason: \"Often check if record exists before creating.\" }\n ]\n },\n {\n id: \"system_cache\",\n layer_id: \"layer_internal\",\n name: \"Semantic Cache\",\n slug: \"semantic-cache\",\n task_type: \"system\",\n elevator_pitch: \"Short-circuits processing by retrieving previously generated results for similar inputs.\",\n example_usage: \"Returning a cached SQL query for 'Show me sales' without calling the LLM again.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_embedding\", label: \"Input Vector\" }], \n optional: [{ id: \"data_config\", label: \"Similarity Threshold\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Cached Output\" }, \n metadata: [{ id: \"data_score\", label: \"Hit Score\" }] \n } \n },\n common_variants: [\"redis_vector\", \"exact_match\", \"similarity_cache\"],\n relations: [\n { target_id: \"task_represent\", type: \"requires_input_from\", strength: \"strong\", reason: \"Caching relies on embeddings to find 'similar' previous requests.\" },\n { target_id: \"task_generate\", type: \"precedes\", strength: \"strong\", reason: \"Cache lookup happens before generation; if hit, generation is skipped.\" }\n ]\n },\n {\n id: \"system_webhook\",\n layer_id: \"layer_inbound\",\n name: \"Webhook Listener\",\n slug: \"webhook\",\n task_type: \"system\",\n elevator_pitch: \"Waits for external service triggers.\",\n example_usage: \"Listening for Stripe payment success.\",\n io_spec: { \n inputs: { required: [{ id: \"data_config\", label: \"Endpoint\" }], optional: [] }, \n outputs: { primary: { id: \"data_json\", label: \"Payload\" }, metadata: [] } \n },\n common_variants: [\"api_callback\", \"integration_event\", \"third_party_trigger\"],\n relations: []\n },\n {\n id: \"system_timer\",\n layer_id: \"layer_inbound\",\n name: \"Scheduled Timer\",\n slug: \"timer\",\n task_type: \"system\",\n elevator_pitch: \"Triggers actions based on time schedules.\",\n example_usage: \"Nightly batch job.\",\n io_spec: { \n inputs: { required: [{ id: \"data_config\", label: \"Schedule\" }], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Time Event\" }, metadata: [] } \n },\n common_variants: [\"cron_job\", \"countdown\", \"recurring_schedule\", \"one_time_trigger\"],\n relations: []\n },\n\n // Internal\n {\n id: \"system_rules\",\n layer_id: \"layer_internal\",\n name: \"Logic Gate\",\n slug: \"logic-gate\",\n task_type: \"system\",\n elevator_pitch: \"Deterministic branching logic based on conditions.\",\n example_usage: \"If confidence score > 0.5, then approve.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Input\" }], optional: [{ id: \"data_config\", label: \"Rules\" }] }, \n outputs: { primary: { id: \"data_signal\", label: \"Branch Path\" }, metadata: [] } \n },\n common_variants: [\"if_else\", \"switch\", \"filter\", \"threshold_check\"],\n relations: [\n { target_id: \"task_classify\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Classification outputs feed business logic rules.\" },\n { target_id: \"task_regress\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Regression predictions trigger threshold-based actions.\" },\n { target_id: \"system_train\", type: \"triggers\", strength: \"medium\", reason: \"Rule-based threshold checks trigger automated retraining when model performance degrades.\" }\n ]\n },\n {\n id: \"system_format\",\n layer_id: \"layer_internal\",\n name: \"Format Conversion\",\n slug: \"format-conversion\",\n task_type: \"system\",\n elevator_pitch: \"Transforms data structure without changing meaning.\",\n example_usage: \"Converting JSON to CSV for spreadsheet export.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Source\" }], optional: [{ id: \"data_schema\", label: \"Target Schema\" }] }, \n outputs: { primary: { id: \"data_any\", label: \"Formatted Data\" }, metadata: [] } \n },\n common_variants: [\"json_to_xml\", \"csv_to_json\", \"schema_mapping\", \"data_normalization\"],\n relations: []\n },\n\n // Outbound\n {\n id: \"system_api\",\n layer_id: \"layer_outbound\",\n name: \"API Call\",\n slug: \"api-call\",\n task_type: \"system\",\n elevator_pitch: \"Executes an action in an external service.\",\n example_usage: \"Booking a calendar slot via Google Calendar API.\",\n io_spec: { \n inputs: { required: [{ id: \"data_json\", label: \"Payload\" }], optional: [] }, \n outputs: { primary: { id: \"data_api_response\", label: \"Response\" }, metadata: [] } \n },\n common_variants: [\"rest_api\", \"graphql\", \"rpc\", \"webhook_call\"],\n relations: [\n { target_id: \"task_generate\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Generated content often drives API actions.\" }\n ]\n },\n {\n id: \"system_create_db\",\n layer_id: \"layer_outbound\",\n name: \"Create Record\",\n slug: \"create-record\",\n task_type: \"system\",\n elevator_pitch: \"Inserts new data into persistent storage.\",\n example_usage: \"Creating a new user account in the database.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Record Data\" }],\n optional: [{ id: \"data_json\", label: \"Metadata\" }]\n },\n outputs: {\n primary: { id: \"data_db_record\", label: \"New Record ID\" },\n metadata: [{ id: \"data_json\", label: \"Created Record\" }]\n }\n },\n common_variants: [\"insert\", \"add\", \"post\", \"batch_create\"],\n relations: [\n { target_id: \"task_extract\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Extracted structured data is typically persisted as new records.\" },\n { target_id: \"task_generate\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Generated content often needs to be saved as new records.\" },\n { target_id: \"system_log\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Record creation should be logged for audit trails.\" }\n ]\n },\n {\n id: \"system_update_db\",\n layer_id: \"layer_outbound\",\n name: \"Update Record\",\n slug: \"update-record\",\n task_type: \"system\",\n elevator_pitch: \"Modifies existing data in persistent storage.\",\n example_usage: \"Updating user preferences or profile information.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_text\", label: \"Record ID\" },\n { id: \"data_any\", label: \"Updated Data\" }\n ],\n optional: [{ id: \"data_json\", label: \"Merge Strategy\" }]\n },\n outputs: {\n primary: { id: \"data_db_record\", label: \"Updated Record ID\" },\n metadata: [{ id: \"data_json\", label: \"Updated Fields\" }]\n }\n },\n common_variants: [\"modify\", \"patch\", \"put\", \"upsert\", \"batch_update\"],\n relations: [\n { target_id: \"system_read_db\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Typically read existing record before updating.\" },\n { target_id: \"task_extract\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Extracted data often updates existing records.\" },\n { target_id: \"system_log\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Record updates should be logged for audit trails.\" }\n ]\n },\n {\n id: \"system_delete_db\",\n layer_id: \"layer_outbound\",\n name: \"Delete Record\",\n slug: \"delete-record\",\n task_type: \"system\",\n elevator_pitch: \"Removes data from persistent storage.\",\n example_usage: \"Deleting user account when requested or removing expired data.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_text\", label: \"Record ID\" }],\n optional: [{ id: \"data_config\", label: \"Deletion Options\" }]\n },\n outputs: {\n primary: { id: \"data_signal\", label: \"Deletion Confirmation\" },\n metadata: [{ id: \"data_log\", label: \"Deletion Log\" }]\n }\n },\n common_variants: [\"remove\", \"destroy\", \"purge\", \"soft_delete\", \"batch_delete\"],\n relations: [\n { target_id: \"system_read_db\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Often verify record exists before deleting.\" },\n { target_id: \"human_review\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Deletions often require human confirmation for safety.\" },\n { target_id: \"system_log\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Deletions must be logged for audit trails and compliance.\" }\n ]\n },\n {\n id: \"system_notification\",\n layer_id: \"layer_outbound\",\n name: \"Send Notification\",\n slug: \"send-notification\",\n task_type: \"system\",\n elevator_pitch: \"Sends an alert to a user channel.\",\n example_usage: \"Push notification on mobile.\",\n io_spec: { \n inputs: { required: [{ id: \"data_text\", label: \"Recipient\" }, { id: \"data_text\", label: \"Message\" }], optional: [] }, \n outputs: { primary: { id: \"data_log\", label: \"Sent Status\" }, metadata: [] } \n },\n common_variants: [\"email\", \"push\", \"sms\", \"in_app_alert\"],\n relations: [\n { target_id: \"task_monitor\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Monitoring systems trigger notifications.\" }\n ]\n },\n {\n id: \"system_log\",\n layer_id: \"layer_outbound\",\n name: \"Log Event\",\n slug: \"log-event\",\n task_type: \"system\",\n elevator_pitch: \"Records system state for audit trails.\",\n example_usage: \"Logging an error or user action.\",\n io_spec: {\n inputs: { required: [{ id: \"data_any\", label: \"Event Data\" }], optional: [] },\n outputs: { primary: { id: \"data_log\", label: \"Log Entry\" }, metadata: [] }\n },\n common_variants: [\"error_log\", \"audit_log\", \"analytics_event\", \"debug_trace\"],\n relations: []\n },\n {\n id: \"system_git\",\n layer_id: \"layer_outbound\",\n name: \"Git Action\",\n slug: \"git-action\",\n task_type: \"system\",\n elevator_pitch: \"Executes version control operations in a Git repository.\",\n example_usage: \"Committing generated code changes to a feature branch.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_config\", label: \"Repository\" },\n { id: \"data_text\", label: \"Action\" }\n ],\n optional: [\n { id: \"data_code\", label: \"Files\" },\n { id: \"data_text\", label: \"Message\" }\n ]\n },\n outputs: {\n primary: { id: \"data_text\", label: \"Commit/Result ID\" },\n metadata: [\n { id: \"data_log\", label: \"Operation Log\" }\n ]\n }\n },\n common_variants: [\"commit\", \"push\", \"pull\", \"merge\", \"branch\", \"tag\", \"create_pr\"],\n relations: [\n {\n target_id: \"task_generate\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"Generated code often needs to be committed to version control.\"\n },\n {\n target_id: \"system_create_db\",\n type: \"alternative_to\",\n strength: \"medium\",\n reason: \"Both persist data, but Git is for code/text versioning vs. structured records.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Git operations should be logged for audit trails.\"\n }\n ]\n },\n {\n id: \"system_train\",\n layer_id: \"layer_internal\", // Processing/transformation\n name: \"Train Model\",\n slug: \"train-model\",\n task_type: \"system\",\n elevator_pitch: \"Executes model training or fine-tuning on ML infrastructure.\",\n example_usage: \"Fine-tuning GPT-4 on customer support transcripts.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_table\", label: \"Training Data\" }],\n optional: [\n { id: \"data_policy\", label: \"Base Model\" },\n { id: \"data_config\", label: \"Training Config\" }\n ]\n },\n outputs: {\n primary: { id: \"data_policy\", label: \"Trained Model\" },\n metadata: [\n { id: \"data_log\", label: \"Training Logs\" },\n { id: \"data_json\", label: \"Training Metrics\" }\n ]\n }\n },\n common_variants: [\n \"fine_tune\",\n \"full_train\",\n \"transfer_learning\",\n \"rlhf\",\n \"continued_pretraining\"\n ],\n relations: [\n {\n target_id: \"system_evaluate\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Training jobs should be followed by evaluation to measure effectiveness.\"\n },\n {\n target_id: \"system_create_db\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Trained models must be persisted to storage as new records.\"\n },\n {\n target_id: \"system_format\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Training data often needs format conversion before training.\"\n },\n {\n target_id: \"human_provide_feedback\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"RLHF training requires human preference data.\"\n }\n ]\n},\n{\n id: \"system_evaluate\",\n layer_id: \"layer_internal\", // Quality assessment/reasoning\n name: \"Evaluate Model\",\n slug: \"evaluate-model\",\n task_type: \"system\",\n elevator_pitch: \"Calculates performance metrics for model quality assessment.\",\n example_usage: \"Running test suite to measure accuracy and F1 score.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_policy\", label: \"Model\" },\n { id: \"data_table\", label: \"Test Dataset\" }\n ],\n optional: [\n { id: \"data_json\", label: \"Evaluation Config\" },\n { id: \"data_policy\", label: \"Baseline Model\" }\n ]\n },\n outputs: {\n primary: { id: \"data_json\", label: \"Metrics Report\" },\n metadata: [\n { id: \"data_score\", label: \"Primary Metric\" },\n { id: \"data_json\", label: \"Per-Class Metrics\" }\n ]\n }\n },\n common_variants: [\n \"performance_test\",\n \"benchmark\",\n \"ablation_study\",\n \"a_b_comparison\",\n \"regression_test\"\n ],\n relations: [\n {\n target_id: \"system_train\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"Evaluation typically follows training to validate model quality.\"\n },\n {\n target_id: \"system_rules\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Evaluation metrics trigger deployment decisions via threshold checks.\"\n },\n {\n target_id: \"human_review\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Evaluation results should be reviewed before production deployment.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Evaluation results are logged for model monitoring and audit trails.\"\n },\n { target_id: \"system_rules\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Evaluation metrics feed into threshold logic (if accuracy < 0.9, trigger retraining).\" }\n ]\n},\n{\n id: \"system_orchestrate\",\n layer_id: \"layer_internal\", // Coordination logic/routing\n name: \"Orchestrate Workflow\",\n slug: \"orchestrate\",\n task_type: \"system\",\n elevator_pitch: \"Coordinates task execution across multiple agents or services.\",\n example_usage: \"Managing parallel execution of specialist agents in AutoGPT.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_json\", label: \"Task Plan\" }],\n optional: [\n { id: \"data_state_vector\", label: \"Shared State\" },\n { id: \"data_config\", label: \"Orchestration Rules\" }\n ]\n },\n outputs: {\n primary: { id: \"data_json\", label: \"Execution Results\" },\n metadata: [\n { id: \"data_log\", label: \"Coordination Log\" },\n { id: \"data_signal\", label: \"Completion Signal\" }\n ]\n }\n },\n common_variants: [\n \"agent_coordination\",\n \"task_distribution\",\n \"parallel_execution\",\n \"sequential_workflow\",\n \"dag_execution\"\n ],\n relations: [\n {\n target_id: \"task_plan\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"Planning tasks create the execution strategy that orchestration implements.\"\n },\n {\n target_id: \"system_rules\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Business logic determines orchestration routing decisions.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Orchestration coordination should be logged for debugging and monitoring.\"\n },\n {\n target_id: \"system_webhook\",\n type: \"incompatible_with\",\n strength: \"medium\",\n reason: \"Don't confuse orchestration (internal coordination) with webhooks (external events).\"\n }\n ]\n},\n{\n id: \"system_analytics\",\n layer_id: \"layer_interactive\",\n name: \"Analytics Collection\",\n slug: \"analytics-collection\",\n task_type: \"system\",\n elevator_pitch: \"Captures behavioral data across all user interactions for adaptation and analysis.\",\n example_usage: \"Tracking click patterns, dwell times, and user journey paths.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"User Event\" }],\n optional: [\n { id: \"data_session_history\", label: \"Session Context\" },\n { id: \"data_preference_profile\", label: \"User Profile\" }\n ]\n },\n outputs: {\n primary: { id: \"data_log\", label: \"Analytics Event\" },\n metadata: [\n { id: \"data_json\", label: \"Event Properties\" },\n { id: \"data_score\", label: \"Timestamp\" }\n ]\n }\n },\n common_variants: [\n \"click_tracking\",\n \"scroll_depth\",\n \"session_recording\",\n \"funnel_analytics\",\n \"heatmap_data\"\n ],\n relations: [\n {\n target_id: \"task_adapt\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Analytics provides the raw behavioral data that adaptation requires.\"\n },\n {\n target_id: \"system_reward\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Collected analytics events are processed into reward signals.\"\n },\n {\n target_id: \"human_provide_feedback\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Explicit feedback is one type of event captured by analytics.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Analytics events are often also logged for audit/debugging.\"\n }\n ]\n},\n{\n id: \"system_experiment\",\n layer_id: \"layer_interactive\",\n name: \"A/B Test Manager\",\n slug: \"ab-test-manager\",\n task_type: \"system\",\n elevator_pitch: \"Manages experimentation infrastructure for controlled testing of variants.\",\n example_usage: \"Traffic splitting between two recommendation algorithms to measure lift.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_config\", label: \"Experiment Config\" },\n { id: \"data_text\", label: \"User ID\" }\n ],\n optional: [\n { id: \"data_preference_profile\", label: \"Segmentation Data\" }\n ]\n },\n outputs: {\n primary: { id: \"data_selection\", label: \"Variant Assignment\" },\n metadata: [\n { id: \"data_json\", label: \"Experiment Context\" },\n { id: \"data_score\", label: \"Traffic Allocation %\" }\n ]\n }\n },\n common_variants: [\n \"ab_test\",\n \"multivariate_test\",\n \"bandit_allocation\",\n \"feature_flag\",\n \"gradual_rollout\"\n ],\n relations: [\n {\n target_id: \"task_explore\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"A/B testing is the infrastructure layer for systematic exploration.\"\n },\n {\n target_id: \"system_analytics\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Experiment assignments are tracked via analytics to measure outcomes.\"\n },\n {\n target_id: \"system_rules\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Business logic determines experiment eligibility before assignment.\"\n },\n {\n target_id: \"system_evaluate\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Experiments must be evaluated for statistical significance.\"\n }\n ]\n},\n{\n id: \"system_monitor_model\",\n layer_id: \"layer_interactive\",\n name: \"Model Monitor\",\n slug: \"model-monitor\",\n task_type: \"system\",\n elevator_pitch: \"Detects drift, performance degradation, and anomalies in production AI systems.\",\n example_usage: \"Alerting when classification accuracy drops below threshold.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_policy\", label: \"Model State\" },\n { id: \"data_log\", label: \"Inference Logs\" }\n ],\n optional: [\n { id: \"data_table\", label: \"Ground Truth Data\" },\n { id: \"data_config\", label: \"Alert Thresholds\" }\n ]\n },\n outputs: {\n primary: { id: \"data_signal\", label: \"Health Status\" },\n metadata: [\n { id: \"data_json\", label: \"Metrics Report\" },\n { id: \"data_score\", label: \"Drift Score\" }\n ]\n }\n },\n common_variants: [\n \"drift_detection\",\n \"performance_tracking\",\n \"anomaly_detection\",\n \"data_quality_check\",\n \"latency_monitoring\"\n ],\n relations: [\n {\n target_id: \"task_adapt\",\n type: \"triggers\",\n strength: \"strong\",\n reason: \"Drift detection triggers adaptation/retraining workflows.\"\n },\n {\n target_id: \"system_notification\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Critical model health issues alert on-call teams.\"\n },\n {\n target_id: \"system_train\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Detected drift may trigger model retraining.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Monitoring results are logged for incident analysis.\"\n }\n ]\n},\n{\n id: \"system_state\",\n layer_id: \"layer_interactive\",\n name: \"State Manager\",\n slug: \"state-manager\",\n task_type: \"system\",\n elevator_pitch: \"Persists and retrieves adaptive system state across sessions.\",\n example_usage: \"Loading a user's learned preferences or conversation context.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_text\", label: \"State Key\" }],\n optional: [\n { id: \"data_state_vector\", label: \"State Data (for write)\" },\n { id: \"data_config\", label: \"TTL/Expiry Rules\" }\n ]\n },\n outputs: {\n primary: { id: \"data_state_vector\", label: \"Retrieved State\" },\n metadata: [\n { id: \"data_score\", label: \"Last Updated Timestamp\" },\n { id: \"data_json\", label: \"State Metadata\" }\n ]\n }\n },\n common_variants: [\n \"session_persistence\",\n \"user_context\",\n \"learned_preferences\",\n \"dialogue_state\",\n \"policy_checkpoint\"\n ],\n relations: [\n {\n target_id: \"task_adapt\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Adaptation requires persisting what the system has learned.\"\n },\n {\n target_id: \"task_plan\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Planning requires access to current system and environment state.\"\n },\n {\n target_id: \"task_generate\",\n type: \"enables\",\n strength: \"medium\",\n reason: \"Conversational generation needs dialogue history and context.\"\n },\n {\n target_id: \"system_read_db\",\n type: \"incompatible_with\",\n strength: \"weak\",\n reason: \"State Manager is for ephemeral/session data, not permanent records.\"\n }\n ]\n},\n{\n id: \"system_reward\",\n layer_id: \"layer_interactive\",\n name: \"Reward Calculator\",\n slug: \"reward-calculator\",\n task_type: \"system\",\n elevator_pitch: \"Converts user behavior into quantitative feedback signals for learning.\",\n example_usage: \"Computing reward score from click-through rate, dwell time, and conversions.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_log\", label: \"User Interaction Log\" }],\n optional: [\n { id: \"data_json\", label: \"Business Objectives\" },\n { id: \"data_config\", label: \"Reward Weights\" }\n ]\n },\n outputs: {\n primary: { id: \"data_score\", label: \"Reward Signal\" },\n metadata: [\n { id: \"data_json\", label: \"Signal Breakdown\" },\n { id: \"data_score\", label: \"Confidence\" }\n ]\n }\n },\n common_variants: [\n \"implicit_feedback\",\n \"engagement_scoring\",\n \"conversion_attribution\",\n \"outcome_measurement\",\n \"preference_inference\"\n ],\n relations: [\n {\n target_id: \"task_adapt\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Reward signals are the primary training data for adaptive systems.\"\n },\n {\n target_id: \"task_explore\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Exploration strategies require reward signals to learn which actions work.\"\n },\n {\n target_id: \"system_analytics\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"Analytics captures raw events; reward calculator interprets them.\"\n },\n {\n target_id: \"human_provide_feedback\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Explicit feedback is one input to reward calculation.\"\n },\n {\n target_id: \"system_train\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Accumulated reward signals trigger retraining workflows.\"\n }\n ]\n},\n{\n id: \"system_session\",\n layer_id: \"layer_interactive\",\n name: \"Session Manager\",\n slug: \"session-manager\",\n task_type: \"system\",\n elevator_pitch: \"Maintains conversational and interactive context across turns.\",\n example_usage: \"Tracking dialogue state in a multi-turn customer service chat.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_text\", label: \"Session ID\" }],\n optional: [\n { id: \"data_conversation\", label: \"New Turn (for append)\" },\n { id: \"data_config\", label: \"Context Window Limits\" }\n ]\n },\n outputs: {\n primary: { id: \"data_session_history\", label: \"Session Context\" },\n metadata: [\n { id: \"data_score\", label: \"Turn Count\" },\n { id: \"data_json\", label: \"Session Metadata\" }\n ]\n }\n },\n common_variants: [\n \"dialogue_management\",\n \"turn_tracking\",\n \"context_window_management\",\n \"multi_turn_history\",\n \"conversation_branching\"\n ],\n relations: [\n {\n target_id: \"task_generate\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Generation in conversational AI requires access to dialogue history.\"\n },\n {\n target_id: \"task_plan\",\n type: \"enables\",\n strength: \"medium\",\n reason: \"Multi-step planning requires tracking user goals across turns.\"\n },\n {\n target_id: \"system_state\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Session context is often persisted via state management.\"\n },\n {\n target_id: \"human_type_input\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"User input creates new turns that session manager appends.\"\n },\n {\n target_id: \"system_analytics\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Session events are tracked for analytics and optimization.\"\n }\n ]\n}\n];\n","\nimport { DataArtifactDefinition } from '../types';\n\nexport const DATA_ARTIFACTS: DataArtifactDefinition[] = [\n // Text Data\n { id: \"data_text\", name: \"Text\", category: \"text\", icon: \"type\", description: \"Plain text input/output\", examples: [\"User messages\", \"search queries\", \"form responses\"], compatible_with: [\"Classify\", \"Generate\", \"Extract\", \"Translate\"], format_notes: \"UTF-8 string, any length\" },\n { id: \"data_markup\", name: \"Markup\", category: \"text\", icon: \"code\", description: \"Text with semantic annotations\", examples: [\"HTML\", \"XML\", \"Markdown\"], compatible_with: [\"Extract\", \"Transform\"], format_notes: \"String with tags\" },\n { id: \"data_structured_text\", name: \"Structured Text\", category: \"text\", icon: \"file-text\", description: \"Formatted text with hierarchy\", examples: [\"Markdown\", \"rich text documents\"], compatible_with: [\"Extract\", \"Transform\", \"Generate\"], format_notes: \"Preserves formatting/structure\" },\n { id: \"data_code\", name: \"Code\", category: \"text\", icon: \"code\", description: \"Programming language text\", examples: [\"Python\", \"JavaScript\", \"SQL\"], compatible_with: [\"Generate\", \"Verify\", \"Transform\"], format_notes: \"Syntax-aware processing\" },\n { id: \"data_conversation\", name: \"Conversation History\", category: \"text\", icon: \"message-square\", description: \"Sequential dialogue\", examples: [\"Chat logs\", \"support tickets\"], compatible_with: [\"Synthesize\", \"Classify\", \"Generate\"], format_notes: \"Array of {role, content} messages\" },\n { id: \"data_document\", name: \"Document\", category: \"text\", icon: \"file-text\", description: \"File-based document\", examples: [\"PDF\", \"DOCX\"], compatible_with: [\"Extract\", \"Translate\"], format_notes: \"Binary or text content\" },\n { id: \"data_session_history\", name: \"Session History\", category: \"text\", icon: \"history\", description: \"Past user actions/state\", examples: [\"User journey\", \"Context\"], compatible_with: [\"Adapt\", \"Synthesize\"], format_notes: \"Chronological event log\" },\n \n // Visual Data\n { id: \"data_image\", name: \"Image\", category: \"visual\", icon: \"image\", description: \"Static 2D visual\", examples: [\"Photos\", \"screenshots\", \"diagrams\"], compatible_with: [\"Detect\", \"Classify\", \"Segment\", \"Transform\"], format_notes: \"JPEG, PNG, WebP. Typical size 512px-4K\" },\n { id: \"data_video\", name: \"Video\", category: \"visual\", icon: \"video\", description: \"Sequential frames\", examples: [\"Recordings\", \"animations\"], compatible_with: [\"Detect\", \"Classify\", \"Monitor\"], format_notes: \"MP4, WebM. Requires processing time/cost\" },\n { id: \"data_video_stream\", name: \"Video Stream\", category: \"visual\", icon: \"video\", description: \"Real-time continuous video\", examples: [\"Security feed\", \"Webcam\"], compatible_with: [\"Monitor\", \"Detect\"], format_notes: \"RTSP/WebRTC Stream\" },\n { id: \"data_optical_flow\", name: \"Optical Flow\", category: \"visual\", icon: \"move\", description: \"Motion vectors between frames\", examples: [\"Motion tracking\"], compatible_with: [\"Estimate\", \"Detect\"], format_notes: \"2D Vector Field\" },\n { id: \"data_3d_model\", name: \"3D Model\", category: \"visual\", icon: \"box\", description: \"Spatial geometry\", examples: [\"CAD files\", \"game assets\"], compatible_with: [\"Generate\", \"Transform\"], format_notes: \"OBJ, FBX, GLTF\" },\n { id: \"data_point_cloud\", name: \"Point Cloud\", category: \"visual\", icon: \"box\", description: \"3D spatial data points\", examples: [\"LiDAR scan\"], compatible_with: [\"Detect\", \"Segment\", \"Estimate\"], format_notes: \"XYZ coordinates + optional RGB\" },\n { id: \"data_depth_map\", name: \"Depth Map\", category: \"visual\", icon: \"layers\", description: \"Distance at each pixel\", examples: [\"AR sensing\", \"3D reconstruction\"], compatible_with: [\"Estimate\", \"Segment\"], format_notes: \"2D array of float distance values\" },\n { id: \"data_heatmap\", name: \"Heatmap\", category: \"visual\", icon: \"activity\", description: \"Probability distribution map\", examples: [\"Attention map\", \"Saliency\"], compatible_with: [\"Detect\", \"Classify\"], format_notes: \"2D float array normalized 0-1\" },\n { id: \"data_bbox\", name: \"Bounding Box\", category: \"visual\", icon: \"square\", description: \"Rectangular region of interest\", examples: [\"[x,y,w,h]\", \"YOLO output\"], compatible_with: [\"Detect\", \"Segment\"], format_notes: \"Normalized 0-1 or pixel coords\" },\n { id: \"data_mask\", name: \"Mask\", category: \"visual\", icon: \"circle-dashed\", description: \"Binary or multi-class segmentation\", examples: [\"Alpha channel\", \"Region masks\"], compatible_with: [\"Segment\", \"Transform\"], format_notes: \"Same dimensions as source image\" },\n\n // Audio Data\n { id: \"data_audio\", name: \"Audio\", category: \"audio\", icon: \"mic\", description: \"Sound recording\", examples: [\"Voice memos\", \"music\"], compatible_with: [\"Classify\", \"Translate\", \"Transform\"], format_notes: \"MP3, WAV, AAC\" },\n { id: \"data_audio_stream\", name: \"Audio Stream\", category: \"audio\", icon: \"mic\", description: \"Real-time continuous audio\", examples: [\"Microphone input\", \"Live transcription\"], compatible_with: [\"Monitor\", \"Translate\", \"Classify\"], format_notes: \"PCM Buffer\" },\n { id: \"data_speech\", name: \"Speech\", category: \"audio\", icon: \"mic\", description: \"Human voice (subset of audio)\", examples: [\"Dictation\", \"voice commands\"], compatible_with: [\"Translate (ASR)\", \"Classify\"], format_notes: \"Optimized for voice frequency range\" },\n \n // Structured Data\n { id: \"data_json\", name: \"JSON\", category: \"structured\", icon: \"code\", description: \"Key-value structured data\", examples: [\"API responses\", \"config files\"], compatible_with: [\"Extract\", \"Classify\", \"Represent\"], format_notes: \"Hierarchical, typed values\" },\n { id: \"data_list\", name: \"List / Array\", category: \"structured\", icon: \"list\", description: \"Ordered collection of items\", examples: [\"Menu items\", \"Taxonomy\"], compatible_with: [\"Classify\", \"Rank\"], format_notes: \"JSON Array\" },\n { id: \"data_table\", name: \"Table\", category: \"structured\", icon: \"table\", description: \"Rows and columns\", examples: [\"Spreadsheets\", \"SQL results\"], compatible_with: [\"Regress\", \"Classify\"], format_notes: \"CSV, TSV, Parquet\" },\n { id: \"data_knowledge_graph\", name: \"Knowledge Graph\", category: \"structured\", icon: \"network\", description: \"Entities and relationships\", examples: [\"Ontology\", \"Semantic Web\"], compatible_with: [\"Retrieve\", \"Verify\"], format_notes: \"Graph/Triples\" },\n { id: \"data_embedding\", name: \"Embedding\", category: \"structured\", icon: \"hash\", description: \"High-dimensional vector\", examples: [\"Search index\", \"Feature vector\"], compatible_with: [\"Retrieve\", \"Match\"], format_notes: \"Float32Array, typically 384-1536 dims\" },\n { id: \"data_state_vector\", name: \"State Vector\", category: \"structured\", icon: \"cpu\", description: \"Current system/environment state\", examples: [\"Game state\", \"Robot position\"], compatible_with: [\"Act\", \"Plan\", \"Explore\"], format_notes: \"Numerical array representing condition\" },\n { id: \"data_sensor_stream\", name: \"Sensor Stream\", category: \"structured\", icon: \"activity\", description: \"Real-time sensor readings\", examples: [\"Accelerometer\", \"Temperature\"], compatible_with: [\"Monitor\", \"Estimate\"], format_notes: \"Continuous measurement series\" },\n { id: \"data_trajectory\", name: \"Trajectory\", category: \"structured\", icon: \"trending-up\", description: \"Path over time\", examples: [\"Robot path\", \"Drone flight plan\"], compatible_with: [\"Plan\", \"Act\"], format_notes: \"Sequence of positions with timestamps\" },\n { id: \"data_preference_profile\", name: \"User Profile\", category: \"structured\", icon: \"user\", description: \"Explicit/Implicit preferences\", examples: [\"Settings\", \"Learned preferences\"], compatible_with: [\"Rank\", \"Adapt\"], format_notes: \"JSON or Vector representation\" },\n \n // System Data\n { id: \"data_score\", name: \"Score\", category: \"system\", icon: \"gauge\", description: \"Numerical value (confidence, similarity, etc)\", examples: [\"0.85 confidence\", \"0.92 similarity\"], compatible_with: [\"All\"], format_notes: \"Float, typically 0-1\" },\n { id: \"data_classification\", name: \"Classification\", category: \"system\", icon: \"tag\", description: \"Categorical label\", examples: [\"Spam/Not Spam\", \"Cat/Dog\"], compatible_with: [\"Classify\", \"Verify\"], format_notes: \"String label from taxonomy\" },\n { id: \"data_signal\", name: \"Signal\", category: \"system\", icon: \"zap\", description: \"Control flow trigger\", examples: [\"Start\", \"Stop\", \"Alert\"], compatible_with: [\"Monitor\", \"Act\"], format_notes: \"Boolean or Enum\" },\n { id: \"data_log\", name: \"Log\", category: \"system\", icon: \"list\", description: \"System event record\", examples: [\"Error trace\", \"Audit log\"], compatible_with: [\"Adapt\"], format_notes: \"Timestamped structured data\" },\n { id: \"data_config\", name: \"Config\", category: \"system\", icon: \"settings\", description: \"System parameters\", examples: [\"Model settings\", \"Thresholds\"], compatible_with: [\"Adapt\"], format_notes: \"JSON/YAML\" },\n { id: \"data_schema\", name: \"Schema\", category: \"system\", icon: \"file-code\", description: \"Data structure definition\", examples: [\"JSON Schema\", \"SQL Schema\"], compatible_with: [\"Format\"], format_notes: \"Formal specification\" },\n { id: \"data_db_record\", name: \"DB Record\", category: \"system\", icon: \"database\", description: \"Persisted entity\", examples: [\"User row\", \"Product item\"], compatible_with: [\"Load\", \"Save\"], format_notes: \"ORM Object\" },\n { id: \"data_api_response\", name: \"API Response\", category: \"system\", icon: \"globe\", description: \"External service data\", examples: [\"Weather data\", \"Payment status\"], compatible_with: [\"API Call\"], format_notes: \"JSON/XML\" },\n { id: \"data_action\", name: \"Action\", category: \"system\", icon: \"zap\", description: \"Discrete or continuous action\", examples: [\"Button press\", \"Motor command\"], compatible_with: [\"Act\", \"Explore\"], format_notes: \"Enum or Vector\" },\n { id: \"data_policy\", name: \"Policy\", category: \"system\", icon: \"shield\", description: \"Decision-making strategy\", examples: [\"Neural weights\", \"Ruleset\"], compatible_with: [\"Plan\", \"Act\"], format_notes: \"Model/Function\" },\n { id: \"data_file\", name: \"File\", category: \"system\", icon: \"file\", description: \"Binary file blob\", examples: [\"Uploaded document\", \"Image file\"], compatible_with: [\"Extract\", \"Translate\"], format_notes: \"Binary data with MIME type\" },\n { id: \"data_selection\", name: \"Selection\", category: \"system\", icon: \"check-square\", description: \"User choice from options\", examples: [\"Dropdown value\", \"Checkbox state\"], compatible_with: [\"Select\"], format_notes: \"ID or value from option set\" },\n { id: \"data_group\", name: \"Group / Cluster\", category: \"system\", icon: \"grid\", description: \"A collection of items grouped by similarity or logic\", examples: [\"Cluster ID 1\", \"Folder: Invoices\"], compatible_with: [\"Synthesize\", \"Organize\"], format_notes: \"Object containing {id, label, items[]}\" },\n \n // Generic\n { id: \"data_any\", name: \"Any\", category: \"generic\", icon: \"asterisk\", description: \"Flexible/unspecified data type\", examples: [\"Wildcard input\"], compatible_with: [\"All\"], format_notes: \"Use when type varies or is unknown\" },\n { id: \"data_multimodal\", name: \"Multimodal\", category: \"generic\", icon: \"layers\", description: \"Combined data types\", examples: [\"Video with audio\", \"Image with text\"], compatible_with: [\"Detect\", \"Classify\"], format_notes: \"Container format (MKV, MP4)\" }\n];\n","\nimport { ConstraintDefinition } from '../types';\n\nexport const CONSTRAINTS: ConstraintDefinition[] = [\n { id: \"const_privacy\", name: \"Privacy Preserving\", category: \"quality_safety\", icon: \"shield-check\", description: \"Ensures PII is handled correctly.\", type: \"Policy\", applies_to: [\"Extract\", \"Generate\"], ux_note: \"Display data handling notice.\", example_values: \"GDPR compliant, anonymize outputs\" },\n { id: \"const_latency\", name: \"Latency Budget\", category: \"performance_resource\", icon: \"clock\", description: \"Maximum allowed time for execution.\", type: \"Milliseconds\", applies_to: [\"Generate\", \"Retrieve\"], ux_note: \"Show loading indicator if exceeded\", example_values: \"< 200ms for UI, < 5s for batch\" },\n { id: \"const_confidence\", name: \"Confidence Threshold\", category: \"model_technical\", icon: \"gauge\", description: \"Minimum score required to act.\", type: \"Float (0-1)\", applies_to: [\"Classify\", \"Detect\", \"Verify\"], ux_note: \"Route low-confidence to human review\", example_values: \"0.85 for automation, 0.95 for safety-critical\" },\n { id: \"const_human_loop\", name: \"Human Verification\", category: \"quality_safety\", icon: \"user-check\", description: \"Requires human approval before action.\", type: \"Workflow\", applies_to: [\"Act\", \"Generate\"], ux_note: \"Add review step in UI.\", example_values: \"Always for medical/legal, optional for creative\" },\n { id: \"const_rate_limit\", name: \"Rate Limit\", category: \"performance_resource\", icon: \"bar-chart\", description: \"Max requests per time window.\", type: \"Integer\", applies_to: [\"API Call\", \"Generate\"], ux_note: \"Queue or throttle requests\", example_values: \"100 req/min, 1000 req/hour\" },\n { id: \"const_context_window\", name: \"Context Window\", category: \"model_technical\", icon: \"layers\", description: \"Token limit for model input.\", type: \"Integer\", applies_to: [\"Generate\", \"Synthesize\"], ux_note: \"Truncate or chunk long inputs\", example_values: \"4k, 32k, 128k tokens\" },\n { id: \"const_tone\", name: \"Tone & Voice\", category: \"ux_interaction\", icon: \"message-circle\", description: \"Style of generated content.\", type: \"String\", applies_to: [\"Generate\", \"Transform\"], ux_note: \"Allow user selection\", example_values: \"Professional, Casual, Friendly, Technical\" },\n { id: \"const_format\", name: \"Output Format\", category: \"data_context\", icon: \"file-check\", description: \"Strict structure requirement.\", type: \"Schema\", applies_to: [\"Extract\", \"Generate\"], ux_note: \"Validate output before returning\", example_values: \"JSON Schema, Markdown, CSV\" },\n { id: \"const_authentication\", name: \"Authentication Required\", category: \"quality_safety\", icon: \"key\", description: \"User or service authentication is required for this operation.\", type: \"Policy\", applies_to: [\"API Call\", \"Load from Database\", \"Save to Database\"], ux_note: \"Display login prompt or return 401 if unauthenticated\", example_values: \"OAuth2, JWT, API key, SSO, mTLS\" },\n { id: \"const_authorization\", name: \"Role-Based Access\", category: \"quality_safety\", icon: \"shield-check\", description: \"Access control based on user roles or permissions.\", type: \"Policy\", applies_to: [\"API Call\", \"Generate\", \"Act\", \"Load from Database\"], ux_note: \"Check user roles before allowing action, show permissions error if unauthorized\", example_values: \"Admin only, Editor role, View-only for guests, RBAC policy\" },\n { id: \"const_encryption\", name: \"Encryption Required\", category: \"quality_safety\", icon: \"lock\", description: \"Data must be encrypted in transit and/or at rest.\", type: \"Policy\", applies_to: [\"Save to Database\", \"API Call\", \"Generate\"], ux_note: \"Use TLS/HTTPS, encrypt sensitive fields before storage\", example_values: \"TLS 1.3, AES-256 at rest, End-to-end encryption\" },\n { id: \"const_cost_budget\", name: \"Cost Budget\", category: \"performance_resource\", icon: \"dollar-sign\", description: \"Maximum cost allowed per operation or time period.\", type: \"Currency\", applies_to: [\"Generate\", \"Train Model\", \"API Call\", \"Retrieve\"], ux_note: \"Track spending, alert when approaching limit, block if exceeded\", example_values: \"$0.01 per query, $100 per day, $1000 per month\" },\n { id: \"const_compute_budget\", name: \"Compute Budget\", category: \"performance_resource\", icon: \"cpu\", description: \"Maximum compute resources allowed (tokens, GPU hours, API calls).\", type: \"Integer\", applies_to: [\"Generate\", \"Train Model\", \"Evaluate Model\"], ux_note: \"Monitor usage, throttle when approaching limit\", example_values: \"10k tokens per request, 100 GPU hours per month, 1000 API calls per day\" },\n { id: \"const_system_instruction\", name: \"System Instruction\", category: \"ux_interaction\", icon: \"file-text\", description: \"Fixed instruction or role definition for AI model behavior.\", type: \"String\", applies_to: [\"Generate\", \"Classify\", \"Synthesize\"], ux_note: \"Prepend to all requests, not visible to end user\", example_values: \"You are a helpful customer service agent, Always respond in Spanish, Be concise and factual\" },\n { id: \"const_prompt_template\", name: \"Prompt Template\", category: \"data_context\", icon: \"code\", description: \"Structured prompt format with variable placeholders.\", type: \"Template String\", applies_to: [\"Generate\", \"Transform\", \"Synthesize\"], ux_note: \"Inject user data into template, validate parameters\", example_values: \"Summarize this {document} in {style}, Translate {text} from {source_lang} to {target_lang}\" },\n { id: \"const_few_shot_examples\", name: \"Few-Shot Examples\", category: \"model_technical\", icon: \"book-open\", description: \"Example input/output pairs to guide model behavior.\", type: \"Array\", applies_to: [\"Generate\", \"Classify\", \"Extract\"], ux_note: \"Include examples in context, manage token budget\", example_values: \"Q: What's 2+2? A: 4, Input: angry text, Output: negative sentiment\" },\n { id: \"const_data_residency\", name: \"Data Residency\", category: \"quality_safety\", icon: \"map-pin\", description: \"Data must remain within specific geographic regions.\", type: \"Policy\", applies_to: [\"Save to Database\", \"API Call\", \"Train Model\"], ux_note: \"Route to region-specific infrastructure, block cross-border transfers\", example_values: \"EU only, US regions, Canada data centers, Multi-region with restrictions\" },\n { id: \"const_data_retention\", name: \"Data Retention\", category: \"quality_safety\", icon: \"calendar\", description: \"How long data should be stored before deletion.\", type: \"Duration\", applies_to: [\"Save to Database\", \"Log Event\"], ux_note: \"Implement automatic deletion, provide retention policy notice\", example_values: \"7 days, 90 days, 7 years for compliance, Delete immediately after use\" },\n { id: \"const_content_safety\", name: \"Content Safety Policy\", category: \"quality_safety\", icon: \"shield-alert\", description: \"Filters for toxicity, hate speech, violence, or inappropriate content.\", type: \"Policy\", applies_to: [\"Generate\", \"Classify\", \"Transform\"], ux_note: \"Display content warnings, show filtered results, allow user reporting\", example_values: \"Block hate speech, Flag NSFW content, Age-restrict violent imagery, Filter profanity\" },\n { id: \"const_error_handling\", name: \"Error Handling Strategy\", category: \"ux_interaction\", icon: \"alert-triangle\", description: \"How the system responds when operations fail or produce errors.\", type: \"Strategy\", applies_to: [\"Generate\", \"Retrieve\", \"API Call\", \"Act\"], ux_note: \"Show retry button, display error message, offer alternative path, escalate to support\", example_values: \"Auto-retry 3x with backoff, Show friendly error + support link, Fallback to cached result, Queue for manual review\" },\n { id: \"const_streaming\", name: \"Streaming Mode\", category: \"ux_interaction\", icon: \"activity\", description: \"Whether to stream partial results progressively or return complete output.\", type: \"Boolean\", applies_to: [\"Generate\", \"Transform\", \"Synthesize\"], ux_note: \"Show typing indicator, display tokens as they arrive, enable cancel mid-stream\", example_values: \"Stream for chat interfaces, Batch for reports, Progressive for long content\" },\n { id: \"const_audit_log\", name: \"Audit Logging\", category: \"quality_safety\", icon: \"history\", description: \"What user actions and system events to log for accountability.\", type: \"Policy\", applies_to: [\"Generate\", \"Act\", \"API Call\", \"Train Model\", \"Classify\"], ux_note: \"Minimal UI impact, may show 'Activity tracked' notice for transparency\", example_values: \"Log all AI decisions, Track user prompts + outputs, Record model versions, Capture timestamps + user IDs\" },\n { id: \"const_quality_threshold\", name: \"Quality Threshold\", category: \"model_technical\", icon: \"award\", description: \"Minimum acceptable quality score for outputs before showing to users.\", type: \"Float (0-1)\", applies_to: [\"Generate\", \"Extract\", \"Transform\"], ux_note: \"Show 'low quality' warning, offer regenerate option, route to human review\", example_values: \"0.8 for production, 0.6 for drafts, 0.9 for legal/medical, Block below 0.5\" },\n { id: \"const_user_consent\", name: \"User Consent\", category: \"quality_safety\", icon: \"user-check\", description: \"When and how to obtain user permission for data processing or AI usage.\", type: \"Policy\", applies_to: [\"Generate\", \"Train Model\", \"Save to Database\", \"API Call\"], ux_note: \"Display consent dialog, provide opt-out option, link to privacy policy, record consent timestamp\", example_values: \"Prompt before first use, Explicit opt-in for training data, Annual re-consent, Granular per-feature consent\" },\n { id: \"const_localization\", name: \"Localization Requirements\", category: \"ux_interaction\", icon: \"globe\", description: \"Language, region, and cultural adaptation requirements for content.\", type: \"Locale\", applies_to: [\"Generate\", \"Transform\", \"Synthesize\", \"Classify\"], ux_note: \"Detect user language, provide language selector, adapt formatting (dates, currency)\", example_values: \"Support 10 languages, Auto-detect locale, RTL for Arabic/Hebrew, Region-specific examples\" },\n { id: \"const_caching\", name: \"Caching Policy\", category: \"performance_resource\", icon: \"database\", description: \"How long to cache results and when to invalidate cached data.\", type: \"Duration\", applies_to: [\"Retrieve\", \"Generate\", \"API Call\", \"Load from Database\"], ux_note: \"Show 'cached' indicator, provide refresh button, warn about stale data\", example_values: \"Cache 5 minutes, Invalidate on user action, Cache forever for static content, No cache for personalized\" },\n\n // Execution Behavior Constraints\n { id: \"const_autonomy\", name: \"Autonomous Execution\", category: \"execution_behavior\", icon: \"play-circle\", description: \"Task runs independently in the background and returns results when complete.\", type: \"Mode\", applies_to: [\"Generate\", \"Retrieve\", \"Orchestrate\"], ux_note: \"Show background task indicator, provide status updates, allow cancellation\", example_values: \"Background agent, Async processing, Fire-and-forget, Blocking (wait for result)\" },\n { id: \"const_parallelism\", name: \"Parallel Execution\", category: \"execution_behavior\", icon: \"git-branch\", description: \"Multiple operations execute simultaneously for efficiency.\", type: \"Strategy\", applies_to: [\"Retrieve\", \"Generate\", \"API Call\"], ux_note: \"Show progress for parallel tasks, handle partial failures gracefully\", example_values: \"Parallel searches, Concurrent file reads, Batch API calls, Sequential only\" },\n { id: \"const_timeout\", name: \"Timeout Limit\", category: \"execution_behavior\", icon: \"timer\", description: \"Maximum time allowed before operation is cancelled.\", type: \"Duration\", applies_to: [\"Generate\", \"Retrieve\", \"API Call\", \"Act\"], ux_note: \"Show timeout warning, provide extend option, handle graceful cancellation\", example_values: \"30 seconds, 5 minutes, No timeout, User-configurable\" },\n\n // Code Generation Philosophy Constraints\n { id: \"const_minimalism\", name: \"Minimal Changes\", category: \"code_philosophy\", icon: \"minimize\", description: \"Prefer editing existing code over creating new files or adding unnecessary features.\", type: \"Principle\", applies_to: [\"Generate\", \"Transform\"], ux_note: \"Surface this principle in code review, show edit vs write statistics\", example_values: \"Edit over write, Avoid over-engineering, Only change what's needed, YAGNI (You Aren't Gonna Need It)\" },\n { id: \"const_code_style\", name: \"Code Style Adherence\", category: \"code_philosophy\", icon: \"code\", description: \"Follow existing codebase patterns and style conventions.\", type: \"Policy\", applies_to: [\"Generate\", \"Transform\"], ux_note: \"Run linter/formatter, show style violations, auto-fix when possible\", example_values: \"Match existing patterns, Follow style guide, Preserve indentation, Consistent naming\" },\n { id: \"const_backward_compatibility\", name: \"Backward Compatibility\", category: \"code_philosophy\", icon: \"git-merge\", description: \"Ensure changes don't break existing functionality or APIs.\", type: \"Policy\", applies_to: [\"Generate\", \"Transform\", \"Act\"], ux_note: \"Warn about breaking changes, suggest deprecation path, run compatibility tests\", example_values: \"No breaking changes, Deprecate before removing, Version bumps for breaking changes, Migration guide required\" },\n\n // Attribution & Provenance Constraints\n { id: \"const_attribution\", name: \"Attribution Required\", category: \"attribution\", icon: \"user-plus\", description: \"Generated content must credit sources, collaborators, or AI assistance.\", type: \"Policy\", applies_to: [\"Generate\", \"Transform\", \"Synthesize\"], ux_note: \"Include attribution footer, add co-author tags, cite sources\", example_values: \"Co-Authored-By: AI, Source citations, License attribution, Contributors list\" },\n { id: \"const_provenance\", name: \"Data Provenance\", category: \"attribution\", icon: \"git-commit\", description: \"Track and document the origin and transformation history of data.\", type: \"Policy\", applies_to: [\"Extract\", \"Transform\", \"Load from Database\", \"Save to Database\"], ux_note: \"Log data lineage, show transformation chain, enable audit trail\", example_values: \"Source file tracking, Transformation history, Model version tags, Input/output logging\" },\n { id: \"const_citation\", name: \"Source Citation\", category: \"attribution\", icon: \"link\", description: \"Reference and link to source materials when generating content.\", type: \"Format\", applies_to: [\"Generate\", \"Synthesize\", \"Transform\"], ux_note: \"Include bibliography, add inline citations, link to sources\", example_values: \"Academic style (APA/MLA), Markdown links, Footnotes, URL references\" },\n\n // Model Infrastructure Constraints\n { id: \"const_model_portability\", name: \"Model Portability\", category: \"model_technical\", icon: \"shuffle\", description: \"System architecture supports swapping model providers/versions without rewriting product logic via adapters, schemas, and test gates.\", type: \"Architecture\", applies_to: [\"Generate\", \"Synthesize\", \"Transform\", \"Retrieve\", \"Verify\", \"Plan\", \"Act\", \"API Call\", \"Orchestrate\"], ux_note: \"Test provider swaps, validate adapter interfaces, log provider metadata, ensure fallback models available\", example_values: \"Provider-agnostic message format, Tool schema normalization, Output schema enforcement, Fallback to alternative model, OpenAI/Anthropic/local adapter pattern\" },\n\n // Testing & Validation Constraints\n { id: \"const_eval_coverage\", name: \"Evaluation Coverage\", category: \"quality_safety\", icon: \"check-circle\", description: \"Defines which scenarios, edge cases, and safety checks must be covered by tests before deploying changes to an AI system.\", type: \"Testing Policy\", applies_to: [\"Generate\", \"Verify\", \"Act\", \"Retrieve\", \"Plan\", \"Orchestrate\"], ux_note: \"Show coverage reports, block deployment if gaps exist, document edge cases tested\", example_values: \"Top user intents, Tool failure + timeout paths, Prompt injection tests, PII handling validation, Low-confidence fallbacks, Cost/latency ceilings, Localization checks, Regression test suite\" }\n];\n","\nimport { TouchpointDefinition } from '../types';\n\nexport const TOUCHPOINTS: TouchpointDefinition[] = [\n // ===================================\n // SCREEN INTERFACE\n // ===================================\n { \n id: \"tp_mobile\", \n name: \"Mobile App\", \n category: \"screen_interface\",\n icon: \"smartphone\", \n description: \"Native iOS/Android application.\", \n examples: [\"Consumer apps\", \"Field tools\"] \n },\n { \n id: \"tp_web\", \n name: \"Web Dashboard\", \n category: \"screen_interface\",\n icon: \"layout\", \n description: \"Desktop or responsive web interface.\", \n examples: [\"SaaS portal\", \"Admin panel\"] \n },\n { \n id: \"tp_embedded\", \n name: \"Embedded Widget\", \n category: \"screen_interface\",\n icon: \"square-code\",\n description: \"Embeddable component in 3rd party sites or apps.\",\n examples: [\"Chatbot widget\", \"Form assistant\", \"Intercom popup\"]\n },\n { \n id: \"tp_kiosk\", \n name: \"Physical Kiosk\", \n category: \"screen_interface\",\n icon: \"monitor\", \n description: \"Public facing shared device.\", \n examples: [\"Airport check-in\", \"Retail point of sale\"] \n },\n { \n id: \"tp_wearable\", \n name: \"Smartwatch\", \n category: \"screen_interface\",\n icon: \"watch\", \n description: \"Small screen personal device.\", \n examples: [\"Apple Watch\", \"Fitbit\", \"Garmin\"] \n },\n\n // ===================================\n // CONVERSATIONAL\n // ===================================\n { \n id: \"tp_chat\", \n name: \"Chat Interface\", \n category: \"conversational\",\n icon: \"message-circle\", \n description: \"Conversational UI in messaging apps.\", \n examples: [\"Slack\", \"Teams\", \"WhatsApp\", \"Discord\"] \n },\n { \n id: \"tp_sms\", \n name: \"SMS / Text\", \n category: \"conversational\",\n icon: \"message-square\",\n description: \"Plain text messaging via cellular network.\",\n examples: [\"SMS chatbot\", \"2FA codes\", \"Text alerts\"]\n },\n {\n id: \"tp_email\",\n name: \"Email\",\n category: \"conversational\",\n icon: \"mail\",\n description: \"Asynchronous communication channel.\",\n examples: [\"Reports\", \"Alerts\", \"Newsletters\"]\n },\n {\n id: \"tp_avatar\",\n name: \"Avatar/Character\",\n category: \"conversational\",\n icon: \"user-circle\",\n description: \"Embodied representation with personality - 2D avatar or 3D character for anthropomorphic interaction.\",\n examples: [\"Chatbot avatar\", \"Virtual assistant persona\", \"Game NPC\", \"VR avatar\", \"Metaverse character\", \"Training simulator instructor\", \"Brand mascot\"]\n },\n\n // ===================================\n // VOICE & AUDIO\n // ===================================\n { \n id: \"tp_voice\", \n name: \"Voice Interface\", \n category: \"voice_audio\",\n icon: \"mic\", \n description: \"Audio-only or multimodal voice interaction.\", \n examples: [\"Smart Speaker\", \"Phone Line\", \"Alexa\"] \n },\n { \n id: \"tp_spatial_audio\", \n name: \"Spatial Audio\", \n category: \"voice_audio\",\n icon: \"audio-lines\",\n description: \"3D positioned audio interface without visual component.\",\n examples: [\"Spatial AirPods\", \"3D audio guides\", \"Directional voice\"]\n },\n\n // ===================================\n // SPATIAL COMPUTING\n // ===================================\n { \n id: \"tp_vr\", \n name: \"VR Headset\", \n category: \"spatial_computing\",\n icon: \"headphones\",\n description: \"Fully immersive virtual reality experience with hand/controller input.\",\n examples: [\"Meta Quest\", \"PSVR\", \"Training simulator\"]\n },\n { \n id: \"tp_ar_passthrough\", \n name: \"Mixed Reality\", \n category: \"spatial_computing\",\n icon: \"scan\",\n description: \"Digital content overlaid on passthrough video of physical world.\",\n examples: [\"Apple Vision Pro\", \"Meta Quest 3\", \"Spatial apps\"]\n },\n { \n id: \"tp_ar_optical\", \n name: \"AR Glasses\", \n category: \"spatial_computing\",\n icon: \"glasses\",\n description: \"See-through optical display overlaying lightweight digital content.\",\n examples: [\"Future Apple Glasses\", \"Snap Spectacles\", \"Smart glasses\"]\n },\n { \n id: \"tp_mobile_ar\", \n name: \"Mobile AR\", \n category: \"spatial_computing\",\n icon: \"scan-line\",\n description: \"Augmented reality through smartphone or tablet camera.\",\n examples: [\"IKEA Place\", \"Google Lens\", \"Pokémon GO\"]\n },\n\n // ===================================\n // TECHNICAL\n // ===================================\n { \n id: \"tp_api\", \n name: \"Public API\", \n category: \"technical\",\n icon: \"globe\", \n description: \"Programmatic interface for 3rd party devs.\", \n examples: [\"REST Endpoint\", \"GraphQL\", \"SDK\"] \n },\n { \n id: \"tp_cli\", \n name: \"CLI / Terminal\", \n category: \"technical\",\n icon: \"terminal\", \n description: \"Command line interface for technical users.\", \n examples: [\"Dev tools\", \"Server admin\", \"Scripts\"] \n },\n { \n id: \"tp_doc\", \n name: \"Document / Report\", \n category: \"technical\",\n icon: \"file-text\", \n description: \"Static file output.\", \n examples: [\"PDF Report\", \"Excel Sheet\", \"CSV Export\"] \n },\n\n // ===================================\n // PHYSICAL DEVICES\n // ===================================\n { \n id: \"tp_iot_sensor\", \n name: \"IoT Sensor/Actuator\", \n category: \"physical_devices\",\n icon: \"radio\", \n description: \"Connected sensor or actuator with physical effects.\", \n examples: [\"Smart thermostat\", \"Smart lock\", \"Connected lights\"] \n },\n { \n id: \"tp_robot\", \n name: \"Robot\", \n category: \"physical_devices\",\n icon: \"bot\", \n description: \"Autonomous or semi-autonomous physical system.\", \n examples: [\"Warehouse robot\", \"Delivery drone\", \"Assembly robot\"] \n },\n { \n id: \"tp_appliance\", \n name: \"Smart Appliance\", \n category: \"physical_devices\",\n icon: \"plug\", \n description: \"Connected home or industrial appliance.\", \n examples: [\"Smart oven\", \"HVAC system\", \"Manufacturing equipment\"] \n },\n { \n id: \"tp_vehicle\", \n name: \"Vehicle Interface\", \n category: \"physical_devices\",\n icon: \"car\", \n description: \"In-vehicle system or autonomous vehicle.\", \n examples: [\"Tesla Autopilot\", \"Car infotainment\", \"Fleet management\"] \n },\n { \n id: \"tp_haptic\", \n name: \"Haptic Device\", \n category: \"physical_devices\",\n icon: \"vibrate\", \n description: \"Touch feedback or force-based interface.\", \n examples: [\"VR haptic gloves\", \"Game controller rumble\", \"Braille display\"] \n },\n { \n id: \"tp_ambient\", \n name: \"Ambient Display\", \n category: \"physical_devices\",\n icon: \"lightbulb\", \n description: \"Environmental information display without active interaction.\", \n examples: [\"Smart mirror\", \"LED status strip\", \"Philips Hue scenes\"] \n },\n {\n id: \"tp_touchscreen\",\n name: \"Interactive Touchscreen\",\n category: \"physical_devices\",\n icon: \"tablet\",\n description: \"Fixed or mounted touchscreen for direct manipulation.\",\n examples: [\"Wall-mounted tablet\", \"Digital signage\", \"Interactive table\", \"Retail display\"]\n },\n\n // ===================================\n // 3D ENVIRONMENTS\n // ===================================\n {\n id: \"tp_3d_space\",\n name: \"3D Space\",\n category: \"spatial_computing\",\n icon: \"box\",\n description: \"Navigable real-time 3D environment with physics and spatial interaction.\",\n examples: [\"Video games\", \"Virtual showrooms\", \"3D design tools\", \"Virtual tours\", \"Training simulations\"]\n },\n {\n id: \"tp_game_controller\",\n name: \"Game Controller\",\n category: \"physical_devices\",\n icon: \"gamepad\",\n description: \"Physical controller with buttons, triggers, joysticks, and haptic feedback.\",\n examples: [\"Console controller\", \"PC gamepad\", \"Flight stick\", \"Racing wheel\", \"Adaptive controller\"]\n },\n {\n id: \"tp_overlay_hud\",\n name: \"Overlay HUD\",\n category: \"screen_interface\",\n icon: \"crosshair\",\n description: \"Non-intrusive overlay UI displaying contextual information without blocking main view.\",\n examples: [\"Gaming HUD\", \"Car dashboard overlay\", \"AR glasses UI\", \"Pilot instruments\", \"Sports analytics overlay\"]\n },\n\n // ===================================\n // DIGITAL CONTROLS\n // ===================================\n {\n id: \"tp_text_input\",\n name: \"Text Input Field\",\n category: \"screen_interface\",\n icon: \"form-input\",\n description: \"Text entry field for typing information - single line, multi-line, or specialized formats.\",\n examples: [\"Login forms\", \"Search bars\", \"Comment boxes\", \"Chat input\", \"Password fields\", \"Text areas\"]\n },\n {\n id: \"tp_button\",\n name: \"Button\",\n category: \"screen_interface\",\n icon: \"mouse-pointer\",\n description: \"Clickable element that triggers an action when pressed.\",\n examples: [\"Submit button\", \"Cancel\", \"Save\", \"Delete\", \"CTA buttons\", \"Icon buttons\", \"Links as buttons\"]\n },\n {\n id: \"tp_selection_control\",\n name: \"Selection Control\",\n category: \"screen_interface\",\n icon: \"check-square\",\n description: \"UI for choosing one or more options from a set - dropdowns, checkboxes, radio buttons, toggles.\",\n examples: [\"Settings toggles\", \"Form dropdowns\", \"Checkboxes\", \"Radio buttons\", \"Multi-select\", \"Filter controls\"]\n },\n {\n id: \"tp_slider\",\n name: \"Slider/Dial\",\n category: \"screen_interface\",\n icon: \"sliders\",\n description: \"Continuous value adjustment control - sliding, dialing, or stepping through a range.\",\n examples: [\"Volume control\", \"Brightness slider\", \"Zoom level\", \"Video scrubber\", \"Price range\", \"Rating stars\"]\n },\n {\n id: \"tp_file_picker\",\n name: \"File Picker\",\n category: \"screen_interface\",\n icon: \"upload\",\n description: \"Control for selecting files from device storage or capturing media.\",\n examples: [\"Photo upload\", \"Document attachment\", \"Profile picture\", \"Drag-drop zone\", \"Camera capture\"]\n },\n {\n id: \"tp_link\",\n name: \"Link/Hyperlink\",\n category: \"screen_interface\",\n icon: \"link\",\n description: \"Clickable text or element that navigates to another page, section, or resource.\",\n examples: [\"Text links\", \"Navigation menus\", \"Breadcrumbs\", \"Anchor links\", \"External links\", \"Deep links\"]\n },\n {\n id: \"tp_drag_drop\",\n name: \"Drag & Drop Zone\",\n category: \"screen_interface\",\n icon: \"move\",\n description: \"Interactive area for dragging and dropping elements to reorder, organize, or upload.\",\n examples: [\"Kanban boards\", \"File upload zones\", \"List reordering\", \"Dashboard widgets\", \"Image galleries\"]\n },\n];\n","import { WorkflowTemplate } from '../types';\n\nexport const WORKFLOW_TEMPLATES: WorkflowTemplate[] = \n[\n {\n \"id\": \"tmpl_copilot\",\n \"name\": \"Passive Copilot / Sidecar\",\n \"description\": \"Monitors user activity in a primary application and offers context-aware suggestions without blocking the workflow.\",\n \"primary_use_case\": \"Code Completion, Writing Assistants, Form Helpers\",\n \"complexity\": \"High\",\n \"tags\": [\n \"UX\",\n \"Real-time\",\n \"Assistant\"\n ],\n \"common_variations\": [\n \"Ghost Text\",\n \"Autocomplete\",\n \"Smart Paste\"\n ],\n \"nodes\": [\n {\n \"id\": \"a37bd95f-d4f7-40ec-8544-fac7af758151\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 398.5,\n \"y\": 629.5,\n \"customLabel\": \"Primary App (Work Surface)\",\n \"notes\": \"The main application the user is actively using.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"b9097e5a-8c29-4761-a21c-93c8ef3fcc07\",\n \"referenceId\": \"tp_overlay_hud\",\n \"type\": \"touchpoint\",\n \"x\": 608.1310679611651,\n \"y\": 855.9563106796116,\n \"customLabel\": \"Sidecar (Non-blocking Panel)\",\n \"notes\": \"A passive copilot surface that never interrupts; shows suggestions when useful.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"8a623624-a58b-4d36-96b9-ef44c63263b5\",\n \"referenceId\": \"human_navigate_space\",\n \"type\": \"task\",\n \"x\": 622.5,\n \"y\": 625.5,\n \"customLabel\": \"Work Normally\",\n \"notes\": \"User edits/navigates without being blocked by AI.\",\n \"attachments\": [\n {\n \"id\": \"pc-3-a\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Activity signals: UI events, selections, focus, recent actions\"\n },\n {\n \"id\": \"pc-3-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User opts in to passive monitoring\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"1f360012-451b-4e73-98d3-db27bb297590\",\n \"referenceId\": \"system_session\",\n \"type\": \"task\",\n \"x\": 909.5,\n \"y\": 662.5,\n \"customLabel\": \"Capture Session Context\",\n \"notes\": \"Collect lightweight, privacy-scoped context from the active session.\",\n \"attachments\": [\n {\n \"id\": \"pc-4-a\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Recent action trail (bounded window)\"\n },\n {\n \"id\": \"pc-4-b\",\n \"referenceId\": \"data_state_vector\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Current app state summary (what/where user is working)\"\n },\n {\n \"id\": \"pc-4-c\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"Minimize captured content; prefer metadata over raw text when possible\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"4a485f9f-2190-4e3e-8647-e43fe4d4cd51\",\n \"referenceId\": \"task_monitor\",\n \"type\": \"task\",\n \"x\": 1174.5,\n \"y\": 662.5,\n \"customLabel\": \"Monitor for Triggers\",\n \"notes\": \"Detect moments where a suggestion could help (e.g., repeated errors, long pause, complex state).\",\n \"attachments\": [\n {\n \"id\": \"pc-5-a\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Trigger signal + type (pause, loop, error, ambiguity, opportunity)\"\n },\n {\n \"id\": \"pc-5-b\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Do not slow the primary app; async and low overhead\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"16a68b1d-533d-4f93-a142-e2431e886011\",\n \"referenceId\": \"task_represent\",\n \"type\": \"task\",\n \"x\": 1196.5,\n \"y\": 884.5,\n \"customLabel\": \"Represent Context (Compact)\",\n \"notes\": \"Create a compact representation of what matters now (summary + embeddings).\",\n \"attachments\": [\n {\n \"id\": \"pc-6-a\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Short context summary (bounded tokens)\"\n },\n {\n \"id\": \"pc-6-b\",\n \"referenceId\": \"data_embedding\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Context embedding for retrieval/matching\"\n },\n {\n \"id\": \"pc-6-c\",\n \"referenceId\": \"const_context_window\",\n \"type\": \"constraint\",\n \"notes\": \"Hard cap on context size; prioritize recency + user intent\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"71d40374-3d20-41ba-8cf4-28e1876dec7d\",\n \"referenceId\": \"task_match\",\n \"type\": \"task\",\n \"x\": 1491.5,\n \"y\": 731.5,\n \"customLabel\": \"Match to Helpful Patterns\",\n \"notes\": \"Match current context to known tips, templates, commands, or next steps.\",\n \"attachments\": [\n {\n \"id\": \"pc-7-a\",\n \"referenceId\": \"data_list\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Candidate suggestions (pattern IDs + metadata)\"\n },\n {\n \"id\": \"pc-7-b\",\n \"referenceId\": \"const_quality_threshold\",\n \"type\": \"constraint\",\n \"notes\": \"Only suggest when likely helpful; otherwise stay quiet\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"058b3087-8885-482e-b546-97d586ae2a1d\",\n \"referenceId\": \"task_rank\",\n \"type\": \"task\",\n \"x\": 1882.5,\n \"y\": 699.5,\n \"customLabel\": \"Rank + Select\",\n \"notes\": \"Rank candidates by relevance, timing, and intrusiveness; pick top suggestion(s).\",\n \"attachments\": [\n {\n \"id\": \"pc-8-a\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Suggestion scores (relevance, confidence, interruption cost)\"\n },\n {\n \"id\": \"pc-8-b\",\n \"referenceId\": \"data_selection\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Chosen suggestion payload\"\n },\n {\n \"id\": \"pc-8-c\",\n \"referenceId\": \"const_confidence\",\n \"type\": \"constraint\",\n \"notes\": \"If confidence is low, offer a question or do nothing\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"3366f4e2-637b-438b-bb3a-6a9247619b9f\",\n \"referenceId\": \"system_notification\",\n \"type\": \"task\",\n \"x\": 1886.5,\n \"y\": 921.5,\n \"customLabel\": \"Present Suggestion (Non-blocking)\",\n \"notes\": \"Render suggestion in sidecar panel; no modal, no forced decision.\",\n \"attachments\": [\n {\n \"id\": \"pc-9-a\",\n \"referenceId\": \"data_markup\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Suggestion card UI content (title, rationale, action)\"\n },\n {\n \"id\": \"pc-9-b\",\n \"referenceId\": \"const_tone\",\n \"type\": \"constraint\",\n \"notes\": \"Helpful, optional language; avoid alarms or urgency\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"c87fdce6-a140-4165-b4a2-32ad7bd0be07\",\n \"referenceId\": \"human_choose\",\n \"type\": \"task\",\n \"x\": 620.7718446601941,\n \"y\": 994.4126213592233,\n \"customLabel\": \"Ignore / Open / Apply\",\n \"notes\": \"User can ignore, expand, or apply the suggestion without leaving flow.\",\n \"attachments\": [\n {\n \"id\": \"pc-10-a\",\n \"referenceId\": \"data_preference_profile\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"User preference updates (what they find useful)\"\n },\n {\n \"id\": \"pc-10-b\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Feedback signal (accepted, dismissed, modified)\"\n },\n {\n \"id\": \"pc-10-c\",\n \"referenceId\": \"const_human_loop\",\n \"type\": \"constraint\",\n \"notes\": \"User remains in control; AI never takes action unprompted\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"83a1cbdf-ffa1-4e7c-adb9-8df40dbb00c1\",\n \"referenceId\": \"system_analytics\",\n \"type\": \"task\",\n \"x\": 954.8786407766988,\n \"y\": 1000.4417475728155,\n \"customLabel\": \"Learn What Helps\",\n \"notes\": \"Aggregate feedback to improve ranking and reduce noise.\",\n \"attachments\": [\n {\n \"id\": \"pc-11-a\",\n \"referenceId\": \"data_log\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Anonymized interaction log (opt-in)\"\n },\n {\n \"id\": \"pc-11-b\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Traceability for suggestions shown + user actions\"\n },\n {\n \"id\": \"pc-11-c\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Short retention window; respect org policy\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"0d16c756-be19-4e4c-afb4-f3f5e0b072ef\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 865.5,\n \"y\": 621.5,\n \"width\": 1293,\n \"height\": 573,\n \"customLabel\": \"Passive Copilot Core Pipeline\",\n \"notes\": \"Capture → Monitor → Represent → Match → Rank → Present → Learn\",\n \"measuredW\": 1293,\n \"measuredH\": 573\n },\n {\n \"id\": \"d19f1a18-05ed-43b2-a8a8-45e43b7df540\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 874.5,\n \"y\": 463.5,\n \"width\": 620,\n \"height\": 110,\n \"customLabel\": \"Pattern: Passive Copilot / Sidecar\",\n \"notes\": \"Non-blocking: observes activity, offers suggestions only when useful, user always chooses.\",\n \"measuredW\": 620,\n \"measuredH\": 110\n },\n {\n \"id\": \"406523c1-08ea-450a-a1c6-cf28b46571ab\",\n \"referenceId\": \"176f2018-c87a-4efe-8cc9-6c878c594c8f\",\n \"type\": \"actor\",\n \"x\": 213.36547751765167,\n \"y\": 572.1666666666667,\n \"measuredW\": 140,\n \"measuredH\": 48\n }\n ],\n \"edges\": [\n {\n \"id\": \"14b939c1-33db-442e-828b-d3bf682bcec5\",\n \"source\": \"a37bd95f-d4f7-40ec-8544-fac7af758151\",\n \"target\": \"8a623624-a58b-4d36-96b9-ef44c63263b5\"\n },\n {\n \"id\": \"ce86ba22-f0a1-400c-a22a-5264117318b1\",\n \"source\": \"8a623624-a58b-4d36-96b9-ef44c63263b5\",\n \"target\": \"1f360012-451b-4e73-98d3-db27bb297590\"\n },\n {\n \"id\": \"b8a13dd4-6f7d-4d06-9561-b70200aa811d\",\n \"source\": \"1f360012-451b-4e73-98d3-db27bb297590\",\n \"target\": \"4a485f9f-2190-4e3e-8647-e43fe4d4cd51\"\n },\n {\n \"id\": \"2613d8c3-dd69-46f0-a8ed-3bef837b417b\",\n \"source\": \"1f360012-451b-4e73-98d3-db27bb297590\",\n \"target\": \"16a68b1d-533d-4f93-a142-e2431e886011\",\n \"label\": \"When trigger candidate\",\n \"customX\": 1153.5\n },\n {\n \"id\": \"472ab590-8acc-4d04-b85b-573e60df126d\",\n \"source\": \"4a485f9f-2190-4e3e-8647-e43fe4d4cd51\",\n \"target\": \"71d40374-3d20-41ba-8cf4-28e1876dec7d\",\n \"label\": \"Trigger signal\"\n },\n {\n \"id\": \"62301e91-0569-4dc7-be96-b905ad539d13\",\n \"source\": \"16a68b1d-533d-4f93-a142-e2431e886011\",\n \"target\": \"71d40374-3d20-41ba-8cf4-28e1876dec7d\"\n },\n {\n \"id\": \"1873686d-fa65-4076-b7f0-09471ca5b7f6\",\n \"source\": \"71d40374-3d20-41ba-8cf4-28e1876dec7d\",\n \"target\": \"058b3087-8885-482e-b546-97d586ae2a1d\",\n \"customX\": 1772\n },\n {\n \"id\": \"f5d002c9-0e87-46d6-b833-3f59c1a07520\",\n \"source\": \"058b3087-8885-482e-b546-97d586ae2a1d\",\n \"target\": \"3366f4e2-637b-438b-bb3a-6a9247619b9f\",\n \"customY\": 901,\n \"targetX\": 1859.5,\n \"sourceX\": 2122.5\n },\n {\n \"id\": \"a0efb901-0e14-456b-ad9a-f9c100ac2cc3\",\n \"source\": \"3366f4e2-637b-438b-bb3a-6a9247619b9f\",\n \"target\": \"b9097e5a-8c29-4761-a21c-93c8ef3fcc07\",\n \"label\": \"Show suggestion card\",\n \"customY\": 1219,\n \"sourceX\": 2250.5,\n \"targetX\": 566.1310679611651\n },\n {\n \"id\": \"2c74f627-e096-4d99-acd0-cb6e6082e9a6\",\n \"source\": \"b9097e5a-8c29-4761-a21c-93c8ef3fcc07\",\n \"target\": \"c87fdce6-a140-4165-b4a2-32ad7bd0be07\",\n \"customY\": 934.6019417475728,\n \"targetX\": 591.3543689320388\n },\n {\n \"id\": \"51c9ea76-1e62-4e67-b30d-cfc7a2598dc0\",\n \"source\": \"c87fdce6-a140-4165-b4a2-32ad7bd0be07\",\n \"target\": \"83a1cbdf-ffa1-4e7c-adb9-8df40dbb00c1\",\n \"label\": \"Feedback\",\n \"customX\": 904.9271844660194\n },\n {\n \"id\": \"788a9673-3010-4a21-b004-11f343566cbe\",\n \"source\": \"83a1cbdf-ffa1-4e7c-adb9-8df40dbb00c1\",\n \"target\": \"058b3087-8885-482e-b546-97d586ae2a1d\",\n \"label\": \"Improve ranking\",\n \"customY\": 933,\n \"sourceX\": 1209.8786407766988,\n \"customX\": 1790.8252427184466\n },\n {\n \"id\": \"6c70b0e1-33a1-414b-9154-3b59a6f84a80\",\n \"source\": \"406523c1-08ea-450a-a1c6-cf28b46571ab\",\n \"target\": \"a37bd95f-d4f7-40ec-8544-fac7af758151\"\n }\n ],\n \"personas\": [\n {\n \"id\": \"176f2018-c87a-4efe-8cc9-6c878c594c8f\",\n \"name\": \"Primary App User\",\n \"role\": \"Works in the main app; optionally engages with sidecar suggestions.\",\n \"color\": \"#3B82F6\",\n \"initials\": \"PA\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_chat\",\n \"name\": \"Generative Chat Assistant\",\n \"description\": \"The core architecture of modern LLM chatbots like ChatGPT and Claude. Features session history management, safety guardrails, and streaming response generation.\",\n \"primary_use_case\": \"General Purpose Assistant\",\n \"complexity\": \"Medium\",\n \"tags\": [\n \"Chat\",\n \"LLM\",\n \"Consumer\",\n \"GenAI\"\n ],\n \"common_variations\": [\n \"RAG Chatbot\",\n \"Persona Bot\"\n ],\n \"nodes\": [\n {\n \"id\": \"570f1af1-1175-4b9c-b467-0aeef1daa8bb\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 646,\n \"y\": 779.5,\n \"customLabel\": \"Chat UI\",\n \"notes\": \"Primary conversational interface (web/mobile).\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"634edb47-1d8d-40b7-8304-ad12ab709329\",\n \"referenceId\": \"human_type_input\",\n \"type\": \"task\",\n \"x\": 829,\n \"y\": 764.5,\n \"customLabel\": \"Send Message\",\n \"notes\": \"User submits a message/prompt.\",\n \"attachments\": [\n {\n \"id\": \"chat-2-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"User message\"\n },\n {\n \"id\": \"chat-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User consent for processing message\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"04aa0730-9cc4-4f6e-b4ba-0e3e25f791dc\",\n \"referenceId\": \"system_session\",\n \"type\": \"task\",\n \"x\": 1139,\n \"y\": 644.5,\n \"customLabel\": \"Load Session\",\n \"notes\": \"Identify session + user context (account, settings).\",\n \"attachments\": [\n {\n \"id\": \"chat-3-a\",\n \"referenceId\": \"data_state_vector\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Session state (IDs, preferences, feature flags)\"\n },\n {\n \"id\": \"chat-3-b\",\n \"referenceId\": \"const_authentication\",\n \"type\": \"constraint\",\n \"notes\": \"User must be authenticated for saved sessions\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"405e564c-b660-445b-9474-c0429abc6f92\",\n \"referenceId\": \"system_load_db\",\n \"type\": \"task\",\n \"x\": 1149,\n \"y\": 853.5,\n \"customLabel\": \"Load Conversation History\",\n \"notes\": \"Fetch recent messages and relevant memory for context.\",\n \"attachments\": [\n {\n \"id\": \"chat-4-a\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Prior turns (trimmed or summarized)\"\n },\n {\n \"id\": \"chat-4-b\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Only retain history per policy / user settings\"\n },\n {\n \"id\": \"chat-4-c\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"PII handling and privacy controls\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"f90f6b09-5e5f-4068-8210-ef8cef3b0bd3\",\n \"referenceId\": \"system_format\",\n \"type\": \"task\",\n \"x\": 1422,\n \"y\": 774.5,\n \"customLabel\": \"Assemble Prompt\",\n \"notes\": \"Compose system instruction + history + user message into model input.\",\n \"attachments\": [\n {\n \"id\": \"chat-5-a\",\n \"referenceId\": \"data_conversation\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Model-ready conversation payload\"\n },\n {\n \"id\": \"chat-5-b\",\n \"referenceId\": \"const_system_instruction\",\n \"type\": \"constraint\",\n \"notes\": \"System policies + assistant behavior\"\n },\n {\n \"id\": \"chat-5-c\",\n \"referenceId\": \"const_context_window\",\n \"type\": \"constraint\",\n \"notes\": \"Summarize/trim to fit context window\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"6311111a-28c6-4ece-ba29-ed2ff781c93a\",\n \"referenceId\": \"system_rules\",\n \"type\": \"task\",\n \"x\": 1760,\n \"y\": 659.5,\n \"customLabel\": \"Safety Guardrails\",\n \"notes\": \"Policy checks + refusal/redirect logic (pre-gen).\",\n \"attachments\": [\n {\n \"id\": \"chat-6-a\",\n \"referenceId\": \"const_content_safety\",\n \"type\": \"constraint\",\n \"notes\": \"Refuse disallowed requests; apply safe completion rules\"\n },\n {\n \"id\": \"chat-6-b\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Record moderation outcome + request class\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 130\n },\n {\n \"id\": \"ee3e6f96-802a-48da-baa5-671dfb86a88a\",\n \"referenceId\": \"task_generate\",\n \"type\": \"task\",\n \"x\": 1755,\n \"y\": 869.5,\n \"customLabel\": \"Generate Response (Streaming)\",\n \"notes\": \"LLM generates tokens; stream partial output as it’s produced.\",\n \"attachments\": [\n {\n \"id\": \"chat-7-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Assistant response text\"\n },\n {\n \"id\": \"chat-7-b\",\n \"referenceId\": \"const_streaming\",\n \"type\": \"constraint\",\n \"notes\": \"Stream tokens to UI with partial renders\"\n },\n {\n \"id\": \"chat-7-c\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Time-to-first-token targets\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"bf31689a-d5e3-41fc-a532-4ca4ebdbc04b\",\n \"referenceId\": \"system_log\",\n \"type\": \"task\",\n \"x\": 2169,\n \"y\": 865.5,\n \"customLabel\": \"Persist Turn\",\n \"notes\": \"Store user message + assistant output; update summaries/memory as needed.\",\n \"attachments\": [\n {\n \"id\": \"chat-8-a\",\n \"referenceId\": \"data_log\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Conversation record + timestamps\"\n },\n {\n \"id\": \"chat-8-b\",\n \"referenceId\": \"const_encryption\",\n \"type\": \"constraint\",\n \"notes\": \"Encrypt stored conversation data\"\n },\n {\n \"id\": \"chat-8-c\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Retention window + deletion rules\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"cd6c3a5f-ea46-48eb-b5ca-50845802160c\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 2318,\n \"y\": 661.5,\n \"customLabel\": \"Stream to UI\",\n \"notes\": \"Render partial tokens; finalize response on completion.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"6a75c01d-008e-4da1-88a8-049be25f3f53\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 1074,\n \"y\": 609.5,\n \"width\": 1420,\n \"height\": 477,\n \"customLabel\": \"Core Chat Assistant Pipeline\",\n \"notes\": \"Session → History → Prompt → Guardrails → Streaming generation → Persist\",\n \"measuredW\": 1421,\n \"measuredH\": 479\n },\n {\n \"id\": \"418c8f5b-db64-45b7-9ba3-41dfb11f7a94\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 1082,\n \"y\": 458.5,\n \"width\": 560,\n \"height\": 110,\n \"customLabel\": \"Minimal Pattern: Generative Chat Assistant\",\n \"notes\": \"Smallest useful architecture for modern LLM chat: session/history management, safety checks, streaming generation, and persistence.\",\n \"measuredW\": 560,\n \"measuredH\": 110\n }\n ],\n \"edges\": [\n {\n \"id\": \"c9c2023e-4162-4bee-8c4c-e6f0214d49ea\",\n \"source\": \"570f1af1-1175-4b9c-b467-0aeef1daa8bb\",\n \"target\": \"634edb47-1d8d-40b7-8304-ad12ab709329\"\n },\n {\n \"id\": \"623c91ab-42e8-453f-817b-10edf1eb9445\",\n \"source\": \"634edb47-1d8d-40b7-8304-ad12ab709329\",\n \"target\": \"04aa0730-9cc4-4f6e-b4ba-0e3e25f791dc\"\n },\n {\n \"id\": \"fa36e0b0-1993-4d4c-b91c-5d09fb9187be\",\n \"source\": \"04aa0730-9cc4-4f6e-b4ba-0e3e25f791dc\",\n \"target\": \"405e564c-b660-445b-9474-c0429abc6f92\",\n \"customY\": 839.5,\n \"targetX\": 1127\n },\n {\n \"id\": \"5ba45d82-23b9-426b-b209-d9c5a2f6cbb1\",\n \"source\": \"405e564c-b660-445b-9474-c0429abc6f92\",\n \"target\": \"f90f6b09-5e5f-4068-8210-ef8cef3b0bd3\"\n },\n {\n \"id\": \"38623f8a-007a-4147-a568-5f2a27e20183\",\n \"source\": \"f90f6b09-5e5f-4068-8210-ef8cef3b0bd3\",\n \"target\": \"6311111a-28c6-4ece-ba29-ed2ff781c93a\",\n \"label\": \"Policy pre-check\",\n \"customX\": 1699\n },\n {\n \"id\": \"ae0ca267-f7e6-484e-a3f4-02ac6ceb545b\",\n \"source\": \"6311111a-28c6-4ece-ba29-ed2ff781c93a\",\n \"target\": \"ee3e6f96-802a-48da-baa5-671dfb86a88a\",\n \"label\": \"Allowed\",\n \"customY\": 827.5,\n \"targetX\": 1713\n },\n {\n \"id\": \"9ba153fa-719f-48d8-8ba4-ac038ee0cde9\",\n \"source\": \"ee3e6f96-802a-48da-baa5-671dfb86a88a\",\n \"target\": \"cd6c3a5f-ea46-48eb-b5ca-50845802160c\",\n \"label\": \"Stream tokens\",\n \"customX\": 2022\n },\n {\n \"id\": \"831939b2-9766-4904-b6ef-49a9cae89edb\",\n \"source\": \"ee3e6f96-802a-48da-baa5-671dfb86a88a\",\n \"target\": \"bf31689a-d5e3-41fc-a532-4ca4ebdbc04b\",\n \"label\": \"Finalize + store\",\n \"customX\": 2078.5\n },\n {\n \"id\": \"e107cc22-50e7-46fb-9ca9-f567d823be55\",\n \"source\": \"bf31689a-d5e3-41fc-a532-4ca4ebdbc04b\",\n \"target\": \"405e564c-b660-445b-9474-c0429abc6f92\",\n \"label\": \"Next turn uses updated history\",\n \"customX\": 1249,\n \"customY\": 1127.5,\n \"targetX\": 1124,\n \"sourceX\": 2418\n },\n {\n \"id\": \"85a0ef3b-4edb-42cf-8285-ae374d9d90e3\",\n \"source\": \"cd6c3a5f-ea46-48eb-b5ca-50845802160c\",\n \"target\": \"570f1af1-1175-4b9c-b467-0aeef1daa8bb\",\n \"customY\": 582.5,\n \"targetX\": 603\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-user\",\n \"name\": \"Chat User\",\n \"role\": \"Converses with assistant, receives streamed responses\",\n \"color\": \"#3B82F6\",\n \"initials\": \"CU\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_rag_basic\",\n \"name\": \"RAG Knowledge Base\",\n \"description\": \"The standard Retrieval-Augmented Generation pattern. It retrieves relevant context from a database before generating an answer, reducing hallucinations.\",\n \"primary_use_case\": \"Customer Support Chatbot, Internal Wiki Search\",\n \"complexity\": \"Medium\",\n \"tags\": [\n \"Search\",\n \"Text\",\n \"Chat\"\n ],\n \"common_variations\": [\n \"Hybrid Search (Keyword + Vector)\",\n \"Multi-Query RAG\"\n ],\n \"nodes\": [\n {\n \"id\": \"39898c6d-7f48-4883-be9f-a00f9474fa1f\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 578.555944055944,\n \"y\": 603.6293706293706,\n \"customLabel\": \"Chat / Help UI\",\n \"notes\": \"Where the user asks questions and receives answers.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"46e87893-74a4-4c3d-b388-f3193987de8e\",\n \"referenceId\": \"human_type_input\",\n \"type\": \"task\",\n \"x\": 775.8286713286712,\n \"y\": 612.3006993006993,\n \"customLabel\": \"Ask a Question\",\n \"notes\": \"User submits a question to the knowledge base.\",\n \"attachments\": [\n {\n \"id\": \"rag-2-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"User question\"\n },\n {\n \"id\": \"rag-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User agrees to send query to retrieval + generation system\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"9cbd1109-3afb-41b5-9ecb-83711eae43db\",\n \"referenceId\": \"task_represent\",\n \"type\": \"task\",\n \"x\": 1070.0944055944055,\n \"y\": 606.006993006993,\n \"customLabel\": \"Represent Query (Embed)\",\n \"notes\": \"Convert question into an embedding for semantic retrieval.\",\n \"attachments\": [\n {\n \"id\": \"rag-3-a\",\n \"referenceId\": \"data_embedding\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Query embedding vector\"\n },\n {\n \"id\": \"rag-3-b\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Keep retrieval prep fast (e.g., < 300ms target)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"b843c4d0-0cdc-42be-a757-848d8ce0dc61\",\n \"referenceId\": \"system_load_db\",\n \"type\": \"task\",\n \"x\": 1069.3951048951049,\n \"y\": 797.6853146853147,\n \"customLabel\": \"Load Knowledge Index\",\n \"notes\": \"Load vector index + document store metadata (scoped to user/org).\",\n \"attachments\": [\n {\n \"id\": \"rag-4-a\",\n \"referenceId\": \"data_knowledge_graph\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"KB structure (docs/collections/links) or retrieval index metadata\"\n },\n {\n \"id\": \"rag-4-b\",\n \"referenceId\": \"const_authorization\",\n \"type\": \"constraint\",\n \"notes\": \"Only retrieve documents user is allowed to access\"\n },\n {\n \"id\": \"rag-4-c\",\n \"referenceId\": \"const_data_residency\",\n \"type\": \"constraint\",\n \"notes\": \"Respect org data residency requirements\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"cff0ce6e-ac95-4d6d-9ae0-d77426612c06\",\n \"referenceId\": \"task_retrieve\",\n \"type\": \"task\",\n \"x\": 1368.9755244755245,\n \"y\": 687.1958041958042,\n \"customLabel\": \"Retrieve Relevant Context\",\n \"notes\": \"Top-k semantic retrieval (optionally hybrid with keywords).\",\n \"attachments\": [\n {\n \"id\": \"rag-5-a\",\n \"referenceId\": \"data_list\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Top retrieved chunks/doc IDs\"\n },\n {\n \"id\": \"rag-5-b\",\n \"referenceId\": \"data_document\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Retrieved text chunks with citations/metadata\"\n },\n {\n \"id\": \"rag-5-c\",\n \"referenceId\": \"const_context_window\",\n \"type\": \"constraint\",\n \"notes\": \"Limit retrieved context to fit model context window\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"de1d774f-3113-497e-994a-8fa11ab09f32\",\n \"referenceId\": \"task_generate\",\n \"type\": \"task\",\n \"x\": 1637.7867132867134,\n \"y\": 685.0979020979021,\n \"customLabel\": \"Generate Answer (Grounded)\",\n \"notes\": \"Answer using retrieved context; avoid inventing unsupported facts.\",\n \"attachments\": [\n {\n \"id\": \"rag-6-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Draft answer\"\n },\n {\n \"id\": \"rag-6-b\",\n \"referenceId\": \"const_system_instruction\",\n \"type\": \"constraint\",\n \"notes\": \"Use provided context; if missing, say what’s missing\"\n },\n {\n \"id\": \"rag-6-c\",\n \"referenceId\": \"const_tone\",\n \"type\": \"constraint\",\n \"notes\": \"Match product tone (helpful, concise)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"b2838650-0545-4e65-a69f-f6baafe10509\",\n \"referenceId\": \"system_rules\",\n \"type\": \"task\",\n \"x\": 1901.0034965034965,\n \"y\": 671.8111888111888,\n \"customLabel\": \"Grounding + Confidence Gate\",\n \"notes\": \"Decide whether to answer, ask a clarifying question, or cite limits.\",\n \"attachments\": [\n {\n \"id\": \"rag-7-a\",\n \"referenceId\": \"const_confidence\",\n \"type\": \"constraint\",\n \"notes\": \"If low confidence, respond with uncertainty + what to retrieve next\"\n },\n {\n \"id\": \"rag-7-b\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Log retrieval doc IDs + model version for traceability\"\n },\n {\n \"id\": \"rag-7-c\",\n \"referenceId\": \"const_content_safety\",\n \"type\": \"constraint\",\n \"notes\": \"Apply safety policies to generated output\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 153\n },\n {\n \"id\": \"096d815c-4267-4d87-8e0c-b287ac7acf8a\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 2305.3997882851095,\n \"y\": 728.0439468788094,\n \"customLabel\": \"Answer in UI\",\n \"notes\": \"Show answer with optional citations to retrieved sources.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"0978e7c7-a2aa-4fc3-a8d2-f374191b62b8\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 1039.5,\n \"y\": 578,\n \"width\": 1110,\n \"height\": 430,\n \"customLabel\": \"RAG Core Pipeline\",\n \"notes\": \"Represent → Retrieve → Generate → Gate\",\n \"measuredW\": 1110,\n \"measuredH\": 430\n },\n {\n \"id\": \"f1bf3b0e-4807-478b-8f20-67af0aad3814\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 1050.8486238532116,\n \"y\": 433.53211009174316,\n \"width\": 520,\n \"height\": 110,\n \"customLabel\": \"Core Pattern: RAG Knowledge Base\",\n \"notes\": \"Minimal template: user question → embed → retrieve context → grounded generation → gate → answer.\",\n \"measuredW\": 520,\n \"measuredH\": 110\n }\n ],\n \"edges\": [\n {\n \"id\": \"e594669d-5e02-4f6f-bda4-9b2592eb07a7\",\n \"source\": \"39898c6d-7f48-4883-be9f-a00f9474fa1f\",\n \"target\": \"46e87893-74a4-4c3d-b388-f3193987de8e\"\n },\n {\n \"id\": \"a34f69b0-2b95-47da-970d-dc2924b9d758\",\n \"source\": \"46e87893-74a4-4c3d-b388-f3193987de8e\",\n \"target\": \"9cbd1109-3afb-41b5-9ecb-83711eae43db\"\n },\n {\n \"id\": \"2905e94e-5124-44dd-bba3-c8069394dcb0\",\n \"source\": \"9cbd1109-3afb-41b5-9ecb-83711eae43db\",\n \"target\": \"cff0ce6e-ac95-4d6d-9ae0-d77426612c06\"\n },\n {\n \"id\": \"4d35b0e5-87d7-4573-852b-1788749a0e46\",\n \"source\": \"b843c4d0-0cdc-42be-a757-848d8ce0dc61\",\n \"target\": \"cff0ce6e-ac95-4d6d-9ae0-d77426612c06\",\n \"customX\": 1330.9685314685314\n },\n {\n \"id\": \"1915f257-7da0-4748-8c96-082e1baa7ede\",\n \"source\": \"cff0ce6e-ac95-4d6d-9ae0-d77426612c06\",\n \"target\": \"de1d774f-3113-497e-994a-8fa11ab09f32\"\n },\n {\n \"id\": \"3cdd31c8-28a6-46eb-aabf-f4ff97b0e471\",\n \"source\": \"de1d774f-3113-497e-994a-8fa11ab09f32\",\n \"target\": \"b2838650-0545-4e65-a69f-f6baafe10509\"\n },\n {\n \"id\": \"c81d7a32-60bd-4005-8df7-24fbf63acc3d\",\n \"source\": \"b2838650-0545-4e65-a69f-f6baafe10509\",\n \"target\": \"096d815c-4267-4d87-8e0c-b287ac7acf8a\",\n \"label\": \"If answerable\"\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-user\",\n \"name\": \"Knowledge Base User\",\n \"role\": \"Asks questions, consumes grounded answers\",\n \"color\": \"#3B82F6\",\n \"initials\": \"KU\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_doc_extract\",\n \"name\": \"Document Extraction Pipeline\",\n \"description\": \"Automates the processing of uploaded files (PDFs, Images) into structured database records with a human-in-the-loop verification step.\",\n \"primary_use_case\": \"Invoice Processing, KYC, Application Forms\",\n \"complexity\": \"High\",\n \"tags\": [\n \"Vision\",\n \"Automation\",\n \"Operations\"\n ],\n \"common_variations\": [\n \"Batch Processing\",\n \"Auto-Reject Low Confidence\"\n ],\n \"nodes\": [\n {\n \"id\": \"5fffb47b-712c-4283-a08c-1e013e3d5ce5\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 434.99303749685447,\n \"y\": 674.2861756564047,\n \"customLabel\": \"Upload UI (Web)\",\n \"notes\": \"User uploads PDFs or images for extraction.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-ops\"\n },\n {\n \"id\": \"53bd73ce-af90-4d46-89b8-a0c5f80eee9f\",\n \"referenceId\": \"human_upload_file\",\n \"type\": \"task\",\n \"x\": 617.4768895226912,\n \"y\": 670.434149819646,\n \"customLabel\": \"Upload Document\",\n \"notes\": \"Upload PDF(s) / image(s) to be processed.\",\n \"attachments\": [\n {\n \"id\": \"dex-2-a\",\n \"referenceId\": \"data_file\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Uploaded file(s)\"\n },\n {\n \"id\": \"dex-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User consents to processing + storage\"\n },\n {\n \"id\": \"dex-2-c\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"Sensitive docs handled under privacy policy\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196,\n \"personaId\": \"persona-ops\"\n },\n {\n \"id\": \"72d070a6-3f57-4448-956e-d012ec200b0a\",\n \"referenceId\": \"data_file\",\n \"type\": \"data\",\n \"x\": 787.2009059642647,\n \"y\": 960.6616195509326,\n \"customLabel\": \"Source File(s)\",\n \"notes\": \"PDFs / images to be extracted.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"6893d17d-acaf-4de2-bb22-6a9ce27b6da1\",\n \"referenceId\": \"system_orchestrate\",\n \"type\": \"task\",\n \"x\": 907.9220570510245,\n \"y\": 670.184612294094,\n \"customLabel\": \"Create Processing Job\",\n \"notes\": \"Open a session/job for extraction pipeline; route by file type.\",\n \"attachments\": [\n {\n \"id\": \"dex-3-a\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Job/session record\"\n },\n {\n \"id\": \"dex-3-b\",\n \"referenceId\": \"const_error_handling\",\n \"type\": \"constraint\",\n \"notes\": \"Retry + failure states for corrupt/unsupported files\"\n },\n {\n \"id\": \"dex-3-c\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Log file IDs, user, timestamps, model versions\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"90102aa0-7cd4-42e5-9223-7211f2eb6285\",\n \"referenceId\": \"task_extract\",\n \"type\": \"task\",\n \"x\": 1176.2105263157894,\n \"y\": 669.7105263157895,\n \"customLabel\": \"Extract Text / Layout\",\n \"notes\": \"Parse PDF text or OCR images; preserve structure when possible.\",\n \"attachments\": [\n {\n \"id\": \"dex-4-a\",\n \"referenceId\": \"data_document\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Extracted document text + layout metadata\"\n },\n {\n \"id\": \"dex-4-b\",\n \"referenceId\": \"const_quality_threshold\",\n \"type\": \"constraint\",\n \"notes\": \"Minimum extraction quality; else flag for review\"\n },\n {\n \"id\": \"dex-4-c\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Batch/async allowed; keep UI responsive\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"a565c745-83b5-41cf-932e-755445dd562d\",\n \"referenceId\": \"data_document\",\n \"type\": \"data\",\n \"x\": 1364,\n \"y\": 966.5,\n \"customLabel\": \"Extracted Text\",\n \"notes\": \"Text + layout blocks (and/or OCR output).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"e08a0035-6cf6-4260-887f-c0492b722a24\",\n \"referenceId\": \"task_transform\",\n \"type\": \"task\",\n \"x\": 1482,\n \"y\": 677.5,\n \"customLabel\": \"Normalize to Schema\",\n \"notes\": \"Convert extracted content into structured fields that match a target record schema.\",\n \"attachments\": [\n {\n \"id\": \"dex-5-a\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Field-value pairs with provenance\"\n },\n {\n \"id\": \"dex-5-b\",\n \"referenceId\": \"data_schema\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Target schema definition (versioned)\"\n },\n {\n \"id\": \"dex-5-c\",\n \"referenceId\": \"const_format\",\n \"type\": \"constraint\",\n \"notes\": \"Strict output formatting (types, required fields)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"5e1cf7b0-4b78-4b0d-8abf-1cd5d837306a\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"x\": 1656.6666666666665,\n \"y\": 964.1666666666665,\n \"customLabel\": \"Proposed Fields\",\n \"notes\": \"Candidate structured fields extracted from the doc.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"c45591c9-fe1a-45ec-83f0-dba81e50175f\",\n \"referenceId\": \"task_verify\",\n \"type\": \"task\",\n \"x\": 1770.6666666666667,\n \"y\": 665.5,\n \"customLabel\": \"Auto-Verify + Confidence\",\n \"notes\": \"Assign confidence per field; decide if human review is required.\",\n \"attachments\": [\n {\n \"id\": \"dex-6-a\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Confidence scores per field\"\n },\n {\n \"id\": \"dex-6-b\",\n \"referenceId\": \"const_confidence\",\n \"type\": \"constraint\",\n \"notes\": \"Route to human review under threshold\"\n },\n {\n \"id\": \"dex-6-c\",\n \"referenceId\": \"const_human_loop\",\n \"type\": \"constraint\",\n \"notes\": \"Human-in-the-loop required for low confidence or sensitive fields\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"df3058c0-40da-417f-9cff-a1f81dc5115a\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"x\": 1962.6666666666663,\n \"y\": 963.1666666666666,\n \"customLabel\": \"Field Confidence\",\n \"notes\": \"Score(s) used to route the workflow.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"69957b03-c304-42aa-953e-5e8a60115fa6\",\n \"referenceId\": \"human_review\",\n \"type\": \"task\",\n \"x\": 2067.3333333333335,\n \"y\": 670.8333333333333,\n \"customLabel\": \"Human Verification\",\n \"notes\": \"Reviewer checks extracted fields against the source and corrects errors.\",\n \"attachments\": [\n {\n \"id\": \"dex-7-a\",\n \"referenceId\": \"data_selection\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Approved/corrected values\"\n },\n {\n \"id\": \"dex-7-b\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Record who approved what and when\"\n },\n {\n \"id\": \"dex-7-c\",\n \"referenceId\": \"const_authorization\",\n \"type\": \"constraint\",\n \"notes\": \"Only authorized reviewers can approve\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196,\n \"personaId\": \"persona-reviewer\"\n },\n {\n \"id\": \"f820d6a3-f3d7-4a00-9aeb-634cf405b3ca\",\n \"referenceId\": \"system_save_db\",\n \"type\": \"task\",\n \"x\": 2410.6666666666665,\n \"y\": 796.1666666666667,\n \"customLabel\": \"Write Record to DB\",\n \"notes\": \"Persist verified structured record.\",\n \"attachments\": [\n {\n \"id\": \"dex-8-a\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Structured database record\"\n },\n {\n \"id\": \"dex-8-b\",\n \"referenceId\": \"const_encryption\",\n \"type\": \"constraint\",\n \"notes\": \"Encrypt sensitive fields at rest\"\n },\n {\n \"id\": \"dex-8-c\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Retention policy for source files and extracted data\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"cdcade0f-2a53-477e-b526-9bf9c637c8e5\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"x\": 2758.5860805860802,\n \"y\": 654.9688644688642,\n \"customLabel\": \"DB Record\",\n \"notes\": \"Final structured record (verified).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"4a0fd7f4-7e78-4e63-a42b-0c4788071323\",\n \"referenceId\": \"system_notification\",\n \"type\": \"task\",\n \"x\": 2739.8241758241757,\n \"y\": 759.2582417582416,\n \"customLabel\": \"Notify Completion\",\n \"notes\": \"Notify uploader (and/or downstream system) that the record is ready.\",\n \"attachments\": [\n {\n \"id\": \"dex-9-a\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Completion signal\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 124\n },\n {\n \"id\": \"af699453-0946-4797-b9fb-7b25811f0dc1\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 1149.8947368421054,\n \"y\": 621.1666666666666,\n \"width\": 1511.5460526315787,\n \"height\": 435.0822368421052,\n \"customLabel\": \"Document Extraction Pipeline\",\n \"notes\": \"Upload → Extract → Normalize → Verify → Human review (if needed) → Save.\",\n \"measuredW\": 1512,\n \"measuredH\": 435\n },\n {\n \"id\": \"9c4e97d6-e0eb-4653-bff0-6aa79e174835\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 630.1696166428992,\n \"y\": 517.8613790789362,\n \"width\": 450.9890109890109,\n \"height\": 111.0989010989011,\n \"customLabel\": \"Core Pattern: Document Extraction\",\n \"notes\": \"Minimal template for turning PDFs/images into structured DB records with a human verification step.\",\n \"measuredW\": 451,\n \"measuredH\": 111\n }\n ],\n \"edges\": [\n {\n \"id\": \"6e55ef9b-ef0f-43e3-a907-d0d6c34db7d6\",\n \"source\": \"5fffb47b-712c-4283-a08c-1e013e3d5ce5\",\n \"target\": \"53bd73ce-af90-4d46-89b8-a0c5f80eee9f\"\n },\n {\n \"id\": \"42960d7c-93cf-488c-9d03-72906d9e587b\",\n \"source\": \"53bd73ce-af90-4d46-89b8-a0c5f80eee9f\",\n \"target\": \"72d070a6-3f57-4448-956e-d012ec200b0a\",\n \"customY\": 939.1125884293825,\n \"targetX\": 759.6184883818471,\n \"sourceX\": 864.2707826524621\n },\n {\n \"id\": \"701eb3f8-9eb7-4743-8d17-fc4908fdd726\",\n \"source\": \"72d070a6-3f57-4448-956e-d012ec200b0a\",\n \"target\": \"6893d17d-acaf-4de2-bb22-6a9ce27b6da1\",\n \"customX\": 873.3630082252018,\n \"customY\": 939.699787489864,\n \"sourceX\": 976.2848754299135,\n \"targetX\": 881.8915226998794\n },\n {\n \"id\": \"c3294070-0207-46f2-bb13-d6c0148a5459\",\n \"source\": \"6893d17d-acaf-4de2-bb22-6a9ce27b6da1\",\n \"target\": \"90102aa0-7cd4-42e5-9223-7211f2eb6285\"\n },\n {\n \"id\": \"5930b16f-199f-443d-b788-57013c3b48f6\",\n \"source\": \"90102aa0-7cd4-42e5-9223-7211f2eb6285\",\n \"target\": \"a565c745-83b5-41cf-932e-755445dd562d\",\n \"customY\": 935.5,\n \"targetX\": 1340.3333333333333,\n \"sourceX\": 1420.2105263157894\n },\n {\n \"id\": \"692ee9a9-2372-46a0-8f35-baf802536afd\",\n \"source\": \"a565c745-83b5-41cf-932e-755445dd562d\",\n \"target\": \"e08a0035-6cf6-4260-887f-c0492b722a24\",\n \"sourceX\": 1540.3333333333333,\n \"customY\": 935.1666666666666,\n \"targetX\": 1456\n },\n {\n \"id\": \"e9e1b1f6-6850-477d-ba85-be3bbac1587c\",\n \"source\": \"e08a0035-6cf6-4260-887f-c0492b722a24\",\n \"target\": \"5e1cf7b0-4b78-4b0d-8abf-1cd5d837306a\",\n \"customY\": 934.1666666666666,\n \"sourceX\": 1729.3333333333333,\n \"targetX\": 1631.3333333333333\n },\n {\n \"id\": \"eefbea39-5c64-4958-b326-0acbf57005ef\",\n \"source\": \"5e1cf7b0-4b78-4b0d-8abf-1cd5d837306a\",\n \"target\": \"c45591c9-fe1a-45ec-83f0-dba81e50175f\",\n \"customY\": 934.8333333333334,\n \"targetX\": 1745.3333333333335,\n \"sourceX\": 1837.9999999999998\n },\n {\n \"id\": \"b7ea84a2-d37f-4dd1-9037-06d43203d987\",\n \"source\": \"c45591c9-fe1a-45ec-83f0-dba81e50175f\",\n \"target\": \"df3058c0-40da-417f-9cff-a1f81dc5115a\",\n \"sourceX\": 2021.3333333333335,\n \"customY\": 933.8333333333334,\n \"targetX\": 1933.9999999999998\n },\n {\n \"id\": \"1a5dd310-f310-4bca-94c2-c69d121c13a0\",\n \"source\": \"df3058c0-40da-417f-9cff-a1f81dc5115a\",\n \"target\": \"69957b03-c304-42aa-953e-5e8a60115fa6\",\n \"label\": \"If below threshold\",\n \"targetX\": 2045.3333333333333,\n \"customY\": 931.8333333333334,\n \"sourceX\": 2180.6666666666665\n },\n {\n \"id\": \"f326afd9-fdbc-4705-8128-68c14b02e20b\",\n \"source\": \"69957b03-c304-42aa-953e-5e8a60115fa6\",\n \"target\": \"f820d6a3-f3d7-4a00-9aeb-634cf405b3ca\",\n \"label\": \"After approval\",\n \"customX\": 2348.333333333333,\n \"customY\": 867.5,\n \"targetX\": 2386\n },\n {\n \"id\": \"c0192320-fd7a-4b54-9951-bfe9e8a93daf\",\n \"source\": \"f820d6a3-f3d7-4a00-9aeb-634cf405b3ca\",\n \"target\": \"cdcade0f-2a53-477e-b526-9bf9c637c8e5\",\n \"customX\": 2678.142857142857\n },\n {\n \"id\": \"fbf60370-6e21-4c00-8531-25e56831b3cb\",\n \"source\": \"cdcade0f-2a53-477e-b526-9bf9c637c8e5\",\n \"target\": \"4a0fd7f4-7e78-4e63-a42b-0c4788071323\",\n \"customY\": 735.653846153846,\n \"targetX\": 2719.934065934066,\n \"sourceX\": 2963.7509157509153\n },\n {\n \"id\": \"4555b7d5-003a-4e3c-9b3c-f7fc9e327fcb\",\n \"source\": \"df3058c0-40da-417f-9cff-a1f81dc5115a\",\n \"target\": \"f820d6a3-f3d7-4a00-9aeb-634cf405b3ca\",\n \"customX\": 2287,\n \"label\": \"If above threshold\"\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-ops\",\n \"name\": \"Uploader\",\n \"role\": \"Submits documents for extraction\",\n \"color\": \"#3B82F6\",\n \"initials\": \"UP\",\n \"category\": \"human\"\n },\n {\n \"id\": \"persona-reviewer\",\n \"name\": \"Verifier\",\n \"role\": \"Checks and approves extracted fields\",\n \"color\": \"#10B981\",\n \"initials\": \"HV\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_agent_tool\",\n \"name\": \"Tool-Using Agent\",\n \"description\": \"An autonomous agent loop that can decide to call external APIs to fulfill a user request.\",\n \"primary_use_case\": \"Personal Assistant, Booking Bot, Data Analyst\",\n \"complexity\": \"High\",\n \"tags\": [\n \"Agentic\",\n \"Logic\",\n \"API\"\n ],\n \"common_variations\": [\n \"Multi-Agent Swarm\",\n \"Plan-and-Solve\"\n ],\n \"nodes\": [\n {\n \"id\": \"0a87740e-a0aa-44cf-bfba-ce02e6de8db8\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 490,\n \"y\": 666,\n \"customLabel\": \"Chat / Command UI\",\n \"notes\": \"User asks for something to be done; agent responds and may take actions via tools.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"7496cb2f-574c-429d-a3ce-f880d4ffb236\",\n \"referenceId\": \"human_type_input\",\n \"type\": \"task\",\n \"x\": 679,\n \"y\": 657,\n \"customLabel\": \"User Request\",\n \"notes\": \"User expresses a goal (not steps).\",\n \"attachments\": [\n {\n \"id\": \"agent-2-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Natural-language request\"\n },\n {\n \"id\": \"agent-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User consents to tool calls on their behalf (scope may be limited)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"3542d41e-5868-41f9-ba39-ba5967c65728\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"x\": 738,\n \"y\": 885,\n \"customLabel\": \"Session Context\",\n \"notes\": \"Conversation history, user preferences, prior tool results.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"referenceId\": \"task_plan\",\n \"type\": \"task\",\n \"x\": 1024.655172413793,\n \"y\": 671,\n \"customLabel\": \"Plan Next Step\",\n \"notes\": \"Decide whether to respond directly or call a tool; choose which tool + arguments.\",\n \"attachments\": [\n {\n \"id\": \"agent-4-a\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Plan / intent / chosen tool\"\n },\n {\n \"id\": \"agent-4-b\",\n \"referenceId\": \"data_json\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Tool call arguments (JSON)\"\n },\n {\n \"id\": \"agent-4-c\",\n \"referenceId\": \"const_system_instruction\",\n \"type\": \"constraint\",\n \"notes\": \"Tool-use policy: call tools only when needed, minimize access, be reversible when possible\"\n },\n {\n \"id\": \"agent-4-d\",\n \"referenceId\": \"const_cost_budget\",\n \"type\": \"constraint\",\n \"notes\": \"Limit tool calls / tokens / spend\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"bf3dd1c2-bf64-4684-bc35-68c33e8f4a74\",\n \"referenceId\": \"system_orchestrate\",\n \"type\": \"task\",\n \"x\": 1283.2608695652175,\n \"y\": 692.7391304347826,\n \"customLabel\": \"Orchestrate Loop\",\n \"notes\": \"Executes the plan: call tool, store results, decide whether to continue looping.\",\n \"attachments\": [\n {\n \"id\": \"agent-5-a\",\n \"referenceId\": \"const_rate_limit\",\n \"type\": \"constraint\",\n \"notes\": \"Respect API/tool rate limits and backoff\"\n },\n {\n \"id\": \"agent-5-b\",\n \"referenceId\": \"const_error_handling\",\n \"type\": \"constraint\",\n \"notes\": \"Handle tool errors; retry rules; graceful failure modes\"\n },\n {\n \"id\": \"agent-5-c\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Record tool calls + responses for traceability\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 153\n },\n {\n \"id\": \"834cb92d-0b28-43f3-b620-5881245bba85\",\n \"referenceId\": \"system_api\",\n \"type\": \"task\",\n \"x\": 1615,\n \"y\": 657.9565217391304,\n \"customLabel\": \"Call External API / Tool\",\n \"notes\": \"Agent invokes an external tool (search, calendar, CRM, payments, etc.).\",\n \"attachments\": [\n {\n \"id\": \"agent-6-a\",\n \"referenceId\": \"data_api_response\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Raw tool response (may be partial / paginated)\"\n },\n {\n \"id\": \"agent-6-b\",\n \"referenceId\": \"const_authentication\",\n \"type\": \"constraint\",\n \"notes\": \"Use least-privilege auth / scoped tokens\"\n },\n {\n \"id\": \"agent-6-c\",\n \"referenceId\": \"const_authorization\",\n \"type\": \"constraint\",\n \"notes\": \"Only act within user-approved scopes\"\n },\n {\n \"id\": \"agent-6-d\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"Avoid sending sensitive data unless necessary\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 220\n },\n {\n \"id\": \"a78daadf-0632-43cf-b66f-ddd51d163577\",\n \"referenceId\": \"task_synthesize\",\n \"type\": \"task\",\n \"x\": 1987.9835082458771,\n \"y\": 682.3343328335833,\n \"customLabel\": \"Interpret + Update State\",\n \"notes\": \"Summarize tool results, update working memory/state, decide if more tool calls are needed.\",\n \"attachments\": [\n {\n \"id\": \"agent-7-a\",\n \"referenceId\": \"data_state_vector\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Working memory / state update\"\n },\n {\n \"id\": \"agent-7-b\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Intermediate synthesis / notes\"\n },\n {\n \"id\": \"agent-7-c\",\n \"referenceId\": \"const_context_window\",\n \"type\": \"constraint\",\n \"notes\": \"Summarize + compress to preserve important details in limited context\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"48d9fde3-32c4-42dd-9db3-521cd99c3b9d\",\n \"referenceId\": \"system_rules\",\n \"type\": \"task\",\n \"x\": 2268.763118440779,\n \"y\": 693.128935532234,\n \"customLabel\": \"Stop / Continue Gate\",\n \"notes\": \"Check completion, confidence, and safety; decide to stop, loop, or ask the user.\",\n \"attachments\": [\n {\n \"id\": \"agent-8-a\",\n \"referenceId\": \"const_confidence\",\n \"type\": \"constraint\",\n \"notes\": \"If uncertain, request clarification or propose options\"\n },\n {\n \"id\": \"agent-8-b\",\n \"referenceId\": \"const_human_loop\",\n \"type\": \"constraint\",\n \"notes\": \"Require confirmation before irreversible actions (e.g., purchases, sending messages)\"\n },\n {\n \"id\": \"agent-8-c\",\n \"referenceId\": \"const_content_safety\",\n \"type\": \"constraint\",\n \"notes\": \"Refuse disallowed requests; constrain tool usage appropriately\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 153\n },\n {\n \"id\": \"10c3b69f-8c82-427e-a6cd-d1935f996553\",\n \"referenceId\": \"task_generate\",\n \"type\": \"task\",\n \"x\": 2720.2923538230884,\n \"y\": 685.2578710644677,\n \"customLabel\": \"Respond / Present Result\",\n \"notes\": \"Produce final answer, action summary, and any next steps.\",\n \"attachments\": [\n {\n \"id\": \"agent-9-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"User-facing response\"\n },\n {\n \"id\": \"agent-9-b\",\n \"referenceId\": \"const_format\",\n \"type\": \"constraint\",\n \"notes\": \"Structured output when useful (bullets, tables, citations, etc.)\"\n },\n {\n \"id\": \"agent-9-c\",\n \"referenceId\": \"const_tone\",\n \"type\": \"constraint\",\n \"notes\": \"Clear, concise, non-overconfident\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"ba8cbd8a-2159-421c-b99d-67bfb0f782ca\",\n \"referenceId\": \"data_log\",\n \"type\": \"data\",\n \"x\": 1896.4842578710643,\n \"y\": 890.3178410794602,\n \"customLabel\": \"Tool Trace / Logs\",\n \"notes\": \"Tool call history, timings, errors (for debugging + audit).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"d3735aca-ffdc-49ce-9171-2da84c5a13d1\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 975,\n \"y\": 626,\n \"width\": 1556.7541229385308,\n \"height\": 410.63718140929535,\n \"customLabel\": \"Tool-Using Agent Loop\",\n \"notes\": \"Plan → Orchestrate → Tool → Synthesize → Gate → (Loop or Respond)\",\n \"measuredW\": 1556,\n \"measuredH\": 410\n },\n {\n \"id\": \"da64eeb6-4c02-4433-b5a1-93f47826de68\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 438.4742268041237,\n \"y\": 447.8453608247423,\n \"width\": 610,\n \"height\": 110,\n \"customLabel\": \"Core Pattern: Tool-Using Agent\",\n \"notes\": \"Minimal autonomous loop. Use a human-loop constraint for irreversible actions; keep state + logs; iterate until done.\",\n \"measuredW\": 610,\n \"measuredH\": 110\n }\n ],\n \"edges\": [\n {\n \"id\": \"af3acbdd-c734-4cd7-a9b8-f0dc28539232\",\n \"source\": \"0a87740e-a0aa-44cf-bfba-ce02e6de8db8\",\n \"target\": \"7496cb2f-574c-429d-a3ce-f880d4ffb236\"\n },\n {\n \"id\": \"c171ee35-e764-4396-9400-7c52ab973c3f\",\n \"source\": \"7496cb2f-574c-429d-a3ce-f880d4ffb236\",\n \"target\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"customX\": 937\n },\n {\n \"id\": \"2ae5d1f9-af3f-4dd3-8264-2cdb009ed6d8\",\n \"source\": \"3542d41e-5868-41f9-ba39-ba5967c65728\",\n \"target\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"label\": \"Context\",\n \"customX\": 935.8103448275862\n },\n {\n \"id\": \"33d00212-4037-4c12-a2c3-61793554f68b\",\n \"source\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"target\": \"bf3dd1c2-bf64-4684-bc35-68c33e8f4a74\"\n },\n {\n \"id\": \"ec92dfdd-7039-4e25-9aec-7c17ca3460f4\",\n \"source\": \"bf3dd1c2-bf64-4684-bc35-68c33e8f4a74\",\n \"target\": \"834cb92d-0b28-43f3-b620-5881245bba85\",\n \"label\": \"Tool call\"\n },\n {\n \"id\": \"ce1ba000-5831-4e0f-b0b4-efde4037c9b3\",\n \"source\": \"834cb92d-0b28-43f3-b620-5881245bba85\",\n \"target\": \"a78daadf-0632-43cf-b66f-ddd51d163577\",\n \"label\": \"Results\"\n },\n {\n \"id\": \"1078efb2-9e38-48e4-b4c9-b2f090e3faeb\",\n \"source\": \"a78daadf-0632-43cf-b66f-ddd51d163577\",\n \"target\": \"48d9fde3-32c4-42dd-9db3-521cd99c3b9d\"\n },\n {\n \"id\": \"e65ff1a1-2828-4b8d-9531-4797d7b70d0e\",\n \"source\": \"48d9fde3-32c4-42dd-9db3-521cd99c3b9d\",\n \"target\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"label\": \"Continue (loop)\",\n \"customY\": 1007.9655172413793,\n \"targetX\": 999.4827586206895,\n \"sourceX\": 2508.545727136431\n },\n {\n \"id\": \"e8b9d9c3-880d-4aa3-8090-f7a184fd2390\",\n \"source\": \"48d9fde3-32c4-42dd-9db3-521cd99c3b9d\",\n \"target\": \"10c3b69f-8c82-427e-a6cd-d1935f996553\",\n \"label\": \"Stop (done / ask user)\"\n },\n {\n \"id\": \"1a14febc-a1d7-42a9-9469-fd87744805ad\",\n \"source\": \"834cb92d-0b28-43f3-b620-5881245bba85\",\n \"target\": \"ba8cbd8a-2159-421c-b99d-67bfb0f782ca\",\n \"label\": \"Trace\"\n },\n {\n \"id\": \"2f28274c-aa71-4922-a5c2-50110d9ef0bd\",\n \"source\": \"10c3b69f-8c82-427e-a6cd-d1935f996553\",\n \"target\": \"0a87740e-a0aa-44cf-bfba-ce02e6de8db8\",\n \"customY\": 588.9743659098285,\n \"sourceX\": 2984.3129723797892,\n \"targetX\": 434.63917525773195\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-user\",\n \"name\": \"User\",\n \"role\": \"States goals, provides confirmations, consumes results\",\n \"color\": \"#3B82F6\",\n \"initials\": \"U\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_moderation\",\n \"name\": \"Content Moderation System\",\n \"description\": \"A safety-first pipeline for user-generated content, combining automated classification with human oversight.\",\n \"primary_use_case\": \"Social Media, Comment Sections, Forums\",\n \"complexity\": \"Low\",\n \"tags\": [\n \"Safety\",\n \"Classification\",\n \"Human-in-the-loop\"\n ],\n \"common_variations\": [\n \"Pre-moderation\",\n \"Post-moderation\"\n ],\n \"nodes\": [\n {\n \"id\": \"fe847a51-0333-4227-9a99-50b933f237b7\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 260.5,\n \"y\": 641.5,\n \"customLabel\": \"User Content Surface (Web/App)\",\n \"notes\": \"Where UGC is created and submitted.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-creator\"\n },\n {\n \"id\": \"15b97802-e9e1-4984-939b-13e22f0dcc74\",\n \"referenceId\": \"human_upload_file\",\n \"type\": \"task\",\n \"x\": 480.5,\n \"y\": 656.5,\n \"customLabel\": \"Submit Content\",\n \"notes\": \"User posts text/image/video to the platform.\",\n \"attachments\": [\n {\n \"id\": \"cm-2-a\",\n \"referenceId\": \"data_multimodal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"UGC payload (text/image/video + metadata)\"\n },\n {\n \"id\": \"cm-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User consents to moderation processing per TOS\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-creator\"\n },\n {\n \"id\": \"d28e1693-6c3e-4feb-ab5f-277e3fd26dad\",\n \"referenceId\": \"data_multimodal\",\n \"type\": \"data\",\n \"x\": 785.5,\n \"y\": 672.5,\n \"customLabel\": \"UGC Item\",\n \"notes\": \"The submitted content to be moderated (plus metadata).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"1aead687-39fb-4d24-b768-cf7d61827143\",\n \"referenceId\": \"const_content_safety\",\n \"type\": \"constraint\",\n \"x\": 807.5,\n \"y\": 477.5,\n \"customLabel\": \"Safety Policy Constraints\",\n \"notes\": \"Moderation must follow policy definitions (categories, thresholds, escalation).\",\n \"measuredW\": 180,\n \"measuredH\": 40\n },\n {\n \"id\": \"da7f35af-832f-4402-8fb0-8b67b5be6583\",\n \"referenceId\": \"data_policy\",\n \"type\": \"data\",\n \"x\": 827.5,\n \"y\": 545.5,\n \"customLabel\": \"Moderation Policy\",\n \"notes\": \"Rules, taxonomy, and enforcement definitions (source of truth).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"5805d2ae-e1f7-46ae-96ee-355f12cb87dc\",\n \"referenceId\": \"task_classify\",\n \"type\": \"task\",\n \"x\": 776.5,\n \"y\": 760.5,\n \"customLabel\": \"Automated Safety Classification\",\n \"notes\": \"Model assigns labels + risk scores (e.g., hate/harassment, sexual content, violence, self-harm, spam).\",\n \"attachments\": [\n {\n \"id\": \"cm-3-a\",\n \"referenceId\": \"data_classification\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Labels (multi-label) + categories\"\n },\n {\n \"id\": \"cm-3-b\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Risk/confidence scores\"\n },\n {\n \"id\": \"cm-3-c\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Fast path for posting (e.g., < 1s target for non-escalations)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"referenceId\": \"system_rules\",\n \"type\": \"task\",\n \"x\": 1149.5,\n \"y\": 725.5,\n \"customLabel\": \"Policy Decision + Routing\",\n \"notes\": \"Apply thresholds: allow, remove, limit distribution, or escalate to human review.\",\n \"attachments\": [\n {\n \"id\": \"cm-4-a\",\n \"referenceId\": \"data_action\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Decision action: allow / limit / remove / escalate\"\n },\n {\n \"id\": \"cm-4-b\",\n \"referenceId\": \"const_quality_threshold\",\n \"type\": \"constraint\",\n \"notes\": \"Escalate if score in uncertain band or category requires review\"\n },\n {\n \"id\": \"cm-4-c\",\n \"referenceId\": \"const_human_loop\",\n \"type\": \"constraint\",\n \"notes\": \"Certain classes require human oversight\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"f67b2d8b-0cfa-4f8f-ad45-c30d52520cf6\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 1249.5,\n \"y\": 548.5,\n \"customLabel\": \"Moderator Console\",\n \"notes\": \"Queue view for escalated items; shows content, policy, model rationale/signals, and decision tools.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-moderator\"\n },\n {\n \"id\": \"84cdab5c-d5ed-4099-aae1-243bef5851cf\",\n \"referenceId\": \"human_review\",\n \"type\": \"task\",\n \"x\": 1563.5,\n \"y\": 641.5,\n \"customLabel\": \"Human Review + Decision\",\n \"notes\": \"Moderator confirms or overrides; adds rationale and selects enforcement action.\",\n \"attachments\": [\n {\n \"id\": \"cm-6-a\",\n \"referenceId\": \"data_action\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Final action: approve / restrict / remove / ban / escalate\"\n },\n {\n \"id\": \"cm-6-b\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Moderator rationale / notes\"\n },\n {\n \"id\": \"cm-6-c\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Record who decided what, and why\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-moderator\"\n },\n {\n \"id\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"referenceId\": \"system_save_db\",\n \"type\": \"task\",\n \"x\": 1561.5,\n \"y\": 844.5,\n \"customLabel\": \"Persist Moderation Record\",\n \"notes\": \"Store decision, policy version, model version, and any human notes.\",\n \"attachments\": [\n {\n \"id\": \"cm-7-a\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Moderation decision record\"\n },\n {\n \"id\": \"cm-7-b\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Retention rules for logs and evidence\"\n },\n {\n \"id\": \"cm-7-c\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"Minimize stored personal data; redact where needed\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"5c08d693-5937-4e1f-9a1c-384fcac1adf2\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"x\": 2044.5,\n \"y\": 793.5,\n \"customLabel\": \"Moderation DB\",\n \"notes\": \"System-of-record for decisions + evidence pointers.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"296879cd-e9ff-4dbc-a371-a0a9c0b439e8\",\n \"referenceId\": \"system_notification\",\n \"type\": \"task\",\n \"x\": 2013.5,\n \"y\": 877.5,\n \"customLabel\": \"Notify + Enforce Outcome\",\n \"notes\": \"Apply enforcement (remove/limit) and notify user (and optionally appeal link).\",\n \"attachments\": [\n {\n \"id\": \"cm-8-b\",\n \"referenceId\": \"const_localization\",\n \"type\": \"constraint\",\n \"notes\": \"Localize user-facing explanations\"\n },\n {\n \"id\": \"cm-8-c\",\n \"referenceId\": \"const_error_handling\",\n \"type\": \"constraint\",\n \"notes\": \"Fallback if notification/enforcement fails\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 130\n },\n {\n \"id\": \"fcd2e968-83a5-4707-beaf-22e8d6d51ff7\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 2301.5,\n \"y\": 870.5,\n \"customLabel\": \"User Sees Result\",\n \"notes\": \"Content is posted, limited, removed, or actioned; user can be shown a reason + appeal path.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-creator\"\n },\n {\n \"id\": \"4f7303a1-deec-4781-ae69-eca1e8915750\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 735.5,\n \"y\": 628.5,\n \"width\": 1210,\n \"height\": 430,\n \"customLabel\": \"Content Moderation Core Pipeline\",\n \"notes\": \"Classify → Policy decision/routing → Human review (if needed) → Persist → Notify/enforce\",\n \"measuredW\": 1210,\n \"measuredH\": 430\n },\n {\n \"id\": \"0ea0bbdd-c669-466d-9d06-a2aadaac8111\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 226.51754385964912,\n \"y\": 473.0263157894737,\n \"width\": 520.8771929824561,\n \"height\": 100,\n \"customLabel\": \"Minimal Template: Content Moderation System\",\n \"notes\": \"Safety-first pipeline that combines automated classification with policy routing and human oversight.\",\n \"measuredW\": 520,\n \"measuredH\": 99\n }\n ],\n \"edges\": [\n {\n \"id\": \"5688df3d-d571-4ff7-b05d-d89a289dde75\",\n \"source\": \"fe847a51-0333-4227-9a99-50b933f237b7\",\n \"target\": \"15b97802-e9e1-4984-939b-13e22f0dcc74\"\n },\n {\n \"id\": \"68df6431-902d-481f-b673-6616c6958f21\",\n \"source\": \"15b97802-e9e1-4984-939b-13e22f0dcc74\",\n \"target\": \"d28e1693-6c3e-4feb-ab5f-277e3fd26dad\"\n },\n {\n \"id\": \"8547382c-7ca9-4098-a9c7-df3de00885a4\",\n \"source\": \"d28e1693-6c3e-4feb-ab5f-277e3fd26dad\",\n \"target\": \"5805d2ae-e1f7-46ae-96ee-355f12cb87dc\",\n \"customY\": 741,\n \"targetX\": 756.5\n },\n {\n \"id\": \"376e3fe7-71df-42e3-b9bc-109db2d38e89\",\n \"source\": \"da7f35af-832f-4402-8fb0-8b67b5be6583\",\n \"target\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"label\": \"Policy definitions\",\n \"customX\": 1040.8316831683169\n },\n {\n \"id\": \"b103d7f5-4eec-45ed-a57e-3162ea09e077\",\n \"source\": \"1aead687-39fb-4d24-b768-cf7d61827143\",\n \"target\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"label\": \"Safety constraints\",\n \"customY\": 579.5,\n \"targetX\": 1116.5,\n \"customX\": 1112.5\n },\n {\n \"id\": \"e7a0955d-a31c-4aa7-aa80-e8c45f52e27b\",\n \"source\": \"5805d2ae-e1f7-46ae-96ee-355f12cb87dc\",\n \"target\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\"\n },\n {\n \"id\": \"13e738f5-4fc7-49f5-9f87-a12caf638723\",\n \"source\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"target\": \"84cdab5c-d5ed-4099-aae1-243bef5851cf\",\n \"label\": \"Escalate if uncertain/high-risk\"\n },\n {\n \"id\": \"cd7843c0-eaac-4ca3-844f-e2d8c2723604\",\n \"source\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"target\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"label\": \"Allow/limit/remove\"\n },\n {\n \"id\": \"31d1eb8f-3fd6-48bb-981e-74c9b7897c70\",\n \"source\": \"f67b2d8b-0cfa-4f8f-ad45-c30d52520cf6\",\n \"target\": \"84cdab5c-d5ed-4099-aae1-243bef5851cf\"\n },\n {\n \"id\": \"d088fccb-527e-4fb3-929c-a30ff24e9e4d\",\n \"source\": \"84cdab5c-d5ed-4099-aae1-243bef5851cf\",\n \"target\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"customY\": 828.5,\n \"targetX\": 1533.5,\n \"sourceX\": 1813.5\n },\n {\n \"id\": \"36493fdc-d29a-4290-902b-3547d14a4549\",\n \"source\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"target\": \"5c08d693-5937-4e1f-9a1c-384fcac1adf2\"\n },\n {\n \"id\": \"3d921270-d93b-4722-ad8c-a87879d98b00\",\n \"source\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"target\": \"296879cd-e9ff-4dbc-a371-a0a9c0b439e8\"\n },\n {\n \"id\": \"1ea4fb96-9394-4b28-88d3-e9427d455141\",\n \"source\": \"296879cd-e9ff-4dbc-a371-a0a9c0b439e8\",\n \"target\": \"fcd2e968-83a5-4707-beaf-22e8d6d51ff7\"\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-creator\",\n \"name\": \"Content Creator\",\n \"role\": \"Submits user-generated content and receives moderation outcomes\",\n \"color\": \"#3B82F6\",\n \"initials\": \"CC\",\n \"category\": \"human\"\n },\n {\n \"id\": \"persona-moderator\",\n \"name\": \"Moderator\",\n \"role\": \"Reviews escalated content and makes final enforcement decisions\",\n \"color\": \"#F59E0B\",\n \"initials\": \"MO\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_game_enemy_ai\",\n \"name\": \"Video Game Enemy AI\",\n \"description\": \"Real-time enemy behavior system using perception, decision-making, and action execution for responsive game AI.\",\n \"primary_use_case\": \"Action games, strategy games, NPC behavior, combat AI, patrol/chase systems\",\n \"complexity\": \"Medium\",\n \"tags\": [\n \"Game AI\",\n \"Behavior Trees\",\n \"Real-time\",\n \"State Machines\"\n ],\n \"common_variations\": [\n \"Behavior trees vs. state machines\",\n \"Goal-oriented action planning (GOAP)\",\n \"Learning/adaptive AI\",\n \"Squad/group tactics\"\n ],\n \"nodes\": [\n {\n \"id\": \"3d3f0b43-26c8-44b8-8138-90e6c328b670\",\n \"referenceId\": \"tp_3d_space\",\n \"type\": \"touchpoint\",\n \"x\": 581.9755244755246,\n \"y\": 620.2377622377622,\n \"customLabel\": \"Game World (3D Space)\",\n \"notes\": \"Real-time simulation context where the enemy and player exist.\",\n \"measuredW\": 140,\n \"measuredH\": 40\n },\n {\n \"id\": \"52794680-bc68-47c2-94dd-92acd327f439\",\n \"referenceId\": \"human_gesture\",\n \"type\": \"task\",\n \"x\": 829.6468531468531,\n \"y\": 615.020979020979,\n \"customLabel\": \"Player Moves / Acts\",\n \"notes\": \"Player movement/inputs create observable signals in the world.\",\n \"attachments\": [\n {\n \"id\": \"enemy-2-a\",\n \"referenceId\": \"data_trajectory\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Player movement path / pose changes\"\n },\n {\n \"id\": \"enemy-2-b\",\n \"referenceId\": \"data_action\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Player actions (attack, sprint, interact)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 124,\n \"personaId\": \"persona-player\"\n },\n {\n \"id\": \"24a01628-633f-4195-a6a3-317ec3a5ff38\",\n \"referenceId\": \"task_detect\",\n \"type\": \"task\",\n \"x\": 1208.513986013986,\n \"y\": 658,\n \"customLabel\": \"Perceive (Sight / Hearing)\",\n \"notes\": \"Detect player presence using line-of-sight + audio cues.\",\n \"attachments\": [\n {\n \"id\": \"enemy-3-a\",\n \"referenceId\": \"data_sensor_stream\",\n \"type\": \"data\",\n \"direction\": \"input\",\n \"notes\": \"World sensor signals (LOS checks, audio events)\"\n },\n {\n \"id\": \"enemy-3-b\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Detections (seen/heard, last known position)\"\n },\n {\n \"id\": \"enemy-3-c\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Must run per-frame / within budget (e.g., < 2–5ms AI slice)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 222,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"a0171215-4a4c-4c98-8da7-71342e35d50e\",\n \"referenceId\": \"task_estimate\",\n \"type\": \"task\",\n \"x\": 1488.649256993007,\n \"y\": 653.9847027972028,\n \"customLabel\": \"Estimate Threat / Distance\",\n \"notes\": \"Compute intent-relevant features (distance, visibility, risk).\",\n \"attachments\": [\n {\n \"id\": \"enemy-4-a\",\n \"referenceId\": \"data_state_vector\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Feature vector (dist, cover, hp, cooldowns, alertness)\"\n },\n {\n \"id\": \"enemy-4-b\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Threat score / confidence\"\n },\n {\n \"id\": \"enemy-4-c\",\n \"referenceId\": \"const_compute_budget\",\n \"type\": \"constraint\",\n \"notes\": \"Keep estimation cheap and stable under load\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"39320932-ddd4-4e13-9912-f8b022224559\",\n \"referenceId\": \"task_plan\",\n \"type\": \"task\",\n \"x\": 1786.5,\n \"y\": 654,\n \"customLabel\": \"Decide Behavior\",\n \"notes\": \"Select an intent (patrol, investigate, chase, flank, attack, flee).\",\n \"attachments\": [\n {\n \"id\": \"enemy-5-a\",\n \"referenceId\": \"data_selection\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Chosen behavior / state transition\"\n },\n {\n \"id\": \"enemy-5-b\",\n \"referenceId\": \"data_plan\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Action plan (waypoints, target, timing)\"\n },\n {\n \"id\": \"enemy-5-c\",\n \"referenceId\": \"const_rules\",\n \"type\": \"constraint\",\n \"notes\": \"Design rules (difficulty tuning, fairness, avoid perfect aim)\"\n },\n {\n \"id\": \"enemy-5-d\",\n \"referenceId\": \"const_quality_threshold\",\n \"type\": \"constraint\",\n \"notes\": \"Avoid jitter: hysteresis / cooldown before switching states\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"bc687014-a8ae-4788-b719-93947fb9f346\",\n \"referenceId\": \"task_act\",\n \"type\": \"task\",\n \"x\": 2051.5,\n \"y\": 659,\n \"customLabel\": \"Execute Action\",\n \"notes\": \"Drive animation + navigation + attacks based on chosen behavior.\",\n \"attachments\": [\n {\n \"id\": \"enemy-6-a\",\n \"referenceId\": \"data_action\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Enemy action commands (move/aim/attack/use ability)\"\n },\n {\n \"id\": \"enemy-6-b\",\n \"referenceId\": \"data_trajectory\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Movement path / steering output\"\n },\n {\n \"id\": \"enemy-6-c\",\n \"referenceId\": \"const_error_handling\",\n \"type\": \"constraint\",\n \"notes\": \"Fallbacks if path blocked / target lost\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"125ce287-6419-4942-8cf8-6f0d11929d75\",\n \"referenceId\": \"task_adapt\",\n \"type\": \"task\",\n \"x\": 1790.8706293706293,\n \"y\": 875.9930069930069,\n \"customLabel\": \"Update Internal State\",\n \"notes\": \"Update memory + cooldowns + alertness based on outcomes.\",\n \"attachments\": [\n {\n \"id\": \"enemy-7-a\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Short-term memory (last seen pos, recent hits, failed actions)\"\n },\n {\n \"id\": \"enemy-7-b\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Optional persistence (AI director stats, heatmaps)\"\n },\n {\n \"id\": \"enemy-7-c\",\n \"referenceId\": \"const_caching\",\n \"type\": \"constraint\",\n \"notes\": \"Cache expensive queries (navmesh, LOS) to keep frame stable\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"1609e4a6-d546-41c0-9e6d-7aaa3f179e9d\",\n \"referenceId\": \"system_timer\",\n \"type\": \"task\",\n \"x\": 822.472027972028,\n \"y\": 827.6993006993007,\n \"customLabel\": \"Tick / Scheduling\",\n \"notes\": \"Run perception/decision at appropriate frequencies (per-frame, 10Hz, etc.).\",\n \"attachments\": [\n {\n \"id\": \"enemy-8-a\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Update ticks (frame step, behavior tick, cooldown timers)\"\n },\n {\n \"id\": \"enemy-8-b\",\n \"referenceId\": \"const_rate_limit\",\n \"type\": \"constraint\",\n \"notes\": \"Throttle expensive checks under load\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"f7253e34-fdac-419f-be92-b599b49c2ed9\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 1156.5,\n \"y\": 619,\n \"width\": 1160,\n \"height\": 470,\n \"customLabel\": \"Enemy AI Core Loop\",\n \"notes\": \"Perceive → Estimate → Decide → Act (+ State Update)\",\n \"measuredW\": 1160,\n \"measuredH\": 470\n },\n {\n \"id\": \"12539529-9ff8-41ae-a5a0-712b3824a387\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 668.5,\n \"y\": 416,\n \"width\": 540,\n \"height\": 120,\n \"customLabel\": \"Minimal Template: Real-Time Enemy AI\",\n \"notes\": \"This is the smallest useful behavior system: perception, feature estimation, decision selection, action execution, and state update on a tick schedule.\",\n \"measuredW\": 540,\n \"measuredH\": 120\n }\n ],\n \"edges\": [\n {\n \"id\": \"ea4fe155-cd7c-4f25-b52d-318c7bd4c030\",\n \"source\": \"3d3f0b43-26c8-44b8-8138-90e6c328b670\",\n \"target\": \"52794680-bc68-47c2-94dd-92acd327f439\"\n },\n {\n \"id\": \"9d0fbfa1-3c63-4e83-aa45-df11d4d0c133\",\n \"source\": \"52794680-bc68-47c2-94dd-92acd327f439\",\n \"target\": \"24a01628-633f-4195-a6a3-317ec3a5ff38\",\n \"customX\": 1099.7097902097903\n },\n {\n \"id\": \"42368daa-e31f-42c1-b2b9-8dae62977f23\",\n \"source\": \"1609e4a6-d546-41c0-9e6d-7aaa3f179e9d\",\n \"target\": \"24a01628-633f-4195-a6a3-317ec3a5ff38\",\n \"label\": \"Perception tick\",\n \"targetX\": 1170.513986013986,\n \"customY\": 1065.5,\n \"sourceX\": 1071.472027972028,\n \"customX\": 1099.618881118881\n },\n {\n \"id\": \"95f754d7-6d43-4235-a655-ae023deae237\",\n \"source\": \"24a01628-633f-4195-a6a3-317ec3a5ff38\",\n \"target\": \"a0171215-4a4c-4c98-8da7-71342e35d50e\"\n },\n {\n \"id\": \"c582ceb6-6926-4f3f-abd8-78c0b2980cb7\",\n \"source\": \"a0171215-4a4c-4c98-8da7-71342e35d50e\",\n \"target\": \"39320932-ddd4-4e13-9912-f8b022224559\"\n },\n {\n \"id\": \"3d1931c9-f9a2-4307-bb85-1bfa10cdd5b0\",\n \"source\": \"39320932-ddd4-4e13-9912-f8b022224559\",\n \"target\": \"bc687014-a8ae-4788-b719-93947fb9f346\"\n },\n {\n \"id\": \"79894f78-d27c-4d22-9c63-0f2aed5d7084\",\n \"source\": \"bc687014-a8ae-4788-b719-93947fb9f346\",\n \"target\": \"125ce287-6419-4942-8cf8-6f0d11929d75\",\n \"label\": \"Outcome\",\n \"customY\": 1067.597902097902,\n \"targetX\": 1741.0104895104894\n },\n {\n \"id\": \"4dd0bdb5-8383-4bbd-9466-c8bf968f4527\",\n \"source\": \"125ce287-6419-4942-8cf8-6f0d11929d75\",\n \"target\": \"39320932-ddd4-4e13-9912-f8b022224559\",\n \"label\": \"State informs next decision\",\n \"customY\": 847.5,\n \"targetX\": 1756.5,\n \"sourceX\": 2051.63986013986\n },\n {\n \"id\": \"28c4b73a-643f-42b9-a2f9-bcfda2ae7fa2\",\n \"source\": \"3d3f0b43-26c8-44b8-8138-90e6c328b670\",\n \"target\": \"1609e4a6-d546-41c0-9e6d-7aaa3f179e9d\",\n \"customX\": 750.5454545454546\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-player\",\n \"name\": \"Player\",\n \"role\": \"Creates actions/signals the enemy reacts to\",\n \"initials\": \"PL\",\n \"category\": \"human\",\n \"color\": \"#22C55E\"\n },\n {\n \"id\": \"persona-enemy\",\n \"name\": \"Enemy Agent\",\n \"role\": \"Perceives, decides, and acts in real-time\",\n \"initials\": \"EN\",\n \"category\": \"ai\",\n \"color\": \"#EF4444\"\n }\n ]\n }\n]\n;\n","\nimport { Example } from '../types';\n\nexport const EXAMPLES: Example[] = [\n {\n id: \"ex_rag_chatbot\",\n primary_task_id: \"task_retrieve\",\n title: \"Enterprise Knowledge Bot (RAG)\",\n description: \"A secure internal chatbot that answers employee questions by retrieving policy documents, ranking them for relevance, and generating citations.\",\n industry: \"Enterprise\",\n complexity: \"Medium\",\n tags: [\"RAG\", \"Search\", \"Internal Tools\"],\n image_url: \"https://images.unsplash.com/photo-1555421689-d68471e18963?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"human_type_input\", x: 0, y: 0, label: \"Employee Query\" },\n { task_id: \"task_represent\", x: 300, y: 0, label: \"Embed Query\" },\n { task_id: \"task_retrieve\", x: 600, y: 0, label: \"Vector Search\" },\n { task_id: \"task_rank\", x: 900, y: 0, label: \"Re-Rank Results\" },\n { task_id: \"task_generate\", x: 1200, y: 0, label: \"Synthesize Answer\" },\n { task_id: \"tp_chat\", x: 1500, y: 0, label: \"Slack Interface\" }\n ]\n },\n {\n id: \"ex_content_mod\",\n primary_task_id: \"task_classify\",\n title: \"Automated Content Moderation\",\n description: \"A high-throughput pipeline for social platforms that filters toxic content using a hybrid AI + Human-in-the-loop approach.\",\n industry: \"Consumer\",\n complexity: \"High\",\n tags: [\"Safety\", \"Classification\", \"HITL\"],\n image_url: \"https://images.unsplash.com/photo-1550751827-4bd374c3f58b?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"system_webhook\", x: 0, y: 0, label: \"New Post Hook\" },\n { task_id: \"task_classify\", x: 300, y: 0, label: \"Toxicity Check\" },\n { task_id: \"system_rules\", x: 600, y: 0, label: \"Confidence Gate\" },\n { task_id: \"system_save_db\", x: 900, y: -150, label: \"Auto-Publish (Safe)\" },\n { task_id: \"human_review\", x: 900, y: 150, label: \"Manual Review (Flagged)\" },\n { task_id: \"system_notification\", x: 1200, y: 150, label: \"Ban User\" }\n ]\n },\n {\n id: \"ex_voice_assistant\",\n primary_task_id: \"task_translate\",\n title: \"Drive-Thru Voice Agent\",\n description: \"A low-latency voice pipeline designed for noisy environments, handling speech-to-text, order logic, and text-to-speech synthesis.\",\n industry: \"Food & Bev\",\n complexity: \"High\",\n tags: [\"Audio\", \"Real-time\", \"Voice\"],\n image_url: \"https://images.unsplash.com/photo-1593508512255-86ab42a8e620?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"data_audio_stream\", x: 0, y: 0, label: \"Mic Input\" },\n { task_id: \"task_translate\", x: 300, y: 0, label: \"Speech-to-Text (Whisper)\" },\n { task_id: \"task_classify\", x: 600, y: 0, label: \"Intent Detection\" },\n { task_id: \"system_api\", x: 900, y: 0, label: \"POS System\" },\n { task_id: \"task_generate\", x: 1200, y: 0, label: \"Generate Confirmation\" },\n { task_id: \"task_translate\", x: 1500, y: 0, label: \"Text-to-Speech\" }\n ]\n },\n {\n id: \"ex_fraud_detection\",\n primary_task_id: \"task_detect\",\n title: \"Financial Fraud Detection\",\n description: \"Real-time transaction monitoring system that detects anomalies and triggers identity verification challenges.\",\n industry: \"Fintech\",\n complexity: \"High\",\n tags: [\"Security\", \"Analysis\", \"Finance\"],\n image_url: \"https://images.unsplash.com/photo-1563986768609-322da13575f3?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"system_webhook\", x: 0, y: 0, label: \"Transaction Event\" },\n { task_id: \"task_monitor\", x: 300, y: 0, label: \"Anomaly Detector\" },\n { task_id: \"system_rules\", x: 600, y: 0, label: \"Risk Score Check\" },\n { task_id: \"system_api\", x: 900, y: -100, label: \"Approve (Low Risk)\" },\n { task_id: \"system_notification\", x: 900, y: 100, label: \"Trigger 2FA (High Risk)\" },\n { task_id: \"human_review\", x: 1200, y: 100, label: \"Fraud Analyst Case\" }\n ]\n },\n {\n id: \"ex_predictive_maint\",\n primary_task_id: \"task_forecast\",\n title: \"IoT Predictive Maintenance\",\n description: \"Analyzing sensor telemetry from manufacturing equipment to forecast failures before they happen.\",\n industry: \"IoT\",\n complexity: \"Medium\",\n tags: [\"IoT\", \"Forecasting\", \"Industrial\"],\n image_url: \"https://images.unsplash.com/photo-1581091226825-a6a2a5aee158?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"data_sensor_stream\", x: 0, y: 0, label: \"Vibration Sensors\" },\n { task_id: \"system_load_db\", x: 0, y: 150, label: \"Maintenance Logs\" },\n { task_id: \"task_regress\", x: 300, y: 75, label: \"Predict Failure Probability\" },\n { task_id: \"task_forecast\", x: 600, y: 75, label: \"Time-to-Failure\" },\n { task_id: \"system_rules\", x: 900, y: 75, label: \"Threshold Check\" },\n { task_id: \"system_api\", x: 1200, y: 75, label: \"Schedule Repair Ticket\" }\n ]\n }\n];\n","/**\n * Copyright 2025 quietloudlab\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { AtlasData } from './types';\nimport { META } from './data/meta';\nimport { LAYERS } from './data/layers';\nimport { AI_TASKS } from './data/ai_tasks';\nimport { HUMAN_TASKS } from './data/human_tasks';\nimport { SYSTEM_TASKS } from './data/system_tasks';\nimport { DATA_ARTIFACTS } from './data/artifacts';\nimport { CONSTRAINTS } from './data/constraints';\nimport { TOUCHPOINTS } from './data/touchpoints';\nimport { WORKFLOW_TEMPLATES } from './data/templates';\nimport { EXAMPLES } from './data/examples';\n\nexport const ATLAS_DATA: AtlasData = {\n meta: META,\n layers: LAYERS,\n ai_tasks: AI_TASKS,\n human_tasks: HUMAN_TASKS,\n system_tasks: SYSTEM_TASKS,\n data_artifacts: DATA_ARTIFACTS,\n constraints: CONSTRAINTS,\n touchpoints: TOUCHPOINTS,\n workflow_templates: WORKFLOW_TEMPLATES,\n examples: EXAMPLES\n};\n"]}
1
+ {"version":3,"sources":["../src/data/meta.ts","../src/data/layers.ts","../src/data/ai_tasks.ts","../src/data/human_tasks.ts","../src/data/system_tasks.ts","../src/data/artifacts.ts","../src/data/constraints.ts","../src/data/touchpoints.ts","../src/data/templates.ts","../src/data/examples.ts","../src/data.ts"],"names":[],"mappings":"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","file":"data.mjs","sourcesContent":["\nimport { Meta } from '../types';\n\nexport const META: Meta = {\n title: \"AI Interaction Atlas\",\n description: \"A comprehensive library of interaction patterns for designing human-centered AI systems.\",\n version: \"1.0\",\n schema_version: \"1.1.0\"\n};\n","\nimport { Layer } from '../types';\n\nexport const LAYERS: Layer[] = [\n {\n id: \"layer_inbound\",\n name: \"Inbound\",\n slug: \"Sensing\",\n role: \"Sensing & Structuring\",\n description: \"How the system perceives and organizes input from the world.\",\n color: \"#4A8A3F\",\n guidance: {\n when_to_use: \"When handling raw user input or environmental data.\",\n typical_position: \"Start of flow.\",\n red_flags: [\"Ignoring noise\", \"Assuming structured input\"]\n }\n },\n {\n id: \"layer_internal\",\n name: \"Internal\",\n slug: \"Reasoning\",\n role: \"Reasoning & Deciding\",\n description: \"The cognitive processing and business logic application.\",\n color: \"#3D6B8F\",\n guidance: {\n when_to_use: \"For complex decision making or analysis.\",\n typical_position: \"Middle of flow.\",\n red_flags: [\"Black box logic\", \"Undefined confidence thresholds\"]\n }\n },\n {\n id: \"layer_outbound\",\n name: \"Outbound\",\n slug: \"Expressing\",\n role: \"Expressing & Creating\",\n description: \"Generating outputs and presenting them to the user.\",\n color: \"#8F3D3D\",\n guidance: {\n when_to_use: \"When presenting results.\",\n typical_position: \"End of flow.\",\n red_flags: [\"Overwhelming detail\", \"Hallucinations\"]\n }\n },\n {\n id: \"layer_interactive\",\n name: \"Interactive\",\n slug: \"Learning\",\n role: \"Acting & Learning\",\n description: \"Feedback loops, continuous improvement, and environmental interaction.\",\n color: \"#8F6E3D\",\n guidance: {\n when_to_use: \"For systems that adapt over time or act in environments.\",\n typical_position: \"Continuous loop.\",\n red_flags: [\"Feedback ignoring\", \"Model drift\", \"Unsafe actions\"]\n }\n }\n];\n","\nimport { AiTask } from '../types';\n\nexport const AI_TASKS: AiTask[] = [\n // --- Inbound ---\n {\n id: \"task_detect\",\n layer_id: \"layer_inbound\",\n name: \"Detect\",\n slug: \"detect\",\n task_type: \"ai\",\n elevator_pitch: \"Locate and identify objects in image, video, audio, or other data.\",\n example_usage: \"Spotting pedestrians in a video feed.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_image\", label: \"Image\" }], \n optional: [{ id: \"data_video\", label: \"Video\" }, { id: \"data_video_stream\", label: \"Video Stream\" }, { id: \"data_point_cloud\", label: \"LiDAR/3D\" }, { id: \"data_multimodal\", label: \"AV Stream\" }, { id: \"data_audio_stream\", label: \"Audio Stream\" }] \n }, \n outputs: { \n primary: { id: \"data_bbox\", label: \"Detections\", isArray: true }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }, { id: \"data_heatmap\", label: \"Attention Map\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"optional\" },\n ux_notes: { risk: \"False negatives and false positives\", tip: \"Visualize bounding boxes with confidence scores\", anti_patterns: [\"Using in safety-critical applications without human verification\"] },\n capabilities: [\n { name: \"Object Detection\", tag: \"object-detection\", example: \"Camera identifying and boxing every vehicle entering a parking lot\" },\n { name: \"Keypoint Detection\", tag: \"keypoint-detection\", example: \"Tracking shoulder, elbow, and wrist positions during a pushup\" },\n { name: \"Zero-Shot Detection\", tag: \"zero-shot-object-detection\", example: \"Finding cats in photos without ever training on cat images\" },\n { name: \"Voice Activity Detection\", tag: \"voice-activity-detection\", example: \"Video conferencing tool unmuting a mic when user starts speaking\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"identifying objects, sounds, and text across uploaded images, audio, and documents\" }\n ],\n relations: [\n { target_id: \"task_monitor\", type: \"enables\", strength: \"strong\", reason: \"Detections are the raw signals that monitoring systems aggregate.\" },\n { target_id: \"task_classify\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Detected objects (crops) are often passed to a classifier for finer detail.\" },\n { target_id: \"task_segment\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Detection provides regions of interest for detailed segmentation.\" },\n { target_id: \"task_synthesize\", type: \"incompatible_with\", strength: \"strong\", reason: \"Do not attempt to summarize bounding box coordinates directly as prose.\" }\n ]\n },\n {\n id: \"task_extract\",\n layer_id: \"layer_inbound\",\n name: \"Extract\",\n slug: \"extract\",\n task_type: \"ai\",\n elevator_pitch: \"Pull specific data fields from documents they already have.\",\n example_usage: \"Getting answers from a document.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Source Content\" }], \n optional: [{ id: \"data_text\", label: \"Query\" }, { id: \"data_markup\", label: \"HTML/XML\" }, { id: \"data_image\", label: \"Visual Context\" }] \n }, \n outputs: { \n primary: { id: \"data_json\", label: \"Extracted Value\" }, \n metadata: [{ id: \"data_text\", label: \"Source Span\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"small\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Hallucinated values\", tip: \"Highlight source text to show provenance\", anti_patterns: [\"Extracting from unreliable sources without verification\"] },\n capabilities: [\n { name: \"Question Answering\", tag: \"question-answering\", example: \"Asking 'What's the warranty period?' and getting '2 years' from a 50-page manual\" },\n { name: \"Table Question Answering\", tag: \"table-question-answering\", example: \"Asking 'Which region had highest sales in Q3?' from a spreadsheet table\" },\n { name: \"Document Question Answering\", tag: \"document-question-answering\", example: \"Getting 'March 15, 2025' when asking 'When does this contract expire?' from a PDF\" },\n { name: \"Token Classification\", tag: \"token-classification\", example: \"Highlighting every name, company, and date in a legal document\" },\n { name: \"Visual Question Answering\", tag: \"visual-question-answering\", example: \"Asking 'How many people are wearing hats?' about a crowd photo\" },\n { name: \"Image-Text-to-Text\", tag: \"image-text-to-text\", example: \"Producing the total spend on grocery items vs candy from a receipt photo\" },\n { name: \"Audio-Text-to-Text\", tag: \"audio-text-to-text\", example: \"Pulling action items assigned to a specific person from a meeting recording.\" },\n { name: \"Video-Text-to-Text\", tag: \"video-text-to-text\", example: \"Asking 'When does the speaker mention pricing?' on a 2-hour webinar video\" }\n ],\n relations: [\n { target_id: \"task_verify\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"LLM extraction is prone to hallucination; always verify critical data against source.\" },\n { target_id: \"system_save_db\", type: \"enables\", strength: \"strong\", reason: \"Structuring unstructured data is the primary prerequisite for database storage.\" },\n { target_id: \"task_classify\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Extracted structured fields (invoice type, support category) are often classified for routing.\" }\n ]\n },\n {\n id: \"task_estimate\",\n layer_id: \"layer_inbound\",\n name: \"Estimate\",\n slug: \"estimate\",\n task_type: \"ai\",\n elevator_pitch: \"Measure distances, depths, and dimensions from images or sensors.\",\n example_usage: \"Estimating depth in an image.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_image\", label: \"Input Media\" }], \n optional: [{ id: \"data_sensor_stream\", label: \"Sensor Data\" }] \n }, \n outputs: { \n primary: { id: \"data_depth_map\", label: \"Depth/Heat Map\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }, { id: \"data_optical_flow\", label: \"Motion Vectors\" }] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"realtime\", data_requirements: \"large\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Inaccuracy in edge cases\", tip: \"Show range/uncertainty bounds\", anti_patterns: [\"Using in safety-critical navigation without sensor fusion\"] },\n capabilities: [\n { name: \"Depth Estimation\", tag: \"depth-estimation\", example: \"Phone camera measuring that your wall is 10 feet away for AR picture frame placement\" },\n { name: \"Keypoint Detection\", tag: \"keypoint-detection\", example: \"Motion capture detecting actor's joint positions for animation rigging\" },\n { name: \"Pose Estimation\", tag: \"image-feature-extraction\", example: \"Extracting geometric features to estimate room dimensions from a single photo\" }\n ],\n relations: [\n { target_id: \"task_plan\", type: \"enables\", strength: \"medium\", reason: \"Spatial estimation (depth/distance) provides the world-model for planning paths.\" },\n { target_id: \"task_segment\", type: \"enables\", strength: \"medium\", reason: \"Depth information improves segmentation accuracy.\" }\n ]\n },\n {\n id: \"task_explain\",\n layer_id: \"layer_internal\",\n name: \"Explain / Interpret\",\n slug: \"explain\",\n task_type: \"ai\",\n elevator_pitch: \"Reveals the contributing factors behind a model's prediction.\",\n example_usage: \"Highlighting which words in a resume caused the 'Rejection' classification.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Model Output\" }], \n optional: [{ id: \"data_image\", label: \"Source Media\" }, { id: \"data_text\", label: \"Source Text\" }] \n }, \n outputs: { \n primary: { id: \"data_heatmap\", label: \"Attribution Map\" }, \n metadata: [{ id: \"data_text\", label: \"Natural Language Explanation\" }] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"realtime\", data_requirements: \"small\", human_oversight: \"none\" },\n ux_notes: { risk: \"False sense of causality\", tip: \"Use highlighting to show correlation, not just causation. Consider post-hoc analysis tools like SHAP or LIME for showing which features contributed most.\", anti_patterns: [\"Over-explaining low-stakes decisions\"] },\n capabilities: [\n { name: \"Text Generation\", tag: \"text-generation\", example: \"Generating natural language explanation of classification decision with contributing factors\" }, // Part of sklearn/XGBoost\n { name: \"Question Answering\", tag: \"question-answering\", example: \"Answering 'Why was this flagged?' by retrieving the specific policy violation\" }, // Visual attribution\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Analyzing own historical workflows or agentic tool usage and generating a natural language summary\" }\n ],\n relations: [\n { target_id: \"task_classify\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Users often need to know why an item was classified a certain way.\" },\n { target_id: \"human_review\", type: \"enables\", strength: \"strong\", reason: \"Explainability tools help humans make faster review decisions.\" }\n ]\n },\n {\n id: \"task_forecast\",\n layer_id: \"layer_internal\",\n name: \"Forecast\",\n slug: \"forecast\",\n task_type: \"ai\",\n elevator_pitch: \"Predicts future values in a sequence based on historical trends.\",\n example_usage: \"Predicting server load for the next 24 hours.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_table\", label: \"Historical Series\" }], \n optional: [{ id: \"data_config\", label: \"Horizon\" }] \n }, \n outputs: { \n primary: { id: \"data_trajectory\", label: \"Forecast Line\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence Interval\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"batch\", data_requirements: \"large\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Black swan events\", tip: \"Always show confidence intervals (P90/P10)\", anti_patterns: [\"Presenting forecasts as certainty\"] },\n capabilities: [\n { name: \"Time Series Forecasting\", tag: \"time-series-forecasting\", example: \"Inventory system predicting when you will run out of an item in 3 weeks based on sales trends\" }\n ],\n relations: [\n { target_id: \"task_plan\", type: \"enables\", strength: \"strong\", reason: \"Forecasts (e.g., weather, stock) are the inputs for planning algorithms.\" },\n { target_id: \"system_monitor_model\", type: \"monitored_by\", strength: \"medium\", reason: \"Forecasts must be constantly checked against actuals to detect drift.\" }\n ]\n },\n {\n id: \"task_monitor\",\n layer_id: \"layer_inbound\",\n name: \"Monitor\",\n slug: \"monitor\",\n task_type: \"ai\",\n elevator_pitch: \"Identifies specific events or objects detected in continuous data streams.\",\n example_usage: \"Listening for glass breaking sounds.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Stream Source\" }], \n optional: [\n { id: \"data_video_stream\", label: \"Video Feed\" }, \n { id: \"data_audio_stream\", label: \"Audio Feed\" },\n { id: \"data_sensor_stream\", label: \"Telemetry\" }\n ] \n }, \n outputs: { \n primary: { id: \"data_signal\", label: \"Event Trigger\" }, \n metadata: [{ id: \"data_log\", label: \"Event Log\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"none\" },\n ux_notes: { risk: \"Alert fatigue from false positives\", tip: \"Group notifications and allow threshold adjustment\", anti_patterns: [\"No user control over sensitivity\"] },\n capabilities: [\n { name: \"Image Classification\", tag: \"image-classification\", example: \"Wildlife camera logging whenever it sees a bear vs deer\" },\n { name: \"Audio Classification\", tag: \"audio-classification\", example: \"Microphone monitor system sending a text if a smoke alarm is detected\" },\n { name: \"Video Classification\", tag: \"video-classification\", example: \"Ring doorbell sending notification when it sees 'Package Delivery' vs 'Person Walking By\" },\n { name: \"Voice Activity Detection\", tag: \"voice-activity-detections\", example: \"Zoom automatically switching to speaker view when someone starts talking\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"construction site camera alerting 'worker without hard hat'\" }\n ],\n relations: [\n { target_id: \"task_detect\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Detect identifies *where*, Monitor identifies *when* (and alerts).\" },\n { target_id: \"system_notification\", type: \"triggers\", strength: \"strong\", reason: \"The primary output of monitoring is alerting a human or system.\" }\n ]\n },\n {\n id: \"task_retrieve\",\n layer_id: \"layer_inbound\",\n name: \"Retrieve\",\n slug: \"retrieve\",\n task_type: \"ai\",\n elevator_pitch: \"Find relevant documents or items from large collections using semantic search.\",\n example_usage: \"Semantic search over a knowledge base.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Query\" }], \n optional: [{ id: \"data_embedding\", label: \"Vector Query\" }, { id: \"data_knowledge_graph\", label: \"Graph Context\" }, { id: \"data_image\", label: \"Visual Query\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Matches\", isArray: true }, \n metadata: [{ id: \"data_score\", label: \"Relevance Score\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"none\" },\n ux_notes: { risk: \"Irrelevant results\", tip: \"Allow filtering and show relevance scores\", anti_patterns: [\"No way to refine search\"] },\n capabilities: [\n { name: \"Feature Extraction\", tag: \"feature-extraction\", example: \"Finding similar products in a catalog even when descriptions use different words\" },\n { name: \"Image Feature Extraction\", tag: \"image-feature-extraction\", example: \"Reverse image search finding similar photos across your entire photo library\" },\n { name: \"Sentence Similarity\", tag: \"sentence-similarity\", example: \"Searching 'how to reset password' and finding doc titled 'Account Recovery Steps\" },\n { name: \"Visual Document Retrieval\", tag: \"visual-document-retrieval\", example: \"Finding scanned invoice by searching 'Acme Corp March invoice' across 10,000 scans\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Searching Notion with 'Q3 planning' and finding relevant docs, images, and meeting notes\" }\n ],\n relations: [\n { target_id: \"task_represent\", type: \"requires_input_from\", strength: \"strong\", reason: \"Semantic retrieval requires an embedding model (Represent) to vectorize the query.\" },\n { target_id: \"task_generate\", type: \"enables\", strength: \"strong\", reason: \"The 'R' in RAG. Retrieval provides the grounded context for Generation.\" },\n { target_id: \"task_rank\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Raw retrieval results are often noisy; Ranking re-orders them for precision.\" }\n ]\n },\n {\n id: \"task_segment\",\n layer_id: \"layer_inbound\",\n name: \"Segment\",\n slug: \"segment\",\n task_type: \"ai\",\n elevator_pitch: \"Cut out and separate specific chunks of image or other data.\",\n example_usage: \"Removing background from an image.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_image\", label: \"Source Image\" }], \n optional: [{ id: \"data_point_cloud\", label: \"3D Cloud\" }] \n }, \n outputs: { \n primary: { id: \"data_mask\", label: \"Masks\", isArray: true }, \n metadata: [{ id: \"data_json\", label: \"Polygons\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"large\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Artifacts at edges\", tip: \"Allow brush refinement for precision\", anti_patterns: [\"No manual correction tools\"] },\n capabilities: [\n { name: \"Image Segmentation\", tag: \"image-segmentation\", example: \"Photo editor selecting just the sky pixels to change color independently\" },\n { name: \"Mask Generation\", tag: \"mask-generation\", example: \"Video editor generating precise person outline for green screen replacement\" },\n { name: \"Semantic Segmentation\", tag: \"semantic-segmentation\", example: \"Self-driving car identifying road, sidewalk, vehicle, and pedestrian regions\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Outlining the damaged area in uploaded car accident photo for insurance claim\" }\n ],\n relations: [\n { target_id: \"task_transform\", type: \"enables\", strength: \"medium\", reason: \"Segmentation masks allow targeted transformation (inpainting) of specific image regions.\" },\n { target_id: \"task_detect\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Detection provides regions of interest for detailed segmentation.\" },\n { target_id: \"task_classify\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Segmented regions are often classified individually (e.g., multi-object scene understanding).\" }\n ]\n },\n\n // --- Internal ---\n {\n id: \"task_classify\",\n layer_id: \"layer_internal\",\n name: \"Classify\",\n slug: \"classify\",\n task_type: \"ai\",\n elevator_pitch: \"Categorize items into predefined groups.\",\n example_usage: \"Tagging support tickets by department.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Input Item\" }], \n optional: [{ id: \"data_list\", label: \"Taxonomy\" }] \n }, \n outputs: { \n primary: { id: \"data_classification\", label: \"Label\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }] \n } \n },\n implementation_notes: { maturity: \"commoditized\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Ambiguity in edge cases\", tip: \"Show top-k results with confidence scores\", anti_patterns: [\"Single classification without confidence threshold\"] },\n capabilities: [\n { name: \"Text Classification\", tag: \"text-classification\", example: \"Tagging support tickets as 'Billing', 'Technical', or 'General'\" },\n { name: \"Image Classification\", tag: \"image-classification\", example: \"Identifying 'Hot Dog' vs 'Not Hot Dog' in user photos\" },\n { name: \"Audio Classification\", tag: \"audio-classification\", example: \"Categorizing sound clips as 'Speech', 'Music', or 'Noise'\" },\n { name: \"Video Classification\", tag: \"video-classification\", example: \"Labeling video clips with 'Sports', 'News', 'Comedy'\" },\n { name: \"Zero-Shot Classification\", tag: \"zero-shot-classification\", example: \"Classifying tweets into arbitrary categories defined at runtime\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Classifying multimodal inputs into defined buckets\" }\n ],\n relations: [\n { target_id: \"system_rules\", type: \"enables\", strength: \"strong\", reason: \"Classification tags are the most common input for business logic (if 'Billing', route to 'Finance').\" },\n { target_id: \"task_generate\", type: \"incompatible_with\", strength: \"strong\", reason: \"Do not classify generative output directly for safety; use a specialized Verify task.\" },\n { target_id: \"task_explain\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Explainability provides transparency into *why* a label was assigned.\" }\n ]\n },\n {\n id: \"task_match\",\n layer_id: \"layer_internal\",\n name: \"Match\",\n slug: \"match\",\n task_type: \"ai\",\n elevator_pitch: \"Determine how similar two items are.\",\n example_usage: \"Finding duplicate customer records.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Item A\" }, { id: \"data_any\", label: \"Item B\" }], \n optional: [] \n }, \n outputs: { \n primary: { id: \"data_score\", label: \"Similarity\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"none\" },\n ux_notes: { risk: \"False matches\", tip: \"Side-by-side comparison for user verification\", anti_patterns: [\"Auto-merging without review\"] },\n capabilities: [\n { name: \"Sentence Similarity\", tag: \"sentence-similarity\", example: \"Matching user query 'refund policy' to FAQ 'How do I get my money back?'\" },\n { name: \"Feature Extraction\", tag: \"feature-extraction\", example: \"Comparing visual style of two logos\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Matching a resume PDF to a job description text\" }\n ],\n relations: [\n { target_id: \"system_rules\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Match scores usually feed into a threshold rule (if similarity > 0.9, merge).\" },\n { target_id: \"human_review\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"High-confidence matches should still be reviewed before merging.\" }\n ]\n },\n {\n id: \"task_rank\",\n layer_id: \"layer_internal\",\n name: \"Rank\",\n slug: \"rank\",\n task_type: \"ai\",\n elevator_pitch: \"Sort items by relevance, quality, or importance.\",\n example_usage: \"Search result ordering.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Items\", isArray: true }], \n optional: [{ id: \"data_text\", label: \"Context\" }, { id: \"data_preference_profile\", label: \"User Profile\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Sorted List\", isArray: true }, \n metadata: [{ id: \"data_score\", label: \"Rank Scores\", isArray: true }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"large\", human_oversight: \"none\" },\n ux_notes: { risk: \"Bias in ranking factors\", tip: \"Explain ranking factors and allow sorting options\", anti_patterns: [\"No transparency in ranking logic\"] },\n capabilities: [\n { name: \"Sentence Similarity\", tag: \"sentence-similarity\", example: \"Ordering help articles by semantic relevance to query\" },\n { name: \"Cross-Encoder Reranking\", tag: \"text-classification\", example: \"Re-ranking search results for higher precision\" },\n { name: \"Text Ranking\", tag: \"text-ranking\", example: \"Sorting product reviews by helpfulness\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Ranking candidate profiles against a job opening\" }\n ],\n relations: [\n { target_id: \"task_retrieve\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Retrieve fetches the candidates; Rank sorts them for the user.\" },\n { target_id: \"human_select_option\", type: \"enables\", strength: \"strong\", reason: \"Ranking prepares choices for human decision making.\" },\n { target_id: \"task_adapt\", type: \"updated_by\", strength: \"medium\", reason: \"User interactions can refine ranking over time.\" }\n ]\n },\n {\n id: \"task_regress\",\n layer_id: \"layer_internal\",\n name: \"Regress\",\n slug: \"regress\",\n task_type: \"ai\",\n elevator_pitch: \"Predict numerical values (price, score, rating) from structured data.\",\n example_usage: \"Predicting house prices from property attributes.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_table\", label: \"Features\" }], \n optional: [] \n }, \n outputs: { \n primary: { id: \"data_score\", label: \"Predicted Value\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence Interval\" }] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"realtime\", data_requirements: \"medium\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Outliers and extrapolation errors\", tip: \"Visualize trend line and confidence bounds\", anti_patterns: [\"Using for out-of-distribution data without warnings\"] },\n capabilities: [\n { name: \"Tabular Regression\", tag: \"tabular-regression\", example: \"Predicting house price based on sq ft, location, and year built\" }\n ],\n relations: [\n { target_id: \"system_rules\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Regression predictions often trigger threshold-based actions.\" },\n { target_id: \"human_review\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"High-stakes predictions (medical, financial) require human review.\" },\n { target_id: \"task_forecast\", type: \"related_to\", strength: \"medium\", reason: \"If the data has a time dimension, switch from Regression to Forecasting.\" }\n ]\n },\n {\n id: \"task_synthesize\",\n layer_id: \"layer_internal\",\n name: \"Synthesize\",\n slug: \"synthesize\",\n task_type: \"ai\",\n elevator_pitch: \"Get the key points from multiple sources combined into one.\",\n example_usage: \"Summarizing meeting notes from multiple sources.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Source Texts\", isArray: true }], \n optional: [{ id: \"data_session_history\", label: \"History\" }] \n }, \n outputs: { \n primary: { id: \"data_text\", label: \"Summary\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"batch\", data_requirements: \"large\", human_oversight: \"recommended\" },\n ux_notes: { risk: \"Missing key details or introducing bias\", tip: \"Allow length adjustment and highlight source attribution\", anti_patterns: [\"No way to trace claims back to sources\"] },\n capabilities: [\n { name: \"Text Generation\", tag: \"text-generation\", example: \"Summarizing a long email thread into bullet points\" },\n { name: \"Summarization\", tag: \"summarization\", example: \"Generating a brief abstract for a research paper\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Summarizing key points from a recorded meeting video\" }\n ],\n relations: [\n { target_id: \"task_retrieve\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Synthesis usually operates on a set of retrieved documents.\" },\n { target_id: \"task_verify\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Summaries can drift from source facts; verification ensures fidelity.\" }\n ]\n },\n {\n id: \"task_verify\",\n layer_id: \"layer_internal\",\n name: \"Verify\",\n slug: \"verify\",\n task_type: \"ai\",\n elevator_pitch: \"Evaluate content/claims against evidence to determine accuracy, consistency, or compliance.\",\n example_usage: \"Fact checking a generated statement against source documents.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Claim\" }, { id: \"data_text\", label: \"Evidence\" }], \n optional: [{ id: \"data_knowledge_graph\", label: \"Facts\" }] \n }, \n outputs: { \n primary: { id: \"data_classification\", label: \"Verdict\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"realtime\", data_requirements: \"large\", human_oversight: \"recommended\" },\n ux_notes: { risk: \"False confidence in incorrect verdicts\", tip: \"Cite evidence sources directly\", anti_patterns: [\"Verifying creative writing\", \"Using for sentiment analysis\"] },\n capabilities: [\n { name: \"Zero-Shot Classification\", tag: \"zero-shot-classification\", example: \"Checking if a response contradicts the provided source text\" },\n { name: \"Question Answering\", tag: \"question-answering\", example: \"Verifying if the answer 'Yes' is supported by the policy document\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Verifying if the generated image matches the prompt requirements\" }\n ],\n relations: [\n { target_id: \"human_review\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Automated verification is imperfect; human review is the final gate for high-stakes claims.\" }\n ]\n },\n {\n id: \"task_represent\",\n layer_id: \"layer_internal\",\n name: \"Represent\",\n slug: \"represent\",\n task_type: \"ai\",\n elevator_pitch: \"Converts content into searchable format for semantic operations (usually automatic).\",\n example_usage: \"Creating embeddings for similarity search.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Raw Data\" }], \n optional: [] \n }, \n outputs: { \n primary: { id: \"data_embedding\", label: \"Vector\" }, \n metadata: [] \n } \n },\n implementation_notes: { \n maturity: \"established\", \n typical_latency: \"realtime\", \n data_requirements: \"medium\", \n human_oversight: \"none\" \n },\n ux_notes: { \n risk: \"Loss of semantic meaning in projection\", \n tip: \"Visualize with dimensionality reduction (t-SNE/UMAP)\", \n anti_patterns: [\"Mixing different embedding models\", \"Not normalizing vectors\"] \n },\n capabilities: [\n { name: \"Feature Extraction\", tag: \"feature-extraction\", example: \"Converting product descriptions into vectors for search\" },\n { name: \"Image Feature Extraction\", tag: \"image-feature-extraction\", example: \"Generating embeddings for visual search\" },\n { name: \"Sentence Transformers\", tag: \"sentence-similarity\", example: \"Creating semantic vectors for paragraphs\" },\n { name: \"Fill-Mask\", tag: \"fill-mask\", example: \"Predicting missing words in a sentence\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Representing mixed media as a single vector\" }\n ],\n relations: [\n { target_id: \"task_retrieve\", type: \"enables\", strength: \"strong\", reason: \"Embeddings are the foundation of semantic retrieval.\" },\n { target_id: \"task_match\", type: \"enables\", strength: \"medium\", reason: \"Vector similarity enables efficient matching.\" },\n { target_id: \"task_cluster\", type: \"enables\", strength: \"strong\", reason: \"Embeddings define the semantic space where clustering occurs.\" }\n ]\n },\n {\n id: \"task_cluster\",\n layer_id: \"layer_internal\",\n name: \"Cluster\",\n slug: \"cluster\",\n task_type: \"ai\",\n elevator_pitch: \"Find common patterns and group similar items automatically.\",\n example_usage: \"Discovering common themes in thousands of support tickets.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_embedding\", label: \"Item Embeddings\", isArray: true }], \n optional: [{ id: \"data_config\", label: \"Clustering Parameters\" }] \n }, \n outputs: { \n primary: { id: \"data_group\", label: \"Clusters\", isArray: true }, \n metadata: [{ id: \"data_score\", label: \"Silhouette Score\" }, { id: \"data_point\", label: \"Outliers\", isArray: true }] \n } \n },\n implementation_notes: { \n maturity: \"established\", \n typical_latency: \"batch\", \n data_requirements: \"large\", \n human_oversight: \"recommended\" \n },\n ux_notes: { \n risk: \"Incoherent groupings or 'noise' items\", \n tip: \"Use Generative AI (Synthesize) to auto-label the resulting clusters\", \n anti_patterns: [\"Forcing everything into a cluster (hiding outliers)\", \"Changing cluster definitions drastically between sessions\"] \n },\n capabilities: [\n { name: \"Feature Extraction\", tag: \"feature-extraction\", example: \"Grouping similar news articles\" }, \n { name: \"Sentence Similarity\", tag: \"sentence-similarity\", example: \"Clustering customer feedback into topics\" }\n ],\n relations: [\n { target_id: \"task_represent\", type: \"requires_input_from\", strength: \"strong\", reason: \"Clustering operates on the vector space created by the Represent task.\" },\n { target_id: \"task_synthesize\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Raw clusters are just ID numbers; Synthesis is needed to read the content and generate a descriptive label.\" },\n { target_id: \"human_organize\", type: \"enables\", strength: \"strong\", reason: \"Clustering provides the 'first draft' of organization for humans to refine.\" }\n ]\n },\n\n // --- Outbound ---\n {\n id: \"task_generate\",\n layer_id: \"layer_outbound\",\n name: \"Generate\",\n slug: \"generate\",\n task_type: \"ai\",\n elevator_pitch: \"Create new content from scratch based on input.\",\n example_usage: \"Drafting an email reply from bullet points.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Prompt\" }], \n optional: [{ id: \"data_image\", label: \"Image Context\" }, { id: \"data_session_history\", label: \"Chat History\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Generated Content\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"interactive\", data_requirements: \"large\", human_oversight: \"recommended\" },\n ux_notes: { risk: \"Hallucination and fabricated facts\", tip: \"Stream response and offer variations\", anti_patterns: [\"Generating facts without grounding\", \"Unbounded length without user control\"] },\n capabilities: [\n { name: \"Text Generation\", tag: \"text-generation\", example: \"Writing a blog post from a title\" },\n { name: \"Text-to-Image\", tag: \"text-to-image\", example: \"Generating a logo from a description\" },\n { name: \"Text-to-Video\", tag: \"text-to-video\", example: \"Creating a short animation from a script\" },\n { name: \"Text-to-Audio\", tag: \"text-to-audio\", example: \"Generating sound effects from text\" },\n { name: \"Unconditional Image Generation\", tag: \"unconditional-image-generation\", example: \"Generating random faces for avatars\" },\n { name: \"Text-to-3D\", tag: \"text-to-3d\", example: \"Creating a 3D asset from a prompt\" },\n { name: \"Image-to-3D\", tag: \"image-to-3d\", example: \"Converting a 2D logo to 3D\" },\n { name: \"Image-to-Video\", tag: \"image-to-video\", example: \"Animating a still image\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Generating code from a screenshot\" }\n ],\n relations: [\n { target_id: \"task_retrieve\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"RAG pattern: grounding generation in retrieved facts reduces hallucination.\" },\n { target_id: \"task_verify\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Generated content should be verified against sources when accuracy matters.\" },\n { target_id: \"human_edit\", type: \"enables\", strength: \"strong\", reason: \"Generative outputs are often starting points for human refinement.\" }\n ]\n },\n {\n id: \"task_transform\",\n layer_id: \"layer_outbound\",\n name: \"Transform\",\n slug: \"transform\",\n task_type: \"ai\",\n elevator_pitch: \"Modify style or format of existing content.\",\n example_usage: \"Style transfer on an image or paraphrasing text.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Source\" }], \n optional: [{ id: \"data_text\", label: \"Style Prompt\" }, { id: \"data_mask\", label: \"Region Mask\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Transformed Content\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"interactive\", data_requirements: \"medium\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Loss of fidelity or unintended changes\", tip: \"Show original vs transformed side-by-side\", anti_patterns: [\"No undo or revert option\"] },\n capabilities: [\n { name: \"Image-to-Image\", tag: \"image-to-image\", example: \"Turning a sketch into a photorealistic image\" },\n { name: \"Voice Conversion\", tag: \"audio-to-audio\", example: \"Changing a speaker's voice to sound like someone else\" },\n { name: \"Text Style Transfer\", tag: \"text2text-generation\", example: \"Rewriting formal text to be casual\" },\n { name: \"Video-to-Video\", tag: \"video-to-video\", example: \"Applying a style filter to a video\" },\n { name: \"Image-Text-to-Image\", tag: \"image-text-to-image\", example: \"Modifying an image based on instructions\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Refactoring code to a different language\" }\n ],\n relations: [\n { target_id: \"task_segment\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Targeted transforms (inpainting) require segmentation masks first.\" }\n ]\n },\n {\n id: \"task_translate\",\n layer_id: \"layer_outbound\",\n name: \"Translate\",\n slug: \"translate\",\n task_type: \"ai\",\n elevator_pitch: \"Convert content from one language or format to another.\",\n example_usage: \"Transcribing speech to text, or translating English to Spanish.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Source\" }], \n optional: [{ id: \"data_text\", label: \"Target Language\" }, { id: \"data_text\", label: \"Context Prompt\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Translated\" }, \n metadata: [{ id: \"data_score\", label: \"Confidence\" }] \n } \n },\n implementation_notes: { \n maturity: \"established\", \n typical_latency: \"realtime\", \n data_requirements: \"large\", \n human_oversight: \"optional\" \n },\n ux_notes: { \n risk: \"Lost nuance or cultural context\", \n tip: \"Keep original accessible for comparison\", \n anti_patterns: [\"Using for creative writing translation without post-editing\", \"Medical/legal without human review\"] \n },\n capabilities: [\n { name: \"Translation\", tag: \"translation\", example: \"Translating a website from English to French\" },\n { name: \"Automatic Speech Recognition\", tag: \"automatic-speech-recognition\", example: \"Transcribing a voicemail to text\" },\n { name: \"Text-to-Speech\", tag: \"text-to-speech\", example: \"Reading a news article aloud\" },\n { name: \"Image-to-Text\", tag: \"image-to-text\", example: \"Extracting text from a scanned document (OCR)\" },\n { name: \"Audio-Text-to-Text\", tag: \"audio-text-to-text\", example: \"Translating spoken Spanish to English text\" },\n { name: \"Image-Text-to-Text\", tag: \"image-text-to-text\", example: \"Describing a chart in text\" },\n { name: \"Video-Text-to-Text\", tag: \"video-text-to-text\", example: \"Generating subtitles for a video\" },\n { name: \"Image-Text-to-Video\", tag: \"image-text-to-video\", example: \"Animating a diagram based on text explanation\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Translating sign language video to text\" }\n ],\n relations: [\n { target_id: \"task_generate\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Translation often precedes generation in multilingual systems.\" },\n { target_id: \"task_verify\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Translations should be verified for accuracy in high-stakes contexts.\" },\n { target_id: \"task_represent\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Speech-to-text output is converted to embeddings for semantic search (voice search use case).\" }\n ]\n },\n\n // --- Interactive ---\n {\n id: \"task_adapt\",\n layer_id: \"layer_interactive\",\n name: \"Adapt\",\n slug: \"adapt\",\n task_type: \"ai\",\n elevator_pitch: \"Updates system behavior based on implicit or explicit feedback.\",\n example_usage: \"Personalizing recommendations based on click patterns.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_log\", label: \"Interaction Logs\" }], \n optional: [{ id: \"data_preference_profile\", label: \"User Profile\" }] \n }, \n outputs: { \n primary: { id: \"data_config\", label: \"Updated Model State\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"established\", typical_latency: \"batch\", data_requirements: \"continuous\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Feedback loops and filter bubbles\", tip: \"Allow profile reset and show adaptation controls\", anti_patterns: [\"Over-indexing on recent clicks\", \"No transparency in what's being learned\"] },\n capabilities: [\n { name: \"Reinforcement Learning\", tag: \"reinforcement-learning\", example: \"Personalizing news feed based on dwell time\" },\n { name: \"Online Learning\", tag: \"tabular-classification\", example: \"Adapting spam filter based on user corrections\" }\n ],\n relations: [\n { target_id: \"human_provide_feedback\", type: \"requires_input_from\", strength: \"strong\", reason: \"Adaptation relies on signals from human interactions (clicks, ratings, edits).\" },\n { target_id: \"task_rank\", type: \"updates\", strength: \"strong\", reason: \"Adaptation refines ranking/recommendation models over time.\" },\n { target_id: \"task_retrieve\", type: \"updates\", strength: \"medium\", reason: \"User behavior can improve retrieval relevance.\" }\n ]\n },\n {\n id: \"task_act\",\n layer_id: \"layer_interactive\",\n name: \"Act\",\n slug: \"act\",\n task_type: \"ai\",\n elevator_pitch: \"Performs physical or digital actions in an environment.\",\n example_usage: \"Robot arm picking up an object, or API calling an external service.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_state_vector\", label: \"Environment State\" }], \n optional: [{ id: \"data_policy\", label: \"Policy/Strategy\" }] \n }, \n outputs: { \n primary: { id: \"data_action\", label: \"Action Command\" }, \n metadata: [{ id: \"data_score\", label: \"Q-value/Expected Reward\" }] \n } \n },\n implementation_notes: { \n maturity: \"emerging\", \n typical_latency: \"realtime\", \n data_requirements: \"continuous\", \n human_oversight: \"required\" \n },\n ux_notes: { \n risk: \"Physical damage or unintended consequences\", \n tip: \"Implement emergency stop and simulation mode\", \n anti_patterns: [\"No human supervision for high-risk actions\", \"No rollback mechanism\"] \n },\n capabilities: [\n { name: \"Reinforcement Learning\", tag: \"reinforcement-learning\", example: \"Optimizing server cooling based on load\" },\n { name: \"Robotics Control\", tag: \"robotics\", example: \"Robot arm sorting recycling materials\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Smart home system adjusting lights based on occupancy\" }\n ],\n relations: [\n { target_id: \"task_plan\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Planning determines action sequences before execution.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Action outcomes provide feedback signals for learning.\" },\n { target_id: \"human_stop_process\", type: \"enabled_by\", strength: \"strong\", reason: \"Users must be able to halt actions in progress.\" }\n ]\n },\n {\n id: \"task_explore\",\n layer_id: \"layer_interactive\",\n name: \"Explore\",\n slug: \"explore\",\n task_type: \"ai\",\n elevator_pitch: \"Tries new actions to discover optimal strategies.\",\n example_usage: \"A/B testing content variants automatically to find best performer.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_state_vector\", label: \"State\" }], \n optional: [{ id: \"data_policy\", label: \"Policy\" }] \n }, \n outputs: { \n primary: { id: \"data_action\", label: \"Trial Action\" }, \n metadata: [] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"realtime\", data_requirements: \"continuous\", human_oversight: \"optional\" },\n ux_notes: { risk: \"Suboptimal user experience during exploration\", tip: \"Limit exploration scope and duration\", anti_patterns: [\"Unlimited exploration in production\", \"No guardrails on tried actions\"] },\n capabilities: [\n { name: \"Epsilon-Greedy\", tag: \"reinforcement-learning\", example: \"Occasionally showing random products to learn user tastes\" },\n { name: \"Thompson Sampling\", tag: \"reinforcement-learning\", example: \"Allocating traffic to best performing headlines\" }\n ],\n relations: [\n { target_id: \"task_adapt\", type: \"enables\", strength: \"strong\", reason: \"Exploration generates diverse data for adaptation.\" },\n { target_id: \"task_act\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Exploration strategies select actions to try.\" }\n ]\n },\n {\n id: \"task_plan\",\n layer_id: \"layer_interactive\",\n name: \"Plan\",\n slug: \"plan\",\n task_type: \"ai\",\n elevator_pitch: \"Optimizes or generates a sequence of future actions to achieve a goal.\",\n example_usage: \"Route optimization or task scheduling.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_text\", label: \"Goal\" }], \n optional: [{ id: \"data_state_vector\", label: \"Current State\" }] \n }, \n outputs: { \n primary: { id: \"data_json\", label: \"Action Plan\", isArray: true }, \n metadata: [{ id: \"data_trajectory\", label: \"Path\" }] \n } \n },\n implementation_notes: { maturity: \"emerging\", typical_latency: \"batch\", data_requirements: \"large\", human_oversight: \"recommended\" },\n ux_notes: { risk: \"Rigidity and failure to adapt to changes\", tip: \"Allow manual override and replanning\", anti_patterns: [\"No contingency for plan failure\"] },\n capabilities: [\n { name: \"Policy Learning\", tag: \"reinforcement-learning\", example: \"Optimizing delivery routes in real-time\" },\n { name: \"Motion Planning\", tag: \"robotics\", example: \"Autonomous drone navigating around obstacles\" },\n { name: \"Any to Any\", tag: \"any-to-any\", example: \"Scheduling meeting times for a large team\" }\n ],\n relations: [\n { target_id: \"task_estimate\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Spatial estimation provides the world-model for planning.\" },\n { target_id: \"task_act\", type: \"enables\", strength: \"strong\", reason: \"Plans are executed as sequences of actions.\" }\n ]\n }\n];\n","\nimport { HumanTask } from '../types';\n\nexport const HUMAN_TASKS: HumanTask[] = [\n // Inbound\n {\n id: \"human_upload_file\",\n layer_id: \"layer_inbound\",\n name: \"Upload File\",\n slug: \"upload-file\",\n task_type: \"human\",\n elevator_pitch: \"User provides digital assets to the system.\",\n example_usage: \"Uploading a CSV for analysis.\",\n io_spec: { \n inputs: { required: [], optional: [] }, \n outputs: { primary: { id: \"data_file\", label: \"File Blob\" }, metadata: [] } \n },\n common_variants: [\"drag_and_drop\", \"camera_capture\", \"paste_from_clipboard\", \"url_import\"],\n relations: [\n { target_id: \"task_extract\", type: \"enables\", strength: \"strong\", reason: \"Uploaded files are the source for extraction workflows.\" }\n ]\n },\n {\n id: \"human_type_input\",\n layer_id: \"layer_inbound\",\n name: \"Type Input\",\n slug: \"type-input\",\n task_type: \"human\",\n elevator_pitch: \"User enters text data manually.\",\n example_usage: \"Typing a search query or chat message.\",\n io_spec: { \n inputs: { required: [], optional: [] }, \n outputs: { primary: { id: \"data_text\", label: \"Text String\" }, metadata: [] } \n },\n common_variants: [\"voice_dictation\", \"autocomplete_assisted\", \"template_fill\"],\n relations: [\n { target_id: \"task_represent\", type: \"enables\", strength: \"strong\", reason: \"Text input is converted to embeddings for semantic operations.\" },\n { target_id: \"task_generate\", type: \"enables\", strength: \"strong\", reason: \"User prompts drive content generation.\" }\n ]\n },\n {\n id: \"human_organize\",\n layer_id: \"layer_interactive\",\n name: \"Organize & Label\",\n slug: \"organize-label\",\n task_type: \"human\",\n elevator_pitch: \"User arranges items into groups, hierarchies, or applies semantic tags.\",\n example_usage: \"Dragging support tickets into categories or tagging images.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_any\", label: \"Items\", isArray: true }], \n optional: [{ id: \"data_group\", label: \"Suggested Clusters\", isArray: true }, { id: \"data_list\", label: \"Existing Taxonomy\" }] \n }, \n outputs: { \n primary: { id: \"data_classification\", label: \"Applied Labels\", isArray: true }, \n metadata: [{ id: \"data_list\", label: \"New Taxonomy\" }] \n } \n },\n common_variants: [\"card_sorting\", \"tagging\", \"drag_and_drop_grouping\", \"folder_management\", \"taxonomy_editing\"],\n relations: [\n { target_id: \"task_cluster\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Clustering provides the rough draft; Humans refine the structure.\" },\n { target_id: \"system_train\", type: \"enables\", strength: \"strong\", reason: \"Human organization creates the labeled 'Ground Truth' dataset needed to train Classifiers.\" },\n { target_id: \"task_classify\", type: \"enables\", strength: \"strong\", reason: \"Once humans define the categories (Organize), the AI can automate sorting them (Classify).\" }\n ]\n },\n {\n id: \"human_select_option\",\n layer_id: \"layer_internal\",\n name: \"Select Option\",\n slug: \"select-option\",\n task_type: \"human\",\n elevator_pitch: \"User chooses from predefined choices.\",\n example_usage: \"Filtering search results by category.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Options\", isArray: true }], optional: [] }, \n outputs: { primary: { id: \"data_selection\", label: \"Selection\" }, metadata: [] } \n },\n common_variants: [\"dropdown\", \"radio_button\", \"checkbox\", \"multi_select\"],\n relations: [\n { target_id: \"task_rank\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Ranking prepares choices for user selection.\" }\n ]\n },\n {\n id: \"human_review\",\n layer_id: \"layer_interactive\",\n name: \"Review & Approve\",\n slug: \"review-approve\",\n task_type: \"human\",\n elevator_pitch: \"User validates accuracy of system output.\",\n example_usage: \"Moderator checking flagged content.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Content\" }], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Decision\" }, metadata: [] } \n },\n common_variants: [\"approve\", \"reject\", \"request_changes\", \"escalate\"],\n relations: [\n { target_id: \"task_verify\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Automated verification precedes human review in hybrid workflows.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Review decisions provide training signals for adaptation.\" }\n ]\n },\n {\n id: \"human_edit\",\n layer_id: \"layer_outbound\",\n name: \"Edit Content\",\n slug: \"edit-content\",\n task_type: \"human\",\n elevator_pitch: \"User modifies system-generated content.\",\n example_usage: \"Rewriting an AI email draft.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Draft\" }], optional: [] }, \n outputs: { primary: { id: \"data_any\", label: \"Final Content\" }, metadata: [] } \n },\n common_variants: [\"refine\", \"rewrite\", \"tweak\", \"format\"],\n relations: [\n { target_id: \"task_generate\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Generated content is often refined by humans.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"weak\", reason: \"Edit patterns can inform future generation.\" },\n { target_id: \"task_generate\", type: \"commonly_followed_by\", strength: \"weak\", reason: \"Human edits can trigger regeneration for iterative refinement (edit patterns inform next generation).\" }\n ]\n },\n {\n id: \"human_provide_feedback\",\n layer_id: \"layer_interactive\",\n name: \"Provide Feedback\",\n slug: \"provide-feedback\",\n task_type: \"human\",\n elevator_pitch: \"Explicit signal of quality or preference.\",\n example_usage: \"Thumbs up/down on a response.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Target\" }], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Rating\" }, metadata: [] } \n },\n common_variants: [\"star_rating\", \"thumbs_up_down\", \"sentiment_select\"],\n relations: [\n { target_id: \"task_adapt\", type: \"triggers\", strength: \"strong\", reason: \"User feedback drives system adaptation.\" }\n ]\n },\n {\n id: \"human_start_process\",\n layer_id: \"layer_interactive\",\n name: \"Start Process\",\n slug: \"start-process\",\n task_type: \"human\",\n elevator_pitch: \"User initiates a workflow.\",\n example_usage: \"Clicking 'Run Analysis' button.\",\n io_spec: { \n inputs: { required: [], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Trigger\" }, metadata: [] } \n },\n common_variants: [\"button_click\", \"voice_command\", \"gesture\", \"scheduled_trigger\"],\n relations: []\n },\n {\n id: \"human_stop_process\",\n layer_id: \"layer_interactive\",\n name: \"Stop Process\",\n slug: \"stop-process\",\n task_type: \"human\",\n elevator_pitch: \"User interrupts a running workflow.\",\n example_usage: \"Emergency stop on a robot or canceling a generation.\",\n io_spec: { \n inputs: { required: [], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Interrupt\" }, metadata: [] } \n },\n common_variants: [\"emergency_stop\", \"pause\", \"cancel\", \"abort\"],\n relations: [\n { target_id: \"task_act\", type: \"enables\", strength: \"strong\", reason: \"Critical safety mechanism for physical actions.\" }\n ]\n },\n {\n id: \"human_compare\",\n layer_id: \"layer_interactive\",\n name: \"Compare Options\",\n slug: \"compare-options\",\n task_type: \"human\",\n elevator_pitch: \"User evaluates multiple items side-by-side to understand differences.\",\n example_usage: \"Comparing three AI-generated designs or two product recommendations.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Options\", isArray: true }],\n optional: [{ id: \"data_list\", label: \"Comparison Criteria\" }]\n },\n outputs: {\n primary: { id: \"data_text\", label: \"Comparison Notes\" },\n metadata: [{ id: \"data_json\", label: \"Comparison Matrix\" }]\n }\n },\n common_variants: [\"side_by_side_view\", \"diff_comparison\", \"a_b_testing\", \"variant_review\"],\n relations: [\n { target_id: \"task_rank\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Ranking provides initial ordering before detailed comparison.\" },\n { target_id: \"human_choose\", type: \"enables\", strength: \"strong\", reason: \"Comparison informs the choice decision.\" }\n ]\n },\n {\n id: \"human_choose\",\n layer_id: \"layer_internal\",\n name: \"Choose Winner\",\n slug: \"choose-winner\",\n task_type: \"human\",\n elevator_pitch: \"User picks one option as the final selection with commitment.\",\n example_usage: \"Selecting the best AI-generated email variant or choosing a design direction.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Options\", isArray: true }],\n optional: [{ id: \"data_text\", label: \"Comparison Notes\" }]\n },\n outputs: {\n primary: { id: \"data_any\", label: \"Chosen Option\" },\n metadata: [{ id: \"data_text\", label: \"Selection Reason\" }]\n }\n },\n common_variants: [\"pick_winner\", \"select_best\", \"final_decision\", \"commit_choice\"],\n relations: [\n { target_id: \"human_compare\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Users typically compare before choosing.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Choice patterns inform future recommendations.\" }\n ]\n },\n {\n id: \"human_flag\",\n layer_id: \"layer_interactive\",\n name: \"Flag Content\",\n slug: \"flag-content\",\n task_type: \"human\",\n elevator_pitch: \"User reports problematic content, errors, or policy violations.\",\n example_usage: \"Reporting inappropriate AI response or marking incorrect classification.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Content\" }],\n optional: []\n },\n outputs: {\n primary: { id: \"data_signal\", label: \"Flag\" },\n metadata: [{ id: \"data_text\", label: \"Reason\" }, { id: \"data_classification\", label: \"Issue Type\" }]\n }\n },\n common_variants: [\"report_issue\", \"mark_inappropriate\", \"escalate_problem\", \"submit_bug\"],\n relations: [\n { target_id: \"human_review\", type: \"triggers\", strength: \"strong\", reason: \"Flagged content requires human review.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Flags provide negative training signals.\" },\n { target_id: \"task_verify\", type: \"commonly_preceded_by\", strength: \"weak\", reason: \"Automated verification may identify flaggable content.\" }\n ]\n },\n {\n id: \"human_configure\",\n layer_id: \"layer_inbound\",\n name: \"Configure System\",\n slug: \"configure-system\",\n task_type: \"human\",\n elevator_pitch: \"User defines system parameters, preferences, and operational settings.\",\n example_usage: \"Setting confidence thresholds, model selection, or output format preferences.\",\n io_spec: {\n inputs: {\n required: [],\n optional: [{ id: \"data_config\", label: \"Current Settings\" }, { id: \"data_schema\", label: \"Config Schema\" }]\n },\n outputs: {\n primary: { id: \"data_config\", label: \"Configuration\" },\n metadata: []\n }\n },\n common_variants: [\"set_preferences\", \"define_thresholds\", \"customize_behavior\", \"adjust_parameters\"],\n relations: [\n { target_id: \"task_adapt\", type: \"enables\", strength: \"strong\", reason: \"Configuration defines system behavior for adaptation.\" },\n { target_id: \"task_route\", type: \"enables\", strength: \"medium\", reason: \"Routing rules are often defined through configuration.\" }\n ]\n },\n {\n id: \"human_annotate\",\n layer_id: \"layer_interactive\",\n name: \"Annotate & Mark Up\",\n slug: \"annotate-markup\",\n task_type: \"human\",\n elevator_pitch: \"User adds visual or spatial annotations to content (draw, highlight, comment).\",\n example_usage: \"Drawing boxes on images for object detection training or highlighting text passages.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Content\" }],\n optional: []\n },\n outputs: {\n primary: { id: \"data_any\", label: \"Annotated Content\" },\n metadata: [{ id: \"data_json\", label: \"Annotations\", isArray: true }]\n }\n },\n common_variants: [\"draw_bounding_boxes\", \"highlight_text\", \"add_markers\", \"spatial_markup\", \"redline\"],\n relations: [\n { target_id: \"task_detect\", type: \"enables\", strength: \"strong\", reason: \"Annotations provide ground truth for object detection training.\" },\n { target_id: \"task_segment\", type: \"enables\", strength: \"strong\", reason: \"Annotated regions train segmentation models.\" },\n { target_id: \"system_train\", type: \"enables\", strength: \"strong\", reason: \"Annotations are critical training data.\" }\n ]\n },\n {\n id: \"human_validate\",\n layer_id: \"layer_interactive\",\n name: \"Validate Data\",\n slug: \"validate-data\",\n task_type: \"human\",\n elevator_pitch: \"User checks data quality, completeness, and correctness against requirements.\",\n example_usage: \"Verifying uploaded data fields are complete or checking extraction accuracy.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Data\" }],\n optional: [{ id: \"data_schema\", label: \"Validation Rules\" }]\n },\n outputs: {\n primary: { id: \"data_signal\", label: \"Valid/Invalid\" },\n metadata: [{ id: \"data_text\", label: \"Issues Found\", isArray: true }]\n }\n },\n common_variants: [\"check_completeness\", \"verify_accuracy\", \"spot_check\", \"quality_audit\"],\n relations: [\n { target_id: \"task_extract\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Extracted data often requires validation.\" },\n { target_id: \"task_verify\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Automated verification precedes human validation.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"weak\", reason: \"Validation findings improve extraction accuracy.\" }\n ]\n },\n {\n id: \"human_voice_command\",\n layer_id: \"layer_inbound\",\n name: \"Voice Command\",\n slug: \"voice-command\",\n task_type: \"human\",\n elevator_pitch: \"User speaks a verbal command or query to the system.\",\n example_usage: \"Saying 'Alexa, turn on the lights' or asking 'What's the weather today?'\",\n io_spec: {\n inputs: { required: [], optional: [] },\n outputs: {\n primary: { id: \"data_speech\", label: \"Voice Input\" },\n metadata: [{ id: \"data_text\", label: \"Intent\" }]\n }\n },\n common_variants: [\"wake_word_activation\", \"continuous_listening\", \"push_to_talk\", \"voice_query\"],\n relations: [\n { target_id: \"task_transcribe\", type: \"enables\", strength: \"strong\", reason: \"Voice input must be transcribed to text.\" },\n { target_id: \"task_classify\", type: \"enables\", strength: \"strong\", reason: \"Voice commands are classified by intent.\" },\n { target_id: \"task_generate\", type: \"enables\", strength: \"strong\", reason: \"Voice queries often trigger generation.\" }\n ]\n },\n {\n id: \"human_gesture\",\n layer_id: \"layer_inbound\",\n name: \"Gesture Input\",\n slug: \"gesture-input\",\n task_type: \"human\",\n elevator_pitch: \"User performs physical gestures, hand tracking, or body movements as input.\",\n example_usage: \"Pinching fingers in VR to zoom, waving hand to skip track, or nodding head to confirm.\",\n io_spec: {\n inputs: { required: [], optional: [] },\n outputs: {\n primary: { id: \"data_signal\", label: \"Gesture\" },\n metadata: [{ id: \"data_pose\", label: \"Body Position\" }, { id: \"data_trajectory\", label: \"Movement Path\" }]\n }\n },\n common_variants: [\"hand_tracking\", \"head_nod\", \"body_pose\", \"controller_motion\", \"touchless_gesture\"],\n relations: [\n { target_id: \"task_detect\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Gesture detection recognizes hand/body movements.\" },\n { target_id: \"task_classify\", type: \"enables\", strength: \"strong\", reason: \"Gestures are classified by meaning (swipe, pinch, etc.).\" },\n { target_id: \"task_act\", type: \"enables\", strength: \"medium\", reason: \"Gestures can directly control physical systems.\" }\n ]\n },\n {\n id: \"human_navigate_space\",\n layer_id: \"layer_inbound\",\n name: \"Navigate Space\",\n slug: \"navigate-space\",\n task_type: \"human\",\n elevator_pitch: \"User moves through physical or virtual 3D environment.\",\n example_usage: \"Walking around a VR museum, teleporting in a game, or exploring AR overlays in a building.\",\n io_spec: {\n inputs: {\n required: [],\n optional: [{ id: \"data_point_cloud\", label: \"Environment Map\" }]\n },\n outputs: {\n primary: { id: \"data_trajectory\", label: \"Movement Path\" },\n metadata: [{ id: \"data_pose\", label: \"Current Position\" }]\n }\n },\n common_variants: [\"walk_in_vr\", \"teleport\", \"fly_navigation\", \"physical_movement\", \"gaze_navigation\"],\n relations: [\n { target_id: \"task_track\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Position tracking enables navigation.\" },\n { target_id: \"task_detect\", type: \"enables\", strength: \"medium\", reason: \"Navigation reveals what objects the user encounters.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"weak\", reason: \"Movement patterns inform spatial recommendations.\" }\n ]\n },\n {\n id: \"human_adjust_control\",\n layer_id: \"layer_inbound\",\n name: \"Adjust Control\",\n slug: \"adjust-control\",\n task_type: \"human\",\n elevator_pitch: \"User continuously adjusts a physical or virtual control (slider, knob, dial).\",\n example_usage: \"Turning a thermostat dial, adjusting volume slider, or dimming lights gradually.\",\n io_spec: {\n inputs: {\n required: [],\n optional: [{ id: \"data_config\", label: \"Current Value\" }]\n },\n outputs: {\n primary: { id: \"data_config\", label: \"Adjusted Value\" },\n metadata: [{ id: \"data_trajectory\", label: \"Adjustment Path\" }]\n }\n },\n common_variants: [\"slide_control\", \"rotate_knob\", \"drag_slider\", \"continuous_input\", \"fine_tuning\"],\n relations: [\n { target_id: \"task_act\", type: \"enables\", strength: \"strong\", reason: \"Control adjustments directly trigger physical actions.\" },\n { target_id: \"task_adapt\", type: \"enables\", strength: \"medium\", reason: \"Adjustment patterns inform preference learning.\" },\n { target_id: \"human_configure\", type: \"related_to\", strength: \"medium\", reason: \"Adjusting is continuous, configuring is discrete setup.\" }\n ]\n }\n];\n","\nimport { SystemTask } from '../types';\n\nexport const SYSTEM_TASKS: SystemTask[] = [\n // Inbound\n {\n id: \"system_read_db\",\n layer_id: \"layer_inbound\",\n name: \"Read Record\",\n slug: \"read-record\",\n task_type: \"system\",\n elevator_pitch: \"Retrieves existing data from persistent storage.\",\n example_usage: \"Fetching user profile by ID on login.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_text\", label: \"Record ID\" }],\n optional: [{ id: \"data_json\", label: \"Query Parameters\" }]\n },\n outputs: {\n primary: { id: \"data_db_record\", label: \"Record\" },\n metadata: []\n }\n },\n common_variants: [\"get_by_id\", \"fetch\", \"query\", \"search\", \"list\", \"batch_read\"],\n relations: [\n { target_id: \"task_retrieve\", type: \"enables\", strength: \"medium\", reason: \"Database reads provide the corpus for retrieval systems.\" },\n { target_id: \"system_create_db\", type: \"commonly_preceded_by\", strength: \"weak\", reason: \"Often check if record exists before creating.\" }\n ]\n },\n {\n id: \"system_cache\",\n layer_id: \"layer_internal\",\n name: \"Semantic Cache\",\n slug: \"semantic-cache\",\n task_type: \"system\",\n elevator_pitch: \"Short-circuits processing by retrieving previously generated results for similar inputs.\",\n example_usage: \"Returning a cached SQL query for 'Show me sales' without calling the LLM again.\",\n io_spec: { \n inputs: { \n required: [{ id: \"data_embedding\", label: \"Input Vector\" }], \n optional: [{ id: \"data_config\", label: \"Similarity Threshold\" }] \n }, \n outputs: { \n primary: { id: \"data_any\", label: \"Cached Output\" }, \n metadata: [{ id: \"data_score\", label: \"Hit Score\" }] \n } \n },\n common_variants: [\"redis_vector\", \"exact_match\", \"similarity_cache\"],\n relations: [\n { target_id: \"task_represent\", type: \"requires_input_from\", strength: \"strong\", reason: \"Caching relies on embeddings to find 'similar' previous requests.\" },\n { target_id: \"task_generate\", type: \"precedes\", strength: \"strong\", reason: \"Cache lookup happens before generation; if hit, generation is skipped.\" }\n ]\n },\n {\n id: \"system_webhook\",\n layer_id: \"layer_inbound\",\n name: \"Webhook Listener\",\n slug: \"webhook\",\n task_type: \"system\",\n elevator_pitch: \"Waits for external service triggers.\",\n example_usage: \"Listening for Stripe payment success.\",\n io_spec: { \n inputs: { required: [{ id: \"data_config\", label: \"Endpoint\" }], optional: [] }, \n outputs: { primary: { id: \"data_json\", label: \"Payload\" }, metadata: [] } \n },\n common_variants: [\"api_callback\", \"integration_event\", \"third_party_trigger\"],\n relations: []\n },\n {\n id: \"system_timer\",\n layer_id: \"layer_inbound\",\n name: \"Scheduled Timer\",\n slug: \"timer\",\n task_type: \"system\",\n elevator_pitch: \"Triggers actions based on time schedules.\",\n example_usage: \"Nightly batch job.\",\n io_spec: { \n inputs: { required: [{ id: \"data_config\", label: \"Schedule\" }], optional: [] }, \n outputs: { primary: { id: \"data_signal\", label: \"Time Event\" }, metadata: [] } \n },\n common_variants: [\"cron_job\", \"countdown\", \"recurring_schedule\", \"one_time_trigger\"],\n relations: []\n },\n\n // Internal\n {\n id: \"system_rules\",\n layer_id: \"layer_internal\",\n name: \"Logic Gate\",\n slug: \"logic-gate\",\n task_type: \"system\",\n elevator_pitch: \"Deterministic branching logic based on conditions.\",\n example_usage: \"If confidence score > 0.5, then approve.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Input\" }], optional: [{ id: \"data_config\", label: \"Rules\" }] }, \n outputs: { primary: { id: \"data_signal\", label: \"Branch Path\" }, metadata: [] } \n },\n common_variants: [\"if_else\", \"switch\", \"filter\", \"threshold_check\"],\n relations: [\n { target_id: \"task_classify\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Classification outputs feed business logic rules.\" },\n { target_id: \"task_regress\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Regression predictions trigger threshold-based actions.\" },\n { target_id: \"system_train\", type: \"triggers\", strength: \"medium\", reason: \"Rule-based threshold checks trigger automated retraining when model performance degrades.\" }\n ]\n },\n {\n id: \"system_format\",\n layer_id: \"layer_internal\",\n name: \"Format Conversion\",\n slug: \"format-conversion\",\n task_type: \"system\",\n elevator_pitch: \"Transforms data structure without changing meaning.\",\n example_usage: \"Converting JSON to CSV for spreadsheet export.\",\n io_spec: { \n inputs: { required: [{ id: \"data_any\", label: \"Source\" }], optional: [{ id: \"data_schema\", label: \"Target Schema\" }] }, \n outputs: { primary: { id: \"data_any\", label: \"Formatted Data\" }, metadata: [] } \n },\n common_variants: [\"json_to_xml\", \"csv_to_json\", \"schema_mapping\", \"data_normalization\"],\n relations: []\n },\n\n // Outbound\n {\n id: \"system_api\",\n layer_id: \"layer_outbound\",\n name: \"API Call\",\n slug: \"api-call\",\n task_type: \"system\",\n elevator_pitch: \"Executes an action in an external service.\",\n example_usage: \"Booking a calendar slot via Google Calendar API.\",\n io_spec: { \n inputs: { required: [{ id: \"data_json\", label: \"Payload\" }], optional: [] }, \n outputs: { primary: { id: \"data_api_response\", label: \"Response\" }, metadata: [] } \n },\n common_variants: [\"rest_api\", \"graphql\", \"rpc\", \"webhook_call\"],\n relations: [\n { target_id: \"task_generate\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Generated content often drives API actions.\" }\n ]\n },\n {\n id: \"system_create_db\",\n layer_id: \"layer_outbound\",\n name: \"Create Record\",\n slug: \"create-record\",\n task_type: \"system\",\n elevator_pitch: \"Inserts new data into persistent storage.\",\n example_usage: \"Creating a new user account in the database.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"Record Data\" }],\n optional: [{ id: \"data_json\", label: \"Metadata\" }]\n },\n outputs: {\n primary: { id: \"data_db_record\", label: \"New Record ID\" },\n metadata: [{ id: \"data_json\", label: \"Created Record\" }]\n }\n },\n common_variants: [\"insert\", \"add\", \"post\", \"batch_create\"],\n relations: [\n { target_id: \"task_extract\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Extracted structured data is typically persisted as new records.\" },\n { target_id: \"task_generate\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Generated content often needs to be saved as new records.\" },\n { target_id: \"system_log\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Record creation should be logged for audit trails.\" }\n ]\n },\n {\n id: \"system_update_db\",\n layer_id: \"layer_outbound\",\n name: \"Update Record\",\n slug: \"update-record\",\n task_type: \"system\",\n elevator_pitch: \"Modifies existing data in persistent storage.\",\n example_usage: \"Updating user preferences or profile information.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_text\", label: \"Record ID\" },\n { id: \"data_any\", label: \"Updated Data\" }\n ],\n optional: [{ id: \"data_json\", label: \"Merge Strategy\" }]\n },\n outputs: {\n primary: { id: \"data_db_record\", label: \"Updated Record ID\" },\n metadata: [{ id: \"data_json\", label: \"Updated Fields\" }]\n }\n },\n common_variants: [\"modify\", \"patch\", \"put\", \"upsert\", \"batch_update\"],\n relations: [\n { target_id: \"system_read_db\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Typically read existing record before updating.\" },\n { target_id: \"task_extract\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Extracted data often updates existing records.\" },\n { target_id: \"system_log\", type: \"commonly_followed_by\", strength: \"medium\", reason: \"Record updates should be logged for audit trails.\" }\n ]\n },\n {\n id: \"system_delete_db\",\n layer_id: \"layer_outbound\",\n name: \"Delete Record\",\n slug: \"delete-record\",\n task_type: \"system\",\n elevator_pitch: \"Removes data from persistent storage.\",\n example_usage: \"Deleting user account when requested or removing expired data.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_text\", label: \"Record ID\" }],\n optional: [{ id: \"data_config\", label: \"Deletion Options\" }]\n },\n outputs: {\n primary: { id: \"data_signal\", label: \"Deletion Confirmation\" },\n metadata: [{ id: \"data_log\", label: \"Deletion Log\" }]\n }\n },\n common_variants: [\"remove\", \"destroy\", \"purge\", \"soft_delete\", \"batch_delete\"],\n relations: [\n { target_id: \"system_read_db\", type: \"commonly_preceded_by\", strength: \"medium\", reason: \"Often verify record exists before deleting.\" },\n { target_id: \"human_review\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Deletions often require human confirmation for safety.\" },\n { target_id: \"system_log\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Deletions must be logged for audit trails and compliance.\" }\n ]\n },\n {\n id: \"system_notification\",\n layer_id: \"layer_outbound\",\n name: \"Send Notification\",\n slug: \"send-notification\",\n task_type: \"system\",\n elevator_pitch: \"Sends an alert to a user channel.\",\n example_usage: \"Push notification on mobile.\",\n io_spec: { \n inputs: { required: [{ id: \"data_text\", label: \"Recipient\" }, { id: \"data_text\", label: \"Message\" }], optional: [] }, \n outputs: { primary: { id: \"data_log\", label: \"Sent Status\" }, metadata: [] } \n },\n common_variants: [\"email\", \"push\", \"sms\", \"in_app_alert\"],\n relations: [\n { target_id: \"task_monitor\", type: \"commonly_preceded_by\", strength: \"strong\", reason: \"Monitoring systems trigger notifications.\" }\n ]\n },\n {\n id: \"system_log\",\n layer_id: \"layer_outbound\",\n name: \"Log Event\",\n slug: \"log-event\",\n task_type: \"system\",\n elevator_pitch: \"Records system state for audit trails.\",\n example_usage: \"Logging an error or user action.\",\n io_spec: {\n inputs: { required: [{ id: \"data_any\", label: \"Event Data\" }], optional: [] },\n outputs: { primary: { id: \"data_log\", label: \"Log Entry\" }, metadata: [] }\n },\n common_variants: [\"error_log\", \"audit_log\", \"analytics_event\", \"debug_trace\"],\n relations: []\n },\n {\n id: \"system_git\",\n layer_id: \"layer_outbound\",\n name: \"Git Action\",\n slug: \"git-action\",\n task_type: \"system\",\n elevator_pitch: \"Executes version control operations in a Git repository.\",\n example_usage: \"Committing generated code changes to a feature branch.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_config\", label: \"Repository\" },\n { id: \"data_text\", label: \"Action\" }\n ],\n optional: [\n { id: \"data_code\", label: \"Files\" },\n { id: \"data_text\", label: \"Message\" }\n ]\n },\n outputs: {\n primary: { id: \"data_text\", label: \"Commit/Result ID\" },\n metadata: [\n { id: \"data_log\", label: \"Operation Log\" }\n ]\n }\n },\n common_variants: [\"commit\", \"push\", \"pull\", \"merge\", \"branch\", \"tag\", \"create_pr\"],\n relations: [\n {\n target_id: \"task_generate\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"Generated code often needs to be committed to version control.\"\n },\n {\n target_id: \"system_create_db\",\n type: \"alternative_to\",\n strength: \"medium\",\n reason: \"Both persist data, but Git is for code/text versioning vs. structured records.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Git operations should be logged for audit trails.\"\n }\n ]\n },\n {\n id: \"system_train\",\n layer_id: \"layer_internal\", // Processing/transformation\n name: \"Train Model\",\n slug: \"train-model\",\n task_type: \"system\",\n elevator_pitch: \"Executes model training or fine-tuning on ML infrastructure.\",\n example_usage: \"Fine-tuning GPT-4 on customer support transcripts.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_table\", label: \"Training Data\" }],\n optional: [\n { id: \"data_policy\", label: \"Base Model\" },\n { id: \"data_config\", label: \"Training Config\" }\n ]\n },\n outputs: {\n primary: { id: \"data_policy\", label: \"Trained Model\" },\n metadata: [\n { id: \"data_log\", label: \"Training Logs\" },\n { id: \"data_json\", label: \"Training Metrics\" }\n ]\n }\n },\n common_variants: [\n \"fine_tune\",\n \"full_train\",\n \"transfer_learning\",\n \"rlhf\",\n \"continued_pretraining\"\n ],\n relations: [\n {\n target_id: \"system_evaluate\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Training jobs should be followed by evaluation to measure effectiveness.\"\n },\n {\n target_id: \"system_create_db\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Trained models must be persisted to storage as new records.\"\n },\n {\n target_id: \"system_format\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Training data often needs format conversion before training.\"\n },\n {\n target_id: \"human_provide_feedback\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"RLHF training requires human preference data.\"\n }\n ]\n},\n{\n id: \"system_evaluate\",\n layer_id: \"layer_internal\", // Quality assessment/reasoning\n name: \"Evaluate Model\",\n slug: \"evaluate-model\",\n task_type: \"system\",\n elevator_pitch: \"Calculates performance metrics for model quality assessment.\",\n example_usage: \"Running test suite to measure accuracy and F1 score.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_policy\", label: \"Model\" },\n { id: \"data_table\", label: \"Test Dataset\" }\n ],\n optional: [\n { id: \"data_json\", label: \"Evaluation Config\" },\n { id: \"data_policy\", label: \"Baseline Model\" }\n ]\n },\n outputs: {\n primary: { id: \"data_json\", label: \"Metrics Report\" },\n metadata: [\n { id: \"data_score\", label: \"Primary Metric\" },\n { id: \"data_json\", label: \"Per-Class Metrics\" }\n ]\n }\n },\n common_variants: [\n \"performance_test\",\n \"benchmark\",\n \"ablation_study\",\n \"a_b_comparison\",\n \"regression_test\"\n ],\n relations: [\n {\n target_id: \"system_train\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"Evaluation typically follows training to validate model quality.\"\n },\n {\n target_id: \"system_rules\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Evaluation metrics trigger deployment decisions via threshold checks.\"\n },\n {\n target_id: \"human_review\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Evaluation results should be reviewed before production deployment.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Evaluation results are logged for model monitoring and audit trails.\"\n },\n { target_id: \"system_rules\", type: \"commonly_followed_by\", strength: \"strong\", reason: \"Evaluation metrics feed into threshold logic (if accuracy < 0.9, trigger retraining).\" }\n ]\n},\n{\n id: \"system_orchestrate\",\n layer_id: \"layer_internal\", // Coordination logic/routing\n name: \"Orchestrate Workflow\",\n slug: \"orchestrate\",\n task_type: \"system\",\n elevator_pitch: \"Coordinates task execution across multiple agents or services.\",\n example_usage: \"Managing parallel execution of specialist agents in AutoGPT.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_json\", label: \"Task Plan\" }],\n optional: [\n { id: \"data_state_vector\", label: \"Shared State\" },\n { id: \"data_config\", label: \"Orchestration Rules\" }\n ]\n },\n outputs: {\n primary: { id: \"data_json\", label: \"Execution Results\" },\n metadata: [\n { id: \"data_log\", label: \"Coordination Log\" },\n { id: \"data_signal\", label: \"Completion Signal\" }\n ]\n }\n },\n common_variants: [\n \"agent_coordination\",\n \"task_distribution\",\n \"parallel_execution\",\n \"sequential_workflow\",\n \"dag_execution\"\n ],\n relations: [\n {\n target_id: \"task_plan\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"Planning tasks create the execution strategy that orchestration implements.\"\n },\n {\n target_id: \"system_rules\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Business logic determines orchestration routing decisions.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Orchestration coordination should be logged for debugging and monitoring.\"\n },\n {\n target_id: \"system_webhook\",\n type: \"incompatible_with\",\n strength: \"medium\",\n reason: \"Don't confuse orchestration (internal coordination) with webhooks (external events).\"\n }\n ]\n},\n{\n id: \"system_analytics\",\n layer_id: \"layer_interactive\",\n name: \"Analytics Collection\",\n slug: \"analytics-collection\",\n task_type: \"system\",\n elevator_pitch: \"Captures behavioral data across all user interactions for adaptation and analysis.\",\n example_usage: \"Tracking click patterns, dwell times, and user journey paths.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_any\", label: \"User Event\" }],\n optional: [\n { id: \"data_session_history\", label: \"Session Context\" },\n { id: \"data_preference_profile\", label: \"User Profile\" }\n ]\n },\n outputs: {\n primary: { id: \"data_log\", label: \"Analytics Event\" },\n metadata: [\n { id: \"data_json\", label: \"Event Properties\" },\n { id: \"data_score\", label: \"Timestamp\" }\n ]\n }\n },\n common_variants: [\n \"click_tracking\",\n \"scroll_depth\",\n \"session_recording\",\n \"funnel_analytics\",\n \"heatmap_data\"\n ],\n relations: [\n {\n target_id: \"task_adapt\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Analytics provides the raw behavioral data that adaptation requires.\"\n },\n {\n target_id: \"system_reward\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Collected analytics events are processed into reward signals.\"\n },\n {\n target_id: \"human_provide_feedback\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Explicit feedback is one type of event captured by analytics.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Analytics events are often also logged for audit/debugging.\"\n }\n ]\n},\n{\n id: \"system_experiment\",\n layer_id: \"layer_interactive\",\n name: \"A/B Test Manager\",\n slug: \"ab-test-manager\",\n task_type: \"system\",\n elevator_pitch: \"Manages experimentation infrastructure for controlled testing of variants.\",\n example_usage: \"Traffic splitting between two recommendation algorithms to measure lift.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_config\", label: \"Experiment Config\" },\n { id: \"data_text\", label: \"User ID\" }\n ],\n optional: [\n { id: \"data_preference_profile\", label: \"Segmentation Data\" }\n ]\n },\n outputs: {\n primary: { id: \"data_selection\", label: \"Variant Assignment\" },\n metadata: [\n { id: \"data_json\", label: \"Experiment Context\" },\n { id: \"data_score\", label: \"Traffic Allocation %\" }\n ]\n }\n },\n common_variants: [\n \"ab_test\",\n \"multivariate_test\",\n \"bandit_allocation\",\n \"feature_flag\",\n \"gradual_rollout\"\n ],\n relations: [\n {\n target_id: \"task_explore\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"A/B testing is the infrastructure layer for systematic exploration.\"\n },\n {\n target_id: \"system_analytics\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Experiment assignments are tracked via analytics to measure outcomes.\"\n },\n {\n target_id: \"system_rules\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Business logic determines experiment eligibility before assignment.\"\n },\n {\n target_id: \"system_evaluate\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Experiments must be evaluated for statistical significance.\"\n }\n ]\n},\n{\n id: \"system_monitor_model\",\n layer_id: \"layer_interactive\",\n name: \"Model Monitor\",\n slug: \"model-monitor\",\n task_type: \"system\",\n elevator_pitch: \"Detects drift, performance degradation, and anomalies in production AI systems.\",\n example_usage: \"Alerting when classification accuracy drops below threshold.\",\n io_spec: {\n inputs: {\n required: [\n { id: \"data_policy\", label: \"Model State\" },\n { id: \"data_log\", label: \"Inference Logs\" }\n ],\n optional: [\n { id: \"data_table\", label: \"Ground Truth Data\" },\n { id: \"data_config\", label: \"Alert Thresholds\" }\n ]\n },\n outputs: {\n primary: { id: \"data_signal\", label: \"Health Status\" },\n metadata: [\n { id: \"data_json\", label: \"Metrics Report\" },\n { id: \"data_score\", label: \"Drift Score\" }\n ]\n }\n },\n common_variants: [\n \"drift_detection\",\n \"performance_tracking\",\n \"anomaly_detection\",\n \"data_quality_check\",\n \"latency_monitoring\"\n ],\n relations: [\n {\n target_id: \"task_adapt\",\n type: \"triggers\",\n strength: \"strong\",\n reason: \"Drift detection triggers adaptation/retraining workflows.\"\n },\n {\n target_id: \"system_notification\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Critical model health issues alert on-call teams.\"\n },\n {\n target_id: \"system_train\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Detected drift may trigger model retraining.\"\n },\n {\n target_id: \"system_log\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Monitoring results are logged for incident analysis.\"\n }\n ]\n},\n{\n id: \"system_state\",\n layer_id: \"layer_interactive\",\n name: \"State Manager\",\n slug: \"state-manager\",\n task_type: \"system\",\n elevator_pitch: \"Persists and retrieves adaptive system state across sessions.\",\n example_usage: \"Loading a user's learned preferences or conversation context.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_text\", label: \"State Key\" }],\n optional: [\n { id: \"data_state_vector\", label: \"State Data (for write)\" },\n { id: \"data_config\", label: \"TTL/Expiry Rules\" }\n ]\n },\n outputs: {\n primary: { id: \"data_state_vector\", label: \"Retrieved State\" },\n metadata: [\n { id: \"data_score\", label: \"Last Updated Timestamp\" },\n { id: \"data_json\", label: \"State Metadata\" }\n ]\n }\n },\n common_variants: [\n \"session_persistence\",\n \"user_context\",\n \"learned_preferences\",\n \"dialogue_state\",\n \"policy_checkpoint\"\n ],\n relations: [\n {\n target_id: \"task_adapt\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Adaptation requires persisting what the system has learned.\"\n },\n {\n target_id: \"task_plan\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Planning requires access to current system and environment state.\"\n },\n {\n target_id: \"task_generate\",\n type: \"enables\",\n strength: \"medium\",\n reason: \"Conversational generation needs dialogue history and context.\"\n },\n {\n target_id: \"system_read_db\",\n type: \"incompatible_with\",\n strength: \"weak\",\n reason: \"State Manager is for ephemeral/session data, not permanent records.\"\n }\n ]\n},\n{\n id: \"system_reward\",\n layer_id: \"layer_interactive\",\n name: \"Reward Calculator\",\n slug: \"reward-calculator\",\n task_type: \"system\",\n elevator_pitch: \"Converts user behavior into quantitative feedback signals for learning.\",\n example_usage: \"Computing reward score from click-through rate, dwell time, and conversions.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_log\", label: \"User Interaction Log\" }],\n optional: [\n { id: \"data_json\", label: \"Business Objectives\" },\n { id: \"data_config\", label: \"Reward Weights\" }\n ]\n },\n outputs: {\n primary: { id: \"data_score\", label: \"Reward Signal\" },\n metadata: [\n { id: \"data_json\", label: \"Signal Breakdown\" },\n { id: \"data_score\", label: \"Confidence\" }\n ]\n }\n },\n common_variants: [\n \"implicit_feedback\",\n \"engagement_scoring\",\n \"conversion_attribution\",\n \"outcome_measurement\",\n \"preference_inference\"\n ],\n relations: [\n {\n target_id: \"task_adapt\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Reward signals are the primary training data for adaptive systems.\"\n },\n {\n target_id: \"task_explore\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Exploration strategies require reward signals to learn which actions work.\"\n },\n {\n target_id: \"system_analytics\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"Analytics captures raw events; reward calculator interprets them.\"\n },\n {\n target_id: \"human_provide_feedback\",\n type: \"commonly_preceded_by\",\n strength: \"medium\",\n reason: \"Explicit feedback is one input to reward calculation.\"\n },\n {\n target_id: \"system_train\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Accumulated reward signals trigger retraining workflows.\"\n }\n ]\n},\n{\n id: \"system_session\",\n layer_id: \"layer_interactive\",\n name: \"Session Manager\",\n slug: \"session-manager\",\n task_type: \"system\",\n elevator_pitch: \"Maintains conversational and interactive context across turns.\",\n example_usage: \"Tracking dialogue state in a multi-turn customer service chat.\",\n io_spec: {\n inputs: {\n required: [{ id: \"data_text\", label: \"Session ID\" }],\n optional: [\n { id: \"data_conversation\", label: \"New Turn (for append)\" },\n { id: \"data_config\", label: \"Context Window Limits\" }\n ]\n },\n outputs: {\n primary: { id: \"data_session_history\", label: \"Session Context\" },\n metadata: [\n { id: \"data_score\", label: \"Turn Count\" },\n { id: \"data_json\", label: \"Session Metadata\" }\n ]\n }\n },\n common_variants: [\n \"dialogue_management\",\n \"turn_tracking\",\n \"context_window_management\",\n \"multi_turn_history\",\n \"conversation_branching\"\n ],\n relations: [\n {\n target_id: \"task_generate\",\n type: \"enables\",\n strength: \"strong\",\n reason: \"Generation in conversational AI requires access to dialogue history.\"\n },\n {\n target_id: \"task_plan\",\n type: \"enables\",\n strength: \"medium\",\n reason: \"Multi-step planning requires tracking user goals across turns.\"\n },\n {\n target_id: \"system_state\",\n type: \"commonly_followed_by\",\n strength: \"strong\",\n reason: \"Session context is often persisted via state management.\"\n },\n {\n target_id: \"human_type_input\",\n type: \"commonly_preceded_by\",\n strength: \"strong\",\n reason: \"User input creates new turns that session manager appends.\"\n },\n {\n target_id: \"system_analytics\",\n type: \"commonly_followed_by\",\n strength: \"medium\",\n reason: \"Session events are tracked for analytics and optimization.\"\n }\n ]\n}\n];\n","\nimport { DataArtifactDefinition } from '../types';\n\nexport const DATA_ARTIFACTS: DataArtifactDefinition[] = [\n // Text Data\n { id: \"data_text\", name: \"Text\", category: \"text\", icon: \"type\", description: \"Plain text input/output\", examples: [\"User messages\", \"search queries\", \"form responses\", \".txt files\"], compatible_with: [\"Classify\", \"Generate\", \"Extract\", \"Translate\"], format_notes: \"UTF-8 string, any length\" },\n { id: \"data_markup\", name: \"Markup\", category: \"text\", icon: \"code\", description: \"Text with semantic annotations\", examples: [\"HTML (.html)\", \"XML (.xml)\", \"Markdown (.md)\"], compatible_with: [\"Extract\", \"Transform\"], format_notes: \"String with tags\" },\n { id: \"data_structured_text\", name: \"Structured Text\", category: \"text\", icon: \"file-text\", description: \"Formatted text with hierarchy\", examples: [\"Markdown (.md)\", \"Rich text (.rtf)\", \"LaTeX (.tex)\"], compatible_with: [\"Extract\", \"Transform\", \"Generate\"], format_notes: \"Preserves formatting/structure\" },\n { id: \"data_code\", name: \"Code\", category: \"text\", icon: \"code\", description: \"Programming language text\", examples: [\"Python (.py)\", \"JavaScript (.js)\", \"SQL (.sql)\", \"TypeScript (.ts)\"], compatible_with: [\"Generate\", \"Verify\", \"Transform\"], format_notes: \"Syntax-aware processing\" },\n { id: \"data_conversation\", name: \"Conversation History\", category: \"text\", icon: \"message-square\", description: \"Sequential dialogue\", examples: [\"Chat logs\", \"support tickets\", \"conversation transcripts\"], compatible_with: [\"Synthesize\", \"Classify\", \"Generate\"], format_notes: \"Array of {role, content} messages\" },\n { id: \"data_document\", name: \"Document\", category: \"text\", icon: \"file-text\", description: \"File-based document\", examples: [\"PDF (.pdf)\", \"DOCX (.docx)\", \"ODT (.odt)\"], compatible_with: [\"Extract\", \"Translate\"], format_notes: \"Binary or text content\" },\n { id: \"data_session_history\", name: \"Session History\", category: \"text\", icon: \"history\", description: \"Past user actions/state\", examples: [\"User journey\", \"Context\"], compatible_with: [\"Adapt\", \"Synthesize\"], format_notes: \"Chronological event log\" },\n \n // Visual Data\n { id: \"data_image\", name: \"Image\", category: \"visual\", icon: \"image\", description: \"Static 2D visual\", examples: [\"Photos (.jpg, .png)\", \"Screenshots (.png)\", \"Diagrams (.svg, .webp)\"], compatible_with: [\"Detect\", \"Classify\", \"Segment\", \"Transform\"], format_notes: \"JPEG, PNG, WebP. Typical size 512px-4K\" },\n { id: \"data_video\", name: \"Video\", category: \"visual\", icon: \"video\", description: \"Sequential frames\", examples: [\"Recordings (.mp4)\", \"Animations (.webm)\", \"GIFs (.gif)\"], compatible_with: [\"Detect\", \"Classify\", \"Monitor\"], format_notes: \"MP4, WebM. Requires processing time/cost\" },\n { id: \"data_video_stream\", name: \"Video Stream\", category: \"visual\", icon: \"video\", description: \"Real-time continuous video\", examples: [\"Security feed (RTSP)\", \"Webcam (WebRTC)\"], compatible_with: [\"Monitor\", \"Detect\"], format_notes: \"RTSP/WebRTC Stream\" },\n { id: \"data_optical_flow\", name: \"Optical Flow\", category: \"visual\", icon: \"move\", description: \"Motion vectors between frames\", examples: [\"Motion tracking\", \"Velocity fields\"], compatible_with: [\"Estimate\", \"Detect\"], format_notes: \"2D Vector Field\" },\n { id: \"data_3d_model\", name: \"3D Model\", category: \"visual\", icon: \"box\", description: \"Spatial geometry\", examples: [\"CAD files (.obj, .fbx)\", \"Game assets (.gltf)\", \"3D scans (.stl)\"], compatible_with: [\"Generate\", \"Transform\"], format_notes: \"OBJ, FBX, GLTF\" },\n { id: \"data_point_cloud\", name: \"Point Cloud\", category: \"visual\", icon: \"box\", description: \"3D spatial data points\", examples: [\"LiDAR scan (.las, .laz)\", \"Photogrammetry (.ply)\", \"3D sensors (.pcd)\"], compatible_with: [\"Detect\", \"Segment\", \"Estimate\"], format_notes: \"XYZ coordinates + optional RGB\" },\n { id: \"data_depth_map\", name: \"Depth Map\", category: \"visual\", icon: \"layers\", description: \"Distance at each pixel\", examples: [\"AR sensing\", \"3D reconstruction\"], compatible_with: [\"Estimate\", \"Segment\"], format_notes: \"2D array of float distance values\" },\n { id: \"data_heatmap\", name: \"Heatmap\", category: \"visual\", icon: \"activity\", description: \"Probability distribution map\", examples: [\"Attention map\", \"Saliency\"], compatible_with: [\"Detect\", \"Classify\"], format_notes: \"2D float array normalized 0-1\" },\n { id: \"data_bbox\", name: \"Bounding Box\", category: \"visual\", icon: \"square\", description: \"Rectangular region of interest\", examples: [\"[x,y,w,h]\", \"YOLO output\"], compatible_with: [\"Detect\", \"Segment\"], format_notes: \"Normalized 0-1 or pixel coords\" },\n { id: \"data_mask\", name: \"Mask\", category: \"visual\", icon: \"circle-dashed\", description: \"Binary or multi-class segmentation\", examples: [\"Alpha channel\", \"Region masks\"], compatible_with: [\"Segment\", \"Transform\"], format_notes: \"Same dimensions as source image\" },\n\n // Audio Data\n { id: \"data_audio\", name: \"Audio\", category: \"audio\", icon: \"mic\", description: \"Sound recording\", examples: [\"Voice memos (.mp3)\", \"Music (.wav, .flac)\", \"Podcasts (.aac)\"], compatible_with: [\"Classify\", \"Translate\", \"Transform\"], format_notes: \"MP3, WAV, AAC\" },\n { id: \"data_audio_stream\", name: \"Audio Stream\", category: \"audio\", icon: \"mic\", description: \"Real-time continuous audio\", examples: [\"Microphone input\", \"Live transcription\", \"Radio stream\"], compatible_with: [\"Monitor\", \"Translate\", \"Classify\"], format_notes: \"PCM Buffer\" },\n { id: \"data_speech\", name: \"Speech\", category: \"audio\", icon: \"mic\", description: \"Human voice (subset of audio)\", examples: [\"Dictation (.m4a)\", \"Voice commands\", \"Phone calls\"], compatible_with: [\"Translate (ASR)\", \"Classify\"], format_notes: \"Optimized for voice frequency range\" },\n \n // Structured Data\n { id: \"data_json\", name: \"JSON\", category: \"structured\", icon: \"code\", description: \"Key-value structured data\", examples: [\"API responses (.json)\", \"Config files (.json)\", \"GeoJSON (.geojson)\"], compatible_with: [\"Extract\", \"Classify\", \"Represent\"], format_notes: \"Hierarchical, typed values\" },\n { id: \"data_list\", name: \"List / Array\", category: \"structured\", icon: \"list\", description: \"Ordered collection of items\", examples: [\"Menu items\", \"Taxonomy\", \"To-do lists\"], compatible_with: [\"Classify\", \"Rank\"], format_notes: \"JSON Array\" },\n { id: \"data_table\", name: \"Table\", category: \"structured\", icon: \"table\", description: \"Rows and columns\", examples: [\"Spreadsheets (.csv, .xlsx)\", \"SQL results\", \"Data exports (.tsv, .parquet)\"], compatible_with: [\"Regress\", \"Classify\"], format_notes: \"CSV, TSV, Parquet\" },\n { id: \"data_knowledge_graph\", name: \"Knowledge Graph\", category: \"structured\", icon: \"network\", description: \"Entities and relationships\", examples: [\"Ontology (.owl, .rdf)\", \"Semantic Web\", \"Knowledge bases (.ttl)\"], compatible_with: [\"Retrieve\", \"Verify\"], format_notes: \"Graph/Triples\" },\n { id: \"data_embedding\", name: \"Embedding\", category: \"structured\", icon: \"hash\", description: \"High-dimensional vector\", examples: [\"Search index\", \"Feature vector\"], compatible_with: [\"Retrieve\", \"Match\"], format_notes: \"Float32Array, typically 384-1536 dims\" },\n { id: \"data_state_vector\", name: \"State Vector\", category: \"structured\", icon: \"cpu\", description: \"Current system/environment state\", examples: [\"Game state\", \"Robot position\"], compatible_with: [\"Act\", \"Plan\", \"Explore\"], format_notes: \"Numerical array representing condition\" },\n { id: \"data_sensor_stream\", name: \"Sensor Stream\", category: \"structured\", icon: \"activity\", description: \"Real-time sensor readings\", examples: [\"Accelerometer\", \"Temperature\"], compatible_with: [\"Monitor\", \"Estimate\"], format_notes: \"Continuous measurement series\" },\n { id: \"data_trajectory\", name: \"Trajectory\", category: \"structured\", icon: \"trending-up\", description: \"Path over time\", examples: [\"Robot path\", \"Drone flight plan\"], compatible_with: [\"Plan\", \"Act\"], format_notes: \"Sequence of positions with timestamps\" },\n { id: \"data_preference_profile\", name: \"User Profile\", category: \"structured\", icon: \"user\", description: \"Explicit/Implicit preferences\", examples: [\"Settings\", \"Learned preferences\"], compatible_with: [\"Rank\", \"Adapt\"], format_notes: \"JSON or Vector representation\" },\n \n // System Data\n { id: \"data_score\", name: \"Score\", category: \"system\", icon: \"gauge\", description: \"Numerical value (confidence, similarity, etc)\", examples: [\"0.85 confidence\", \"0.92 similarity\", \"Ranking score\"], compatible_with: [\"All\"], format_notes: \"Float, typically 0-1\" },\n { id: \"data_classification\", name: \"Classification\", category: \"system\", icon: \"tag\", description: \"Categorical label\", examples: [\"Spam/Not Spam\", \"Cat/Dog\", \"Sentiment labels\"], compatible_with: [\"Classify\", \"Verify\"], format_notes: \"String label from taxonomy\" },\n { id: \"data_signal\", name: \"Signal\", category: \"system\", icon: \"zap\", description: \"Control flow trigger\", examples: [\"Start\", \"Stop\", \"Alert\", \"Threshold breach\"], compatible_with: [\"Monitor\", \"Act\"], format_notes: \"Boolean or Enum\" },\n { id: \"data_log\", name: \"Log\", category: \"system\", icon: \"list\", description: \"System event record\", examples: [\"Error trace (.log)\", \"Audit log\", \"Access logs\"], compatible_with: [\"Adapt\"], format_notes: \"Timestamped structured data\" },\n { id: \"data_config\", name: \"Config\", category: \"system\", icon: \"settings\", description: \"System parameters\", examples: [\"Model settings (.json, .yaml)\", \"Thresholds (.yml)\", \"Environment vars (.env)\"], compatible_with: [\"Adapt\"], format_notes: \"JSON/YAML\" },\n { id: \"data_schema\", name: \"Schema\", category: \"system\", icon: \"file-code\", description: \"Data structure definition\", examples: [\"JSON Schema (.json)\", \"SQL Schema (.sql)\", \"GraphQL Schema (.graphql)\"], compatible_with: [\"Format\"], format_notes: \"Formal specification\" },\n { id: \"data_db_record\", name: \"DB Record\", category: \"system\", icon: \"database\", description: \"Persisted entity\", examples: [\"User row\", \"Product item\", \"Transaction record\"], compatible_with: [\"Load\", \"Save\"], format_notes: \"ORM Object\" },\n { id: \"data_api_response\", name: \"API Response\", category: \"system\", icon: \"globe\", description: \"External service data\", examples: [\"Weather data (.json)\", \"Payment status\", \"REST response\"], compatible_with: [\"API Call\"], format_notes: \"JSON/XML\" },\n { id: \"data_action\", name: \"Action\", category: \"system\", icon: \"zap\", description: \"Discrete or continuous action\", examples: [\"Button press\", \"Motor command\", \"API call trigger\"], compatible_with: [\"Act\", \"Explore\"], format_notes: \"Enum or Vector\" },\n { id: \"data_policy\", name: \"Policy\", category: \"system\", icon: \"shield\", description: \"Decision-making strategy\", examples: [\"Neural weights (.pt, .ckpt)\", \"Ruleset (.yaml)\", \"Decision trees\"], compatible_with: [\"Plan\", \"Act\"], format_notes: \"Model/Function\" },\n { id: \"data_file\", name: \"File\", category: \"system\", icon: \"file\", description: \"Binary file blob\", examples: [\"Uploaded document\", \"Image file\", \"Archive (.zip, .tar.gz)\"], compatible_with: [\"Extract\", \"Translate\"], format_notes: \"Binary data with MIME type\" },\n { id: \"data_selection\", name: \"Selection\", category: \"system\", icon: \"check-square\", description: \"User choice from options\", examples: [\"Dropdown value\", \"Checkbox state\"], compatible_with: [\"Select\"], format_notes: \"ID or value from option set\" },\n { id: \"data_group\", name: \"Group / Cluster\", category: \"system\", icon: \"grid\", description: \"A collection of items grouped by similarity or logic\", examples: [\"Cluster ID 1\", \"Folder: Invoices\"], compatible_with: [\"Synthesize\", \"Organize\"], format_notes: \"Object containing {id, label, items[]}\" },\n \n // Generic\n { id: \"data_any\", name: \"Any\", category: \"generic\", icon: \"asterisk\", description: \"Flexible/unspecified data type\", examples: [\"Wildcard input\"], compatible_with: [\"All\"], format_notes: \"Use when type varies or is unknown\" },\n { id: \"data_multimodal\", name: \"Multimodal\", category: \"generic\", icon: \"layers\", description: \"Combined data types\", examples: [\"Video with audio\", \"Image with text\"], compatible_with: [\"Detect\", \"Classify\"], format_notes: \"Container format (MKV, MP4)\" }\n];\n","\nimport { ConstraintDefinition } from '../types';\n\nexport const CONSTRAINTS: ConstraintDefinition[] = [\n { id: \"const_privacy\", name: \"Privacy Preserving\", category: \"quality_safety\", icon: \"shield-check\", description: \"Ensures PII is handled correctly.\", type: \"Policy\", applies_to: [\"Extract\", \"Generate\"], ux_note: \"Display data handling notice.\", example_values: \"GDPR compliant, anonymize outputs\" },\n { id: \"const_latency\", name: \"Latency Budget\", category: \"performance_resource\", icon: \"clock\", description: \"Maximum allowed time for execution.\", type: \"Milliseconds\", applies_to: [\"Generate\", \"Retrieve\"], ux_note: \"Show loading indicator if exceeded\", example_values: \"< 200ms for UI, < 5s for batch\" },\n { id: \"const_confidence\", name: \"Confidence Threshold\", category: \"model_technical\", icon: \"gauge\", description: \"Minimum score required to act.\", type: \"Float (0-1)\", applies_to: [\"Classify\", \"Detect\", \"Verify\"], ux_note: \"Route low-confidence to human review\", example_values: \"0.85 for automation, 0.95 for safety-critical\" },\n { id: \"const_human_loop\", name: \"Human Verification\", category: \"quality_safety\", icon: \"user-check\", description: \"Requires human approval before action.\", type: \"Workflow\", applies_to: [\"Act\", \"Generate\"], ux_note: \"Add review step in UI.\", example_values: \"Always for medical/legal, optional for creative\" },\n { id: \"const_rate_limit\", name: \"Rate Limit\", category: \"performance_resource\", icon: \"bar-chart\", description: \"Max requests per time window.\", type: \"Integer\", applies_to: [\"API Call\", \"Generate\"], ux_note: \"Queue or throttle requests\", example_values: \"100 req/min, 1000 req/hour\" },\n { id: \"const_context_window\", name: \"Context Window\", category: \"model_technical\", icon: \"layers\", description: \"Token limit for model input.\", type: \"Integer\", applies_to: [\"Generate\", \"Synthesize\"], ux_note: \"Truncate or chunk long inputs\", example_values: \"4k, 32k, 128k tokens\" },\n { id: \"const_tone\", name: \"Tone & Voice\", category: \"ux_interaction\", icon: \"message-circle\", description: \"Style of generated content.\", type: \"String\", applies_to: [\"Generate\", \"Transform\"], ux_note: \"Allow user selection\", example_values: \"Professional, Casual, Friendly, Technical\" },\n { id: \"const_format\", name: \"Output Format\", category: \"data_context\", icon: \"file-check\", description: \"Strict structure requirement.\", type: \"Schema\", applies_to: [\"Extract\", \"Generate\"], ux_note: \"Validate output before returning\", example_values: \"JSON Schema, Markdown, CSV\" },\n { id: \"const_authentication\", name: \"Authentication Required\", category: \"quality_safety\", icon: \"key\", description: \"User or service authentication is required for this operation.\", type: \"Policy\", applies_to: [\"API Call\", \"Load from Database\", \"Save to Database\"], ux_note: \"Display login prompt or return 401 if unauthenticated\", example_values: \"OAuth2, JWT, API key, SSO, mTLS\" },\n { id: \"const_authorization\", name: \"Role-Based Access\", category: \"quality_safety\", icon: \"shield-check\", description: \"Access control based on user roles or permissions.\", type: \"Policy\", applies_to: [\"API Call\", \"Generate\", \"Act\", \"Load from Database\"], ux_note: \"Check user roles before allowing action, show permissions error if unauthorized\", example_values: \"Admin only, Editor role, View-only for guests, RBAC policy\" },\n { id: \"const_encryption\", name: \"Encryption Required\", category: \"quality_safety\", icon: \"lock\", description: \"Data must be encrypted in transit and/or at rest.\", type: \"Policy\", applies_to: [\"Save to Database\", \"API Call\", \"Generate\"], ux_note: \"Use TLS/HTTPS, encrypt sensitive fields before storage\", example_values: \"TLS 1.3, AES-256 at rest, End-to-end encryption\" },\n { id: \"const_cost_budget\", name: \"Cost Budget\", category: \"performance_resource\", icon: \"dollar-sign\", description: \"Maximum cost allowed per operation or time period.\", type: \"Currency\", applies_to: [\"Generate\", \"Train Model\", \"API Call\", \"Retrieve\"], ux_note: \"Track spending, alert when approaching limit, block if exceeded\", example_values: \"$0.01 per query, $100 per day, $1000 per month\" },\n { id: \"const_compute_budget\", name: \"Compute Budget\", category: \"performance_resource\", icon: \"cpu\", description: \"Maximum compute resources allowed (tokens, GPU hours, API calls).\", type: \"Integer\", applies_to: [\"Generate\", \"Train Model\", \"Evaluate Model\"], ux_note: \"Monitor usage, throttle when approaching limit\", example_values: \"10k tokens per request, 100 GPU hours per month, 1000 API calls per day\" },\n { id: \"const_system_instruction\", name: \"System Instruction\", category: \"ux_interaction\", icon: \"file-text\", description: \"Fixed instruction or role definition for AI model behavior.\", type: \"String\", applies_to: [\"Generate\", \"Classify\", \"Synthesize\"], ux_note: \"Prepend to all requests, not visible to end user\", example_values: \"You are a helpful customer service agent, Always respond in Spanish, Be concise and factual\" },\n { id: \"const_prompt_template\", name: \"Prompt Template\", category: \"data_context\", icon: \"code\", description: \"Structured prompt format with variable placeholders.\", type: \"Template String\", applies_to: [\"Generate\", \"Transform\", \"Synthesize\"], ux_note: \"Inject user data into template, validate parameters\", example_values: \"Summarize this {document} in {style}, Translate {text} from {source_lang} to {target_lang}\" },\n { id: \"const_few_shot_examples\", name: \"Few-Shot Examples\", category: \"model_technical\", icon: \"book-open\", description: \"Example input/output pairs to guide model behavior.\", type: \"Array\", applies_to: [\"Generate\", \"Classify\", \"Extract\"], ux_note: \"Include examples in context, manage token budget\", example_values: \"Q: What's 2+2? A: 4, Input: angry text, Output: negative sentiment\" },\n { id: \"const_data_residency\", name: \"Data Residency\", category: \"quality_safety\", icon: \"map-pin\", description: \"Data must remain within specific geographic regions.\", type: \"Policy\", applies_to: [\"Save to Database\", \"API Call\", \"Train Model\"], ux_note: \"Route to region-specific infrastructure, block cross-border transfers\", example_values: \"EU only, US regions, Canada data centers, Multi-region with restrictions\" },\n { id: \"const_data_retention\", name: \"Data Retention\", category: \"quality_safety\", icon: \"calendar\", description: \"How long data should be stored before deletion.\", type: \"Duration\", applies_to: [\"Save to Database\", \"Log Event\"], ux_note: \"Implement automatic deletion, provide retention policy notice\", example_values: \"7 days, 90 days, 7 years for compliance, Delete immediately after use\" },\n { id: \"const_content_safety\", name: \"Content Safety Policy\", category: \"quality_safety\", icon: \"shield-alert\", description: \"Filters for toxicity, hate speech, violence, or inappropriate content.\", type: \"Policy\", applies_to: [\"Generate\", \"Classify\", \"Transform\"], ux_note: \"Display content warnings, show filtered results, allow user reporting\", example_values: \"Block hate speech, Flag NSFW content, Age-restrict violent imagery, Filter profanity\" },\n { id: \"const_error_handling\", name: \"Error Handling Strategy\", category: \"ux_interaction\", icon: \"alert-triangle\", description: \"How the system responds when operations fail or produce errors.\", type: \"Strategy\", applies_to: [\"Generate\", \"Retrieve\", \"API Call\", \"Act\"], ux_note: \"Show retry button, display error message, offer alternative path, escalate to support\", example_values: \"Auto-retry 3x with backoff, Show friendly error + support link, Fallback to cached result, Queue for manual review\" },\n { id: \"const_streaming\", name: \"Streaming Mode\", category: \"ux_interaction\", icon: \"activity\", description: \"Whether to stream partial results progressively or return complete output.\", type: \"Boolean\", applies_to: [\"Generate\", \"Transform\", \"Synthesize\"], ux_note: \"Show typing indicator, display tokens as they arrive, enable cancel mid-stream\", example_values: \"Stream for chat interfaces, Batch for reports, Progressive for long content\" },\n { id: \"const_audit_log\", name: \"Audit Logging\", category: \"quality_safety\", icon: \"history\", description: \"What user actions and system events to log for accountability.\", type: \"Policy\", applies_to: [\"Generate\", \"Act\", \"API Call\", \"Train Model\", \"Classify\"], ux_note: \"Minimal UI impact, may show 'Activity tracked' notice for transparency\", example_values: \"Log all AI decisions, Track user prompts + outputs, Record model versions, Capture timestamps + user IDs\" },\n { id: \"const_quality_threshold\", name: \"Quality Threshold\", category: \"model_technical\", icon: \"award\", description: \"Minimum acceptable quality score for outputs before showing to users.\", type: \"Float (0-1)\", applies_to: [\"Generate\", \"Extract\", \"Transform\"], ux_note: \"Show 'low quality' warning, offer regenerate option, route to human review\", example_values: \"0.8 for production, 0.6 for drafts, 0.9 for legal/medical, Block below 0.5\" },\n { id: \"const_user_consent\", name: \"User Consent\", category: \"quality_safety\", icon: \"user-check\", description: \"When and how to obtain user permission for data processing or AI usage.\", type: \"Policy\", applies_to: [\"Generate\", \"Train Model\", \"Save to Database\", \"API Call\"], ux_note: \"Display consent dialog, provide opt-out option, link to privacy policy, record consent timestamp\", example_values: \"Prompt before first use, Explicit opt-in for training data, Annual re-consent, Granular per-feature consent\" },\n { id: \"const_localization\", name: \"Localization Requirements\", category: \"ux_interaction\", icon: \"globe\", description: \"Language, region, and cultural adaptation requirements for content.\", type: \"Locale\", applies_to: [\"Generate\", \"Transform\", \"Synthesize\", \"Classify\"], ux_note: \"Detect user language, provide language selector, adapt formatting (dates, currency)\", example_values: \"Support 10 languages, Auto-detect locale, RTL for Arabic/Hebrew, Region-specific examples\" },\n { id: \"const_caching\", name: \"Caching Policy\", category: \"performance_resource\", icon: \"database\", description: \"How long to cache results and when to invalidate cached data.\", type: \"Duration\", applies_to: [\"Retrieve\", \"Generate\", \"API Call\", \"Load from Database\"], ux_note: \"Show 'cached' indicator, provide refresh button, warn about stale data\", example_values: \"Cache 5 minutes, Invalidate on user action, Cache forever for static content, No cache for personalized\" },\n\n // Execution Behavior Constraints\n { id: \"const_autonomy\", name: \"Autonomous Execution\", category: \"execution_behavior\", icon: \"play-circle\", description: \"Task runs independently in the background and returns results when complete.\", type: \"Mode\", applies_to: [\"Generate\", \"Retrieve\", \"Orchestrate\"], ux_note: \"Show background task indicator, provide status updates, allow cancellation\", example_values: \"Background agent, Async processing, Fire-and-forget, Blocking (wait for result)\" },\n { id: \"const_parallelism\", name: \"Parallel Execution\", category: \"execution_behavior\", icon: \"git-branch\", description: \"Multiple operations execute simultaneously for efficiency.\", type: \"Strategy\", applies_to: [\"Retrieve\", \"Generate\", \"API Call\"], ux_note: \"Show progress for parallel tasks, handle partial failures gracefully\", example_values: \"Parallel searches, Concurrent file reads, Batch API calls, Sequential only\" },\n { id: \"const_timeout\", name: \"Timeout Limit\", category: \"execution_behavior\", icon: \"timer\", description: \"Maximum time allowed before operation is cancelled.\", type: \"Duration\", applies_to: [\"Generate\", \"Retrieve\", \"API Call\", \"Act\"], ux_note: \"Show timeout warning, provide extend option, handle graceful cancellation\", example_values: \"30 seconds, 5 minutes, No timeout, User-configurable\" },\n\n // Code Generation Philosophy Constraints\n { id: \"const_minimalism\", name: \"Minimal Changes\", category: \"code_philosophy\", icon: \"minimize\", description: \"Prefer editing existing code over creating new files or adding unnecessary features.\", type: \"Principle\", applies_to: [\"Generate\", \"Transform\"], ux_note: \"Surface this principle in code review, show edit vs write statistics\", example_values: \"Edit over write, Avoid over-engineering, Only change what's needed, YAGNI (You Aren't Gonna Need It)\" },\n { id: \"const_code_style\", name: \"Code Style Adherence\", category: \"code_philosophy\", icon: \"code\", description: \"Follow existing codebase patterns and style conventions.\", type: \"Policy\", applies_to: [\"Generate\", \"Transform\"], ux_note: \"Run linter/formatter, show style violations, auto-fix when possible\", example_values: \"Match existing patterns, Follow style guide, Preserve indentation, Consistent naming\" },\n { id: \"const_backward_compatibility\", name: \"Backward Compatibility\", category: \"code_philosophy\", icon: \"git-merge\", description: \"Ensure changes don't break existing functionality or APIs.\", type: \"Policy\", applies_to: [\"Generate\", \"Transform\", \"Act\"], ux_note: \"Warn about breaking changes, suggest deprecation path, run compatibility tests\", example_values: \"No breaking changes, Deprecate before removing, Version bumps for breaking changes, Migration guide required\" },\n\n // Attribution & Provenance Constraints\n { id: \"const_attribution\", name: \"Attribution Required\", category: \"attribution\", icon: \"user-plus\", description: \"Generated content must credit sources, collaborators, or AI assistance.\", type: \"Policy\", applies_to: [\"Generate\", \"Transform\", \"Synthesize\"], ux_note: \"Include attribution footer, add co-author tags, cite sources\", example_values: \"Co-Authored-By: AI, Source citations, License attribution, Contributors list\" },\n { id: \"const_provenance\", name: \"Data Provenance\", category: \"attribution\", icon: \"git-commit\", description: \"Track and document the origin and transformation history of data.\", type: \"Policy\", applies_to: [\"Extract\", \"Transform\", \"Load from Database\", \"Save to Database\"], ux_note: \"Log data lineage, show transformation chain, enable audit trail\", example_values: \"Source file tracking, Transformation history, Model version tags, Input/output logging\" },\n { id: \"const_citation\", name: \"Source Citation\", category: \"attribution\", icon: \"link\", description: \"Reference and link to source materials when generating content.\", type: \"Format\", applies_to: [\"Generate\", \"Synthesize\", \"Transform\"], ux_note: \"Include bibliography, add inline citations, link to sources\", example_values: \"Academic style (APA/MLA), Markdown links, Footnotes, URL references\" },\n\n // Model Infrastructure Constraints\n { id: \"const_model_portability\", name: \"Model Portability\", category: \"model_technical\", icon: \"shuffle\", description: \"System architecture supports swapping model providers/versions without rewriting product logic via adapters, schemas, and test gates.\", type: \"Architecture\", applies_to: [\"Generate\", \"Synthesize\", \"Transform\", \"Retrieve\", \"Verify\", \"Plan\", \"Act\", \"API Call\", \"Orchestrate\"], ux_note: \"Test provider swaps, validate adapter interfaces, log provider metadata, ensure fallback models available\", example_values: \"Provider-agnostic message format, Tool schema normalization, Output schema enforcement, Fallback to alternative model, OpenAI/Anthropic/local adapter pattern\" },\n\n // Testing & Validation Constraints\n { id: \"const_eval_coverage\", name: \"Evaluation Coverage\", category: \"quality_safety\", icon: \"check-circle\", description: \"Defines which scenarios, edge cases, and safety checks must be covered by tests before deploying changes to an AI system.\", type: \"Testing Policy\", applies_to: [\"Generate\", \"Verify\", \"Act\", \"Retrieve\", \"Plan\", \"Orchestrate\"], ux_note: \"Show coverage reports, block deployment if gaps exist, document edge cases tested\", example_values: \"Top user intents, Tool failure + timeout paths, Prompt injection tests, PII handling validation, Low-confidence fallbacks, Cost/latency ceilings, Localization checks, Regression test suite\" }\n];\n","\nimport { TouchpointDefinition } from '../types';\n\nexport const TOUCHPOINTS: TouchpointDefinition[] = [\n // ===================================\n // SCREEN INTERFACE\n // ===================================\n { \n id: \"tp_mobile\", \n name: \"Mobile App\", \n category: \"screen_interface\",\n icon: \"smartphone\", \n description: \"Native iOS/Android application.\", \n examples: [\"Consumer apps\", \"Field tools\"] \n },\n { \n id: \"tp_web\", \n name: \"Web Dashboard\", \n category: \"screen_interface\",\n icon: \"layout\", \n description: \"Desktop or responsive web interface.\", \n examples: [\"SaaS portal\", \"Admin panel\"] \n },\n { \n id: \"tp_embedded\", \n name: \"Embedded Widget\", \n category: \"screen_interface\",\n icon: \"square-code\",\n description: \"Embeddable component in 3rd party sites or apps.\",\n examples: [\"Chatbot widget\", \"Form assistant\", \"Intercom popup\"]\n },\n { \n id: \"tp_kiosk\", \n name: \"Physical Kiosk\", \n category: \"screen_interface\",\n icon: \"monitor\", \n description: \"Public facing shared device.\", \n examples: [\"Airport check-in\", \"Retail point of sale\"] \n },\n { \n id: \"tp_wearable\", \n name: \"Smartwatch\", \n category: \"screen_interface\",\n icon: \"watch\", \n description: \"Small screen personal device.\", \n examples: [\"Apple Watch\", \"Fitbit\", \"Garmin\"] \n },\n\n // ===================================\n // CONVERSATIONAL\n // ===================================\n { \n id: \"tp_chat\", \n name: \"Chat Interface\", \n category: \"conversational\",\n icon: \"message-circle\", \n description: \"Conversational UI in messaging apps.\", \n examples: [\"Slack\", \"Teams\", \"WhatsApp\", \"Discord\"] \n },\n { \n id: \"tp_sms\", \n name: \"SMS / Text\", \n category: \"conversational\",\n icon: \"message-square\",\n description: \"Plain text messaging via cellular network.\",\n examples: [\"SMS chatbot\", \"2FA codes\", \"Text alerts\"]\n },\n {\n id: \"tp_email\",\n name: \"Email\",\n category: \"conversational\",\n icon: \"mail\",\n description: \"Asynchronous communication channel.\",\n examples: [\"Reports\", \"Alerts\", \"Newsletters\"]\n },\n {\n id: \"tp_avatar\",\n name: \"Avatar/Character\",\n category: \"conversational\",\n icon: \"user-circle\",\n description: \"Embodied representation with personality - 2D avatar or 3D character for anthropomorphic interaction.\",\n examples: [\"Chatbot avatar\", \"Virtual assistant persona\", \"Game NPC\", \"VR avatar\", \"Metaverse character\", \"Training simulator instructor\", \"Brand mascot\"]\n },\n\n // ===================================\n // VOICE & AUDIO\n // ===================================\n { \n id: \"tp_voice\", \n name: \"Voice Interface\", \n category: \"voice_audio\",\n icon: \"mic\", \n description: \"Audio-only or multimodal voice interaction.\", \n examples: [\"Smart Speaker\", \"Phone Line\", \"Alexa\"] \n },\n { \n id: \"tp_spatial_audio\", \n name: \"Spatial Audio\", \n category: \"voice_audio\",\n icon: \"audio-lines\",\n description: \"3D positioned audio interface without visual component.\",\n examples: [\"Spatial AirPods\", \"3D audio guides\", \"Directional voice\"]\n },\n\n // ===================================\n // SPATIAL COMPUTING\n // ===================================\n { \n id: \"tp_vr\", \n name: \"VR Headset\", \n category: \"spatial_computing\",\n icon: \"headphones\",\n description: \"Fully immersive virtual reality experience with hand/controller input.\",\n examples: [\"Meta Quest\", \"PSVR\", \"Training simulator\"]\n },\n { \n id: \"tp_ar_passthrough\", \n name: \"Mixed Reality\", \n category: \"spatial_computing\",\n icon: \"scan\",\n description: \"Digital content overlaid on passthrough video of physical world.\",\n examples: [\"Apple Vision Pro\", \"Meta Quest 3\", \"Spatial apps\"]\n },\n { \n id: \"tp_ar_optical\", \n name: \"AR Glasses\", \n category: \"spatial_computing\",\n icon: \"glasses\",\n description: \"See-through optical display overlaying lightweight digital content.\",\n examples: [\"Future Apple Glasses\", \"Snap Spectacles\", \"Smart glasses\"]\n },\n { \n id: \"tp_mobile_ar\", \n name: \"Mobile AR\", \n category: \"spatial_computing\",\n icon: \"scan-line\",\n description: \"Augmented reality through smartphone or tablet camera.\",\n examples: [\"IKEA Place\", \"Google Lens\", \"Pokémon GO\"]\n },\n\n // ===================================\n // TECHNICAL\n // ===================================\n { \n id: \"tp_api\", \n name: \"Public API\", \n category: \"technical\",\n icon: \"globe\", \n description: \"Programmatic interface for 3rd party devs.\", \n examples: [\"REST Endpoint\", \"GraphQL\", \"SDK\"] \n },\n { \n id: \"tp_cli\", \n name: \"CLI / Terminal\", \n category: \"technical\",\n icon: \"terminal\", \n description: \"Command line interface for technical users.\", \n examples: [\"Dev tools\", \"Server admin\", \"Scripts\"] \n },\n { \n id: \"tp_doc\", \n name: \"Document / Report\", \n category: \"technical\",\n icon: \"file-text\", \n description: \"Static file output.\", \n examples: [\"PDF Report\", \"Excel Sheet\", \"CSV Export\"] \n },\n\n // ===================================\n // PHYSICAL DEVICES\n // ===================================\n { \n id: \"tp_iot_sensor\", \n name: \"IoT Sensor/Actuator\", \n category: \"physical_devices\",\n icon: \"radio\", \n description: \"Connected sensor or actuator with physical effects.\", \n examples: [\"Smart thermostat\", \"Smart lock\", \"Connected lights\"] \n },\n { \n id: \"tp_robot\", \n name: \"Robot\", \n category: \"physical_devices\",\n icon: \"bot\", \n description: \"Autonomous or semi-autonomous physical system.\", \n examples: [\"Warehouse robot\", \"Delivery drone\", \"Assembly robot\"] \n },\n { \n id: \"tp_appliance\", \n name: \"Smart Appliance\", \n category: \"physical_devices\",\n icon: \"plug\", \n description: \"Connected home or industrial appliance.\", \n examples: [\"Smart oven\", \"HVAC system\", \"Manufacturing equipment\"] \n },\n { \n id: \"tp_vehicle\", \n name: \"Vehicle Interface\", \n category: \"physical_devices\",\n icon: \"car\", \n description: \"In-vehicle system or autonomous vehicle.\", \n examples: [\"Tesla Autopilot\", \"Car infotainment\", \"Fleet management\"] \n },\n { \n id: \"tp_haptic\", \n name: \"Haptic Device\", \n category: \"physical_devices\",\n icon: \"vibrate\", \n description: \"Touch feedback or force-based interface.\", \n examples: [\"VR haptic gloves\", \"Game controller rumble\", \"Braille display\"] \n },\n { \n id: \"tp_ambient\", \n name: \"Ambient Display\", \n category: \"physical_devices\",\n icon: \"lightbulb\", \n description: \"Environmental information display without active interaction.\", \n examples: [\"Smart mirror\", \"LED status strip\", \"Philips Hue scenes\"] \n },\n {\n id: \"tp_touchscreen\",\n name: \"Interactive Touchscreen\",\n category: \"physical_devices\",\n icon: \"tablet\",\n description: \"Fixed or mounted touchscreen for direct manipulation.\",\n examples: [\"Wall-mounted tablet\", \"Digital signage\", \"Interactive table\", \"Retail display\"]\n },\n\n // ===================================\n // 3D ENVIRONMENTS\n // ===================================\n {\n id: \"tp_3d_space\",\n name: \"3D Space\",\n category: \"spatial_computing\",\n icon: \"box\",\n description: \"Navigable real-time 3D environment with physics and spatial interaction.\",\n examples: [\"Video games\", \"Virtual showrooms\", \"3D design tools\", \"Virtual tours\", \"Training simulations\"]\n },\n {\n id: \"tp_game_controller\",\n name: \"Game Controller\",\n category: \"physical_devices\",\n icon: \"gamepad\",\n description: \"Physical controller with buttons, triggers, joysticks, and haptic feedback.\",\n examples: [\"Console controller\", \"PC gamepad\", \"Flight stick\", \"Racing wheel\", \"Adaptive controller\"]\n },\n {\n id: \"tp_overlay_hud\",\n name: \"Overlay HUD\",\n category: \"screen_interface\",\n icon: \"crosshair\",\n description: \"Non-intrusive overlay UI displaying contextual information without blocking main view.\",\n examples: [\"Gaming HUD\", \"Car dashboard overlay\", \"AR glasses UI\", \"Pilot instruments\", \"Sports analytics overlay\"]\n },\n\n // ===================================\n // DIGITAL CONTROLS\n // ===================================\n {\n id: \"tp_text_input\",\n name: \"Text Input Field\",\n category: \"screen_interface\",\n icon: \"form-input\",\n description: \"Text entry field for typing information - single line, multi-line, or specialized formats.\",\n examples: [\"Login forms\", \"Search bars\", \"Comment boxes\", \"Chat input\", \"Password fields\", \"Text areas\"]\n },\n {\n id: \"tp_button\",\n name: \"Button\",\n category: \"screen_interface\",\n icon: \"mouse-pointer\",\n description: \"Clickable element that triggers an action when pressed.\",\n examples: [\"Submit button\", \"Cancel\", \"Save\", \"Delete\", \"CTA buttons\", \"Icon buttons\", \"Links as buttons\"]\n },\n {\n id: \"tp_selection_control\",\n name: \"Selection Control\",\n category: \"screen_interface\",\n icon: \"check-square\",\n description: \"UI for choosing one or more options from a set - dropdowns, checkboxes, radio buttons, toggles.\",\n examples: [\"Settings toggles\", \"Form dropdowns\", \"Checkboxes\", \"Radio buttons\", \"Multi-select\", \"Filter controls\"]\n },\n {\n id: \"tp_slider\",\n name: \"Slider/Dial\",\n category: \"screen_interface\",\n icon: \"sliders\",\n description: \"Continuous value adjustment control - sliding, dialing, or stepping through a range.\",\n examples: [\"Volume control\", \"Brightness slider\", \"Zoom level\", \"Video scrubber\", \"Price range\", \"Rating stars\"]\n },\n {\n id: \"tp_file_picker\",\n name: \"File Picker\",\n category: \"screen_interface\",\n icon: \"upload\",\n description: \"Control for selecting files from device storage or capturing media.\",\n examples: [\"Photo upload\", \"Document attachment\", \"Profile picture\", \"Drag-drop zone\", \"Camera capture\"]\n },\n {\n id: \"tp_link\",\n name: \"Link/Hyperlink\",\n category: \"screen_interface\",\n icon: \"link\",\n description: \"Clickable text or element that navigates to another page, section, or resource.\",\n examples: [\"Text links\", \"Navigation menus\", \"Breadcrumbs\", \"Anchor links\", \"External links\", \"Deep links\"]\n },\n {\n id: \"tp_drag_drop\",\n name: \"Drag & Drop Zone\",\n category: \"screen_interface\",\n icon: \"move\",\n description: \"Interactive area for dragging and dropping elements to reorder, organize, or upload.\",\n examples: [\"Kanban boards\", \"File upload zones\", \"List reordering\", \"Dashboard widgets\", \"Image galleries\"]\n },\n];\n","import { WorkflowTemplate } from '../types';\n\nexport const WORKFLOW_TEMPLATES: WorkflowTemplate[] = \n[\n {\n \"id\": \"tmpl_copilot\",\n \"name\": \"Passive Copilot / Sidecar\",\n \"description\": \"Monitors user activity in a primary application and offers context-aware suggestions without blocking the workflow.\",\n \"primary_use_case\": \"Code Completion, Writing Assistants, Form Helpers\",\n \"complexity\": \"High\",\n \"tags\": [\n \"UX\",\n \"Real-time\",\n \"Assistant\"\n ],\n \"common_variations\": [\n \"Ghost Text\",\n \"Autocomplete\",\n \"Smart Paste\"\n ],\n \"nodes\": [\n {\n \"id\": \"a37bd95f-d4f7-40ec-8544-fac7af758151\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 398.5,\n \"y\": 629.5,\n \"customLabel\": \"Primary App (Work Surface)\",\n \"notes\": \"The main application the user is actively using.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"b9097e5a-8c29-4761-a21c-93c8ef3fcc07\",\n \"referenceId\": \"tp_overlay_hud\",\n \"type\": \"touchpoint\",\n \"x\": 608.1310679611651,\n \"y\": 855.9563106796116,\n \"customLabel\": \"Sidecar (Non-blocking Panel)\",\n \"notes\": \"A passive copilot surface that never interrupts; shows suggestions when useful.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"8a623624-a58b-4d36-96b9-ef44c63263b5\",\n \"referenceId\": \"human_navigate_space\",\n \"type\": \"task\",\n \"x\": 622.5,\n \"y\": 625.5,\n \"customLabel\": \"Work Normally\",\n \"notes\": \"User edits/navigates without being blocked by AI.\",\n \"attachments\": [\n {\n \"id\": \"pc-3-a\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Activity signals: UI events, selections, focus, recent actions\"\n },\n {\n \"id\": \"pc-3-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User opts in to passive monitoring\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"1f360012-451b-4e73-98d3-db27bb297590\",\n \"referenceId\": \"system_session\",\n \"type\": \"task\",\n \"x\": 909.5,\n \"y\": 662.5,\n \"customLabel\": \"Capture Session Context\",\n \"notes\": \"Collect lightweight, privacy-scoped context from the active session.\",\n \"attachments\": [\n {\n \"id\": \"pc-4-a\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Recent action trail (bounded window)\"\n },\n {\n \"id\": \"pc-4-b\",\n \"referenceId\": \"data_state_vector\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Current app state summary (what/where user is working)\"\n },\n {\n \"id\": \"pc-4-c\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"Minimize captured content; prefer metadata over raw text when possible\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"4a485f9f-2190-4e3e-8647-e43fe4d4cd51\",\n \"referenceId\": \"task_monitor\",\n \"type\": \"task\",\n \"x\": 1174.5,\n \"y\": 662.5,\n \"customLabel\": \"Monitor for Triggers\",\n \"notes\": \"Detect moments where a suggestion could help (e.g., repeated errors, long pause, complex state).\",\n \"attachments\": [\n {\n \"id\": \"pc-5-a\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Trigger signal + type (pause, loop, error, ambiguity, opportunity)\"\n },\n {\n \"id\": \"pc-5-b\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Do not slow the primary app; async and low overhead\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"16a68b1d-533d-4f93-a142-e2431e886011\",\n \"referenceId\": \"task_represent\",\n \"type\": \"task\",\n \"x\": 1196.5,\n \"y\": 884.5,\n \"customLabel\": \"Represent Context (Compact)\",\n \"notes\": \"Create a compact representation of what matters now (summary + embeddings).\",\n \"attachments\": [\n {\n \"id\": \"pc-6-a\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Short context summary (bounded tokens)\"\n },\n {\n \"id\": \"pc-6-b\",\n \"referenceId\": \"data_embedding\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Context embedding for retrieval/matching\"\n },\n {\n \"id\": \"pc-6-c\",\n \"referenceId\": \"const_context_window\",\n \"type\": \"constraint\",\n \"notes\": \"Hard cap on context size; prioritize recency + user intent\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"71d40374-3d20-41ba-8cf4-28e1876dec7d\",\n \"referenceId\": \"task_match\",\n \"type\": \"task\",\n \"x\": 1491.5,\n \"y\": 731.5,\n \"customLabel\": \"Match to Helpful Patterns\",\n \"notes\": \"Match current context to known tips, templates, commands, or next steps.\",\n \"attachments\": [\n {\n \"id\": \"pc-7-a\",\n \"referenceId\": \"data_list\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Candidate suggestions (pattern IDs + metadata)\"\n },\n {\n \"id\": \"pc-7-b\",\n \"referenceId\": \"const_quality_threshold\",\n \"type\": \"constraint\",\n \"notes\": \"Only suggest when likely helpful; otherwise stay quiet\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"058b3087-8885-482e-b546-97d586ae2a1d\",\n \"referenceId\": \"task_rank\",\n \"type\": \"task\",\n \"x\": 1882.5,\n \"y\": 699.5,\n \"customLabel\": \"Rank + Select\",\n \"notes\": \"Rank candidates by relevance, timing, and intrusiveness; pick top suggestion(s).\",\n \"attachments\": [\n {\n \"id\": \"pc-8-a\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Suggestion scores (relevance, confidence, interruption cost)\"\n },\n {\n \"id\": \"pc-8-b\",\n \"referenceId\": \"data_selection\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Chosen suggestion payload\"\n },\n {\n \"id\": \"pc-8-c\",\n \"referenceId\": \"const_confidence\",\n \"type\": \"constraint\",\n \"notes\": \"If confidence is low, offer a question or do nothing\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"3366f4e2-637b-438b-bb3a-6a9247619b9f\",\n \"referenceId\": \"system_notification\",\n \"type\": \"task\",\n \"x\": 1886.5,\n \"y\": 921.5,\n \"customLabel\": \"Present Suggestion (Non-blocking)\",\n \"notes\": \"Render suggestion in sidecar panel; no modal, no forced decision.\",\n \"attachments\": [\n {\n \"id\": \"pc-9-a\",\n \"referenceId\": \"data_markup\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Suggestion card UI content (title, rationale, action)\"\n },\n {\n \"id\": \"pc-9-b\",\n \"referenceId\": \"const_tone\",\n \"type\": \"constraint\",\n \"notes\": \"Helpful, optional language; avoid alarms or urgency\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"c87fdce6-a140-4165-b4a2-32ad7bd0be07\",\n \"referenceId\": \"human_choose\",\n \"type\": \"task\",\n \"x\": 620.7718446601941,\n \"y\": 994.4126213592233,\n \"customLabel\": \"Ignore / Open / Apply\",\n \"notes\": \"User can ignore, expand, or apply the suggestion without leaving flow.\",\n \"attachments\": [\n {\n \"id\": \"pc-10-a\",\n \"referenceId\": \"data_preference_profile\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"User preference updates (what they find useful)\"\n },\n {\n \"id\": \"pc-10-b\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Feedback signal (accepted, dismissed, modified)\"\n },\n {\n \"id\": \"pc-10-c\",\n \"referenceId\": \"const_human_loop\",\n \"type\": \"constraint\",\n \"notes\": \"User remains in control; AI never takes action unprompted\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"83a1cbdf-ffa1-4e7c-adb9-8df40dbb00c1\",\n \"referenceId\": \"system_analytics\",\n \"type\": \"task\",\n \"x\": 954.8786407766988,\n \"y\": 1000.4417475728155,\n \"customLabel\": \"Learn What Helps\",\n \"notes\": \"Aggregate feedback to improve ranking and reduce noise.\",\n \"attachments\": [\n {\n \"id\": \"pc-11-a\",\n \"referenceId\": \"data_log\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Anonymized interaction log (opt-in)\"\n },\n {\n \"id\": \"pc-11-b\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Traceability for suggestions shown + user actions\"\n },\n {\n \"id\": \"pc-11-c\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Short retention window; respect org policy\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"0d16c756-be19-4e4c-afb4-f3f5e0b072ef\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 865.5,\n \"y\": 621.5,\n \"width\": 1293,\n \"height\": 573,\n \"customLabel\": \"Passive Copilot Core Pipeline\",\n \"notes\": \"Capture → Monitor → Represent → Match → Rank → Present → Learn\",\n \"measuredW\": 1293,\n \"measuredH\": 573\n },\n {\n \"id\": \"d19f1a18-05ed-43b2-a8a8-45e43b7df540\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 874.5,\n \"y\": 463.5,\n \"width\": 620,\n \"height\": 110,\n \"customLabel\": \"Pattern: Passive Copilot / Sidecar\",\n \"notes\": \"Non-blocking: observes activity, offers suggestions only when useful, user always chooses.\",\n \"measuredW\": 620,\n \"measuredH\": 110\n },\n {\n \"id\": \"406523c1-08ea-450a-a1c6-cf28b46571ab\",\n \"referenceId\": \"176f2018-c87a-4efe-8cc9-6c878c594c8f\",\n \"type\": \"actor\",\n \"x\": 213.36547751765167,\n \"y\": 572.1666666666667,\n \"measuredW\": 140,\n \"measuredH\": 48\n }\n ],\n \"edges\": [\n {\n \"id\": \"14b939c1-33db-442e-828b-d3bf682bcec5\",\n \"source\": \"a37bd95f-d4f7-40ec-8544-fac7af758151\",\n \"target\": \"8a623624-a58b-4d36-96b9-ef44c63263b5\"\n },\n {\n \"id\": \"ce86ba22-f0a1-400c-a22a-5264117318b1\",\n \"source\": \"8a623624-a58b-4d36-96b9-ef44c63263b5\",\n \"target\": \"1f360012-451b-4e73-98d3-db27bb297590\"\n },\n {\n \"id\": \"b8a13dd4-6f7d-4d06-9561-b70200aa811d\",\n \"source\": \"1f360012-451b-4e73-98d3-db27bb297590\",\n \"target\": \"4a485f9f-2190-4e3e-8647-e43fe4d4cd51\"\n },\n {\n \"id\": \"2613d8c3-dd69-46f0-a8ed-3bef837b417b\",\n \"source\": \"1f360012-451b-4e73-98d3-db27bb297590\",\n \"target\": \"16a68b1d-533d-4f93-a142-e2431e886011\",\n \"label\": \"When trigger candidate\",\n \"customX\": 1153.5\n },\n {\n \"id\": \"472ab590-8acc-4d04-b85b-573e60df126d\",\n \"source\": \"4a485f9f-2190-4e3e-8647-e43fe4d4cd51\",\n \"target\": \"71d40374-3d20-41ba-8cf4-28e1876dec7d\",\n \"label\": \"Trigger signal\"\n },\n {\n \"id\": \"62301e91-0569-4dc7-be96-b905ad539d13\",\n \"source\": \"16a68b1d-533d-4f93-a142-e2431e886011\",\n \"target\": \"71d40374-3d20-41ba-8cf4-28e1876dec7d\"\n },\n {\n \"id\": \"1873686d-fa65-4076-b7f0-09471ca5b7f6\",\n \"source\": \"71d40374-3d20-41ba-8cf4-28e1876dec7d\",\n \"target\": \"058b3087-8885-482e-b546-97d586ae2a1d\",\n \"customX\": 1772\n },\n {\n \"id\": \"f5d002c9-0e87-46d6-b833-3f59c1a07520\",\n \"source\": \"058b3087-8885-482e-b546-97d586ae2a1d\",\n \"target\": \"3366f4e2-637b-438b-bb3a-6a9247619b9f\",\n \"customY\": 901,\n \"targetX\": 1859.5,\n \"sourceX\": 2122.5\n },\n {\n \"id\": \"a0efb901-0e14-456b-ad9a-f9c100ac2cc3\",\n \"source\": \"3366f4e2-637b-438b-bb3a-6a9247619b9f\",\n \"target\": \"b9097e5a-8c29-4761-a21c-93c8ef3fcc07\",\n \"label\": \"Show suggestion card\",\n \"customY\": 1219,\n \"sourceX\": 2250.5,\n \"targetX\": 566.1310679611651\n },\n {\n \"id\": \"2c74f627-e096-4d99-acd0-cb6e6082e9a6\",\n \"source\": \"b9097e5a-8c29-4761-a21c-93c8ef3fcc07\",\n \"target\": \"c87fdce6-a140-4165-b4a2-32ad7bd0be07\",\n \"customY\": 934.6019417475728,\n \"targetX\": 591.3543689320388\n },\n {\n \"id\": \"51c9ea76-1e62-4e67-b30d-cfc7a2598dc0\",\n \"source\": \"c87fdce6-a140-4165-b4a2-32ad7bd0be07\",\n \"target\": \"83a1cbdf-ffa1-4e7c-adb9-8df40dbb00c1\",\n \"label\": \"Feedback\",\n \"customX\": 904.9271844660194\n },\n {\n \"id\": \"788a9673-3010-4a21-b004-11f343566cbe\",\n \"source\": \"83a1cbdf-ffa1-4e7c-adb9-8df40dbb00c1\",\n \"target\": \"058b3087-8885-482e-b546-97d586ae2a1d\",\n \"label\": \"Improve ranking\",\n \"customY\": 933,\n \"sourceX\": 1209.8786407766988,\n \"customX\": 1790.8252427184466\n },\n {\n \"id\": \"6c70b0e1-33a1-414b-9154-3b59a6f84a80\",\n \"source\": \"406523c1-08ea-450a-a1c6-cf28b46571ab\",\n \"target\": \"a37bd95f-d4f7-40ec-8544-fac7af758151\"\n }\n ],\n \"personas\": [\n {\n \"id\": \"176f2018-c87a-4efe-8cc9-6c878c594c8f\",\n \"name\": \"Primary App User\",\n \"role\": \"Works in the main app; optionally engages with sidecar suggestions.\",\n \"color\": \"#3B82F6\",\n \"initials\": \"PA\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_chat\",\n \"name\": \"Generative Chat Assistant\",\n \"description\": \"The core architecture of modern LLM chatbots like ChatGPT and Claude. Features session history management, safety guardrails, and streaming response generation.\",\n \"primary_use_case\": \"General Purpose Assistant\",\n \"complexity\": \"Medium\",\n \"tags\": [\n \"Chat\",\n \"LLM\",\n \"Consumer\",\n \"GenAI\"\n ],\n \"common_variations\": [\n \"RAG Chatbot\",\n \"Persona Bot\"\n ],\n \"nodes\": [\n {\n \"id\": \"570f1af1-1175-4b9c-b467-0aeef1daa8bb\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 646,\n \"y\": 779.5,\n \"customLabel\": \"Chat UI\",\n \"notes\": \"Primary conversational interface (web/mobile).\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"634edb47-1d8d-40b7-8304-ad12ab709329\",\n \"referenceId\": \"human_type_input\",\n \"type\": \"task\",\n \"x\": 829,\n \"y\": 764.5,\n \"customLabel\": \"Send Message\",\n \"notes\": \"User submits a message/prompt.\",\n \"attachments\": [\n {\n \"id\": \"chat-2-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"User message\"\n },\n {\n \"id\": \"chat-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User consent for processing message\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"04aa0730-9cc4-4f6e-b4ba-0e3e25f791dc\",\n \"referenceId\": \"system_session\",\n \"type\": \"task\",\n \"x\": 1139,\n \"y\": 644.5,\n \"customLabel\": \"Load Session\",\n \"notes\": \"Identify session + user context (account, settings).\",\n \"attachments\": [\n {\n \"id\": \"chat-3-a\",\n \"referenceId\": \"data_state_vector\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Session state (IDs, preferences, feature flags)\"\n },\n {\n \"id\": \"chat-3-b\",\n \"referenceId\": \"const_authentication\",\n \"type\": \"constraint\",\n \"notes\": \"User must be authenticated for saved sessions\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"405e564c-b660-445b-9474-c0429abc6f92\",\n \"referenceId\": \"system_load_db\",\n \"type\": \"task\",\n \"x\": 1149,\n \"y\": 853.5,\n \"customLabel\": \"Load Conversation History\",\n \"notes\": \"Fetch recent messages and relevant memory for context.\",\n \"attachments\": [\n {\n \"id\": \"chat-4-a\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Prior turns (trimmed or summarized)\"\n },\n {\n \"id\": \"chat-4-b\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Only retain history per policy / user settings\"\n },\n {\n \"id\": \"chat-4-c\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"PII handling and privacy controls\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"f90f6b09-5e5f-4068-8210-ef8cef3b0bd3\",\n \"referenceId\": \"system_format\",\n \"type\": \"task\",\n \"x\": 1422,\n \"y\": 774.5,\n \"customLabel\": \"Assemble Prompt\",\n \"notes\": \"Compose system instruction + history + user message into model input.\",\n \"attachments\": [\n {\n \"id\": \"chat-5-a\",\n \"referenceId\": \"data_conversation\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Model-ready conversation payload\"\n },\n {\n \"id\": \"chat-5-b\",\n \"referenceId\": \"const_system_instruction\",\n \"type\": \"constraint\",\n \"notes\": \"System policies + assistant behavior\"\n },\n {\n \"id\": \"chat-5-c\",\n \"referenceId\": \"const_context_window\",\n \"type\": \"constraint\",\n \"notes\": \"Summarize/trim to fit context window\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"6311111a-28c6-4ece-ba29-ed2ff781c93a\",\n \"referenceId\": \"system_rules\",\n \"type\": \"task\",\n \"x\": 1760,\n \"y\": 659.5,\n \"customLabel\": \"Safety Guardrails\",\n \"notes\": \"Policy checks + refusal/redirect logic (pre-gen).\",\n \"attachments\": [\n {\n \"id\": \"chat-6-a\",\n \"referenceId\": \"const_content_safety\",\n \"type\": \"constraint\",\n \"notes\": \"Refuse disallowed requests; apply safe completion rules\"\n },\n {\n \"id\": \"chat-6-b\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Record moderation outcome + request class\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 130\n },\n {\n \"id\": \"ee3e6f96-802a-48da-baa5-671dfb86a88a\",\n \"referenceId\": \"task_generate\",\n \"type\": \"task\",\n \"x\": 1755,\n \"y\": 869.5,\n \"customLabel\": \"Generate Response (Streaming)\",\n \"notes\": \"LLM generates tokens; stream partial output as it’s produced.\",\n \"attachments\": [\n {\n \"id\": \"chat-7-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Assistant response text\"\n },\n {\n \"id\": \"chat-7-b\",\n \"referenceId\": \"const_streaming\",\n \"type\": \"constraint\",\n \"notes\": \"Stream tokens to UI with partial renders\"\n },\n {\n \"id\": \"chat-7-c\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Time-to-first-token targets\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"bf31689a-d5e3-41fc-a532-4ca4ebdbc04b\",\n \"referenceId\": \"system_log\",\n \"type\": \"task\",\n \"x\": 2169,\n \"y\": 865.5,\n \"customLabel\": \"Persist Turn\",\n \"notes\": \"Store user message + assistant output; update summaries/memory as needed.\",\n \"attachments\": [\n {\n \"id\": \"chat-8-a\",\n \"referenceId\": \"data_log\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Conversation record + timestamps\"\n },\n {\n \"id\": \"chat-8-b\",\n \"referenceId\": \"const_encryption\",\n \"type\": \"constraint\",\n \"notes\": \"Encrypt stored conversation data\"\n },\n {\n \"id\": \"chat-8-c\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Retention window + deletion rules\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"cd6c3a5f-ea46-48eb-b5ca-50845802160c\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 2318,\n \"y\": 661.5,\n \"customLabel\": \"Stream to UI\",\n \"notes\": \"Render partial tokens; finalize response on completion.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"6a75c01d-008e-4da1-88a8-049be25f3f53\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 1074,\n \"y\": 609.5,\n \"width\": 1420,\n \"height\": 477,\n \"customLabel\": \"Core Chat Assistant Pipeline\",\n \"notes\": \"Session → History → Prompt → Guardrails → Streaming generation → Persist\",\n \"measuredW\": 1421,\n \"measuredH\": 479\n },\n {\n \"id\": \"418c8f5b-db64-45b7-9ba3-41dfb11f7a94\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 1082,\n \"y\": 458.5,\n \"width\": 560,\n \"height\": 110,\n \"customLabel\": \"Minimal Pattern: Generative Chat Assistant\",\n \"notes\": \"Smallest useful architecture for modern LLM chat: session/history management, safety checks, streaming generation, and persistence.\",\n \"measuredW\": 560,\n \"measuredH\": 110\n }\n ],\n \"edges\": [\n {\n \"id\": \"c9c2023e-4162-4bee-8c4c-e6f0214d49ea\",\n \"source\": \"570f1af1-1175-4b9c-b467-0aeef1daa8bb\",\n \"target\": \"634edb47-1d8d-40b7-8304-ad12ab709329\"\n },\n {\n \"id\": \"623c91ab-42e8-453f-817b-10edf1eb9445\",\n \"source\": \"634edb47-1d8d-40b7-8304-ad12ab709329\",\n \"target\": \"04aa0730-9cc4-4f6e-b4ba-0e3e25f791dc\"\n },\n {\n \"id\": \"fa36e0b0-1993-4d4c-b91c-5d09fb9187be\",\n \"source\": \"04aa0730-9cc4-4f6e-b4ba-0e3e25f791dc\",\n \"target\": \"405e564c-b660-445b-9474-c0429abc6f92\",\n \"customY\": 839.5,\n \"targetX\": 1127\n },\n {\n \"id\": \"5ba45d82-23b9-426b-b209-d9c5a2f6cbb1\",\n \"source\": \"405e564c-b660-445b-9474-c0429abc6f92\",\n \"target\": \"f90f6b09-5e5f-4068-8210-ef8cef3b0bd3\"\n },\n {\n \"id\": \"38623f8a-007a-4147-a568-5f2a27e20183\",\n \"source\": \"f90f6b09-5e5f-4068-8210-ef8cef3b0bd3\",\n \"target\": \"6311111a-28c6-4ece-ba29-ed2ff781c93a\",\n \"label\": \"Policy pre-check\",\n \"customX\": 1699\n },\n {\n \"id\": \"ae0ca267-f7e6-484e-a3f4-02ac6ceb545b\",\n \"source\": \"6311111a-28c6-4ece-ba29-ed2ff781c93a\",\n \"target\": \"ee3e6f96-802a-48da-baa5-671dfb86a88a\",\n \"label\": \"Allowed\",\n \"customY\": 827.5,\n \"targetX\": 1713\n },\n {\n \"id\": \"9ba153fa-719f-48d8-8ba4-ac038ee0cde9\",\n \"source\": \"ee3e6f96-802a-48da-baa5-671dfb86a88a\",\n \"target\": \"cd6c3a5f-ea46-48eb-b5ca-50845802160c\",\n \"label\": \"Stream tokens\",\n \"customX\": 2022\n },\n {\n \"id\": \"831939b2-9766-4904-b6ef-49a9cae89edb\",\n \"source\": \"ee3e6f96-802a-48da-baa5-671dfb86a88a\",\n \"target\": \"bf31689a-d5e3-41fc-a532-4ca4ebdbc04b\",\n \"label\": \"Finalize + store\",\n \"customX\": 2078.5\n },\n {\n \"id\": \"e107cc22-50e7-46fb-9ca9-f567d823be55\",\n \"source\": \"bf31689a-d5e3-41fc-a532-4ca4ebdbc04b\",\n \"target\": \"405e564c-b660-445b-9474-c0429abc6f92\",\n \"label\": \"Next turn uses updated history\",\n \"customX\": 1249,\n \"customY\": 1127.5,\n \"targetX\": 1124,\n \"sourceX\": 2418\n },\n {\n \"id\": \"85a0ef3b-4edb-42cf-8285-ae374d9d90e3\",\n \"source\": \"cd6c3a5f-ea46-48eb-b5ca-50845802160c\",\n \"target\": \"570f1af1-1175-4b9c-b467-0aeef1daa8bb\",\n \"customY\": 582.5,\n \"targetX\": 603\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-user\",\n \"name\": \"Chat User\",\n \"role\": \"Converses with assistant, receives streamed responses\",\n \"color\": \"#3B82F6\",\n \"initials\": \"CU\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_rag_basic\",\n \"name\": \"RAG Knowledge Base\",\n \"description\": \"The standard Retrieval-Augmented Generation pattern. It retrieves relevant context from a database before generating an answer, reducing hallucinations.\",\n \"primary_use_case\": \"Customer Support Chatbot, Internal Wiki Search\",\n \"complexity\": \"Medium\",\n \"tags\": [\n \"Search\",\n \"Text\",\n \"Chat\"\n ],\n \"common_variations\": [\n \"Hybrid Search (Keyword + Vector)\",\n \"Multi-Query RAG\"\n ],\n \"nodes\": [\n {\n \"id\": \"39898c6d-7f48-4883-be9f-a00f9474fa1f\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 578.555944055944,\n \"y\": 603.6293706293706,\n \"customLabel\": \"Chat / Help UI\",\n \"notes\": \"Where the user asks questions and receives answers.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"46e87893-74a4-4c3d-b388-f3193987de8e\",\n \"referenceId\": \"human_type_input\",\n \"type\": \"task\",\n \"x\": 775.8286713286712,\n \"y\": 612.3006993006993,\n \"customLabel\": \"Ask a Question\",\n \"notes\": \"User submits a question to the knowledge base.\",\n \"attachments\": [\n {\n \"id\": \"rag-2-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"User question\"\n },\n {\n \"id\": \"rag-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User agrees to send query to retrieval + generation system\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"9cbd1109-3afb-41b5-9ecb-83711eae43db\",\n \"referenceId\": \"task_represent\",\n \"type\": \"task\",\n \"x\": 1070.0944055944055,\n \"y\": 606.006993006993,\n \"customLabel\": \"Represent Query (Embed)\",\n \"notes\": \"Convert question into an embedding for semantic retrieval.\",\n \"attachments\": [\n {\n \"id\": \"rag-3-a\",\n \"referenceId\": \"data_embedding\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Query embedding vector\"\n },\n {\n \"id\": \"rag-3-b\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Keep retrieval prep fast (e.g., < 300ms target)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"b843c4d0-0cdc-42be-a757-848d8ce0dc61\",\n \"referenceId\": \"system_load_db\",\n \"type\": \"task\",\n \"x\": 1069.3951048951049,\n \"y\": 797.6853146853147,\n \"customLabel\": \"Load Knowledge Index\",\n \"notes\": \"Load vector index + document store metadata (scoped to user/org).\",\n \"attachments\": [\n {\n \"id\": \"rag-4-a\",\n \"referenceId\": \"data_knowledge_graph\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"KB structure (docs/collections/links) or retrieval index metadata\"\n },\n {\n \"id\": \"rag-4-b\",\n \"referenceId\": \"const_authorization\",\n \"type\": \"constraint\",\n \"notes\": \"Only retrieve documents user is allowed to access\"\n },\n {\n \"id\": \"rag-4-c\",\n \"referenceId\": \"const_data_residency\",\n \"type\": \"constraint\",\n \"notes\": \"Respect org data residency requirements\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"cff0ce6e-ac95-4d6d-9ae0-d77426612c06\",\n \"referenceId\": \"task_retrieve\",\n \"type\": \"task\",\n \"x\": 1368.9755244755245,\n \"y\": 687.1958041958042,\n \"customLabel\": \"Retrieve Relevant Context\",\n \"notes\": \"Top-k semantic retrieval (optionally hybrid with keywords).\",\n \"attachments\": [\n {\n \"id\": \"rag-5-a\",\n \"referenceId\": \"data_list\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Top retrieved chunks/doc IDs\"\n },\n {\n \"id\": \"rag-5-b\",\n \"referenceId\": \"data_document\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Retrieved text chunks with citations/metadata\"\n },\n {\n \"id\": \"rag-5-c\",\n \"referenceId\": \"const_context_window\",\n \"type\": \"constraint\",\n \"notes\": \"Limit retrieved context to fit model context window\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"de1d774f-3113-497e-994a-8fa11ab09f32\",\n \"referenceId\": \"task_generate\",\n \"type\": \"task\",\n \"x\": 1637.7867132867134,\n \"y\": 685.0979020979021,\n \"customLabel\": \"Generate Answer (Grounded)\",\n \"notes\": \"Answer using retrieved context; avoid inventing unsupported facts.\",\n \"attachments\": [\n {\n \"id\": \"rag-6-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Draft answer\"\n },\n {\n \"id\": \"rag-6-b\",\n \"referenceId\": \"const_system_instruction\",\n \"type\": \"constraint\",\n \"notes\": \"Use provided context; if missing, say what’s missing\"\n },\n {\n \"id\": \"rag-6-c\",\n \"referenceId\": \"const_tone\",\n \"type\": \"constraint\",\n \"notes\": \"Match product tone (helpful, concise)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"b2838650-0545-4e65-a69f-f6baafe10509\",\n \"referenceId\": \"system_rules\",\n \"type\": \"task\",\n \"x\": 1901.0034965034965,\n \"y\": 671.8111888111888,\n \"customLabel\": \"Grounding + Confidence Gate\",\n \"notes\": \"Decide whether to answer, ask a clarifying question, or cite limits.\",\n \"attachments\": [\n {\n \"id\": \"rag-7-a\",\n \"referenceId\": \"const_confidence\",\n \"type\": \"constraint\",\n \"notes\": \"If low confidence, respond with uncertainty + what to retrieve next\"\n },\n {\n \"id\": \"rag-7-b\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Log retrieval doc IDs + model version for traceability\"\n },\n {\n \"id\": \"rag-7-c\",\n \"referenceId\": \"const_content_safety\",\n \"type\": \"constraint\",\n \"notes\": \"Apply safety policies to generated output\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 153\n },\n {\n \"id\": \"096d815c-4267-4d87-8e0c-b287ac7acf8a\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 2305.3997882851095,\n \"y\": 728.0439468788094,\n \"customLabel\": \"Answer in UI\",\n \"notes\": \"Show answer with optional citations to retrieved sources.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"0978e7c7-a2aa-4fc3-a8d2-f374191b62b8\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 1039.5,\n \"y\": 578,\n \"width\": 1110,\n \"height\": 430,\n \"customLabel\": \"RAG Core Pipeline\",\n \"notes\": \"Represent → Retrieve → Generate → Gate\",\n \"measuredW\": 1110,\n \"measuredH\": 430\n },\n {\n \"id\": \"f1bf3b0e-4807-478b-8f20-67af0aad3814\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 1050.8486238532116,\n \"y\": 433.53211009174316,\n \"width\": 520,\n \"height\": 110,\n \"customLabel\": \"Core Pattern: RAG Knowledge Base\",\n \"notes\": \"Minimal template: user question → embed → retrieve context → grounded generation → gate → answer.\",\n \"measuredW\": 520,\n \"measuredH\": 110\n }\n ],\n \"edges\": [\n {\n \"id\": \"e594669d-5e02-4f6f-bda4-9b2592eb07a7\",\n \"source\": \"39898c6d-7f48-4883-be9f-a00f9474fa1f\",\n \"target\": \"46e87893-74a4-4c3d-b388-f3193987de8e\"\n },\n {\n \"id\": \"a34f69b0-2b95-47da-970d-dc2924b9d758\",\n \"source\": \"46e87893-74a4-4c3d-b388-f3193987de8e\",\n \"target\": \"9cbd1109-3afb-41b5-9ecb-83711eae43db\"\n },\n {\n \"id\": \"2905e94e-5124-44dd-bba3-c8069394dcb0\",\n \"source\": \"9cbd1109-3afb-41b5-9ecb-83711eae43db\",\n \"target\": \"cff0ce6e-ac95-4d6d-9ae0-d77426612c06\"\n },\n {\n \"id\": \"4d35b0e5-87d7-4573-852b-1788749a0e46\",\n \"source\": \"b843c4d0-0cdc-42be-a757-848d8ce0dc61\",\n \"target\": \"cff0ce6e-ac95-4d6d-9ae0-d77426612c06\",\n \"customX\": 1330.9685314685314\n },\n {\n \"id\": \"1915f257-7da0-4748-8c96-082e1baa7ede\",\n \"source\": \"cff0ce6e-ac95-4d6d-9ae0-d77426612c06\",\n \"target\": \"de1d774f-3113-497e-994a-8fa11ab09f32\"\n },\n {\n \"id\": \"3cdd31c8-28a6-46eb-aabf-f4ff97b0e471\",\n \"source\": \"de1d774f-3113-497e-994a-8fa11ab09f32\",\n \"target\": \"b2838650-0545-4e65-a69f-f6baafe10509\"\n },\n {\n \"id\": \"c81d7a32-60bd-4005-8df7-24fbf63acc3d\",\n \"source\": \"b2838650-0545-4e65-a69f-f6baafe10509\",\n \"target\": \"096d815c-4267-4d87-8e0c-b287ac7acf8a\",\n \"label\": \"If answerable\"\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-user\",\n \"name\": \"Knowledge Base User\",\n \"role\": \"Asks questions, consumes grounded answers\",\n \"color\": \"#3B82F6\",\n \"initials\": \"KU\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_doc_extract\",\n \"name\": \"Document Extraction Pipeline\",\n \"description\": \"Automates the processing of uploaded files (PDFs, Images) into structured database records with a human-in-the-loop verification step.\",\n \"primary_use_case\": \"Invoice Processing, KYC, Application Forms\",\n \"complexity\": \"High\",\n \"tags\": [\n \"Vision\",\n \"Automation\",\n \"Operations\"\n ],\n \"common_variations\": [\n \"Batch Processing\",\n \"Auto-Reject Low Confidence\"\n ],\n \"nodes\": [\n {\n \"id\": \"5fffb47b-712c-4283-a08c-1e013e3d5ce5\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 434.99303749685447,\n \"y\": 674.2861756564047,\n \"customLabel\": \"Upload UI (Web)\",\n \"notes\": \"User uploads PDFs or images for extraction.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-ops\"\n },\n {\n \"id\": \"53bd73ce-af90-4d46-89b8-a0c5f80eee9f\",\n \"referenceId\": \"human_upload_file\",\n \"type\": \"task\",\n \"x\": 617.4768895226912,\n \"y\": 670.434149819646,\n \"customLabel\": \"Upload Document\",\n \"notes\": \"Upload PDF(s) / image(s) to be processed.\",\n \"attachments\": [\n {\n \"id\": \"dex-2-a\",\n \"referenceId\": \"data_file\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Uploaded file(s)\"\n },\n {\n \"id\": \"dex-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User consents to processing + storage\"\n },\n {\n \"id\": \"dex-2-c\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"Sensitive docs handled under privacy policy\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196,\n \"personaId\": \"persona-ops\"\n },\n {\n \"id\": \"72d070a6-3f57-4448-956e-d012ec200b0a\",\n \"referenceId\": \"data_file\",\n \"type\": \"data\",\n \"x\": 787.2009059642647,\n \"y\": 960.6616195509326,\n \"customLabel\": \"Source File(s)\",\n \"notes\": \"PDFs / images to be extracted.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"6893d17d-acaf-4de2-bb22-6a9ce27b6da1\",\n \"referenceId\": \"system_orchestrate\",\n \"type\": \"task\",\n \"x\": 907.9220570510245,\n \"y\": 670.184612294094,\n \"customLabel\": \"Create Processing Job\",\n \"notes\": \"Open a session/job for extraction pipeline; route by file type.\",\n \"attachments\": [\n {\n \"id\": \"dex-3-a\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Job/session record\"\n },\n {\n \"id\": \"dex-3-b\",\n \"referenceId\": \"const_error_handling\",\n \"type\": \"constraint\",\n \"notes\": \"Retry + failure states for corrupt/unsupported files\"\n },\n {\n \"id\": \"dex-3-c\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Log file IDs, user, timestamps, model versions\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"90102aa0-7cd4-42e5-9223-7211f2eb6285\",\n \"referenceId\": \"task_extract\",\n \"type\": \"task\",\n \"x\": 1176.2105263157894,\n \"y\": 669.7105263157895,\n \"customLabel\": \"Extract Text / Layout\",\n \"notes\": \"Parse PDF text or OCR images; preserve structure when possible.\",\n \"attachments\": [\n {\n \"id\": \"dex-4-a\",\n \"referenceId\": \"data_document\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Extracted document text + layout metadata\"\n },\n {\n \"id\": \"dex-4-b\",\n \"referenceId\": \"const_quality_threshold\",\n \"type\": \"constraint\",\n \"notes\": \"Minimum extraction quality; else flag for review\"\n },\n {\n \"id\": \"dex-4-c\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Batch/async allowed; keep UI responsive\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"a565c745-83b5-41cf-932e-755445dd562d\",\n \"referenceId\": \"data_document\",\n \"type\": \"data\",\n \"x\": 1364,\n \"y\": 966.5,\n \"customLabel\": \"Extracted Text\",\n \"notes\": \"Text + layout blocks (and/or OCR output).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"e08a0035-6cf6-4260-887f-c0492b722a24\",\n \"referenceId\": \"task_transform\",\n \"type\": \"task\",\n \"x\": 1482,\n \"y\": 677.5,\n \"customLabel\": \"Normalize to Schema\",\n \"notes\": \"Convert extracted content into structured fields that match a target record schema.\",\n \"attachments\": [\n {\n \"id\": \"dex-5-a\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Field-value pairs with provenance\"\n },\n {\n \"id\": \"dex-5-b\",\n \"referenceId\": \"data_schema\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Target schema definition (versioned)\"\n },\n {\n \"id\": \"dex-5-c\",\n \"referenceId\": \"const_format\",\n \"type\": \"constraint\",\n \"notes\": \"Strict output formatting (types, required fields)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"5e1cf7b0-4b78-4b0d-8abf-1cd5d837306a\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"x\": 1656.6666666666665,\n \"y\": 964.1666666666665,\n \"customLabel\": \"Proposed Fields\",\n \"notes\": \"Candidate structured fields extracted from the doc.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"c45591c9-fe1a-45ec-83f0-dba81e50175f\",\n \"referenceId\": \"task_verify\",\n \"type\": \"task\",\n \"x\": 1770.6666666666667,\n \"y\": 665.5,\n \"customLabel\": \"Auto-Verify + Confidence\",\n \"notes\": \"Assign confidence per field; decide if human review is required.\",\n \"attachments\": [\n {\n \"id\": \"dex-6-a\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Confidence scores per field\"\n },\n {\n \"id\": \"dex-6-b\",\n \"referenceId\": \"const_confidence\",\n \"type\": \"constraint\",\n \"notes\": \"Route to human review under threshold\"\n },\n {\n \"id\": \"dex-6-c\",\n \"referenceId\": \"const_human_loop\",\n \"type\": \"constraint\",\n \"notes\": \"Human-in-the-loop required for low confidence or sensitive fields\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"df3058c0-40da-417f-9cff-a1f81dc5115a\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"x\": 1962.6666666666663,\n \"y\": 963.1666666666666,\n \"customLabel\": \"Field Confidence\",\n \"notes\": \"Score(s) used to route the workflow.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"69957b03-c304-42aa-953e-5e8a60115fa6\",\n \"referenceId\": \"human_review\",\n \"type\": \"task\",\n \"x\": 2067.3333333333335,\n \"y\": 670.8333333333333,\n \"customLabel\": \"Human Verification\",\n \"notes\": \"Reviewer checks extracted fields against the source and corrects errors.\",\n \"attachments\": [\n {\n \"id\": \"dex-7-a\",\n \"referenceId\": \"data_selection\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Approved/corrected values\"\n },\n {\n \"id\": \"dex-7-b\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Record who approved what and when\"\n },\n {\n \"id\": \"dex-7-c\",\n \"referenceId\": \"const_authorization\",\n \"type\": \"constraint\",\n \"notes\": \"Only authorized reviewers can approve\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196,\n \"personaId\": \"persona-reviewer\"\n },\n {\n \"id\": \"f820d6a3-f3d7-4a00-9aeb-634cf405b3ca\",\n \"referenceId\": \"system_save_db\",\n \"type\": \"task\",\n \"x\": 2410.6666666666665,\n \"y\": 796.1666666666667,\n \"customLabel\": \"Write Record to DB\",\n \"notes\": \"Persist verified structured record.\",\n \"attachments\": [\n {\n \"id\": \"dex-8-a\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Structured database record\"\n },\n {\n \"id\": \"dex-8-b\",\n \"referenceId\": \"const_encryption\",\n \"type\": \"constraint\",\n \"notes\": \"Encrypt sensitive fields at rest\"\n },\n {\n \"id\": \"dex-8-c\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Retention policy for source files and extracted data\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"cdcade0f-2a53-477e-b526-9bf9c637c8e5\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"x\": 2758.5860805860802,\n \"y\": 654.9688644688642,\n \"customLabel\": \"DB Record\",\n \"notes\": \"Final structured record (verified).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"4a0fd7f4-7e78-4e63-a42b-0c4788071323\",\n \"referenceId\": \"system_notification\",\n \"type\": \"task\",\n \"x\": 2739.8241758241757,\n \"y\": 759.2582417582416,\n \"customLabel\": \"Notify Completion\",\n \"notes\": \"Notify uploader (and/or downstream system) that the record is ready.\",\n \"attachments\": [\n {\n \"id\": \"dex-9-a\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Completion signal\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 124\n },\n {\n \"id\": \"af699453-0946-4797-b9fb-7b25811f0dc1\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 1149.8947368421054,\n \"y\": 621.1666666666666,\n \"width\": 1511.5460526315787,\n \"height\": 435.0822368421052,\n \"customLabel\": \"Document Extraction Pipeline\",\n \"notes\": \"Upload → Extract → Normalize → Verify → Human review (if needed) → Save.\",\n \"measuredW\": 1512,\n \"measuredH\": 435\n },\n {\n \"id\": \"9c4e97d6-e0eb-4653-bff0-6aa79e174835\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 630.1696166428992,\n \"y\": 517.8613790789362,\n \"width\": 450.9890109890109,\n \"height\": 111.0989010989011,\n \"customLabel\": \"Core Pattern: Document Extraction\",\n \"notes\": \"Minimal template for turning PDFs/images into structured DB records with a human verification step.\",\n \"measuredW\": 451,\n \"measuredH\": 111\n }\n ],\n \"edges\": [\n {\n \"id\": \"6e55ef9b-ef0f-43e3-a907-d0d6c34db7d6\",\n \"source\": \"5fffb47b-712c-4283-a08c-1e013e3d5ce5\",\n \"target\": \"53bd73ce-af90-4d46-89b8-a0c5f80eee9f\"\n },\n {\n \"id\": \"42960d7c-93cf-488c-9d03-72906d9e587b\",\n \"source\": \"53bd73ce-af90-4d46-89b8-a0c5f80eee9f\",\n \"target\": \"72d070a6-3f57-4448-956e-d012ec200b0a\",\n \"customY\": 939.1125884293825,\n \"targetX\": 759.6184883818471,\n \"sourceX\": 864.2707826524621\n },\n {\n \"id\": \"701eb3f8-9eb7-4743-8d17-fc4908fdd726\",\n \"source\": \"72d070a6-3f57-4448-956e-d012ec200b0a\",\n \"target\": \"6893d17d-acaf-4de2-bb22-6a9ce27b6da1\",\n \"customX\": 873.3630082252018,\n \"customY\": 939.699787489864,\n \"sourceX\": 976.2848754299135,\n \"targetX\": 881.8915226998794\n },\n {\n \"id\": \"c3294070-0207-46f2-bb13-d6c0148a5459\",\n \"source\": \"6893d17d-acaf-4de2-bb22-6a9ce27b6da1\",\n \"target\": \"90102aa0-7cd4-42e5-9223-7211f2eb6285\"\n },\n {\n \"id\": \"5930b16f-199f-443d-b788-57013c3b48f6\",\n \"source\": \"90102aa0-7cd4-42e5-9223-7211f2eb6285\",\n \"target\": \"a565c745-83b5-41cf-932e-755445dd562d\",\n \"customY\": 935.5,\n \"targetX\": 1340.3333333333333,\n \"sourceX\": 1420.2105263157894\n },\n {\n \"id\": \"692ee9a9-2372-46a0-8f35-baf802536afd\",\n \"source\": \"a565c745-83b5-41cf-932e-755445dd562d\",\n \"target\": \"e08a0035-6cf6-4260-887f-c0492b722a24\",\n \"sourceX\": 1540.3333333333333,\n \"customY\": 935.1666666666666,\n \"targetX\": 1456\n },\n {\n \"id\": \"e9e1b1f6-6850-477d-ba85-be3bbac1587c\",\n \"source\": \"e08a0035-6cf6-4260-887f-c0492b722a24\",\n \"target\": \"5e1cf7b0-4b78-4b0d-8abf-1cd5d837306a\",\n \"customY\": 934.1666666666666,\n \"sourceX\": 1729.3333333333333,\n \"targetX\": 1631.3333333333333\n },\n {\n \"id\": \"eefbea39-5c64-4958-b326-0acbf57005ef\",\n \"source\": \"5e1cf7b0-4b78-4b0d-8abf-1cd5d837306a\",\n \"target\": \"c45591c9-fe1a-45ec-83f0-dba81e50175f\",\n \"customY\": 934.8333333333334,\n \"targetX\": 1745.3333333333335,\n \"sourceX\": 1837.9999999999998\n },\n {\n \"id\": \"b7ea84a2-d37f-4dd1-9037-06d43203d987\",\n \"source\": \"c45591c9-fe1a-45ec-83f0-dba81e50175f\",\n \"target\": \"df3058c0-40da-417f-9cff-a1f81dc5115a\",\n \"sourceX\": 2021.3333333333335,\n \"customY\": 933.8333333333334,\n \"targetX\": 1933.9999999999998\n },\n {\n \"id\": \"1a5dd310-f310-4bca-94c2-c69d121c13a0\",\n \"source\": \"df3058c0-40da-417f-9cff-a1f81dc5115a\",\n \"target\": \"69957b03-c304-42aa-953e-5e8a60115fa6\",\n \"label\": \"If below threshold\",\n \"targetX\": 2045.3333333333333,\n \"customY\": 931.8333333333334,\n \"sourceX\": 2180.6666666666665\n },\n {\n \"id\": \"f326afd9-fdbc-4705-8128-68c14b02e20b\",\n \"source\": \"69957b03-c304-42aa-953e-5e8a60115fa6\",\n \"target\": \"f820d6a3-f3d7-4a00-9aeb-634cf405b3ca\",\n \"label\": \"After approval\",\n \"customX\": 2348.333333333333,\n \"customY\": 867.5,\n \"targetX\": 2386\n },\n {\n \"id\": \"c0192320-fd7a-4b54-9951-bfe9e8a93daf\",\n \"source\": \"f820d6a3-f3d7-4a00-9aeb-634cf405b3ca\",\n \"target\": \"cdcade0f-2a53-477e-b526-9bf9c637c8e5\",\n \"customX\": 2678.142857142857\n },\n {\n \"id\": \"fbf60370-6e21-4c00-8531-25e56831b3cb\",\n \"source\": \"cdcade0f-2a53-477e-b526-9bf9c637c8e5\",\n \"target\": \"4a0fd7f4-7e78-4e63-a42b-0c4788071323\",\n \"customY\": 735.653846153846,\n \"targetX\": 2719.934065934066,\n \"sourceX\": 2963.7509157509153\n },\n {\n \"id\": \"4555b7d5-003a-4e3c-9b3c-f7fc9e327fcb\",\n \"source\": \"df3058c0-40da-417f-9cff-a1f81dc5115a\",\n \"target\": \"f820d6a3-f3d7-4a00-9aeb-634cf405b3ca\",\n \"customX\": 2287,\n \"label\": \"If above threshold\"\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-ops\",\n \"name\": \"Uploader\",\n \"role\": \"Submits documents for extraction\",\n \"color\": \"#3B82F6\",\n \"initials\": \"UP\",\n \"category\": \"human\"\n },\n {\n \"id\": \"persona-reviewer\",\n \"name\": \"Verifier\",\n \"role\": \"Checks and approves extracted fields\",\n \"color\": \"#10B981\",\n \"initials\": \"HV\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_agent_tool\",\n \"name\": \"Tool-Using Agent\",\n \"description\": \"An autonomous agent loop that can decide to call external APIs to fulfill a user request.\",\n \"primary_use_case\": \"Personal Assistant, Booking Bot, Data Analyst\",\n \"complexity\": \"High\",\n \"tags\": [\n \"Agentic\",\n \"Logic\",\n \"API\"\n ],\n \"common_variations\": [\n \"Multi-Agent Swarm\",\n \"Plan-and-Solve\"\n ],\n \"nodes\": [\n {\n \"id\": \"0a87740e-a0aa-44cf-bfba-ce02e6de8db8\",\n \"referenceId\": \"tp_chat\",\n \"type\": \"touchpoint\",\n \"x\": 490,\n \"y\": 666,\n \"customLabel\": \"Chat / Command UI\",\n \"notes\": \"User asks for something to be done; agent responds and may take actions via tools.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"7496cb2f-574c-429d-a3ce-f880d4ffb236\",\n \"referenceId\": \"human_type_input\",\n \"type\": \"task\",\n \"x\": 679,\n \"y\": 657,\n \"customLabel\": \"User Request\",\n \"notes\": \"User expresses a goal (not steps).\",\n \"attachments\": [\n {\n \"id\": \"agent-2-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Natural-language request\"\n },\n {\n \"id\": \"agent-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User consents to tool calls on their behalf (scope may be limited)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"3542d41e-5868-41f9-ba39-ba5967c65728\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"x\": 738,\n \"y\": 885,\n \"customLabel\": \"Session Context\",\n \"notes\": \"Conversation history, user preferences, prior tool results.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"referenceId\": \"task_plan\",\n \"type\": \"task\",\n \"x\": 1024.655172413793,\n \"y\": 671,\n \"customLabel\": \"Plan Next Step\",\n \"notes\": \"Decide whether to respond directly or call a tool; choose which tool + arguments.\",\n \"attachments\": [\n {\n \"id\": \"agent-4-a\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Plan / intent / chosen tool\"\n },\n {\n \"id\": \"agent-4-b\",\n \"referenceId\": \"data_json\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Tool call arguments (JSON)\"\n },\n {\n \"id\": \"agent-4-c\",\n \"referenceId\": \"const_system_instruction\",\n \"type\": \"constraint\",\n \"notes\": \"Tool-use policy: call tools only when needed, minimize access, be reversible when possible\"\n },\n {\n \"id\": \"agent-4-d\",\n \"referenceId\": \"const_cost_budget\",\n \"type\": \"constraint\",\n \"notes\": \"Limit tool calls / tokens / spend\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"bf3dd1c2-bf64-4684-bc35-68c33e8f4a74\",\n \"referenceId\": \"system_orchestrate\",\n \"type\": \"task\",\n \"x\": 1283.2608695652175,\n \"y\": 692.7391304347826,\n \"customLabel\": \"Orchestrate Loop\",\n \"notes\": \"Executes the plan: call tool, store results, decide whether to continue looping.\",\n \"attachments\": [\n {\n \"id\": \"agent-5-a\",\n \"referenceId\": \"const_rate_limit\",\n \"type\": \"constraint\",\n \"notes\": \"Respect API/tool rate limits and backoff\"\n },\n {\n \"id\": \"agent-5-b\",\n \"referenceId\": \"const_error_handling\",\n \"type\": \"constraint\",\n \"notes\": \"Handle tool errors; retry rules; graceful failure modes\"\n },\n {\n \"id\": \"agent-5-c\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Record tool calls + responses for traceability\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 153\n },\n {\n \"id\": \"834cb92d-0b28-43f3-b620-5881245bba85\",\n \"referenceId\": \"system_api\",\n \"type\": \"task\",\n \"x\": 1615,\n \"y\": 657.9565217391304,\n \"customLabel\": \"Call External API / Tool\",\n \"notes\": \"Agent invokes an external tool (search, calendar, CRM, payments, etc.).\",\n \"attachments\": [\n {\n \"id\": \"agent-6-a\",\n \"referenceId\": \"data_api_response\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Raw tool response (may be partial / paginated)\"\n },\n {\n \"id\": \"agent-6-b\",\n \"referenceId\": \"const_authentication\",\n \"type\": \"constraint\",\n \"notes\": \"Use least-privilege auth / scoped tokens\"\n },\n {\n \"id\": \"agent-6-c\",\n \"referenceId\": \"const_authorization\",\n \"type\": \"constraint\",\n \"notes\": \"Only act within user-approved scopes\"\n },\n {\n \"id\": \"agent-6-d\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"Avoid sending sensitive data unless necessary\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 220\n },\n {\n \"id\": \"a78daadf-0632-43cf-b66f-ddd51d163577\",\n \"referenceId\": \"task_synthesize\",\n \"type\": \"task\",\n \"x\": 1987.9835082458771,\n \"y\": 682.3343328335833,\n \"customLabel\": \"Interpret + Update State\",\n \"notes\": \"Summarize tool results, update working memory/state, decide if more tool calls are needed.\",\n \"attachments\": [\n {\n \"id\": \"agent-7-a\",\n \"referenceId\": \"data_state_vector\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Working memory / state update\"\n },\n {\n \"id\": \"agent-7-b\",\n \"referenceId\": \"data_structured_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Intermediate synthesis / notes\"\n },\n {\n \"id\": \"agent-7-c\",\n \"referenceId\": \"const_context_window\",\n \"type\": \"constraint\",\n \"notes\": \"Summarize + compress to preserve important details in limited context\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"48d9fde3-32c4-42dd-9db3-521cd99c3b9d\",\n \"referenceId\": \"system_rules\",\n \"type\": \"task\",\n \"x\": 2268.763118440779,\n \"y\": 693.128935532234,\n \"customLabel\": \"Stop / Continue Gate\",\n \"notes\": \"Check completion, confidence, and safety; decide to stop, loop, or ask the user.\",\n \"attachments\": [\n {\n \"id\": \"agent-8-a\",\n \"referenceId\": \"const_confidence\",\n \"type\": \"constraint\",\n \"notes\": \"If uncertain, request clarification or propose options\"\n },\n {\n \"id\": \"agent-8-b\",\n \"referenceId\": \"const_human_loop\",\n \"type\": \"constraint\",\n \"notes\": \"Require confirmation before irreversible actions (e.g., purchases, sending messages)\"\n },\n {\n \"id\": \"agent-8-c\",\n \"referenceId\": \"const_content_safety\",\n \"type\": \"constraint\",\n \"notes\": \"Refuse disallowed requests; constrain tool usage appropriately\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 153\n },\n {\n \"id\": \"10c3b69f-8c82-427e-a6cd-d1935f996553\",\n \"referenceId\": \"task_generate\",\n \"type\": \"task\",\n \"x\": 2720.2923538230884,\n \"y\": 685.2578710644677,\n \"customLabel\": \"Respond / Present Result\",\n \"notes\": \"Produce final answer, action summary, and any next steps.\",\n \"attachments\": [\n {\n \"id\": \"agent-9-a\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"User-facing response\"\n },\n {\n \"id\": \"agent-9-b\",\n \"referenceId\": \"const_format\",\n \"type\": \"constraint\",\n \"notes\": \"Structured output when useful (bullets, tables, citations, etc.)\"\n },\n {\n \"id\": \"agent-9-c\",\n \"referenceId\": \"const_tone\",\n \"type\": \"constraint\",\n \"notes\": \"Clear, concise, non-overconfident\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-user\"\n },\n {\n \"id\": \"ba8cbd8a-2159-421c-b99d-67bfb0f782ca\",\n \"referenceId\": \"data_log\",\n \"type\": \"data\",\n \"x\": 1896.4842578710643,\n \"y\": 890.3178410794602,\n \"customLabel\": \"Tool Trace / Logs\",\n \"notes\": \"Tool call history, timings, errors (for debugging + audit).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"d3735aca-ffdc-49ce-9171-2da84c5a13d1\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 975,\n \"y\": 626,\n \"width\": 1556.7541229385308,\n \"height\": 410.63718140929535,\n \"customLabel\": \"Tool-Using Agent Loop\",\n \"notes\": \"Plan → Orchestrate → Tool → Synthesize → Gate → (Loop or Respond)\",\n \"measuredW\": 1556,\n \"measuredH\": 410\n },\n {\n \"id\": \"da64eeb6-4c02-4433-b5a1-93f47826de68\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 438.4742268041237,\n \"y\": 447.8453608247423,\n \"width\": 610,\n \"height\": 110,\n \"customLabel\": \"Core Pattern: Tool-Using Agent\",\n \"notes\": \"Minimal autonomous loop. Use a human-loop constraint for irreversible actions; keep state + logs; iterate until done.\",\n \"measuredW\": 610,\n \"measuredH\": 110\n }\n ],\n \"edges\": [\n {\n \"id\": \"af3acbdd-c734-4cd7-a9b8-f0dc28539232\",\n \"source\": \"0a87740e-a0aa-44cf-bfba-ce02e6de8db8\",\n \"target\": \"7496cb2f-574c-429d-a3ce-f880d4ffb236\"\n },\n {\n \"id\": \"c171ee35-e764-4396-9400-7c52ab973c3f\",\n \"source\": \"7496cb2f-574c-429d-a3ce-f880d4ffb236\",\n \"target\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"customX\": 937\n },\n {\n \"id\": \"2ae5d1f9-af3f-4dd3-8264-2cdb009ed6d8\",\n \"source\": \"3542d41e-5868-41f9-ba39-ba5967c65728\",\n \"target\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"label\": \"Context\",\n \"customX\": 935.8103448275862\n },\n {\n \"id\": \"33d00212-4037-4c12-a2c3-61793554f68b\",\n \"source\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"target\": \"bf3dd1c2-bf64-4684-bc35-68c33e8f4a74\"\n },\n {\n \"id\": \"ec92dfdd-7039-4e25-9aec-7c17ca3460f4\",\n \"source\": \"bf3dd1c2-bf64-4684-bc35-68c33e8f4a74\",\n \"target\": \"834cb92d-0b28-43f3-b620-5881245bba85\",\n \"label\": \"Tool call\"\n },\n {\n \"id\": \"ce1ba000-5831-4e0f-b0b4-efde4037c9b3\",\n \"source\": \"834cb92d-0b28-43f3-b620-5881245bba85\",\n \"target\": \"a78daadf-0632-43cf-b66f-ddd51d163577\",\n \"label\": \"Results\"\n },\n {\n \"id\": \"1078efb2-9e38-48e4-b4c9-b2f090e3faeb\",\n \"source\": \"a78daadf-0632-43cf-b66f-ddd51d163577\",\n \"target\": \"48d9fde3-32c4-42dd-9db3-521cd99c3b9d\"\n },\n {\n \"id\": \"e65ff1a1-2828-4b8d-9531-4797d7b70d0e\",\n \"source\": \"48d9fde3-32c4-42dd-9db3-521cd99c3b9d\",\n \"target\": \"ce300402-0208-4fd0-ae95-06ac53b917b2\",\n \"label\": \"Continue (loop)\",\n \"customY\": 1007.9655172413793,\n \"targetX\": 999.4827586206895,\n \"sourceX\": 2508.545727136431\n },\n {\n \"id\": \"e8b9d9c3-880d-4aa3-8090-f7a184fd2390\",\n \"source\": \"48d9fde3-32c4-42dd-9db3-521cd99c3b9d\",\n \"target\": \"10c3b69f-8c82-427e-a6cd-d1935f996553\",\n \"label\": \"Stop (done / ask user)\"\n },\n {\n \"id\": \"1a14febc-a1d7-42a9-9469-fd87744805ad\",\n \"source\": \"834cb92d-0b28-43f3-b620-5881245bba85\",\n \"target\": \"ba8cbd8a-2159-421c-b99d-67bfb0f782ca\",\n \"label\": \"Trace\"\n },\n {\n \"id\": \"2f28274c-aa71-4922-a5c2-50110d9ef0bd\",\n \"source\": \"10c3b69f-8c82-427e-a6cd-d1935f996553\",\n \"target\": \"0a87740e-a0aa-44cf-bfba-ce02e6de8db8\",\n \"customY\": 588.9743659098285,\n \"sourceX\": 2984.3129723797892,\n \"targetX\": 434.63917525773195\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-user\",\n \"name\": \"User\",\n \"role\": \"States goals, provides confirmations, consumes results\",\n \"color\": \"#3B82F6\",\n \"initials\": \"U\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_moderation\",\n \"name\": \"Content Moderation System\",\n \"description\": \"A safety-first pipeline for user-generated content, combining automated classification with human oversight.\",\n \"primary_use_case\": \"Social Media, Comment Sections, Forums\",\n \"complexity\": \"Low\",\n \"tags\": [\n \"Safety\",\n \"Classification\",\n \"Human-in-the-loop\"\n ],\n \"common_variations\": [\n \"Pre-moderation\",\n \"Post-moderation\"\n ],\n \"nodes\": [\n {\n \"id\": \"fe847a51-0333-4227-9a99-50b933f237b7\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 260.5,\n \"y\": 641.5,\n \"customLabel\": \"User Content Surface (Web/App)\",\n \"notes\": \"Where UGC is created and submitted.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-creator\"\n },\n {\n \"id\": \"15b97802-e9e1-4984-939b-13e22f0dcc74\",\n \"referenceId\": \"human_upload_file\",\n \"type\": \"task\",\n \"x\": 480.5,\n \"y\": 656.5,\n \"customLabel\": \"Submit Content\",\n \"notes\": \"User posts text/image/video to the platform.\",\n \"attachments\": [\n {\n \"id\": \"cm-2-a\",\n \"referenceId\": \"data_multimodal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"UGC payload (text/image/video + metadata)\"\n },\n {\n \"id\": \"cm-2-b\",\n \"referenceId\": \"const_user_consent\",\n \"type\": \"constraint\",\n \"notes\": \"User consents to moderation processing per TOS\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-creator\"\n },\n {\n \"id\": \"d28e1693-6c3e-4feb-ab5f-277e3fd26dad\",\n \"referenceId\": \"data_multimodal\",\n \"type\": \"data\",\n \"x\": 785.5,\n \"y\": 672.5,\n \"customLabel\": \"UGC Item\",\n \"notes\": \"The submitted content to be moderated (plus metadata).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"1aead687-39fb-4d24-b768-cf7d61827143\",\n \"referenceId\": \"const_content_safety\",\n \"type\": \"constraint\",\n \"x\": 807.5,\n \"y\": 477.5,\n \"customLabel\": \"Safety Policy Constraints\",\n \"notes\": \"Moderation must follow policy definitions (categories, thresholds, escalation).\",\n \"measuredW\": 180,\n \"measuredH\": 40\n },\n {\n \"id\": \"da7f35af-832f-4402-8fb0-8b67b5be6583\",\n \"referenceId\": \"data_policy\",\n \"type\": \"data\",\n \"x\": 827.5,\n \"y\": 545.5,\n \"customLabel\": \"Moderation Policy\",\n \"notes\": \"Rules, taxonomy, and enforcement definitions (source of truth).\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"5805d2ae-e1f7-46ae-96ee-355f12cb87dc\",\n \"referenceId\": \"task_classify\",\n \"type\": \"task\",\n \"x\": 776.5,\n \"y\": 760.5,\n \"customLabel\": \"Automated Safety Classification\",\n \"notes\": \"Model assigns labels + risk scores (e.g., hate/harassment, sexual content, violence, self-harm, spam).\",\n \"attachments\": [\n {\n \"id\": \"cm-3-a\",\n \"referenceId\": \"data_classification\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Labels (multi-label) + categories\"\n },\n {\n \"id\": \"cm-3-b\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Risk/confidence scores\"\n },\n {\n \"id\": \"cm-3-c\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Fast path for posting (e.g., < 1s target for non-escalations)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"referenceId\": \"system_rules\",\n \"type\": \"task\",\n \"x\": 1149.5,\n \"y\": 725.5,\n \"customLabel\": \"Policy Decision + Routing\",\n \"notes\": \"Apply thresholds: allow, remove, limit distribution, or escalate to human review.\",\n \"attachments\": [\n {\n \"id\": \"cm-4-a\",\n \"referenceId\": \"data_action\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Decision action: allow / limit / remove / escalate\"\n },\n {\n \"id\": \"cm-4-b\",\n \"referenceId\": \"const_quality_threshold\",\n \"type\": \"constraint\",\n \"notes\": \"Escalate if score in uncertain band or category requires review\"\n },\n {\n \"id\": \"cm-4-c\",\n \"referenceId\": \"const_human_loop\",\n \"type\": \"constraint\",\n \"notes\": \"Certain classes require human oversight\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"f67b2d8b-0cfa-4f8f-ad45-c30d52520cf6\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 1249.5,\n \"y\": 548.5,\n \"customLabel\": \"Moderator Console\",\n \"notes\": \"Queue view for escalated items; shows content, policy, model rationale/signals, and decision tools.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-moderator\"\n },\n {\n \"id\": \"84cdab5c-d5ed-4099-aae1-243bef5851cf\",\n \"referenceId\": \"human_review\",\n \"type\": \"task\",\n \"x\": 1563.5,\n \"y\": 641.5,\n \"customLabel\": \"Human Review + Decision\",\n \"notes\": \"Moderator confirms or overrides; adds rationale and selects enforcement action.\",\n \"attachments\": [\n {\n \"id\": \"cm-6-a\",\n \"referenceId\": \"data_action\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Final action: approve / restrict / remove / ban / escalate\"\n },\n {\n \"id\": \"cm-6-b\",\n \"referenceId\": \"data_text\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Moderator rationale / notes\"\n },\n {\n \"id\": \"cm-6-c\",\n \"referenceId\": \"const_audit_log\",\n \"type\": \"constraint\",\n \"notes\": \"Record who decided what, and why\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-moderator\"\n },\n {\n \"id\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"referenceId\": \"system_save_db\",\n \"type\": \"task\",\n \"x\": 1561.5,\n \"y\": 844.5,\n \"customLabel\": \"Persist Moderation Record\",\n \"notes\": \"Store decision, policy version, model version, and any human notes.\",\n \"attachments\": [\n {\n \"id\": \"cm-7-a\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Moderation decision record\"\n },\n {\n \"id\": \"cm-7-b\",\n \"referenceId\": \"const_data_retention\",\n \"type\": \"constraint\",\n \"notes\": \"Retention rules for logs and evidence\"\n },\n {\n \"id\": \"cm-7-c\",\n \"referenceId\": \"const_privacy\",\n \"type\": \"constraint\",\n \"notes\": \"Minimize stored personal data; redact where needed\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 196\n },\n {\n \"id\": \"5c08d693-5937-4e1f-9a1c-384fcac1adf2\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"x\": 2044.5,\n \"y\": 793.5,\n \"customLabel\": \"Moderation DB\",\n \"notes\": \"System-of-record for decisions + evidence pointers.\",\n \"measuredW\": 160,\n \"measuredH\": 48\n },\n {\n \"id\": \"296879cd-e9ff-4dbc-a371-a0a9c0b439e8\",\n \"referenceId\": \"system_notification\",\n \"type\": \"task\",\n \"x\": 2013.5,\n \"y\": 877.5,\n \"customLabel\": \"Notify + Enforce Outcome\",\n \"notes\": \"Apply enforcement (remove/limit) and notify user (and optionally appeal link).\",\n \"attachments\": [\n {\n \"id\": \"cm-8-b\",\n \"referenceId\": \"const_localization\",\n \"type\": \"constraint\",\n \"notes\": \"Localize user-facing explanations\"\n },\n {\n \"id\": \"cm-8-c\",\n \"referenceId\": \"const_error_handling\",\n \"type\": \"constraint\",\n \"notes\": \"Fallback if notification/enforcement fails\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 130\n },\n {\n \"id\": \"fcd2e968-83a5-4707-beaf-22e8d6d51ff7\",\n \"referenceId\": \"tp_web\",\n \"type\": \"touchpoint\",\n \"x\": 2301.5,\n \"y\": 870.5,\n \"customLabel\": \"User Sees Result\",\n \"notes\": \"Content is posted, limited, removed, or actioned; user can be shown a reason + appeal path.\",\n \"measuredW\": 140,\n \"measuredH\": 40,\n \"personaId\": \"persona-creator\"\n },\n {\n \"id\": \"4f7303a1-deec-4781-ae69-eca1e8915750\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 735.5,\n \"y\": 628.5,\n \"width\": 1210,\n \"height\": 430,\n \"customLabel\": \"Content Moderation Core Pipeline\",\n \"notes\": \"Classify → Policy decision/routing → Human review (if needed) → Persist → Notify/enforce\",\n \"measuredW\": 1210,\n \"measuredH\": 430\n },\n {\n \"id\": \"0ea0bbdd-c669-466d-9d06-a2aadaac8111\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 226.51754385964912,\n \"y\": 473.0263157894737,\n \"width\": 520.8771929824561,\n \"height\": 100,\n \"customLabel\": \"Minimal Template: Content Moderation System\",\n \"notes\": \"Safety-first pipeline that combines automated classification with policy routing and human oversight.\",\n \"measuredW\": 520,\n \"measuredH\": 99\n }\n ],\n \"edges\": [\n {\n \"id\": \"5688df3d-d571-4ff7-b05d-d89a289dde75\",\n \"source\": \"fe847a51-0333-4227-9a99-50b933f237b7\",\n \"target\": \"15b97802-e9e1-4984-939b-13e22f0dcc74\"\n },\n {\n \"id\": \"68df6431-902d-481f-b673-6616c6958f21\",\n \"source\": \"15b97802-e9e1-4984-939b-13e22f0dcc74\",\n \"target\": \"d28e1693-6c3e-4feb-ab5f-277e3fd26dad\"\n },\n {\n \"id\": \"8547382c-7ca9-4098-a9c7-df3de00885a4\",\n \"source\": \"d28e1693-6c3e-4feb-ab5f-277e3fd26dad\",\n \"target\": \"5805d2ae-e1f7-46ae-96ee-355f12cb87dc\",\n \"customY\": 741,\n \"targetX\": 756.5\n },\n {\n \"id\": \"376e3fe7-71df-42e3-b9bc-109db2d38e89\",\n \"source\": \"da7f35af-832f-4402-8fb0-8b67b5be6583\",\n \"target\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"label\": \"Policy definitions\",\n \"customX\": 1040.8316831683169\n },\n {\n \"id\": \"b103d7f5-4eec-45ed-a57e-3162ea09e077\",\n \"source\": \"1aead687-39fb-4d24-b768-cf7d61827143\",\n \"target\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"label\": \"Safety constraints\",\n \"customY\": 579.5,\n \"targetX\": 1116.5,\n \"customX\": 1112.5\n },\n {\n \"id\": \"e7a0955d-a31c-4aa7-aa80-e8c45f52e27b\",\n \"source\": \"5805d2ae-e1f7-46ae-96ee-355f12cb87dc\",\n \"target\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\"\n },\n {\n \"id\": \"13e738f5-4fc7-49f5-9f87-a12caf638723\",\n \"source\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"target\": \"84cdab5c-d5ed-4099-aae1-243bef5851cf\",\n \"label\": \"Escalate if uncertain/high-risk\"\n },\n {\n \"id\": \"cd7843c0-eaac-4ca3-844f-e2d8c2723604\",\n \"source\": \"3b4e6233-aa81-4566-b25b-7c11a5a3e322\",\n \"target\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"label\": \"Allow/limit/remove\"\n },\n {\n \"id\": \"31d1eb8f-3fd6-48bb-981e-74c9b7897c70\",\n \"source\": \"f67b2d8b-0cfa-4f8f-ad45-c30d52520cf6\",\n \"target\": \"84cdab5c-d5ed-4099-aae1-243bef5851cf\"\n },\n {\n \"id\": \"d088fccb-527e-4fb3-929c-a30ff24e9e4d\",\n \"source\": \"84cdab5c-d5ed-4099-aae1-243bef5851cf\",\n \"target\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"customY\": 828.5,\n \"targetX\": 1533.5,\n \"sourceX\": 1813.5\n },\n {\n \"id\": \"36493fdc-d29a-4290-902b-3547d14a4549\",\n \"source\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"target\": \"5c08d693-5937-4e1f-9a1c-384fcac1adf2\"\n },\n {\n \"id\": \"3d921270-d93b-4722-ad8c-a87879d98b00\",\n \"source\": \"0bd2fcd3-1e09-4385-9ed3-8c92e28c5d58\",\n \"target\": \"296879cd-e9ff-4dbc-a371-a0a9c0b439e8\"\n },\n {\n \"id\": \"1ea4fb96-9394-4b28-88d3-e9427d455141\",\n \"source\": \"296879cd-e9ff-4dbc-a371-a0a9c0b439e8\",\n \"target\": \"fcd2e968-83a5-4707-beaf-22e8d6d51ff7\"\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-creator\",\n \"name\": \"Content Creator\",\n \"role\": \"Submits user-generated content and receives moderation outcomes\",\n \"color\": \"#3B82F6\",\n \"initials\": \"CC\",\n \"category\": \"human\"\n },\n {\n \"id\": \"persona-moderator\",\n \"name\": \"Moderator\",\n \"role\": \"Reviews escalated content and makes final enforcement decisions\",\n \"color\": \"#F59E0B\",\n \"initials\": \"MO\",\n \"category\": \"human\"\n }\n ]\n },\n {\n \"id\": \"tmpl_game_enemy_ai\",\n \"name\": \"Video Game Enemy AI\",\n \"description\": \"Real-time enemy behavior system using perception, decision-making, and action execution for responsive game AI.\",\n \"primary_use_case\": \"Action games, strategy games, NPC behavior, combat AI, patrol/chase systems\",\n \"complexity\": \"Medium\",\n \"tags\": [\n \"Game AI\",\n \"Behavior Trees\",\n \"Real-time\",\n \"State Machines\"\n ],\n \"common_variations\": [\n \"Behavior trees vs. state machines\",\n \"Goal-oriented action planning (GOAP)\",\n \"Learning/adaptive AI\",\n \"Squad/group tactics\"\n ],\n \"nodes\": [\n {\n \"id\": \"3d3f0b43-26c8-44b8-8138-90e6c328b670\",\n \"referenceId\": \"tp_3d_space\",\n \"type\": \"touchpoint\",\n \"x\": 581.9755244755246,\n \"y\": 620.2377622377622,\n \"customLabel\": \"Game World (3D Space)\",\n \"notes\": \"Real-time simulation context where the enemy and player exist.\",\n \"measuredW\": 140,\n \"measuredH\": 40\n },\n {\n \"id\": \"52794680-bc68-47c2-94dd-92acd327f439\",\n \"referenceId\": \"human_gesture\",\n \"type\": \"task\",\n \"x\": 829.6468531468531,\n \"y\": 615.020979020979,\n \"customLabel\": \"Player Moves / Acts\",\n \"notes\": \"Player movement/inputs create observable signals in the world.\",\n \"attachments\": [\n {\n \"id\": \"enemy-2-a\",\n \"referenceId\": \"data_trajectory\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Player movement path / pose changes\"\n },\n {\n \"id\": \"enemy-2-b\",\n \"referenceId\": \"data_action\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Player actions (attack, sprint, interact)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 124,\n \"personaId\": \"persona-player\"\n },\n {\n \"id\": \"24a01628-633f-4195-a6a3-317ec3a5ff38\",\n \"referenceId\": \"task_detect\",\n \"type\": \"task\",\n \"x\": 1208.513986013986,\n \"y\": 658,\n \"customLabel\": \"Perceive (Sight / Hearing)\",\n \"notes\": \"Detect player presence using line-of-sight + audio cues.\",\n \"attachments\": [\n {\n \"id\": \"enemy-3-a\",\n \"referenceId\": \"data_sensor_stream\",\n \"type\": \"data\",\n \"direction\": \"input\",\n \"notes\": \"World sensor signals (LOS checks, audio events)\"\n },\n {\n \"id\": \"enemy-3-b\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Detections (seen/heard, last known position)\"\n },\n {\n \"id\": \"enemy-3-c\",\n \"referenceId\": \"const_latency\",\n \"type\": \"constraint\",\n \"notes\": \"Must run per-frame / within budget (e.g., < 2–5ms AI slice)\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 222,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"a0171215-4a4c-4c98-8da7-71342e35d50e\",\n \"referenceId\": \"task_estimate\",\n \"type\": \"task\",\n \"x\": 1488.649256993007,\n \"y\": 653.9847027972028,\n \"customLabel\": \"Estimate Threat / Distance\",\n \"notes\": \"Compute intent-relevant features (distance, visibility, risk).\",\n \"attachments\": [\n {\n \"id\": \"enemy-4-a\",\n \"referenceId\": \"data_state_vector\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Feature vector (dist, cover, hp, cooldowns, alertness)\"\n },\n {\n \"id\": \"enemy-4-b\",\n \"referenceId\": \"data_score\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Threat score / confidence\"\n },\n {\n \"id\": \"enemy-4-c\",\n \"referenceId\": \"const_compute_budget\",\n \"type\": \"constraint\",\n \"notes\": \"Keep estimation cheap and stable under load\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"39320932-ddd4-4e13-9912-f8b022224559\",\n \"referenceId\": \"task_plan\",\n \"type\": \"task\",\n \"x\": 1786.5,\n \"y\": 654,\n \"customLabel\": \"Decide Behavior\",\n \"notes\": \"Select an intent (patrol, investigate, chase, flank, attack, flee).\",\n \"attachments\": [\n {\n \"id\": \"enemy-5-a\",\n \"referenceId\": \"data_selection\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Chosen behavior / state transition\"\n },\n {\n \"id\": \"enemy-5-b\",\n \"referenceId\": \"data_plan\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Action plan (waypoints, target, timing)\"\n },\n {\n \"id\": \"enemy-5-c\",\n \"referenceId\": \"const_rules\",\n \"type\": \"constraint\",\n \"notes\": \"Design rules (difficulty tuning, fairness, avoid perfect aim)\"\n },\n {\n \"id\": \"enemy-5-d\",\n \"referenceId\": \"const_quality_threshold\",\n \"type\": \"constraint\",\n \"notes\": \"Avoid jitter: hysteresis / cooldown before switching states\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"bc687014-a8ae-4788-b719-93947fb9f346\",\n \"referenceId\": \"task_act\",\n \"type\": \"task\",\n \"x\": 2051.5,\n \"y\": 659,\n \"customLabel\": \"Execute Action\",\n \"notes\": \"Drive animation + navigation + attacks based on chosen behavior.\",\n \"attachments\": [\n {\n \"id\": \"enemy-6-a\",\n \"referenceId\": \"data_action\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Enemy action commands (move/aim/attack/use ability)\"\n },\n {\n \"id\": \"enemy-6-b\",\n \"referenceId\": \"data_trajectory\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Movement path / steering output\"\n },\n {\n \"id\": \"enemy-6-c\",\n \"referenceId\": \"const_error_handling\",\n \"type\": \"constraint\",\n \"notes\": \"Fallbacks if path blocked / target lost\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"125ce287-6419-4942-8cf8-6f0d11929d75\",\n \"referenceId\": \"task_adapt\",\n \"type\": \"task\",\n \"x\": 1790.8706293706293,\n \"y\": 875.9930069930069,\n \"customLabel\": \"Update Internal State\",\n \"notes\": \"Update memory + cooldowns + alertness based on outcomes.\",\n \"attachments\": [\n {\n \"id\": \"enemy-7-a\",\n \"referenceId\": \"data_session_history\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Short-term memory (last seen pos, recent hits, failed actions)\"\n },\n {\n \"id\": \"enemy-7-b\",\n \"referenceId\": \"data_db_record\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Optional persistence (AI director stats, heatmaps)\"\n },\n {\n \"id\": \"enemy-7-c\",\n \"referenceId\": \"const_caching\",\n \"type\": \"constraint\",\n \"notes\": \"Cache expensive queries (navmesh, LOS) to keep frame stable\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173,\n \"personaId\": \"persona-enemy\"\n },\n {\n \"id\": \"1609e4a6-d546-41c0-9e6d-7aaa3f179e9d\",\n \"referenceId\": \"system_timer\",\n \"type\": \"task\",\n \"x\": 822.472027972028,\n \"y\": 827.6993006993007,\n \"customLabel\": \"Tick / Scheduling\",\n \"notes\": \"Run perception/decision at appropriate frequencies (per-frame, 10Hz, etc.).\",\n \"attachments\": [\n {\n \"id\": \"enemy-8-a\",\n \"referenceId\": \"data_signal\",\n \"type\": \"data\",\n \"direction\": \"output\",\n \"notes\": \"Update ticks (frame step, behavior tick, cooldown timers)\"\n },\n {\n \"id\": \"enemy-8-b\",\n \"referenceId\": \"const_rate_limit\",\n \"type\": \"constraint\",\n \"notes\": \"Throttle expensive checks under load\"\n }\n ],\n \"measuredW\": 220,\n \"measuredH\": 173\n },\n {\n \"id\": \"f7253e34-fdac-419f-be92-b599b49c2ed9\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"zone\",\n \"x\": 1156.5,\n \"y\": 619,\n \"width\": 1160,\n \"height\": 470,\n \"customLabel\": \"Enemy AI Core Loop\",\n \"notes\": \"Perceive → Estimate → Decide → Act (+ State Update)\",\n \"measuredW\": 1160,\n \"measuredH\": 470\n },\n {\n \"id\": \"12539529-9ff8-41ae-a5a0-712b3824a387\",\n \"referenceId\": \"zone_group\",\n \"type\": \"annotation\",\n \"subType\": \"note\",\n \"x\": 668.5,\n \"y\": 416,\n \"width\": 540,\n \"height\": 120,\n \"customLabel\": \"Minimal Template: Real-Time Enemy AI\",\n \"notes\": \"This is the smallest useful behavior system: perception, feature estimation, decision selection, action execution, and state update on a tick schedule.\",\n \"measuredW\": 540,\n \"measuredH\": 120\n }\n ],\n \"edges\": [\n {\n \"id\": \"ea4fe155-cd7c-4f25-b52d-318c7bd4c030\",\n \"source\": \"3d3f0b43-26c8-44b8-8138-90e6c328b670\",\n \"target\": \"52794680-bc68-47c2-94dd-92acd327f439\"\n },\n {\n \"id\": \"9d0fbfa1-3c63-4e83-aa45-df11d4d0c133\",\n \"source\": \"52794680-bc68-47c2-94dd-92acd327f439\",\n \"target\": \"24a01628-633f-4195-a6a3-317ec3a5ff38\",\n \"customX\": 1099.7097902097903\n },\n {\n \"id\": \"42368daa-e31f-42c1-b2b9-8dae62977f23\",\n \"source\": \"1609e4a6-d546-41c0-9e6d-7aaa3f179e9d\",\n \"target\": \"24a01628-633f-4195-a6a3-317ec3a5ff38\",\n \"label\": \"Perception tick\",\n \"targetX\": 1170.513986013986,\n \"customY\": 1065.5,\n \"sourceX\": 1071.472027972028,\n \"customX\": 1099.618881118881\n },\n {\n \"id\": \"95f754d7-6d43-4235-a655-ae023deae237\",\n \"source\": \"24a01628-633f-4195-a6a3-317ec3a5ff38\",\n \"target\": \"a0171215-4a4c-4c98-8da7-71342e35d50e\"\n },\n {\n \"id\": \"c582ceb6-6926-4f3f-abd8-78c0b2980cb7\",\n \"source\": \"a0171215-4a4c-4c98-8da7-71342e35d50e\",\n \"target\": \"39320932-ddd4-4e13-9912-f8b022224559\"\n },\n {\n \"id\": \"3d1931c9-f9a2-4307-bb85-1bfa10cdd5b0\",\n \"source\": \"39320932-ddd4-4e13-9912-f8b022224559\",\n \"target\": \"bc687014-a8ae-4788-b719-93947fb9f346\"\n },\n {\n \"id\": \"79894f78-d27c-4d22-9c63-0f2aed5d7084\",\n \"source\": \"bc687014-a8ae-4788-b719-93947fb9f346\",\n \"target\": \"125ce287-6419-4942-8cf8-6f0d11929d75\",\n \"label\": \"Outcome\",\n \"customY\": 1067.597902097902,\n \"targetX\": 1741.0104895104894\n },\n {\n \"id\": \"4dd0bdb5-8383-4bbd-9466-c8bf968f4527\",\n \"source\": \"125ce287-6419-4942-8cf8-6f0d11929d75\",\n \"target\": \"39320932-ddd4-4e13-9912-f8b022224559\",\n \"label\": \"State informs next decision\",\n \"customY\": 847.5,\n \"targetX\": 1756.5,\n \"sourceX\": 2051.63986013986\n },\n {\n \"id\": \"28c4b73a-643f-42b9-a2f9-bcfda2ae7fa2\",\n \"source\": \"3d3f0b43-26c8-44b8-8138-90e6c328b670\",\n \"target\": \"1609e4a6-d546-41c0-9e6d-7aaa3f179e9d\",\n \"customX\": 750.5454545454546\n }\n ],\n \"personas\": [\n {\n \"id\": \"persona-player\",\n \"name\": \"Player\",\n \"role\": \"Creates actions/signals the enemy reacts to\",\n \"initials\": \"PL\",\n \"category\": \"human\",\n \"color\": \"#22C55E\"\n },\n {\n \"id\": \"persona-enemy\",\n \"name\": \"Enemy Agent\",\n \"role\": \"Perceives, decides, and acts in real-time\",\n \"initials\": \"EN\",\n \"category\": \"ai\",\n \"color\": \"#EF4444\"\n }\n ]\n }\n]\n;\n","\nimport { Example } from '../types';\n\nexport const EXAMPLES: Example[] = [\n {\n id: \"ex_rag_chatbot\",\n primary_task_id: \"task_retrieve\",\n title: \"Enterprise Knowledge Bot (RAG)\",\n description: \"A secure internal chatbot that answers employee questions by retrieving policy documents, ranking them for relevance, and generating citations.\",\n industry: \"Enterprise\",\n complexity: \"Medium\",\n tags: [\"RAG\", \"Search\", \"Internal Tools\"],\n image_url: \"https://images.unsplash.com/photo-1555421689-d68471e18963?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"human_type_input\", x: 0, y: 0, label: \"Employee Query\" },\n { task_id: \"task_represent\", x: 300, y: 0, label: \"Embed Query\" },\n { task_id: \"task_retrieve\", x: 600, y: 0, label: \"Vector Search\" },\n { task_id: \"task_rank\", x: 900, y: 0, label: \"Re-Rank Results\" },\n { task_id: \"task_generate\", x: 1200, y: 0, label: \"Synthesize Answer\" },\n { task_id: \"tp_chat\", x: 1500, y: 0, label: \"Slack Interface\" }\n ]\n },\n {\n id: \"ex_content_mod\",\n primary_task_id: \"task_classify\",\n title: \"Automated Content Moderation\",\n description: \"A high-throughput pipeline for social platforms that filters toxic content using a hybrid AI + Human-in-the-loop approach.\",\n industry: \"Consumer\",\n complexity: \"High\",\n tags: [\"Safety\", \"Classification\", \"HITL\"],\n image_url: \"https://images.unsplash.com/photo-1550751827-4bd374c3f58b?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"system_webhook\", x: 0, y: 0, label: \"New Post Hook\" },\n { task_id: \"task_classify\", x: 300, y: 0, label: \"Toxicity Check\" },\n { task_id: \"system_rules\", x: 600, y: 0, label: \"Confidence Gate\" },\n { task_id: \"system_save_db\", x: 900, y: -150, label: \"Auto-Publish (Safe)\" },\n { task_id: \"human_review\", x: 900, y: 150, label: \"Manual Review (Flagged)\" },\n { task_id: \"system_notification\", x: 1200, y: 150, label: \"Ban User\" }\n ]\n },\n {\n id: \"ex_voice_assistant\",\n primary_task_id: \"task_translate\",\n title: \"Drive-Thru Voice Agent\",\n description: \"A low-latency voice pipeline designed for noisy environments, handling speech-to-text, order logic, and text-to-speech synthesis.\",\n industry: \"Food & Bev\",\n complexity: \"High\",\n tags: [\"Audio\", \"Real-time\", \"Voice\"],\n image_url: \"https://images.unsplash.com/photo-1593508512255-86ab42a8e620?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"data_audio_stream\", x: 0, y: 0, label: \"Mic Input\" },\n { task_id: \"task_translate\", x: 300, y: 0, label: \"Speech-to-Text (Whisper)\" },\n { task_id: \"task_classify\", x: 600, y: 0, label: \"Intent Detection\" },\n { task_id: \"system_api\", x: 900, y: 0, label: \"POS System\" },\n { task_id: \"task_generate\", x: 1200, y: 0, label: \"Generate Confirmation\" },\n { task_id: \"task_translate\", x: 1500, y: 0, label: \"Text-to-Speech\" }\n ]\n },\n {\n id: \"ex_fraud_detection\",\n primary_task_id: \"task_detect\",\n title: \"Financial Fraud Detection\",\n description: \"Real-time transaction monitoring system that detects anomalies and triggers identity verification challenges.\",\n industry: \"Fintech\",\n complexity: \"High\",\n tags: [\"Security\", \"Analysis\", \"Finance\"],\n image_url: \"https://images.unsplash.com/photo-1563986768609-322da13575f3?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"system_webhook\", x: 0, y: 0, label: \"Transaction Event\" },\n { task_id: \"task_monitor\", x: 300, y: 0, label: \"Anomaly Detector\" },\n { task_id: \"system_rules\", x: 600, y: 0, label: \"Risk Score Check\" },\n { task_id: \"system_api\", x: 900, y: -100, label: \"Approve (Low Risk)\" },\n { task_id: \"system_notification\", x: 900, y: 100, label: \"Trigger 2FA (High Risk)\" },\n { task_id: \"human_review\", x: 1200, y: 100, label: \"Fraud Analyst Case\" }\n ]\n },\n {\n id: \"ex_predictive_maint\",\n primary_task_id: \"task_forecast\",\n title: \"IoT Predictive Maintenance\",\n description: \"Analyzing sensor telemetry from manufacturing equipment to forecast failures before they happen.\",\n industry: \"IoT\",\n complexity: \"Medium\",\n tags: [\"IoT\", \"Forecasting\", \"Industrial\"],\n image_url: \"https://images.unsplash.com/photo-1581091226825-a6a2a5aee158?auto=format&fit=crop&q=80&w=1000\",\n nodes: [\n { task_id: \"data_sensor_stream\", x: 0, y: 0, label: \"Vibration Sensors\" },\n { task_id: \"system_load_db\", x: 0, y: 150, label: \"Maintenance Logs\" },\n { task_id: \"task_regress\", x: 300, y: 75, label: \"Predict Failure Probability\" },\n { task_id: \"task_forecast\", x: 600, y: 75, label: \"Time-to-Failure\" },\n { task_id: \"system_rules\", x: 900, y: 75, label: \"Threshold Check\" },\n { task_id: \"system_api\", x: 1200, y: 75, label: \"Schedule Repair Ticket\" }\n ]\n }\n];\n","/**\n * Copyright 2025 quietloudlab\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { AtlasData } from './types';\nimport { META } from './data/meta';\nimport { LAYERS } from './data/layers';\nimport { AI_TASKS } from './data/ai_tasks';\nimport { HUMAN_TASKS } from './data/human_tasks';\nimport { SYSTEM_TASKS } from './data/system_tasks';\nimport { DATA_ARTIFACTS } from './data/artifacts';\nimport { CONSTRAINTS } from './data/constraints';\nimport { TOUCHPOINTS } from './data/touchpoints';\nimport { WORKFLOW_TEMPLATES } from './data/templates';\nimport { EXAMPLES } from './data/examples';\n\nexport const ATLAS_DATA: AtlasData = {\n meta: META,\n layers: LAYERS,\n ai_tasks: AI_TASKS,\n human_tasks: HUMAN_TASKS,\n system_tasks: SYSTEM_TASKS,\n data_artifacts: DATA_ARTIFACTS,\n constraints: CONSTRAINTS,\n touchpoints: TOUCHPOINTS,\n workflow_templates: WORKFLOW_TEMPLATES,\n examples: EXAMPLES\n};\n"]}