docs: mark internal normalized writer plans as historical

This commit is contained in:
木炎
2026-05-06 09:47:38 +08:00
parent 8162118e6d
commit 6122b521a8
2 changed files with 23 additions and 14 deletions

View File

@@ -1,16 +1,22 @@
# Skill Normalized Result And Dashboard Local Reader Implementation Plan # Skill Normalized Result And Dashboard Local Reader Implementation Plan
> Historical note (2026-05-06): this plan describes the pre-extraction in-repo `normalized_writer` implementation that once lived inside `claw-new`. The canonical implementation now lives in `D:\data\ideaSpace\rust\sgClaw\normalized_writer`.
>
> Historical archive scope: paths such as `src/result_normalization/*`, `src/bin/normalized_writer.rs`, `sgclaw::result_normalization`, and `CARGO_BIN_EXE_normalized_writer` are preserved below only as historical implementation context.
>
> Historical execution status: this file is retained as an archive of the original in-repo execution sequence. The task lists and command blocks below are no longer valid implementation instructions for `claw-new`.
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking. > **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
**Goal:** Build a stable normalized-result pipeline in `claw-new`, a local HTTP reader in `digital-employee`, and a dashboard data path that consumes normalized skill results instead of raw `run-record.json`. **Goal:** Historical goal: build a stable normalized-result pipeline in `claw-new`, a local HTTP reader in `digital-employee`, and a dashboard data path that consumes normalized skill results instead of raw `run-record.json`.
**Architecture:** `claw-new` adds a result normalizer that reads scheduled skill `run-record.json` files and writes stable normalized snapshots plus `index.json`. `digital-employee` adds an embedded localhost-only Node reader that serves those normalized files over HTTP, while the Vue dashboard replaces static mock imports with a polling data layer that consumes the local API and supports `count_snapshot` and `detail_snapshot`. **Architecture:** Historical architecture: `claw-new` added a result normalizer that read scheduled skill `run-record.json` files and wrote stable normalized snapshots plus `index.json`. `digital-employee` added an embedded localhost-only Node reader that served those normalized files over HTTP, while the Vue dashboard replaced static mock imports with a polling data layer that consumed the local API and supported `count_snapshot` and `detail_snapshot`.
**Tech Stack:** Rust (`serde`, `serde_json`, existing `sg_claw` CLI), Node/Express in `digital-employee`, Vue 2 + Vuex + Vue CLI dev proxy. **Tech Stack:** Historical stack: Rust (`serde`, `serde_json`, existing `sg_claw` CLI), Node/Express in `digital-employee`, Vue 2 + Vuex + Vue CLI dev proxy.
--- ---
## File Structure ## Historical File Structure
### `claw-new` files ### `claw-new` files
@@ -69,7 +75,7 @@
--- ---
### Task 1: Add Public Normalized Result Contract In `claw-new` ### Task 1: Historical Execution - Add Public Normalized Result Contract In `claw-new`
**Files:** **Files:**
- Create: `src/result_normalization/contract.rs` - Create: `src/result_normalization/contract.rs`
@@ -1599,7 +1605,7 @@ git -C D:/data/ideaSpace/rust/sgClaw/digital-employee add src/store/index.js src
git -C D:/data/ideaSpace/rust/sgClaw/digital-employee commit -m "feat: add dashboard results store" git -C D:/data/ideaSpace/rust/sgClaw/digital-employee commit -m "feat: add dashboard results store"
``` ```
### Task 10: Replace Static Report Data With Live Results In Dashboard ### Task 10: Historical Execution - Replace Static Report Data With Live Results In Dashboard
**Files:** **Files:**
- Modify: `D:/data/ideaSpace/rust/sgClaw/digital-employee/src/views/Dashboard.vue` - Modify: `D:/data/ideaSpace/rust/sgClaw/digital-employee/src/views/Dashboard.vue`
@@ -1710,7 +1716,7 @@ git -C D:/data/ideaSpace/rust/sgClaw/digital-employee add src/views/Dashboard.vu
git -C D:/data/ideaSpace/rust/sgClaw/digital-employee commit -m "feat: wire dashboard to normalized results" git -C D:/data/ideaSpace/rust/sgClaw/digital-employee commit -m "feat: wire dashboard to normalized results"
``` ```
### Task 11: Document Operator Workflow And Validate End-To-End ### Task 11: Historical Execution - Document Operator Workflow And Validate End-To-End
**Files:** **Files:**
- Modify: `D:/data/ideaSpace/rust/sgClaw/digital-employee/README.md` - Modify: `D:/data/ideaSpace/rust/sgClaw/digital-employee/README.md`
@@ -1786,4 +1792,3 @@ npm run serve:web
git add docs/superpowers/plans/2026-04-26-skill-normalized-result-and-dashboard-local-reader-implementation-plan.md D:/data/ideaSpace/rust/sgClaw/digital-employee/README.md git add docs/superpowers/plans/2026-04-26-skill-normalized-result-and-dashboard-local-reader-implementation-plan.md D:/data/ideaSpace/rust/sgClaw/digital-employee/README.md
git commit -m "docs: document normalized result implementation workflow" git commit -m "docs: document normalized result implementation workflow"
``` ```

View File

@@ -2,7 +2,9 @@
Date: 2026-04-26 Date: 2026-04-26
Status: Proposed design for implementation Status: Historical design archive; the in-repo `normalized_writer` design described here was later migrated out of `claw-new`
Historical note (2026-05-06): this document records the pre-extraction design that originally placed `normalized_writer` inside `claw-new`. The canonical implementation now lives in `D:\data\ideaSpace\rust\sgClaw\normalized_writer`.
Related baseline designs: Related baseline designs:
@@ -40,14 +42,14 @@ The system must support:
This design is not about changing business detection logic. This design is not about changing business detection logic.
It is about adding a stable result contract and a stable local read path for dashboard consumption. It is about adding a stable result contract and a stable local read path for dashboard consumption.
## Non-Negotiable Architecture Constraints ## Historical Architecture Constraints
The implementation must preserve these boundaries: The pre-extraction design required these boundaries:
1. `run-record.json` remains the raw runtime/audit artifact 1. `run-record.json` remains the raw runtime/audit artifact
2. dashboard must not directly consume `run-record.json` 2. dashboard must not directly consume `run-record.json`
3. normalized result files become the only supported dashboard-facing data contract 3. normalized result files become the only supported dashboard-facing data contract
4. `claw-new` is responsible for producing normalized files 4. at the time, `claw-new` was responsible for producing normalized files
5. `digital-employee` is responsible for reading normalized files through a local API 5. `digital-employee` is responsible for reading normalized files through a local API
6. dashboard is responsible only for rendering and polling the local API 6. dashboard is responsible only for rendering and polling the local API
7. first implementation uses HTTP polling, not websocket 7. first implementation uses HTTP polling, not websocket
@@ -738,9 +740,11 @@ The index must contain enough information for:
2. quick health/status summary 2. quick health/status summary
3. later detail-file lookup 3. later detail-file lookup
## `claw-new` Normalizer Design ## Historical `claw-new` Normalizer Design
The normalizer must live as a first-class module, not ad hoc file-writing logic. In the pre-extraction design, the normalizer was intended to live as a first-class module, not ad hoc file-writing logic.
Migration note: `normalized_writer` was later extracted into the standalone repository `D:\data\ideaSpace\rust\sgClaw\normalized_writer`. The structure below is the original in-repo design and is no longer the active `claw-new` layout.
Recommended structure: Recommended structure: