71 lines
2.1 KiB
Markdown
71 lines
2.1 KiB
Markdown
# Search And Add Through Bundled CLI
|
|
|
|
## Test Type
|
|
|
|
- forward skill execution
|
|
|
|
## Purpose
|
|
|
|
- validate that a single agent can use `skills/repo-memory/` to search an empty
|
|
memory DB, write one durable entry through the bundled CLI, and retrieve the
|
|
same knowledge afterwards
|
|
|
|
## Preconditions
|
|
|
|
- `skills/repo-memory/assets/repo-memory` exists and is executable
|
|
- the test runner can create a temporary Git repository fixture
|
|
- the test runner can create a temporary SQLite DB path
|
|
|
|
## Inputs
|
|
|
|
- `SKILL_PATH=/.../skills/repo-memory`
|
|
- `TMPDIR=/tmp/...`
|
|
- `DB_PATH=TMPDIR/repo-memory.db`
|
|
- `REPO_PATH=TMPDIR/repo-fixture`
|
|
|
|
## Execution Parameters
|
|
|
|
- one agent only
|
|
- per-agent timeout: `3m`
|
|
- overall timeout: `4m`
|
|
|
|
## Execution Steps
|
|
|
|
1. Create a temporary Git repository fixture under `REPO_PATH`.
|
|
2. Add one file that will serve as evidence for the durable knowledge entry.
|
|
3. Ask the agent to use `$repo-memory` against `DB_PATH`.
|
|
4. Have the agent initialize the DB, search for a key that does not yet exist,
|
|
add one `term` entry with evidence, then search again for the same key.
|
|
5. Capture the agent summary and the concrete entry key used.
|
|
|
|
## Validation Commands
|
|
|
|
Run these from the main thread after the agent stops:
|
|
|
|
```bash
|
|
SKILL_PATH/assets/repo-memory init --db DB_PATH
|
|
SKILL_PATH/assets/repo-memory search --db DB_PATH --repo REPO_PATH --query "plan task"
|
|
SKILL_PATH/assets/repo-memory list --db DB_PATH --repo REPO_PATH --kind term
|
|
SKILL_PATH/assets/repo-memory events --db DB_PATH --id 1
|
|
```
|
|
|
|
## Expected Outcomes
|
|
|
|
- the first search misses before the entry is written
|
|
- the `add` command succeeds and creates entry `1`
|
|
- the second search returns the new `term`
|
|
- `list` returns exactly one `term` entry for the fixture repo
|
|
- `events` includes a `created` event for the new entry
|
|
|
|
## Assertions
|
|
|
|
- the stored entry key matches the one the agent added
|
|
- the stored entry summary matches the durable fact the agent recorded
|
|
- the stored entry is linked to the target repo path
|
|
- the agent used the bundled CLI rather than free-form notes
|
|
|
|
## Cleanup
|
|
|
|
- keep the temporary DB and repo on failure
|
|
- remove temporary artifacts on success only if replay evidence is not needed
|