The analyst starts with a sourced dossier that shows what is known, missing, or inconsistent.
Procurement or compliance receives a first-pass company dossier without copying data from several registries. Every fact keeps its source. Missing data stays visible, and the system does not decide whether two different names refer to the same company.
Verified demonstration scope
The demonstration covers 7 real entities and 9 retained KRS, BZP, and TED records. It contains no client or personal data. The architecture comparison has one observation per version.
- Recorded test
- Verified demonstration scope
- What we tested
- Company due diligence research
- Measurement data
- test data
Problem, solution, and result
Why the research takes so long
For every company, an analyst opens several registries, compares names, and records sources. The main risk appears when an incomplete file looks like a finished report.
What the system does
It collects organization records from KRS, BZP, and TED, then organizes them into one dossier. Every fact keeps its source. Missing fields and conflicting names remain visible for analyst review.
What the two-approach test showed
The demonstration covers 7 real entities and 9 retained KRS, BZP, and TED records. It contains no client or personal data. The architecture comparison has one observation per version.
For whom
This fits a team that reviews many companies, spends hours copying registry data, and needs reports that make missing evidence as visible as confirmed facts.
Registries → dossier → analyst review
- 01Every fact links to a retained source
- 02Gaps and name conflicts stay visible
- 03The analyst confirms identity and draws conclusions
- Best for
- Procurement, compliance, and counterparty-analysis teams
- Input data
- Public KRS, BZP, and TED records, each with its URL, identifier, and response hash
- Human decision
- The analyst resolves name conflicts and assesses the company. Personal data is stopped before publication
- Cost
- USD 0.010023 for one dossier with the simpler approach and USD 0.043349 for the same dossier with the multi-step approach.
- Security
- Personal data is held before publication, and name differences go to the analyst.
- Test duration
- We measure dossier preparation time in a pilot using the client’s sources and volume.
- Audit trail
- Every fact links to its source record, while gaps and differences remain visible for the analyst.
- Similar system build
- from €6,000 net (approx. $6,500) · 6–16 weeks
Reference exchange rates: USD 1 = PLN 3.72; EUR 1 = PLN 4.30. PLN amounts are rounded, with the measurement currency retained in parentheses.
Analyst decisions
What the analyst always decides
The system displays name conflicts and waits. The analyst confirms the entity, judges the significance of the evidence, and draws conclusions. The dossier supports research. It is not a due diligence opinion.
- Cost
- USD 0.010023 for one dossier with the simpler approach and USD 0.043349 for the same dossier with the multi-step approach.
- Security
- Personal data is held before publication, and name differences go to the analyst.
Where the evidence stops
The demonstration covers 7 entities and 9 public records. Five entities have only one retained source. A production rollout needs broader source coverage and a larger comparison on the client’s target companies.
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
240 h
With the system
90 h
Time or cost saved
110-185 h/mo, base 150 h
- Volume
- 60 dossiers/mo
- Formula
- 60 x 2.5 h
- Calculation status
- modelled scenario with no client outcome
Data in the screenshots. The demonstrator uses a frozen set of company names and limited metadata from public registers. It shows no client information, personal data, or full raw source responses.
Working views
The analyst receives organized evidence and focuses on decisions the system should not make on its own.
The analyst receives organized evidence with clear limits. Time can go to resolving conflicts and assessing risk. Any time saving must still be measured on the client's actual volume.
The dossier, its gaps, and the comparison result.
Company dossier
KRS, BZP, and TED facts with a link and source hash.
Gaps and conflicts
Missing fields, single-source records, and name differences awaiting review.
Approach comparison
Score, time, tokens, and cost for the single agent and CrewAI.
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
- 14
- px
- 1440 · 390
- 021440×1100
Two approaches tested on the same input. - 031440×1100
Mobile dossier view.
Open the remaining screen archive (11)
- 041440×1100
A dossier with one retained source - 051440×1100
Not applicable versus missing - 061440×1100
Gaps in the read - 071440×1100
The saved dataset's scope boundaries - 081440×1100
Unresolved name differences - 091440×1100
The second record pair for analyst review - 101440×1100
Bench: input and scoring - 111440×1100
The rubric and no-model checks - 121440×1100
One observation's result - 131440×1100
Cost, sources, and the publication gate - 141440×1100
Both variants' cost and measurement limits
Technology stack
A stack where the agent layer has to earn its place through measurement before it enters the process.
Proof of origin and visible gaps are a data problem, so the core of the system is deterministic: FastAPI with Pydantic publishes a closed dossier contract, and PostgreSQL holds the facts, sources, and run records. Multi-agent orchestration remains a variant under test on the bench, so it can be swapped without touching the data. Controlled egress operates only for a deliberately started live bench, and the deterministic run makes 0 provider calls, which keeps audit and maintenance simple.
- Next.js
- presents the dossier, the record timeline, and the open discrepancies
- FastAPI + Pydantic
- publish the closed dossier contract
- PostgreSQL 17 + pgvector
- stores facts, sources, and run records
- CrewAI
- the orchestration variant under test, measured beside a single agent
- gpt-5-mini
- the model behind both bench variants, called only through controlled egress
The client takes over the code, prompts, evaluation data, and documentation, and the runtime is three containers (postgres, api, web) started with one command. We use public registers; from company-register responses the system persists only allowlisted organizational fields.
Technical details and measurements
How the system works
The system prepares the evidence. The analyst decides what it means.
The dossier separates sourced facts, missing data, and conflicts that require judgment. An incomplete file cannot quietly pass as a completed assessment.
Organization records from KRS, BZP, and TED
The system retains sources and removes personal data
The dossier separates facts, gaps, and name conflicts
Conflicts go to an analyst
The analyst confirms the entity and forms an assessment
System architecture
A snapshot with proof of origin, an allowlist, and a closed rubric.
Every fetch keeps the URL and hash of its response, data is minimized at the entrance, and orchestration variants are compared under a closed bench contract; the deterministic run makes 0 provider calls.
- 01
Sources
Public registers with proof of the read.
Every record enters with its URL, identifier, and SHA-256 response digest, and the snapshot has one shared retrieval time. For BZP and TED the digest covers the search response a record was picked from, and it is labeled that way.
- 02
Minimization
Only organizational fields survive the company register.
The full response, which can carry personal data, is never persisted; only allowlisted fields reach the database. Less data in means less risk out.
- 03
Dossier
Gaps and differences stand next to facts.
Records are grouped by entity, but a name difference never triggers a merge. An entity with one source or an unresolved difference is described exactly that way, so the reader sees where the material ends.
- 04
Bench
Two variants, one input, one rubric.
CrewAI and the single agent use the same pinned gpt-5-mini model, the same input with a recorded digest, and two read-only tools. The 100-point rubric is fixed before the run, and time, tokens, cost, and the normalized-dossier hash are recorded with each result.
Framework overhead on our bench
Multi-agent orchestration enters the system only when a measurement on shared material shows an advantage. In the documented test run it showed none: the simpler variant matched the rubric score at 4.325 times lower cost, so we publish that result and advise from it.
- The scoring rubric is closed before the run
- Both variants get identical input and read-only tools
- Time, tokens, and cost are part of the result
- The conclusion is limited to the measured trial
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.