Import the roofing pipeline into HubSpot deals
The request
The task request supplied to the adapter, alongside the workspace below. Runtime instructions, authorized tools and skills also affect the system. Containerized runs withhold host-side references; local mode is not an isolation boundary.
Our companies are in HubSpot now; next are the deals from pipeline_2026.xlsx. Marcus wrote up how our pipelines are set up, and the companies export and HubSpot's template are in the folder. Save the import as hubspot_deals.csv.
Workspace
- hubspot_companies_export.csv
- hubspot_deals_import_template.csv
- hubspot_setup_notes.md
- pipeline_2026.xlsx
Expected deliverables
- hubspot_deals.csv
This task also has a task-specific grader (check.py).
Recorded acceptance checks
The table uses check names and outcomes from the frozen campaign ledger. Acceptance requires all required predicates to pass; a predicate may itself contain a tolerance or coverage threshold. Its scope is part of the measurement contract.
| Recorded check | Type | Required | Failed / observed |
|---|---|---|---|
| HubSpot template columns, exact order | csv_columns | yes | 0 / 6 |
| one deal per bid | csv_set_equal | yes | 0 / 6 |
| row count | csv_row_count | yes | 0 / 6 |
| pipeline and stage | csv_values_match | yes | 0 / 6 |
| amount | custom | yes | 0 / 6 |
| close date | csv_values_match | yes | 0 / 6 |
| company domain | csv_values_match | yes | 0 / 6 |
Current task declaration (7 checks)
From task.yaml. Original runner grading and frozen retrospective scoring are separate. Read the frozen source for the rules behind the reported results.
- HubSpot template columns, exact order —
csv_columns, required - one deal per bid —
csv_set_equal, required - row count —
csv_row_count, required - pipeline and stage —
csv_values_match, required - amount —
custom, required - close date —
csv_values_match, required - company domain —
csv_values_match, required
Recorded results, desk release
| System | Repetitions | Frozen / 3 | Original / 3 | Median minutes | Mean model estimate (USD) |
|---|---|---|---|---|---|
| Proto / DeepSeek V4.1 Flash | 3 | 3 | 1.9 | 0.0330 | |
| Codex / GPT-5.6 sol | 3 | 3 | 2.5 | 0.2970 |
These are repeated executions on the released fixture, not independent new business cases. Cost is captured model usage priced under the recorded assumptions, excluding infrastructure and human review. Per-attempt check verdicts, raw and frozen verdicts, usage, receipt and artifact hashes for this task are in results/latest/attempts.jsonl under "task": "hubspot-deals-import".
Recorded results, desk comparison, 28 September 2026
| System | Repetitions | Frozen / 3 | Original / 3 | Median minutes |
|---|---|---|---|---|
| Proto / GPT-6 sol | 3 | 3 | 2.2 | |
| Codex / GPT-6 sol | 3 | 3 | 1.3 | |
| Proto / DeepSeek V4.1 Flash | 3 | 3 | 1.6 |
A separate campaign under the same frozen scorer, not pooled with the release. Conditions and data.