diff --git a/.gitignore b/.gitignore index 7b3acdd..214e2fb 100644 --- a/.gitignore +++ b/.gitignore @@ -37,3 +37,4 @@ htmlcov/ .pi/ output-smoke/ litresearch.toml +.opencode/LESSONS.md diff --git a/.opencode/LESSONS.md b/.opencode/LESSONS.md deleted file mode 100644 index 36c7e6f..0000000 --- a/.opencode/LESSONS.md +++ /dev/null @@ -1,25 +0,0 @@ -# Project Lessons - -Project-specific learnings for this repository. Run `/lessons` to curate entries, promote cross-project patterns to the global lessons file, and promote standing rules to `AGENTS.md`. - -Entry format: `- [YYYY-MM-DD] ` - ---- - -## Project Decisions - - - -## Tooling and Environment - - - -- [2026-03-09] `SemanticScholar()` without explicit `timeout=` and `retry=False` uses aggressive default retries (up to 10×, 30s waits on 429) — caused 14-min discovery for 8 queries. Always configure both on construction. -- [2026-03-09] `pydantic-settings` TOML support requires overriding `settings_customise_sources()` to include `TomlConfigSettingsSource`; setting `toml_file=` in `model_config` alone does nothing. -- [2026-03-09] For multi-stage pipelines that download files at one stage and re-use them at another, design "download once, cache path in state" from the start — retrofitting requires touching multiple stages and the state model. -- [2026-03-09] `uv run ` in a project repo keeps reinstalling the local package as editable, overriding a clean non-editable install. Workaround: `uv pip install . && uv run --no-project `. This is a uv project-detection behavior, not a package bug. -- [2026-03-09] Smoke-test config (litresearch.toml) must not be committed to git — users inherit it silently and could accidentally commit secrets. Use `litresearch.toml.example` + gitignore pattern. - -## Recurring Issues - -