repositories / pi-ext
pi-ext
bugabingas pi extensions
owned by admin
extensions/handoff/demo/scene.json
Raw{
"title": "handoff",
"extensions": ["handoff"],
"cols": 100,
"rows": 26,
"turns": [
{
"text": "Done. The CLI now rejects empty tokens before any request leaves the process; the guard lives in src/cli/auth.ts and both failing cases are covered in auth.test.ts.",
"usage": {
"input": 38200,
"output": 54
}
},
{
"text": "## Context\nWe hardened token handling in the CLI: empty or whitespace-only tokens are rejected up front with a clear error, before any network call.\nKey decisions:\n- validate at the boundary, not deep in the request path\n- one error message, reused by every entry point\n\nFiles involved:\n- src/cli/auth.ts\n- src/cli/auth.test.ts\n\n## Task\nAdd the same empty-token guard to the API layer in src/api/auth.ts, reusing the CLI's error message, and cover it in src/api/auth.test.ts.\n\n## Suggested skills\n- vertical-slices",
"usage": {
"input": 39100,
"output": 160
}
}
],
"steps": [
{
"expect": "demo-model",
"hold": 6
},
{
"type": "reject empty tokens in the cli before any request goes out",
"key": "enter",
"expect": "both failing cases are covered",
"hold": 12
},
{
"type": "/handoff now add the same guard to the API layer",
"key": "enter",
"expect": "Edit handoff prompt",
"timeout": 20000,
"hold": 12
},
{
"key": "ctrl-j",
"hold": 0.3
},
{
"type": "- keep the CLI untouched",
"hold": 6
},
{
"key": "enter",
"fresh": true,
"expect": "Handoff ready",
"hold": 14.0
},
{
"key": "ctrl-c",
"hold": 0.3
},
{
"key": "ctrl-c"
}
]
}