Bulkhead Forge — product / Discovery
Ask the question once. Discovery keeps answering it.
Discovery runs saved search profiles on a schedule — events in your city, moves in your market, any recurring question — and returns scored, deduplicated findings with evidence attached. Only what's new or materially changed reaches you.
Working MVP · Runs on Google Cloud · EU region
Illustrative run output — the stages and the six-component score are real; the profile name is an example, not a published result.
Profiles
A profile is a standing question
You describe what you're looking for — the topic, the sources, how often to look, how much a run may spend. Discovery does the reading. Edit the profile in the console and the next run obeys; press "Run now" and it doesn't wait for the schedule.
Profiles are typed. The EVENT type ships today — the first production profile watches IT events in Warsaw — and new discovery types plug into the same pipeline.
{
"id": "warsaw-it-events",
"type": "EVENT",
"intent": "IT meetups & conferences in Warsaw",
"sources": ["feeds", "web-search"],
"schedule": "nightly",
"budgets": {
"pages_per_run": 30,
"model_per_run": "$0.20"
}
}
How a run works
Anatomy of a nightly run
-
Phase 01
Plan
A planner model turns the profile into search queries — and remembers which of last week's queries produced findings that survived. Scouts fan out with separate mandates; a supervisor redirects the ones finding nothing.
-
Phase 02
Gather
Feeds first — they're free — then web search. Every fetch respects robots.txt and is SSRF-guarded. Candidates are interleaved across queries so no single query can eat the page budget.
-
Phase 03
Resolve
Structured data is extracted from pages, then an identity ladder deduplicates candidates across sources. Ambiguous pairs aren't dropped — they're escalated to a verifier model.
-
Phase 04
Score & announce
Findings are scored on six components, each with its own confidence and evidence. A state machine diffs against what you already know — only new or materially changed findings are announced.
Cost governance
Spend is governed, not hoped about
An agent that reads the web nightly is a spending machine. Discovery treats budget as an architectural constraint — the same way the rest of our engineering treats latency or isolation.
-
Per-run cap
One ledger is shared by every caller in a run. It refuses the model call that would cross the cap — before it's issued, not after the invoice.
-
Monthly grant
Each run reserves from a monthly budget before spending anything. A spent month stops runs — it doesn't surprise you. Ceilings are edited in the console, not in code.
-
Every token metered
Every model call lands in Cloud Monitoring as ai.model.* metrics. Per-profile spend is a dashboard in the console, not an end-of-month estimate.
-
Degrades, never breaks
No search key → feeds only. No model key → template plans and keyword scoring. A missing credential narrows the run in a named way; it never fails it.
Use cases
One pipeline, many standing questions
-
Live
Event radar
The first production profile watches a city's IT meetups and conferences — dates, venues and changes, deduplicated across listing sites and feeds.
-
Next
Market & news watch
Competitor launches, pricing moves, announcements — the same scoring and "only what changed" contract, pointed at your market instead of a calendar.
-
Pluggable
Your discovery type
Types are plugins: EVENT ships today, and a new type — grants, tenders, job posts, venues — reuses the whole plan → gather → resolve → score pipeline.
Google Cloud
Built on Google Cloud from day one
Running today
- Scheduled Cloud Run jobs — europe-west1
- Cloud SQL (PostgreSQL) behind an internal domain service
- Budgets and profiles managed in the console
- Secret Manager · Artifact Registry · keyless WIF deploys
- Cloud Monitoring — every model call metered (ai.model.*)
Where Gemini fits next
- Planner, verifier and judge roles on Gemini via Vertex AI
- Scoring at Flash-class latency and cost — hundreds of candidates per run
- Role-based routing: each role gets the cheapest model that passes its eval band
- The cost ledger and metering are already in place — a provider is one config away
Roadmap
Where this goes
Now
- EVENT type · nightly schedules · "Run now"
- Scoring with evidence & confidence
- Budget guardrails · spend dashboards
Next
- Gemini roles on Vertex AI
- News & announcements type
- Finding review flows in the console
Later
- Custom discovery-type SDK
- Alert routing — Slack, email
- Findings feeding Actions items
Early access
Stop re-searching what you already asked.
Working MVP, onboarding a first cohort. Bring one standing question — we'll turn it into a profile together. One email is the whole first step.
contact@bulkheadlogic.com