71 lines
3.5 KiB
JSON
71 lines
3.5 KiB
JSON
{
|
|
"version": "1.0",
|
|
"timestamp": "2026-04-07T15:11:42.203Z",
|
|
"phase": "01.1",
|
|
"phase_name": "matrix-restart-reconciliation-and-dev-reset-workflow",
|
|
"phase_dir": ".planning/phases/01.1-matrix-restart-reconciliation-and-dev-reset-workflow",
|
|
"plan": 3,
|
|
"task": 1,
|
|
"total_tasks": 2,
|
|
"status": "paused",
|
|
"completed_tasks": [],
|
|
"remaining_tasks": [
|
|
{
|
|
"id": 1,
|
|
"name": "Add a dev-only Matrix reset CLI with explicit modes",
|
|
"status": "not_started"
|
|
},
|
|
{
|
|
"id": 2,
|
|
"name": "Replace the README reset ritual with the new restart and reset workflow",
|
|
"status": "not_started"
|
|
}
|
|
],
|
|
"blockers": [
|
|
{
|
|
"description": "The longer-term Phase 02 platform integration is still blocked because `master` does not yet expose a stable user/chat/session/settings API for surfaces.",
|
|
"type": "external",
|
|
"workaround": "Use the direct `agent` WebSocket for a working prototype and keep control-plane concerns deferred behind a compatibility shim."
|
|
},
|
|
{
|
|
"description": "The current `agent` implementation uses a shared fixed thread id, so all prototype conversations would share memory unless the agent side is parameterized by chat/session.",
|
|
"type": "external",
|
|
"workaround": "Ask the platform team for a minimal upstream change to accept per-chat thread identity, then keep the bot-side implementation inside `sdk/real.py`."
|
|
}
|
|
],
|
|
"human_actions_pending": [
|
|
{
|
|
"action": "Decide whether the direct-agent Matrix prototype should live in this repo or in a separate repo.",
|
|
"context": "This determines whether the prototype is treated as a short-lived spike or the first durable real-backend path for surfaces.",
|
|
"blocking": true
|
|
},
|
|
{
|
|
"action": "Confirm with the platform team the minimal agent-side change needed to support per-chat or per-user thread identity.",
|
|
"context": "Without that, all conversations on the prototype would share a single memory thread.",
|
|
"blocking": true
|
|
}
|
|
],
|
|
"decisions": [
|
|
{
|
|
"decision": "Do not use `master` as the prototype backend yet.",
|
|
"rationale": "Live repo analysis shows only minimal HTTP endpoints, not the consumer-facing APIs required by surfaces.",
|
|
"phase": "02"
|
|
},
|
|
{
|
|
"decision": "Use the direct `agent` WebSocket as the prototype response path.",
|
|
"rationale": "It already exists and can be wrapped behind the current `PlatformClient` boundary with limited adapter impact.",
|
|
"phase": "02"
|
|
},
|
|
{
|
|
"decision": "Keep Matrix adapter logic as stable as possible and absorb platform differences inside a new `sdk/real.py` implementation.",
|
|
"rationale": "This preserves expandability for later platform versions and avoids coupling transport code to a temporary backend shape.",
|
|
"phase": "02"
|
|
}
|
|
],
|
|
"uncommitted_files": [
|
|
".planning/HANDOFF.json",
|
|
".planning/phases/01.1-matrix-restart-reconciliation-and-dev-reset-workflow/.continue-here.md"
|
|
],
|
|
"next_action": "On resume, either continue Phase 01.1 Plan 03 Task 1 (`adapter.matrix.reset`) or finish the design decision about whether the direct-agent prototype belongs in this repo or a separate repo.",
|
|
"context_notes": "Latest conclusion as of 2026-04-07: full platform integration through `master` is still premature, but a usable Matrix prototype can be built now by introducing `sdk/real.py` as a compatibility shim over the direct `agent` WebSocket. The critical open design question is repo placement, followed by a small upstream request for per-chat thread identity in the agent."
|
|
}
|