You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
50 lines
1.6 KiB
Django/Jinja
50 lines
1.6 KiB
Django/Jinja
You are working inside the gimme-job codebase. Repair the broken adapter for **{{ site_id }}**.
|
|
|
|
## Failure Information
|
|
|
|
- **site_id**: `{{ site_id }}`
|
|
- **Failure classification**: `{{ failure_classification or "UNKNOWN" }}`
|
|
- **Error summary**: {{ error_summary or "No error details" }}
|
|
|
|
## Recent Run History
|
|
|
|
```
|
|
{{ recent_run_history }}
|
|
```
|
|
|
|
## Artifacts from Last Failed Run
|
|
|
|
{% if last_run_dom_snapshot_path %}
|
|
- DOM snapshot: `{{ last_run_dom_snapshot_path }}`
|
|
{% endif %}
|
|
{% if last_run_screenshot_path %}
|
|
- Screenshot: `{{ last_run_screenshot_path }}`
|
|
{% endif %}
|
|
{% if last_run_trace_path %}
|
|
- Playwright trace: `{{ last_run_trace_path }}`
|
|
{% endif %}
|
|
|
|
## Current Files
|
|
|
|
- Manifest: `{{ current_manifest_path }}`
|
|
- Adapter: `{{ current_adapter_path }}`
|
|
|
|
## Task
|
|
|
|
1. Read the DOM snapshot to understand what the page currently looks like.
|
|
2. Compare with the current adapter selectors.
|
|
3. Identify what changed (selectors, page structure, auth requirement, etc.).
|
|
4. Patch `{{ current_manifest_path }}` and/or `{{ current_adapter_path }}` to fix the issue.
|
|
5. Run `uv run pytest tests/adapters/test_{{ site_id }}.py -v` to verify the fix.
|
|
6. If the test passes, the repair is complete.
|
|
|
|
## Constraints
|
|
|
|
- Runtime must work WITHOUT AI.
|
|
- Do NOT introduce new auth mechanisms beyond Chrome profile reuse.
|
|
- Preserve existing YAML structure and Python interface.
|
|
- If selectors changed, update the manifest YAML (preferred) before changing Python code.
|
|
- Handle zero results explicitly as `ZERO_RESULTS_EXPECTED`.
|
|
|
|
The repair is successful when `gimme-job test {{ site_id }}` passes.
|