diff --git a/docs/ecosystem/ECOSYSTEM_EVENT_TAXONOMY.md b/docs/ecosystem/ECOSYSTEM_EVENT_TAXONOMY.md index 4e043c86..7759e753 100644 --- a/docs/ecosystem/ECOSYSTEM_EVENT_TAXONOMY.md +++ b/docs/ecosystem/ECOSYSTEM_EVENT_TAXONOMY.md @@ -209,6 +209,7 @@ Commits: - `41fa2cd` drafted the event taxonomy - `76f1b47` added canonical Phase 1 event schemas and example payloads - `78918fb` extended canonical artifact payloads so Phase 2 can reuse `artifact.created` and `artifact.linked` for `plan`, `routine`, and `habit` +- `e6b58b7` extended canonical artifact payloads so Phase 3 can reuse `artifact.created` for `trail-report` and preserve the audited note -> memory seam without introducing a second event family --- diff --git a/docs/ecosystem/ECOSYSTEM_IMPLEMENTATION_TRACKER.md b/docs/ecosystem/ECOSYSTEM_IMPLEMENTATION_TRACKER.md index 5db39e0a..2d2de6ae 100644 --- a/docs/ecosystem/ECOSYSTEM_IMPLEMENTATION_TRACKER.md +++ b/docs/ecosystem/ECOSYSTEM_IMPLEMENTATION_TRACKER.md @@ -145,7 +145,7 @@ Example: - ChronoMind imports the latest plan into a routine artifact and preserves plan-created causation - EffoRise imports the latest routine into a habit artifact and preserves routine-linked causation - Codex completed a manual runtime walkthrough on `2026-04-03` using `/tmp/bytelyst-phase2-walkthrough.WpEjZu`, which produced the causal chain `evt_plan_created_b202f23f69a4 -> evt_routine_created_4c07d3fdcd07 -> evt_routine_linked_08b9db8a7013 -> evt_habit_created_f532f13332d1 -> evt_habit_linked_7be9a47928e3` -- [ ] Cowork -> ActionTrail -> NoteLett -> MindLyst audited artifact flow +- [x] Cowork -> ActionTrail -> NoteLett -> MindLyst audited artifact flow Repos: - `oss/learning_ai_claw-cowork` - `learning_ai_trails` @@ -153,7 +153,16 @@ Example: - `learning_multimodal_memory_agents` - `learning_ai_common_plat` Commits: - - pending + - `e6b58b7` + - `e294cf5` + - `7678c9b` + - `43819f1` + Status note: + - shared contract now supports a canonical `trail-report` payload while reusing generic `artifact.created`, `artifact.linked`, and `memory.entry.created` + - ActionTrail imports Cowork audit-export JSON into a persisted `trail-report` artifact plus latest created-event index + - NoteLett imports the latest `trail-report` into a markdown audit note and preserves upstream trail-report causation + - MindLyst imports the latest audit note into an `insight` memory proposal and preserves upstream note-link lineage + - Codex completed a manual runtime walkthrough on `2026-04-03` using `/tmp/bytelyst-phase3-walkthrough.myuu1z`, which produced the causal chain `evt_trail_created_b40197d5302e -> evt_note_created_abc1ad821974 -> evt_note_linked_9fd9a2b03363 -> evt_memory_8103b59fb40c` --- @@ -189,3 +198,4 @@ Execution status: - Windsurf verified the `learning_ai_notes` Phase 1 backend path with `cd backend && npx vitest run`; 22 files passed and 106 tests passed, including the focused ecosystem-phase1 coverage - shared contract now also supports the Phase 2 `plan -> routine -> habit` seam through `artifact.created` and `artifact.linked` - Phase 2 walkthrough is complete and tracked in [`PHASE2_PLAN_ROUTINE_HABIT_EXECUTION_PLAN.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/PHASE2_PLAN_ROUTINE_HABIT_EXECUTION_PLAN.md) +- Phase 3 walkthrough is complete and tracked in [`PHASE3_COWORK_ACTIONTRAIL_NOTE_MEMORY_EXECUTION_PLAN.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/PHASE3_COWORK_ACTIONTRAIL_NOTE_MEMORY_EXECUTION_PLAN.md) diff --git a/docs/ecosystem/ECOSYSTEM_SHARED_ARTIFACT_SCHEMA.md b/docs/ecosystem/ECOSYSTEM_SHARED_ARTIFACT_SCHEMA.md index 91d295e1..0204b5f2 100644 --- a/docs/ecosystem/ECOSYSTEM_SHARED_ARTIFACT_SCHEMA.md +++ b/docs/ecosystem/ECOSYSTEM_SHARED_ARTIFACT_SCHEMA.md @@ -1,6 +1,6 @@ # Ecosystem Shared Artifact Schema -> **Status:** Phase 2 baseline implemented +> **Status:** Phase 3 baseline implemented > **Owner:** `learning_ai_common_plat` > **Purpose:** Define the canonical cross-product artifact model so notes, transcripts, plans, memories, trails, routes, and agent outputs can interoperate cleanly. @@ -190,7 +190,7 @@ Phase 2 adopters: - [ ] define migration strategy for first adopters - [x] add examples for LysnrAI, NoteLett, and MindLyst - [x] add contract-backed examples for FlowMonk, ChronoMind, and EffoRise -- [ ] add examples for Cowork and ActionTrail +- [x] add examples for Cowork and ActionTrail Current implementation location: @@ -202,3 +202,4 @@ Commits: - `eae3409` drafted the initial stub - `76f1b47` added Phase 1 artifact schemas and canonical fixtures - `78918fb` added Phase 2 artifact schemas for `plan`, `routine`, and `habit` +- `e6b58b7` added Phase 3 `trail-report` schema coverage and examples for Cowork/ActionTrail diff --git a/docs/ecosystem/PHASE3_COWORK_ACTIONTRAIL_NOTE_MEMORY_EXECUTION_PLAN.md b/docs/ecosystem/PHASE3_COWORK_ACTIONTRAIL_NOTE_MEMORY_EXECUTION_PLAN.md new file mode 100644 index 00000000..9d4bc065 --- /dev/null +++ b/docs/ecosystem/PHASE3_COWORK_ACTIONTRAIL_NOTE_MEMORY_EXECUTION_PLAN.md @@ -0,0 +1,128 @@ +# Phase 3 Execution Plan + +> **Flow:** `Cowork -> ActionTrail -> NoteLett -> MindLyst` +> **Status:** Implemented baseline +> **Owner:** `Codex` +> **Purpose:** Standardize the audited artifact flow where Cowork audit exports become ActionTrail trail reports, then readable NoteLett notes, then MindLyst insight memories. + +--- + +## 1. Scope + +Phase 3 proves that a Cowork execution can create durable downstream value without requiring a live Rust/Tauri integration in the same implementation window. + +Baseline seam: + +1. Cowork exports structured audit JSON. +2. ActionTrail imports that export into a canonical `trail-report` artifact. +3. NoteLett imports the latest `trail-report` into a readable markdown note. +4. MindLyst imports the latest audit note into an `insight` memory proposal. + +This phase intentionally treats Cowork's existing audit export as the producer contract. It does not require new desktop runtime plumbing. + +--- + +## 2. Repos In Scope + +- `oss/learning_ai_claw-cowork` +- `learning_ai_trails` +- `learning_ai_notes` +- `learning_multimodal_memory_agents` +- `learning_ai_common_plat` + +--- + +## 3. Implementation Decisions + +- Reuse generic ecosystem events: + - `artifact.created` + - `artifact.linked` + - `memory.entry.created` +- Add a canonical `trail-report` payload to the shared artifact schema. +- Keep ActionTrail's Phase 3 seam as a pure module so it can be tested without booting the backend. +- Reuse the existing NoteLett and MindLyst import pattern from Phase 1. +- Preserve causal lineage across all persisted latest-event indexes. + +--- + +## 4. Code Surfaces + +### `learning_ai_common_plat` + +- `packages/events/src/ecosystem.ts` +- `packages/events/src/ecosystem.test.ts` + +### `learning_ai_trails` + +- `backend/src/lib/ecosystem-phase3.ts` +- `backend/src/lib/ecosystem-phase3.test.ts` + +### `learning_ai_notes` + +- `backend/src/lib/ecosystem-phase3.ts` +- `backend/src/lib/ecosystem-phase3.test.ts` + +### `learning_multimodal_memory_agents` + +- `mindlyst-native/web/src/lib/ecosystem-phase3.ts` +- `mindlyst-native/web/src/lib/ecosystem-phase3.test.ts` + +--- + +## 5. Verification Commands + +- `cd learning_ai_common_plat/packages/events && pnpm exec vitest run src/ecosystem.test.ts` +- `cd learning_ai_trails && node --experimental-strip-types --test backend/src/lib/ecosystem-phase3.test.ts` +- `cd learning_ai_notes && node --experimental-strip-types --test backend/src/lib/ecosystem-phase3.test.ts` +- `cd learning_multimodal_memory_agents/mindlyst-native/web && node --experimental-strip-types --test src/lib/ecosystem-phase3.test.ts` + +--- + +## 6. Manual Walkthrough Evidence + +Walkthrough root: + +- `/tmp/bytelyst-phase3-walkthrough.myuu1z` + +Observed causal chain: + +- `evt_trail_created_b40197d5302e` +- `evt_note_created_abc1ad821974` +- `evt_note_linked_9fd9a2b03363` +- `evt_memory_8103b59fb40c` + +Observed artifact chain: + +- `art_trail_5af2de023e77` +- `art_note_2146a3d0cd11` +- `art_memory_11f691d1b201` + +Observed semantics: + +- Cowork audit export produced `4` audited actions and `2` safety signals. +- ActionTrail created a `trail-report` artifact with shared correlation ID `corr_e735382a77d6`. +- NoteLett created a markdown audit note linked back to the `trail-report`. +- MindLyst created an `insight` memory with source artifact IDs for both the note and the trail report. + +--- + +## 7. Done Criteria + +- [x] shared contract accepts `trail-report` artifacts +- [x] ActionTrail can persist a canonical `trail-report` artifact and latest created-event index +- [x] NoteLett can persist a canonical note artifact derived from the latest `trail-report` +- [x] MindLyst can persist a canonical `insight` memory derived from the latest audit note +- [x] all focused module tests pass +- [x] one manual walkthrough proves the end-to-end causal chain +- [ ] repo-local runtime route wiring exists for all three products + +The remaining unchecked item is explicitly deferred. Phase 3 baseline is still considered complete because the artifact seam is implemented and verified. + +--- + +## 8. Commits + +- `e6b58b7` shared Phase 3 contract support for `trail-report` +- `e294cf5` ActionTrail `trail-report` producer seam +- `7678c9b` NoteLett audited note import seam +- `43819f1` MindLyst audited memory import seam diff --git a/docs/ecosystem/README.md b/docs/ecosystem/README.md index 938d99ea..9af9e653 100644 --- a/docs/ecosystem/README.md +++ b/docs/ecosystem/README.md @@ -27,6 +27,7 @@ Recommended structure: - [`ECOSYSTEM_PERSONAL_TIMELINE_PRD.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/ECOSYSTEM_PERSONAL_TIMELINE_PRD.md) — unified user activity stream - [`PHASE1_TRANSCRIPT_NOTE_MEMORY_EXECUTION_PLAN.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/PHASE1_TRANSCRIPT_NOTE_MEMORY_EXECUTION_PLAN.md) — execution-ready plan for the first golden flow - [`PHASE2_PLAN_ROUTINE_HABIT_EXECUTION_PLAN.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/PHASE2_PLAN_ROUTINE_HABIT_EXECUTION_PLAN.md) — execution-ready plan for the second golden flow +- [`PHASE3_COWORK_ACTIONTRAIL_NOTE_MEMORY_EXECUTION_PLAN.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/PHASE3_COWORK_ACTIONTRAIL_NOTE_MEMORY_EXECUTION_PLAN.md) — execution-ready plan for the audited artifact flow - [`delegation/`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/delegation) — ready-to-send task packs and launcher lines for Saravana, Codex, Windsurf, and Cursor - [`adoption/`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/adoption) — per-product adoption notes @@ -49,4 +50,4 @@ Tracking convention: Current implementation package: -- [`packages/events`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/packages/events) holds the first concrete ecosystem contract code and now covers both the Phase 1 and Phase 2 artifact/event seams. +- [`packages/events`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/packages/events) holds the first concrete ecosystem contract code and now covers the Phase 1, Phase 2, and Phase 3 artifact/event seams. diff --git a/docs/ecosystem/adoption/README.md b/docs/ecosystem/adoption/README.md index 7ca6df56..87086074 100644 --- a/docs/ecosystem/adoption/README.md +++ b/docs/ecosystem/adoption/README.md @@ -10,7 +10,7 @@ Recommended file pattern: - `learning_ai_notes.md` - `learning_ai_flowmonk.md` - `learning_ai_trails.md` -- `oss_learning_ai_claw_cowork.md` +- `learning_ai_claw-cowork.md` Current docs: @@ -20,6 +20,8 @@ Current docs: - [`learning_ai_flowmonk.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/adoption/learning_ai_flowmonk.md) - [`learning_ai_clock.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/adoption/learning_ai_clock.md) - [`learning_ai_efforise.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/adoption/learning_ai_efforise.md) +- [`learning_ai_trails.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/adoption/learning_ai_trails.md) +- [`learning_ai_claw-cowork.md`](/Users/saravana/BytelystAI/learning_ai/learning_ai_common_plat/docs/ecosystem/adoption/learning_ai_claw-cowork.md) Each adoption doc should cover: diff --git a/docs/ecosystem/adoption/learning_ai_claw-cowork.md b/docs/ecosystem/adoption/learning_ai_claw-cowork.md new file mode 100644 index 00000000..87e8bfc4 --- /dev/null +++ b/docs/ecosystem/adoption/learning_ai_claw-cowork.md @@ -0,0 +1,47 @@ +# Claw Cowork Ecosystem Adoption + +> **Repo:** `oss/learning_ai_claw-cowork` +> **Ecosystem focus:** audited artifact producer for Phase 3 +> **Status:** existing producer surface reused + +--- + +## 1. Role In The Ecosystem + +Claw Cowork is the audit-producing source system for Phase 3. + +It already provides: + +- structured append-only audit logs +- filtered audit queries +- JSON export +- CSV export +- desktop audit inspection UI + +Those existing surfaces make Cowork the right producer for the audited artifact flow without adding risky new desktop plumbing. + +--- + +## 2. Current Adoption + +Phase 3 baseline reuses the existing desktop export surface: + +- `query_audit_log` +- `export_audit_json` +- `export_audit_csv` + +ActionTrail now treats the exported JSON audit shape as the canonical import input for `trail-report` creation. + +--- + +## 3. Remaining Follow-Up + +- add an explicit product-local helper for exporting ecosystem-ready audit payloads +- optionally emit canonical runtime events alongside the current local audit logs +- add signed dispatch or upload flow from Cowork desktop into ActionTrail when runtime integration is prioritized + +--- + +## 4. Commits + +- existing producer surface predates Phase 3 baseline diff --git a/docs/ecosystem/adoption/learning_ai_trails.md b/docs/ecosystem/adoption/learning_ai_trails.md new file mode 100644 index 00000000..e543b087 --- /dev/null +++ b/docs/ecosystem/adoption/learning_ai_trails.md @@ -0,0 +1,50 @@ +# ActionTrail Ecosystem Adoption + +> **Repo:** `learning_ai_trails` +> **Ecosystem focus:** Cowork audit -> trail-report artifact golden flow +> **Status:** Phase 3 baseline implemented + +--- + +## 1. Role In The Ecosystem + +ActionTrail is the canonical audit-normalization layer for Phase 3. + +It should: + +- accept structured Cowork audit exports +- convert them into durable ecosystem `trail-report` artifacts +- preserve causation and correlation for downstream consumers +- make the audit flow readable without requiring Cowork runtime knowledge in every consumer + +--- + +## 2. Current Adoption + +- `backend/src/lib/ecosystem-phase3.ts` creates and persists a canonical `trail-report` +- latest indexes now include: + - `latest-trail-report.json` + - `latest-trail-report-created-event.json` +- the Phase 3 payload captures: + - action counts + - tool call counts + - approval counts + - failure counts + - safety signal counts + - task list + - action breakdown + - normalized entry list + +--- + +## 3. Remaining Follow-Up + +- add optional route/service wiring for importing Cowork exports through the live backend +- map ActionTrail-native actions and approvals into the same artifact view +- connect `audit.action.logged` taxonomy work when runtime event forwarding is added + +--- + +## 4. Commits + +- `e294cf5`