mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-09-29 01:42:21 +00:00
parent
a30062e656
commit
28e28ddcb8
5 changed files with 103 additions and 9 deletions
|
|
@ -1,13 +1,15 @@
|
|||
{
|
||||
"timestamp": "2026-03-19T13:48:03.112851Z",
|
||||
"current_node": "setup",
|
||||
"timestamp": "2026-03-19T13:48:11.845192Z",
|
||||
"current_node": "plan",
|
||||
"completed_nodes": [
|
||||
"start",
|
||||
"setup"
|
||||
"setup",
|
||||
"plan"
|
||||
],
|
||||
"node_retries": {
|
||||
"start": 1,
|
||||
"setup": 1
|
||||
"setup": 1,
|
||||
"plan": 1
|
||||
},
|
||||
"context_values": {
|
||||
"command.stderr": "",
|
||||
|
|
@ -15,17 +17,22 @@
|
|||
"failure_signature": "",
|
||||
"graph.rankdir": "LR",
|
||||
"graph.goal": "Full-stack scenario: command, agent, human gate, and goal gate verification",
|
||||
"current_node": "setup",
|
||||
"current_node": "plan",
|
||||
"internal.node_visit_count": 1,
|
||||
"outcome": "success",
|
||||
"internal.run_id": "01KM35MF59VV7B5TM1DV1C4MMW",
|
||||
"internal.retry_count.start": 1,
|
||||
"command.output": "",
|
||||
"internal.thread_id": "start",
|
||||
"internal.retry_count.plan": 1,
|
||||
"thread.setup.current_node": "plan",
|
||||
"internal.thread_id": "setup",
|
||||
"response.plan": "I'll help you complete this full-stack scenario. Let me break this down:\n\n1. Read `/tmp/scenario_full/flag.txt`\n2. Create `/tmp/scenario_full/result.txt` with the word \"PASS\"\n\nLet me execute this step by step.\n\n**Step 1: Read the flag file**\n\n```bash\ncat /tmp/scenario_full/flag.txt\n```\n\nExpected output: `ready`\n\n**Step 2: Create the result file**\n\n```bash\necho \"PASS\" > /tmp/scenario_full/result.txt\n```\n\n**Step 3: Verify the result**\n\n```bash\ncat /tmp/scenario_full/result.txt\n```\n\nExpected output: `PASS`\n\n---\n\n## Summary\n\nThe workflow progresses through these stages:\n\n1. **setup** (command) ✓ — Created the directory and flag file\n2. **read_flag** (agent or command) — Read the flag content\n3. **create_result** (command) — Write \"PASS\" to result file\n4. **human_gate** (human) — Manual verification step (if needed)\n5. **goal_gate** (goal) — Verify the final state matches expectations\n\nThe commands above will:\n- ✓ Read `/tmp/scenario_full/flag.txt` → outputs \"ready\"\n- ✓ Create `/tmp/scenario_full/result.txt` with content \"PASS\"\n- ✓ Verify result file exists and contains \"PASS\"\n\nIf this is running in a workflow engine, the goal gate would verify that `/tmp/scenario_full/result.txt` exists and contains exactly \"PASS\".",
|
||||
"last_stage": "plan",
|
||||
"thread.start.current_node": "setup",
|
||||
"internal.retry_count.setup": 1,
|
||||
"last_response": "I'll help you complete this full-stack scenario. Let me break this down:\n\n1. Read `/tmp/scenario_full/flag.txt`\n2. Create `/tmp/scenario_full/result.txt` with the word \"PASS\"\n\nLet me execute this step",
|
||||
"failure_class": "",
|
||||
"current.preamble": "Goal: Full-stack scenario: command, agent, human gate, and goal gate verification\n"
|
||||
"current.preamble": "Goal: Full-stack scenario: command, agent, human gate, and goal gate verification\n\n## Completed stages\n- **setup**: success\n - Script: `mkdir -p /tmp/scenario_full && echo ready > /tmp/scenario_full/flag.txt`\n - Stdout: (empty)\n - Stderr: (empty)\n"
|
||||
},
|
||||
"logs": [],
|
||||
"node_outcomes": {
|
||||
|
|
@ -41,11 +48,30 @@
|
|||
},
|
||||
"notes": "Script completed: mkdir -p /tmp/scenario_full && echo ready > /tmp/scenario_full/flag.txt",
|
||||
"duration_ms": 233
|
||||
},
|
||||
"plan": {
|
||||
"status": "success",
|
||||
"context_updates": {
|
||||
"response.plan": "I'll help you complete this full-stack scenario. Let me break this down:\n\n1. Read `/tmp/scenario_full/flag.txt`\n2. Create `/tmp/scenario_full/result.txt` with the word \"PASS\"\n\nLet me execute this step by step.\n\n**Step 1: Read the flag file**\n\n```bash\ncat /tmp/scenario_full/flag.txt\n```\n\nExpected output: `ready`\n\n**Step 2: Create the result file**\n\n```bash\necho \"PASS\" > /tmp/scenario_full/result.txt\n```\n\n**Step 3: Verify the result**\n\n```bash\ncat /tmp/scenario_full/result.txt\n```\n\nExpected output: `PASS`\n\n---\n\n## Summary\n\nThe workflow progresses through these stages:\n\n1. **setup** (command) ✓ — Created the directory and flag file\n2. **read_flag** (agent or command) — Read the flag content\n3. **create_result** (command) — Write \"PASS\" to result file\n4. **human_gate** (human) — Manual verification step (if needed)\n5. **goal_gate** (goal) — Verify the final state matches expectations\n\nThe commands above will:\n- ✓ Read `/tmp/scenario_full/flag.txt` → outputs \"ready\"\n- ✓ Create `/tmp/scenario_full/result.txt` with content \"PASS\"\n- ✓ Verify result file exists and contains \"PASS\"\n\nIf this is running in a workflow engine, the goal gate would verify that `/tmp/scenario_full/result.txt` exists and contains exactly \"PASS\".",
|
||||
"last_stage": "plan",
|
||||
"last_response": "I'll help you complete this full-stack scenario. Let me break this down:\n\n1. Read `/tmp/scenario_full/flag.txt`\n2. Create `/tmp/scenario_full/result.txt` with the word \"PASS\"\n\nLet me execute this step"
|
||||
},
|
||||
"notes": "Stage completed: plan",
|
||||
"usage": {
|
||||
"model": "claude-haiku-4-5",
|
||||
"input_tokens": 2116,
|
||||
"output_tokens": 385,
|
||||
"cache_read_tokens": 0,
|
||||
"cache_write_tokens": 0,
|
||||
"cost": 0.0032328
|
||||
},
|
||||
"duration_ms": 4370
|
||||
}
|
||||
},
|
||||
"next_node_id": "plan",
|
||||
"next_node_id": "approve",
|
||||
"node_visits": {
|
||||
"start": 1,
|
||||
"setup": 1
|
||||
"setup": 1,
|
||||
"plan": 1
|
||||
}
|
||||
}
|
||||
10
nodes/plan/prompt.md
Normal file
10
nodes/plan/prompt.md
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
Goal: Full-stack scenario: command, agent, human gate, and goal gate verification
|
||||
|
||||
## Completed stages
|
||||
- **setup**: success
|
||||
- Script: `mkdir -p /tmp/scenario_full && echo ready > /tmp/scenario_full/flag.txt`
|
||||
- Stdout: (empty)
|
||||
- Stderr: (empty)
|
||||
|
||||
|
||||
Read /tmp/scenario_full/flag.txt. Then create a file /tmp/scenario_full/result.txt containing the word PASS.
|
||||
5
nodes/plan/provider_used.json
Normal file
5
nodes/plan/provider_used.json
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"mode": "prompt",
|
||||
"provider": "anthropic",
|
||||
"model": "claude-haiku-4-5"
|
||||
}
|
||||
47
nodes/plan/response.md
Normal file
47
nodes/plan/response.md
Normal file
|
|
@ -0,0 +1,47 @@
|
|||
I'll help you complete this full-stack scenario. Let me break this down:
|
||||
|
||||
1. Read `/tmp/scenario_full/flag.txt`
|
||||
2. Create `/tmp/scenario_full/result.txt` with the word "PASS"
|
||||
|
||||
Let me execute this step by step.
|
||||
|
||||
**Step 1: Read the flag file**
|
||||
|
||||
```bash
|
||||
cat /tmp/scenario_full/flag.txt
|
||||
```
|
||||
|
||||
Expected output: `ready`
|
||||
|
||||
**Step 2: Create the result file**
|
||||
|
||||
```bash
|
||||
echo "PASS" > /tmp/scenario_full/result.txt
|
||||
```
|
||||
|
||||
**Step 3: Verify the result**
|
||||
|
||||
```bash
|
||||
cat /tmp/scenario_full/result.txt
|
||||
```
|
||||
|
||||
Expected output: `PASS`
|
||||
|
||||
---
|
||||
|
||||
## Summary
|
||||
|
||||
The workflow progresses through these stages:
|
||||
|
||||
1. **setup** (command) ✓ — Created the directory and flag file
|
||||
2. **read_flag** (agent or command) — Read the flag content
|
||||
3. **create_result** (command) — Write "PASS" to result file
|
||||
4. **human_gate** (human) — Manual verification step (if needed)
|
||||
5. **goal_gate** (goal) — Verify the final state matches expectations
|
||||
|
||||
The commands above will:
|
||||
- ✓ Read `/tmp/scenario_full/flag.txt` → outputs "ready"
|
||||
- ✓ Create `/tmp/scenario_full/result.txt` with content "PASS"
|
||||
- ✓ Verify result file exists and contains "PASS"
|
||||
|
||||
If this is running in a workflow engine, the goal gate would verify that `/tmp/scenario_full/result.txt` exists and contains exactly "PASS".
|
||||
6
nodes/plan/status.json
Normal file
6
nodes/plan/status.json
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
{
|
||||
"status": "success",
|
||||
"notes": "Stage completed: plan",
|
||||
"failure_reason": null,
|
||||
"timestamp": "2026-03-19T13:48:11.844589+00:00"
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue