FinBiz

Interfaces

What each system receives, what it returns, and what it guarantees. The method used to get there is not public.

Scraper

InAn organisation and the address of its website.
OutA package: the organisation profile, a list of services, and for each service a verbatim quote with the address of the page carrying it.
GuaranteeEvery service returned carries a quote of at least eight words, present literally on a page belonging to the organisation. Comparison ignores whitespace, invisible characters, and typographic variants of the same character. A service without a quote is never returned.
LimitsA site that refuses automated requests produces no package. The failure is recorded as a failure, never filled in with a guess.
Not publicThe crawl strategy, the extraction, the coding of services, and the detail of the internal checks.

RAG

InA question in plain language.
OutRelevant passages, each with the organisation and the address it came from.
GuaranteeNo passage without its source. The system answers from the content of the packages; it does not fill gaps with general knowledge.
LimitsWhat is not in a package does not exist for it. An empty answer is a valid answer.
Not publicChunking, vector representation, retrieval and ranking.

Chatbot

InA message, sent to an HTTP endpoint.
OutA written answer with the sources that support it.
GuaranteeThe sources shown are the ones the RAG returned, with nothing added.
Not publicThe orchestration and the instructions given to the model.

Public directory

InThe packages.
OutStatic HTML pages, with no scripts and no network calls.
GuaranteeNothing is displayed without its quote and its link. The build fails rather than publish an exception.

The pivot format

A package is one folder per organisation. Downstream consumers read only these two files:

organization_profile.json    identity, address, contacts, mission
services_programs.json       list of services; per service:
                               canonical_name           the service name
                               description              what it does
                               grounding_quote          the verbatim quote
                               source_urls              where the quote lives
                               service_classifications  its categories
                               review_decision          the review state

A service whose decision begins NOT a SourceLink service was set aside deliberately, with its reason written down. It stays in the package: a recorded exclusion is worth more than a silent deletion.