feat: scaffold redsen-lean-harness v0.1.0
Recovered from crashed session (Node OOM). Repo contains full P0-P6 scaffold: plugin.json/marketplace.json, AGENTS.md, ADRs 0001-0006, lh CLI (init/index/graph/lane/run/memory/host/report/doctor), 10 .github/agents, 12 CLI skills, instructions, context7 mcp.json, and unit/e2e test suite. Fixed: run.mjs read --in-tokens/--out-tokens but tests and CLI docs use --input-tokens/--output-tokens, so telemetry totals were always 0. Now accepts both forms. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
@@ -0,0 +1,23 @@
|
||||
# ADR {{ID}}: {{TITLE}}
|
||||
|
||||
## Status
|
||||
|
||||
Proposed
|
||||
|
||||
## Context
|
||||
|
||||
What forces, constraints, and facts drive this decision?
|
||||
|
||||
## Decision
|
||||
|
||||
What option is chosen?
|
||||
|
||||
## Consequences
|
||||
|
||||
- Positive:
|
||||
- Negative:
|
||||
- Follow-up:
|
||||
|
||||
## Alternatives considered
|
||||
|
||||
- Option: why not.
|
||||
@@ -0,0 +1,30 @@
|
||||
# {{PROJECT}} architecture
|
||||
|
||||
<!-- Living document. Update when components, data flow, invariants, or ADR outcomes change. Keep claims concrete and current. -->
|
||||
|
||||
## Purpose
|
||||
|
||||
Describe what this system exists to do, who uses it, and what success means.
|
||||
|
||||
## System context
|
||||
|
||||
List upstream callers, downstream services, data stores, queues, files, and trust boundaries.
|
||||
|
||||
## Components
|
||||
|
||||
- Component: responsibility, owner, key files.
|
||||
|
||||
## Data flow
|
||||
|
||||
1. Input source.
|
||||
2. Validation and transformation.
|
||||
3. Persistence or external calls.
|
||||
4. Output and observability.
|
||||
|
||||
## Key invariants
|
||||
|
||||
- Invariant: why it must hold, where enforced, how verified.
|
||||
|
||||
## Decision log (ADRs)
|
||||
|
||||
<!-- Append ADR links or summaries here. Newest last. -->
|
||||
@@ -0,0 +1,38 @@
|
||||
# {{PROJECT}} conventions
|
||||
|
||||
<!-- Living document. Promote repeated review feedback and user corrections here. Keep rules specific, checkable, and current. -->
|
||||
|
||||
## Code style
|
||||
|
||||
- Prefer simple control flow and explicit names.
|
||||
- Keep side effects at boundaries.
|
||||
|
||||
## Naming
|
||||
|
||||
- Use domain terms consistently.
|
||||
- Name files after their primary responsibility.
|
||||
|
||||
## Testing
|
||||
|
||||
- Cover changed behaviour with the smallest meaningful test.
|
||||
- Add regression tests for fixed bugs.
|
||||
|
||||
## Error handling
|
||||
|
||||
- Fail fast on invalid inputs.
|
||||
- Preserve actionable error context without leaking secrets.
|
||||
|
||||
## Commit format
|
||||
|
||||
- Use concise conventional commits when possible.
|
||||
- Explain why in the body when not obvious.
|
||||
|
||||
## Directory layout
|
||||
|
||||
- Keep generated artifacts out of source directories.
|
||||
- Put shared deterministic helpers in library modules.
|
||||
|
||||
## Review rules
|
||||
|
||||
- Verify scoped files only.
|
||||
- Flag correctness, security, and contract drift before style.
|
||||
@@ -0,0 +1,42 @@
|
||||
# Run journal: {{RUN_ID}}
|
||||
|
||||
## Objective
|
||||
|
||||
{{OBJECTIVE}}
|
||||
|
||||
## Plan
|
||||
|
||||
- Step:
|
||||
|
||||
## Lanes
|
||||
|
||||
| lane | role | scope | status |
|
||||
| --- | --- | --- | --- |
|
||||
|
||||
## Files touched
|
||||
|
||||
- path: reason
|
||||
|
||||
## Commands run
|
||||
|
||||
| command | result |
|
||||
| --- | --- |
|
||||
|
||||
## Tokens
|
||||
|
||||
- input:
|
||||
- output:
|
||||
- cache:
|
||||
|
||||
## Wall time
|
||||
|
||||
- started:
|
||||
- ended:
|
||||
|
||||
## Outcome
|
||||
|
||||
- Result:
|
||||
|
||||
## Follow-ups
|
||||
|
||||
- Item:
|
||||
@@ -0,0 +1,10 @@
|
||||
# Memory index
|
||||
|
||||
Only this file is always loaded. Open shard files only when needed.
|
||||
|
||||
updated: {{UPDATED}}
|
||||
total_tokens: {{TOTAL_TOKENS}}
|
||||
|
||||
| shard | entries | tokens | updated | summary |
|
||||
| --- | ---: | ---: | --- | --- |
|
||||
{{SHARDS}}
|
||||
@@ -0,0 +1,9 @@
|
||||
# {{SHARD}} memory
|
||||
|
||||
{{DESCRIPTION}}
|
||||
|
||||
Entries use:
|
||||
|
||||
`## <ISO timestamp> — <title>`
|
||||
|
||||
Optional next line: `tags: a, b`
|
||||
@@ -0,0 +1,67 @@
|
||||
# Design questionnaire: {{TITLE}}
|
||||
|
||||
Edit answers in place, keep one numbered answer per question, then say "go". Recommended answers are marked.
|
||||
|
||||
## 1. Primary goal?
|
||||
|
||||
1. **Recommended:** Implement smallest complete behaviour that satisfies acceptance criteria.
|
||||
2. Explore architecture only; no code changes.
|
||||
3. Prototype disposable spike.
|
||||
|
||||
Answer: 1
|
||||
|
||||
## 2. Risk tolerance?
|
||||
|
||||
1. **Recommended:** Conservative; preserve existing contracts and APIs.
|
||||
2. Moderate; allow internal refactors when verified.
|
||||
3. Aggressive; redesign if simpler.
|
||||
|
||||
Answer: 1
|
||||
|
||||
## 3. Compatibility target?
|
||||
|
||||
1. **Recommended:** Backward compatible unless requirement says otherwise.
|
||||
2. Breaking changes allowed with migration notes.
|
||||
3. New surface only; no compatibility promise.
|
||||
|
||||
Answer: 1
|
||||
|
||||
## 4. Verification depth?
|
||||
|
||||
1. **Recommended:** Run targeted tests plus configured verify commands that cover changed behaviour.
|
||||
2. Run targeted tests only.
|
||||
3. Full suite required before completion.
|
||||
|
||||
Answer: 1
|
||||
|
||||
## 5. Documentation updates?
|
||||
|
||||
1. **Recommended:** Update docs directly tied to changed behaviour.
|
||||
2. No docs unless tests require them.
|
||||
3. Full architecture/conventions refresh.
|
||||
|
||||
Answer: 1
|
||||
|
||||
## 6. Parallelism?
|
||||
|
||||
1. **Recommended:** Use read-only fan-out for independent research; serialize writes by scope.
|
||||
2. Single-lane implementation.
|
||||
3. Maximize lanes even for moderate coupling.
|
||||
|
||||
Answer: 1
|
||||
|
||||
## 7. External services?
|
||||
|
||||
1. **Recommended:** Avoid new external calls unless existing workflow requires them.
|
||||
2. Use documented services when helpful.
|
||||
3. Ask user before any external call.
|
||||
|
||||
Answer: 1
|
||||
|
||||
## 8. Secret handling?
|
||||
|
||||
1. **Recommended:** Never write secrets; require env vars or existing secret stores.
|
||||
2. Allow local uncommitted secret files.
|
||||
3. Inline placeholders only.
|
||||
|
||||
Answer: 1
|
||||
@@ -0,0 +1,32 @@
|
||||
# Spec: {{TITLE}}
|
||||
|
||||
## Problem
|
||||
|
||||
What user or system problem must be solved?
|
||||
|
||||
## Scope
|
||||
|
||||
### In
|
||||
|
||||
- Included behaviour.
|
||||
|
||||
### Out
|
||||
|
||||
- Explicit non-goals.
|
||||
|
||||
## Acceptance criteria
|
||||
|
||||
1. Checkable outcome.
|
||||
2. Checkable outcome.
|
||||
|
||||
## Constraints
|
||||
|
||||
- Technical, product, security, timing, or compatibility constraints.
|
||||
|
||||
## Risks
|
||||
|
||||
- Risk: mitigation.
|
||||
|
||||
## Verification plan
|
||||
|
||||
- Command or manual check: expected result.
|
||||
Reference in New Issue
Block a user