fix(dwh): validate adapter limits strictly
This commit is contained in:
@@ -90,8 +90,15 @@ git commit -m "refactor(dwh): define adapter contract"
|
||||
- Create: `harness/tht/adapters/dwh/postgres.py`
|
||||
- Create: `harness/tht/adapters/dwh/thoth_rest.py`
|
||||
- Test: `harness/tests/test_dwh_adapters.py`
|
||||
- Test: `harness/tests/test_dwh_port_contract.py`
|
||||
- Test: `harness/tests/l0/test_db_sampling.py`
|
||||
- Modify: `harness/tht/ports/__init__.py`
|
||||
- Modify: `harness/tht/ports/dwh.py`
|
||||
- Modify: `harness/tht/execute/__init__.py`
|
||||
- Modify: `harness/tht/db/execute.py`
|
||||
- Modify: `harness/tht/db/sampling.py`
|
||||
- Modify: `harness/tht/rest/execute.py`
|
||||
- Modify: `docs/superpowers/plans/2026-07-11-adapter-foundations.md`
|
||||
|
||||
**Interfaces:**
|
||||
- Consumes: `DwhAdapter` from Task 1; existing `DatabaseConfig`, `RestConfig`, catalog, sampling, execute, and explain functions.
|
||||
@@ -125,8 +132,9 @@ class PostgresDwhAdapter:
|
||||
|
||||
Implement the analogous REST wrapper by delegating to `tht.rest.*`; translate transport-specific
|
||||
errors only at the adapter boundary. Both wrappers delegate frequency-ranked, distinct sampling to
|
||||
the paired implementations in `tht.db.sampling`. A non-positive query limit is rejected, and
|
||||
`distinct_values` reports any cap through `DistinctValues.truncated`.
|
||||
the paired implementations in `tht.db.sampling`. Query and sampling limits must be runtime-positive
|
||||
integers (booleans and floats are rejected), and `distinct_values` reports any cap through
|
||||
`DistinctValues.truncated`.
|
||||
|
||||
- [ ] **Step 4: Run adapter, read-only, sampling, and REST tests**
|
||||
|
||||
@@ -136,7 +144,11 @@ Expected: PASS; L0 may deselect when Docker is unavailable.
|
||||
- [ ] **Step 5: Commit**
|
||||
|
||||
```bash
|
||||
git add harness/tht/adapters harness/tht/db/execute.py harness/tht/rest/execute.py harness/tests/test_dwh_adapters.py
|
||||
git add docs/superpowers/plans/2026-07-11-adapter-foundations.md \
|
||||
harness/tht/ports harness/tht/adapters/dwh harness/tht/execute/__init__.py \
|
||||
harness/tht/db/execute.py harness/tht/db/sampling.py harness/tht/rest/execute.py \
|
||||
harness/tests/test_dwh_port_contract.py harness/tests/test_dwh_adapters.py \
|
||||
harness/tests/l0/test_db_sampling.py
|
||||
git commit -m "refactor(dwh): adapt direct and REST transports"
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user