TradeOps Data / Python data pipeline

Turning scattered procurement pages into reviewable bid intelligence

TradeOps Data collects and normalizes public-construction opportunities while keeping provenance, uncertainty, access rights, and human judgment visible.

Release evidence

What the build actually proved.

These are release facts from synthetic fixtures and verification—not claims about customer results.

01 / signal1,457tests passed
02 / signal4 / 5unique demo records
03 / signal3 + 1exported + quarantined
04 / signal0unsafe demo actions

System path

A legible input-to-output boundary.

The useful part is not the tool list. It is knowing what enters, what the deterministic core changes, and what remains available for review.

01 / INPUTPublic opportunity fixturescaptured with source context
02 / CORENormalize · dedupe · rights gaterules and gates stay explicit
03 / OUTPUTReviewed reports and quarantinereviewable before action

Build notes

From operational problem to verified release.

Each layer records what changed, what did not, and where a person still owns the decision.

01

CONTEXT

Problem

Public opportunities are spread across inconsistent agency pages and procurement platforms. Titles, deadlines, documents, locations, and access rules vary, making it difficult for estimators to assemble a reliable view without losing the official source or overstating weak evidence.

02

BUILD LAYER

Solution

TradeOps converts source records into a canonical bid model, classifies relevant trades, collapses near-duplicates, tracks previously seen records, applies source-rights decisions, and produces estimator-facing HTML, JSON, and CSV artifacts.

The product boundary is deliberate: it supports research and review but does not decide whether a contractor is qualified or should bid.

03

BUILD LAYER

Architecture

Source pages and adapters → Pydantic normalization → trade classification → duplicate handling and SQLite state → rights-aware export gate → local reports

The operational system supports asynchronous collection, static extraction, platform-aware adapters, and Playwright fallback. The public-safe demo uses only local, project-owned HTML fixtures and requires no network connection.

04

BUILD LAYER

Safety boundaries

  • Missing or unreviewed source rights default to quarantine.
  • Provenance and reason codes remain visible.
  • The demo has no network, messaging, scheduler, CRM, feed, or deployment path.
  • Bid/no-bid, rights, recipient, and publication decisions remain human decisions.

05

RESULT

Verified outcome

The release produced a deterministic, reviewable research path and replaced a broad contractor-matching theory with a more defensible category-and-location intelligence workflow. The evidence describes the synthetic demo and engineering verification—not customer results or market-wide accuracy.

Product evidence

Real screens from the verified release.

Synthetic or sanitized fixtures only. The screenshots show the review surfaces and boundaries described above.

artifact://tradeops/screen-01VERIFIED
TradeOps overview listing four synthetic construction bid opportunities
01Synthetic demo overview with normalized opportunity records.
artifact://tradeops/screen-02VERIFIED
TradeOps source-rights review showing exported and quarantined records
02Rights-aware output keeps one unapproved source in quarantine.

Continue exploring

Next case: ATS Copilot