phase: 102_extensionless_filenames
All verification complete — every gate green, no defects found in previously completed work. **Phase 102 final verification pass — report** Verified (all three task files present in `complete/`; working-tree implementation matches D1–D5 design): - `match_extension` choke point in `app/rag/importer.py` (walk + `formats` counter), `doc_format` name-token badge in `app/api/docs.py`, config/`.env.example` docs, fixture `tests/fixtures/extensionless_kb/`, integration + E2E suites — all present and correct - Completion criteria: end-to-end sync (✓ integration + E2E), case matrix incl. `mydockerfile`/`Dockerfile.dev`/`.dockerfile` exclusions (✓ unit), `formats=dockerfile:1` not `unknown` (✓ log-line assertion), badge `dockerfile`/`containerfile` + `text` fallback + suffixed unchanged (✓ unit/integration/E2E), prune-on-token-removal (✓ `pruned==2`), suffixed-path rule byte-identical (✓ single-line swap, existing cases untouched) Test / lint results (exact commands): - `uv run pytest --cov=app --cov-report=term-missing` → 2084 passed, **99%** coverage (>90% gate) - `uv run pytest tests/e2e/test_extensionless_import.py -v --no-cov` → 2 passed, isolated, DB up - Regressions isolated: `test_import_documents` 3✓, `test_import_extensions_env` 2✓, `test_quadlet_jinja_import` 4✓, `test_document_viewer` 7✓, `test_kb_tree` 8✓ - `uv run ruff check .` → clean; `uv run pyright` → 0 errors, 0 warnings Notable: commit intentionally not made (harness commits the phase); 102's task files already sit in `complete/`, overview stays in `todo/` for the harness. Next pending phases: 98, 99, 103, 104, 105 (numeric next after 102: `103_suggestions_session_openers`).
This commit is contained in:
+4
-1
@@ -54,7 +54,10 @@ BOR_RRF_K=60 # Reciprocal Rank Fusion damping constant
|
||||
# Comma-separated file extensions (lowercase, no dot) the importer reads.
|
||||
# Any extension is allowed — the value below is the built-in default (the
|
||||
# A9 family: the original seven + the quadlet family + jinja ``j2``); add
|
||||
# your own (e.g. md,sh,toml) or narrow it (e.g. md). A blank list or a
|
||||
# your own (e.g. md,sh,toml,dockerfile,containerfile) or narrow it
|
||||
# (e.g. md). A token also matches extensionless files whose lowercased
|
||||
# full filename equals it exactly (dockerfile → Dockerfile — case-
|
||||
# insensitive, no partial names — phase 102). A blank list or a
|
||||
# malformed token (e.g. md,sh!) fails startup loudly, naming the value.
|
||||
BOR_IMPORT_EXTENSIONS=md,markdown,txt,yaml,yml,json,py,container,network,volume,image,pod,kube,swap,os,endpoint,j2
|
||||
# BOR_SUGGESTIONS=["How is my Kubernetes cluster set up?"] # JSON seed chips — shown only before any question has been saved (phase 80)
|
||||
|
||||
Reference in New Issue
Block a user