docs: block send message pending connector evidence
This commit is contained in:
@@ -1402,15 +1402,15 @@ Implemented and verified in this loop:
|
||||
- If a safe connector exists, write C16 around preview-first `isphere_send_message` design or implementation.
|
||||
- If evidence is insufficient, mark send-message blocked on live/internal-sandbox connector evidence and choose the next read hardening node.
|
||||
|
||||
- [ ] **Step 1: Inspect current source evidence for send-message connector candidates**
|
||||
- [x] **Step 1: Inspect current source evidence for send-message connector candidates**
|
||||
|
||||
Use committed docs and generated selector/source-discovery reports only. Do not infer a write path from unrelated read evidence.
|
||||
|
||||
- [ ] **Step 2: Update matrix and next loop**
|
||||
- [x] **Step 2: Update matrix and next loop**
|
||||
|
||||
Record whether send-message implementation can proceed, and rewrite C16 accordingly.
|
||||
|
||||
- [ ] **Step 3: Verify docs-only change and commit**
|
||||
- [x] **Step 3: Verify docs-only change and commit**
|
||||
|
||||
Run:
|
||||
|
||||
@@ -1424,6 +1424,71 @@ Expected: all exit 0. Commit exact C15 paths only.
|
||||
|
||||
---
|
||||
|
||||
## Loop C15 Result
|
||||
|
||||
Evidence precheck result:
|
||||
|
||||
- `docs/mcp-core-tools-contract.md` defines `isphere_send_message` with preview/production modes, but it is a contract only.
|
||||
- `native/ISphereWinHelper/Program.cs` currently supports only `version`, `self_check`, `scan_windows`, and `dump_uia`; there is no helper op for click, type, draft, send, upload, or invoke.
|
||||
- `internal/uiaselector/catalog.go` contains read-only locate selectors only and does not validate a message input, open-conversation flow, or send button.
|
||||
- N12R live-capture docs explicitly allow only read-only scan/dump evidence and forbid clicking, typing, sending, uploading, and downloading during capture.
|
||||
- Decision: `isphere_send_message` implementation is blocked until bridge/API/local-service, UIA action-chain, or network/protocol connector evidence is validated.
|
||||
|
||||
---
|
||||
|
||||
## Loop C16: Configured PacketReader source hardening
|
||||
|
||||
**Goal:** Improve the existing read-tool path by allowing operator-local PacketReader evidence to be loaded from a directory or multiple log files, rather than only one explicit encrypted log-line file.
|
||||
|
||||
**Planned files:**
|
||||
- Modify: `internal/isphere/file_source.go`
|
||||
- Modify: `internal/isphere/file_source_test.go`
|
||||
- Modify: `internal/mcpserver/server.go`
|
||||
- Modify: `internal/mcpserver/server_test.go`
|
||||
- Modify: `scripts/verify-go-mcp.ps1`
|
||||
- Modify: `docs/go-mcp-runbook.md`
|
||||
- Modify: `docs/current-status-card.md`
|
||||
- Modify: `docs/superpowers/plans/2026-07-09-stage-c-log-backed-receive-messages-loop.md`
|
||||
|
||||
**Planned behavior:**
|
||||
- Add a safe directory/multi-file loader for encrypted PacketReader log lines. Sort paths deterministically and ignore blank lines.
|
||||
- Add a new env option such as `ISPHERE_PACKET_LOG_DIR`; fail fast if both file and directory env vars are set ambiguously.
|
||||
- Extend verification with a synthetic directory fixture proving configured receive/contact/group/file-list tools still work from the hardened source path.
|
||||
- Keep raw N12-pre evidence under ignored/operator-local paths; commit only synthetic fixtures/tests.
|
||||
|
||||
- [ ] **Step 1: Write failing directory source test**
|
||||
|
||||
Create or extend `internal/isphere/file_source_test.go` and run:
|
||||
|
||||
```powershell
|
||||
go test ./internal/isphere -run TestLoadEncryptedPacketLogSourceFromDirectoryReadsSortedLogFiles -v
|
||||
```
|
||||
|
||||
Expected initial failure: directory loader does not exist.
|
||||
|
||||
- [ ] **Step 2: Implement directory/multi-file loader**
|
||||
|
||||
Implement minimal deterministic loading over `.log`/`.txt` files without decrypting during load.
|
||||
|
||||
- [ ] **Step 3: Wire env and verification**
|
||||
|
||||
Add `ISPHERE_PACKET_LOG_DIR` handling in `mcpserver.NewServerFromEnv()` and update the verification script with a synthetic directory smoke.
|
||||
|
||||
- [ ] **Step 4: Run full verification and commit**
|
||||
|
||||
Run:
|
||||
|
||||
```powershell
|
||||
git diff --check
|
||||
go test ./...
|
||||
go build ./cmd/isphere-mcp
|
||||
powershell -NoProfile -ExecutionPolicy Bypass -File scripts/verify-go-mcp.ps1
|
||||
```
|
||||
|
||||
Expected: all exit 0. Remove any generated root `isphere-mcp.exe` after build. Commit exact C16 paths only and rewrite the next loop from actual results.
|
||||
|
||||
---
|
||||
|
||||
## Self-Review
|
||||
|
||||
- Spec coverage: the plan follows the user's cyclic requirement: plan first, implement one loop at a time, update the next loop after each result, and ask only on blockers.
|
||||
|
||||
Reference in New Issue
Block a user