BZP and TED deadlines and watched proceedings appear in one list.
A separate isolated process reads each outside document. Only a closed set of validated fields reaches assessment. Content that resembles an instruction goes to quarantine.
Recorded model and control run
The system read a notice into an agreed set of fields. Raw document content did not enter the decision step, and the history retained the source, check, and result.
- Live run
- Recorded model and control run
- Read cost and time
- Tender monitoring
- Provenance
- synthetic data
Problem, solution, and result
The problem
Tender alerts return many notices matched only by a broad procurement code. Estimators open document after document, search for participation terms, and track deadlines in several places.
How the system works
The system collects BZP and TED notices, normalizes the key data, and puts deadlines on one list. An isolated process reads documents without access to the database or assessment tools. Suspicious content goes to quarantine.
What we tested
The system read a notice into an agreed set of fields. Raw document content did not enter the decision step, and the history retained the source, check, and result.
For whom
This is a good automation candidate when alerts return too many notices and the team manually searches for deadlines and conditions across several sources.
Sources → deadlines → document isolation → decision
- 01BZP and TED notices enter one list
- 02An isolated process reads outside documents
- 03The team makes the bid decision
- Business type
- Contractors and suppliers bidding in public tenders
- Input
- 67 notices from the BZP and TED registers, each linked to its official source
- Boundary
- Outside documents stay on the reader side; only a closed set of validated fields reaches the decision path
- Cost
- About PLN 0.00083 for the recorded read of one notice.
- Security
- Suspicious document content remains isolated. Only verified fields move into assessment.
- Speed
- We measure collection and assessment time in a pilot using the selected sources.
- Trace
- The history identifies the official source, each step, and the result of the check.
- Similar system build
- from €6,000 net (approx. $6,500) · 6–16 weeks
Where automation stops
The team makes the bid decision
The system gathers assessment material and links to the official source. The team evaluates the opportunity, decides whether to bid, and prepares the offer. Missing documents are visible. The public version analyzes no client files and builds no contractor profile.
- Boundary
- Outside documents stay on the reader side; only a closed set of validated fields reaches the decision path
- Cost
- About PLN 0.00083 for the recorded read of one notice.
- Security
- Suspicious document content remains isolated. Only verified fields move into assessment.
- Speed
- We measure collection and assessment time in a pilot using the selected sources.
Estimated impact
Calculate the impact at your volume
This estimate uses the stated volume. Enter your own numbers to assess the possible impact in your company. The result is confirmed only during a pilot.
Today
scenario: fully manual screening
With the system
assumption: 8 min less per notice
Time or cost saved
model: 75-120 h/mo, base 96 h
- Volume
- 720 notices/mo
- Formula
- 720 x 8 min / 60
- Calculation status
- medium
Data in the screenshots. The names, amounts, and documents shown in the screenshots are synthetic. Client data remains private. Measurements describe the demonstrator and are kept separate from production outcomes.
Working surfaces
The team selects proceedings and makes the bid decision. The system prepares organized material.
The team starts with a deadline map, watched proceedings, and items ready for assessment. Quarantine shows what stopped and why. A pilot measures notice volume, manual review time, and rule quality on client documents.
Three views for tender monitoring
Deadline map
BZP and TED notices ordered by bid deadline.
Proceeding record
Key details, document status, and a link to the official source.
Quarantine
Held content with the reason and review status.
System screens
See how the system works in practice
These desktop and mobile screenshots come from the running application. They show the process and the points where a person makes the decision.
- Screens
- 17
- px
- 1440 · 390
- 021440×2168
A proceeding record with the official source and missing-SWZ notice. - 031440×1100
A quarantined document with a hidden instruction and recorded hold reason.
Open the remaining screen archive (14)
- 041440×1100
Notice register - 051440×1100
A procurement card - 061440×1100
Separation measurement - 071440×1100
Sources and saved state - 081440×1100
Register after selecting a day - 091440×1100
Register filtered to TED - 101440×1100
Explicit empty result - 111440×1100
Quarantine: held and passed records - 121440×1100
Quarantine negative control - 131440×1100
Measurement thresholds and method - 141440×1100
TED request and hash - 151440×1100
TED response count and hash - 161440×1100
Record provenance - 171440×1100
Watchlist after adding a procurement
Technology stack
Documents and decisions run in separate zones
The reader has no access to the planner database. Pydantic validates a closed data contract, LangGraph runs four steps, and PostgreSQL stores the audit chain.
- Isolated reader
- reads the document on a separate network, with no access to the database or planner tools
- LangGraph
- runs the four explicit assessment steps and records statuses and decisions
- FastAPI + Pydantic
- runs the process and rejects raw fields on a closed contract
- PostgreSQL
- stores decisions and the audit chain
- MinIO
- document storage reachable only by the reader
- Next.js
- the interface for the deadline map, folders, and quarantine lane
The client receives the code, contracts, test data, and documentation. Production use requires live sources, attachment handling, and a contractor profile.
Technical details and measurements
The working loop
Every document crosses the same boundary
The reader extracts text without access to assessment tools. Validated fields cross in a closed format. Suspicious content remains in quarantine.
BZP and TED notices
Normalized details and deadlines
Document → isolated reader
Suspicious content → quarantine
The team assesses the proceeding
System architecture
Two notice sources, an isolated reader, and a closed data contract
The reader can access documents but not the planner database. The planner receives only validated fields. PostgreSQL stores records and the audit chain.
- 01
Sources
Public registers with proof of origin.
BZP and TED records enter with request parameters and SHA-256 hashes of the source responses. Every record leads to the official API and can be verified at its source.
- 02
Isolation
A reader with no database or planner tools.
The process reading a document can reach the dedicated MinIO store but not PostgreSQL or planner tools. Separate networks and credentials limit what untrusted content can do.
- 03
Quarantine
A suspicious artifact stops with its reason.
Security rules classify the content, and an artifact carrying an injection attempt goes to the quarantine lane with a justification and an audit entry.
- 04
Contract
The planner sees only a closed schema.
Assessment receives the closed reader/v1 contract with no raw fields and no storage credentials. LangGraph runs four explicit steps and records hashes, statuses, and decisions.
Why this much machinery and not a bit more
Tender documents arrive from the open internet, so isolation lives in service topology and credentials rather than in prompt wording. LangGraph runs the four-step assessment loop, including its quarantine branch. No other orchestration component is needed; every additional component creates another attack surface and maintenance obligation.
- A privilege boundary separates reading from deciding
- The data contract carries no raw fields
- Quarantine holds artifacts with a justification
- Source hashes tie every record to the official API
Want to assess a similar process in your company?
- A 30-minute call with the engineer who would lead the work.
- A review of the processes that cost you the most time and money.
- A written summary of what to automate first and the likely cost range.
Times are shown in your own time zone. We work with clients across time zones.
The scan is free and creates no obligation. If automation is unlikely to pay off, the written recommendation will say so.