generated from coulomb/repo-seed
docs: update SCOPE.md post-0002 + new gap analysis (2026-05-27) vs INTENT.md
This commit is contained in:
44
SCOPE.md
44
SCOPE.md
@@ -6,19 +6,23 @@
|
||||
|
||||
It allows users to express intent in natural language from the terminal and receive safe, explainable, context-aware assistance while keeping memory, history, preferences, and adaptation under explicit user control.
|
||||
|
||||
## Current Status (Post MVP Slice)
|
||||
## Current Status (Post CYA-WP-0002 Memory Slice)
|
||||
|
||||
The first narrow implementation slice (CYA-WP-0001) has been delivered. A working `cya` tool now exists that can be installed with `pip install -e .`.
|
||||
Two implementation slices have been delivered:
|
||||
|
||||
Core capabilities implemented:
|
||||
- **CYA-WP-0001 (Console-Native MVP)**: Core CLI, context collection, rule-based safety with mandatory confirmation, LLMAdapter seam, and thin memory ports.
|
||||
- **CYA-WP-0002 (Memory Integration)**: Real user-controlled, persisting memory implementation behind the explicit ports, wired into the orchestrator and `--explain-context`, memory signals integrated into safety, dedicated tests, and documentation.
|
||||
|
||||
Core capabilities now include:
|
||||
- Natural language request handling via a clean Typer CLI.
|
||||
- Bounded, transparent, non-recursive local context collection (cwd + git + environment + explicit files).
|
||||
- Genuine rule-based risk classification with mandatory terminal confirmation for anything above "safe".
|
||||
- Stable `LLMAdapter` Protocol boundary (currently satisfied by a deterministic `FakeLLMAdapter`).
|
||||
- Strictly minimal explicit no-op ports for future `phase-memory` integration.
|
||||
- A small orchestrator that coordinates the above.
|
||||
- Bounded, transparent, non-recursive local context collection.
|
||||
- Genuine rule-based risk classification (now memory-aware) with mandatory terminal confirmation.
|
||||
- Stable `LLMAdapter` Protocol boundary.
|
||||
- Real, user-controlled memory for preferences and workflow patterns (scoped JSON backing under `~/.config/cya/memory/`, fully inspectable and user-editable).
|
||||
- Memory surfaced in explanations and fed into safety decisions.
|
||||
- A small orchestrator coordinating the pipeline.
|
||||
|
||||
All LLM interaction flows through the documented adapter seam. No production path bypasses it.
|
||||
All LLM interaction flows through the documented adapter seam. Memory flows through explicit ports. No production path bypasses these boundaries.
|
||||
|
||||
## Owns
|
||||
|
||||
@@ -28,7 +32,7 @@ All LLM interaction flows through the documented adapter seam. No production pat
|
||||
- Safety layer: rule-based risk assessment + mandatory explicit confirmation flow.
|
||||
- Orchestration of the request → context → safety → LLM adapter → response pipeline.
|
||||
- The stable `LLMAdapter` Protocol and the contract for how `cya` talks to LLM backends.
|
||||
- Explicit, minimal integration points (ports) for `phase-memory`.
|
||||
- Explicit, now real (persisting) integration with user-controlled memory via `phase-memory` ports.
|
||||
- Transparent, inspectable behavior (especially via `--explain-context`).
|
||||
- User-facing documentation, examples, and safety guarantees for the CLI tool.
|
||||
|
||||
@@ -48,7 +52,7 @@ All LLM interaction flows through the documented adapter seam. No production pat
|
||||
| Project | Responsibility | Integration Style |
|
||||
|---------------|-----------------------------------------|------------------------------------|
|
||||
| `llm-connect` | Provider access, config, token counting, structured responses | Stable `LLMAdapter` Protocol |
|
||||
| `phase-memory`| User-controlled memory, preferences, history | Explicit thin ports (currently no-op) |
|
||||
| `phase-memory`| User-controlled memory, preferences, history | Explicit ports with real (local JSON) implementation (T02); long-term target is deeper profile-driven integration |
|
||||
| State Hub | Work tracking, decisions, coordination | HTTP REST (non-runtime) |
|
||||
|
||||
## MVP Scope (CYA-WP-0001)
|
||||
@@ -59,19 +63,19 @@ What was explicitly in scope for the first slice:
|
||||
- Safe, bounded context collection with full transparency (`--explain-context`).
|
||||
- Rule-based safety classification as the primary mechanism, with mandatory confirmation.
|
||||
- A clean, documented adapter boundary for future real LLM backends.
|
||||
- Strictly minimal memory ports (no hidden state, no local JSON store).
|
||||
- Real user-controlled memory implementation (scoped, persisting, explainable) behind the explicit ports, with a clean seam for future deeper `phase-memory` integration.
|
||||
- Basic orchestrator that ties the pieces together.
|
||||
- Test coverage focused on safety invariants and context rules.
|
||||
- Clear public boundaries and extension points.
|
||||
|
||||
## Explicitly Out of Scope (MVP and Near-Term)
|
||||
## Explicitly Out of Scope (Current and Near-Term)
|
||||
|
||||
- Any durable or sophisticated memory implementation.
|
||||
- Full deep integration with the complete `phase-memory` profile/planner/graph system (current implementation uses a deliberate, user-visible local JSON store as the first real backing; deeper integration is planned future work).
|
||||
- Real `llm-connect` client (only the contract + fake exists).
|
||||
- Deep git/repository understanding beyond basic status + log.
|
||||
- Deep git/repository understanding beyond basic status + log + user-declared memory.
|
||||
- Automatic command execution (even "safe" suggestions).
|
||||
- Structured editing / patch generation.
|
||||
- Multi-turn conversation state.
|
||||
- Rich multi-turn conversational state (one-shot + lightweight scoped memory only).
|
||||
- Cost tracking, token budgeting, or usage dashboards.
|
||||
- Team/shared memory or collaboration features.
|
||||
- Plugin system or domain-specific extensions.
|
||||
@@ -79,7 +83,7 @@ What was explicitly in scope for the first slice:
|
||||
## Extension Points (Registered)
|
||||
|
||||
- `cya/llm/adapter.py` — `LLMAdapter` Protocol (the primary seam).
|
||||
- `cya/memory/__init__.py` — the four explicit ports (`remember_preference`, `recall_preferences`, `forget`, `export_memory`).
|
||||
- `cya/memory/__init__.py` — the four explicit ports with real (persisting, user-controlled) implementation behind them.
|
||||
- `cya/safety/risk.py` — the `_RULES` table and `classify()` function.
|
||||
- `cya/context/collector.py` — collection functions and ignore policy.
|
||||
- `cya/orchestrator.py` — the main coordination entry point.
|
||||
@@ -96,4 +100,8 @@ Sibling project owners can read the workplan + boundary documentation and know p
|
||||
|
||||
---
|
||||
|
||||
**This SCOPE document reflects the state after the CYA-WP-0001 MVP slice.** It is intentionally narrower than the long-term vision in INTENT.md.
|
||||
**This SCOPE document reflects the state after CYA-WP-0001 (MVP) + CYA-WP-0002 (Memory Integration).**
|
||||
|
||||
It is intentionally narrower than the long-term vision in INTENT.md and MemoryVision.md, but now includes a real first slice of user-controlled memory as delivered by 0002.
|
||||
|
||||
See `workplans/CYA-WP-0002-memory-integration-roadmap.md` and `MemoryVision.md` for the intended direction of deeper `phase-memory` integration.
|
||||
Reference in New Issue
Block a user