Files
breakpilot-lehrer/studio-v2/lib/alerts-b2b/template-data.ts
Benjamin Admin 0b37c5e692 [split-required] Split website + studio-v2 monoliths (Phase 3 continued)
Website (14 monoliths split):
- compliance/page.tsx (1,519 → 9), docs/audit (1,262 → 20)
- quality (1,231 → 16), alerts (1,203 → 10), docs (1,202 → 11)
- i18n.ts (1,173 → 8 language files)
- unity-bridge (1,094 → 12), backlog (1,087 → 6)
- training (1,066 → 8), rag (1,063 → 8)
- Deleted index_original.ts (4,899 LOC dead backup)

Studio-v2 (5 monoliths split):
- meet/page.tsx (1,481 → 9), messages (1,166 → 9)
- AlertsB2BContext.tsx (1,165 → 5 modules)
- alerts-b2b/page.tsx (1,019 → 6), korrektur/archiv (1,001 → 6)

All existing imports preserved. Zero new TypeScript errors.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-24 17:52:36 +02:00

428 lines
16 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import type { B2BTemplate, B2BHit, B2BSettings, B2BTenant } from './types'
// ============================================
// HECTRONIC TEMPLATE (Real Example)
// ============================================
export const hectronicTemplate: B2BTemplate = {
templateId: 'tpl_hectronic_public_procurement_v1',
templateName: 'Hectronic Kommunale Ausschreibungen (Parking • EV Charging • Fuel)',
templateDescription: 'Findet weltweit kommunale Ausschreibungen für Parkscheinautomaten/Parkraummanagement, Payment an Ladepunkten und Fuel-Terminals. Reduziert News/Jobs/Zubehör-Rauschen stark.',
targetRoles: ['sales_ops', 'bid_management', 'product_marketing', 'regional_sales'],
industry: 'Payment & Infrastructure',
companyExample: 'Hectronic GmbH',
guidedConfig: {
regionSelector: {
type: 'multi_select',
default: ['EUROPE'],
options: ['EUROPE', 'DACH', 'NORTH_AMERICA', 'MIDDLE_EAST', 'APAC', 'GLOBAL']
},
languageSelector: {
type: 'multi_select',
default: ['de', 'en'],
options: ['de', 'en', 'fr', 'es', 'it', 'nl', 'pl', 'sv', 'da', 'no', 'fi', 'pt']
},
packageSelector: {
type: 'multi_select',
default: ['PARKING', 'EV_CHARGING'],
options: ['PARKING', 'EV_CHARGING', 'FUEL', 'TANK_MONITORING']
},
noiseMode: {
type: 'single_select',
default: 'STRICT',
options: ['STRICT', 'BALANCED', 'BROAD']
}
},
topics: [
{
name: 'Parking Parkscheinautomaten & Parkraummanagement (Kommunen)',
package: 'PARKING',
intent: {
goalStatement: 'Finde kommunale Ausschreibungen/Procurements für Parkscheinautomaten, Pay Stations, Parkraummanagement-Software und zugehörige Services.',
mustHaveAnyN: 2,
mustHave: [
{ type: 'keyword', value: 'parking meter' },
{ type: 'keyword', value: 'pay and display' },
{ type: 'keyword', value: 'parking pay station' },
{ type: 'keyword', value: 'Parkscheinautomat' },
{ type: 'keyword', value: 'Parkautomat' },
{ type: 'keyword', value: 'Parkraumbewirtschaftung' },
{ type: 'keyword', value: 'backoffice' },
{ type: 'keyword', value: 'management software' }
],
publicBuyerSignalsAny: [
'municipality', 'city', 'city council', 'local authority', 'public tender',
'Kommune', 'Stadt', 'Gemeinde', 'Landkreis', 'öffentliche Ausschreibung', 'Vergabe'
],
procurementSignalsAny: [
'tender', 'procurement', 'RFP', 'RFQ', 'invitation to tender', 'contract notice',
'Ausschreibung', 'Vergabe', 'EU-weite Ausschreibung', 'Bekanntmachung'
]
},
filters: {
hardExcludesAny: [
'keyboard', 'mouse', 'headset', 'toner', 'office supplies',
'Tastatur', 'Maus', 'Headset', 'Büromaterial',
'job', 'hiring', 'stellenanzeige', 'bewerbung',
'parking fine', 'parking ticket', 'Strafzettel', 'Knöllchen'
],
softExcludesAny: [
'press release', 'marketing', 'blog', 'opinion',
'pressemitteilung', 'werbung', 'meinung',
'maintenance only', 'consulting only', 'support only'
]
},
decisionPolicy: {
rulesFirst: true,
llmMode: 'GRAYZONE_ONLY',
autoRelevantMinConf: 0.80,
needsReviewRange: [0.50, 0.79],
autoIrrelevantMaxConf: 0.49
},
importanceModelId: 'imp_hectronic_v1',
status: 'active'
},
{
name: 'EV Charging Payment/Terminals in kommunaler Ladeinfrastruktur',
package: 'EV_CHARGING',
intent: {
goalStatement: 'Finde kommunale Ausschreibungen für Ladeinfrastruktur mit Payment-Terminals, Ad-hoc-Kartenzahlung, Backend/Management.',
mustHaveAnyN: 2,
mustHave: [
{ type: 'keyword', value: 'EV charging' },
{ type: 'keyword', value: 'charging station' },
{ type: 'keyword', value: 'charge point' },
{ type: 'keyword', value: 'Ladesäule' },
{ type: 'keyword', value: 'Ladeinfrastruktur' },
{ type: 'keyword', value: 'payment terminal' },
{ type: 'keyword', value: 'card payment' },
{ type: 'keyword', value: 'contactless' },
{ type: 'keyword', value: 'Bezahlsystem' },
{ type: 'keyword', value: 'Kartenzahlung' }
],
publicBuyerSignalsAny: [
'municipality', 'city', 'public works', 'local authority',
'Kommune', 'Stadt', 'Gemeinde', 'Kommunal'
],
procurementSignalsAny: [
'tender', 'procurement', 'RFP', 'RFQ', 'contract notice',
'Ausschreibung', 'Vergabe', 'Bekanntmachung'
]
},
filters: {
hardExcludesAny: [
'stock', 'investor', 'funding round', 'press release',
'Aktie', 'Investor', 'Finanzierung', 'Pressemitteilung',
'job', 'hiring', 'stellenanzeige',
'private home charger', 'wallbox'
],
softExcludesAny: [
'funding program', 'grant', 'Förderprogramm', 'Zuschuss',
'pilot project', 'research project', 'Modellprojekt'
]
},
decisionPolicy: {
rulesFirst: true,
llmMode: 'GRAYZONE_ONLY',
autoRelevantMinConf: 0.80,
needsReviewRange: [0.50, 0.79],
autoIrrelevantMaxConf: 0.49
},
importanceModelId: 'imp_hectronic_v1',
status: 'active'
},
{
name: 'Fuel Fleet/Public Fuel Terminals',
package: 'FUEL',
intent: {
goalStatement: 'Finde Ausschreibungen für (un)bemannte Tankautomaten/Fuel-Terminals, Fuel-Management, Flottenbetankung.',
mustHaveAnyN: 2,
mustHave: [
{ type: 'keyword', value: 'fuel terminal' },
{ type: 'keyword', value: 'fuel management' },
{ type: 'keyword', value: 'unmanned fuel station' },
{ type: 'keyword', value: 'fleet fueling' },
{ type: 'keyword', value: 'Tankautomat' },
{ type: 'keyword', value: 'Tankterminal' },
{ type: 'keyword', value: 'Flottenbetankung' },
{ type: 'keyword', value: 'Betriebstankstelle' }
],
publicBuyerSignalsAny: ['municipality', 'utilities', 'public works', 'Stadtwerke', 'Kommunal'],
procurementSignalsAny: ['tender', 'procurement', 'RFP', 'Ausschreibung', 'Vergabe']
},
filters: {
hardExcludesAny: ['fuel price', 'oil price', 'Spritpreise', 'Ölpreis', 'job', 'hiring', 'stellenanzeige'],
softExcludesAny: ['market news', 'commodity', 'Börse', 'Pressemitteilung']
},
decisionPolicy: {
rulesFirst: true,
llmMode: 'GRAYZONE_ONLY',
autoRelevantMinConf: 0.80,
needsReviewRange: [0.50, 0.79],
autoIrrelevantMaxConf: 0.49
},
importanceModelId: 'imp_hectronic_v1',
status: 'active'
}
],
importanceModel: {
modelId: 'imp_hectronic_v1',
scoreRange: [0, 100],
weights: {
deadlineProximity: 28,
procurementIntentStrength: 22,
publicBuyerStrength: 18,
productMatchStrength: 18,
sourceTrust: 8,
novelty: 6
},
thresholds: {
infoMax: 29,
reviewMin: 30,
importantMin: 50,
urgentMin: 70,
criticalMin: 85
},
topNCaps: {
dailyDigestMax: 10,
weeklyDigestMax: 20,
perTopicDailyMax: 6
}
},
notificationPreset: {
presetId: 'notif_hectronic_digest_v1',
channels: ['email'],
cadence: 'DAILY',
timeLocal: '08:00',
includeStatuses: ['relevant', 'needs_review'],
maxItems: 10
}
}
// ============================================
// MOCK DATA (Demo Hits for Hectronic)
// ============================================
export const mockHectronicHits: B2BHit[] = [
{
id: 'hit-hec-001',
tenantId: 'hectronic-demo',
topicId: 'hec_parking_v1',
sourceType: 'email',
sourceRef: 'ga-msg-001',
originalUrl: 'https://www.evergabe.de/auftraege/parkscheinautomaten-stadt-muenchen',
canonicalUrl: 'https://evergabe.de/auftraege/parkscheinautomaten-muenchen',
title: 'Stadt München: Lieferung und Installation von 150 Parkscheinautomaten',
snippet: 'Die Landeshauptstadt München schreibt die Beschaffung von 150 modernen Parkscheinautomaten inkl. Backoffice-Software für das Stadtgebiet aus. Frist: 15.03.2026.',
foundAt: new Date(Date.now() - 2 * 60 * 60 * 1000),
language: 'de',
countryGuess: 'Germany',
buyerGuess: 'Landeshauptstadt München',
deadlineGuess: '2026-03-15',
importanceScore: 92,
importanceLabel: 'KRITISCH',
decisionLabel: 'relevant',
decisionConfidence: 0.95,
decisionTrace: {
rulesTriggered: ['procurement_signal_match', 'public_buyer_match', 'product_match'],
llmUsed: false,
signals: {
procurementSignalsFound: ['Ausschreibung', 'Beschaffung', 'Vergabe'],
publicBuyerSignalsFound: ['Landeshauptstadt', 'Stadt München'],
productSignalsFound: ['Parkscheinautomaten', 'Backoffice-Software'],
negativesFound: []
}
},
isRead: false,
createdAt: new Date(Date.now() - 2 * 60 * 60 * 1000)
},
{
id: 'hit-hec-002',
tenantId: 'hectronic-demo',
topicId: 'hec_ev_charging_v1',
sourceType: 'rss',
sourceRef: 'rss-item-002',
originalUrl: 'https://ted.europa.eu/notice/2026-12345',
canonicalUrl: 'https://ted.europa.eu/notice/2026-12345',
title: 'EU Tender: Supply of EV Charging Infrastructure with Payment Terminals - City of Amsterdam',
snippet: 'Contract notice for the supply, installation and maintenance of 200 public EV charging points with integrated contactless payment terminals. Deadline: 28.02.2026.',
foundAt: new Date(Date.now() - 5 * 60 * 60 * 1000),
language: 'en',
countryGuess: 'Netherlands',
buyerGuess: 'City of Amsterdam',
deadlineGuess: '2026-02-28',
importanceScore: 88,
importanceLabel: 'KRITISCH',
decisionLabel: 'relevant',
decisionConfidence: 0.92,
decisionTrace: {
rulesTriggered: ['procurement_signal_match', 'public_buyer_match', 'product_match'],
llmUsed: false,
signals: {
procurementSignalsFound: ['Contract notice', 'tender', 'supply'],
publicBuyerSignalsFound: ['City of Amsterdam', 'public'],
productSignalsFound: ['EV charging', 'charging points', 'payment terminals', 'contactless'],
negativesFound: []
}
},
isRead: false,
createdAt: new Date(Date.now() - 5 * 60 * 60 * 1000)
},
{
id: 'hit-hec-003',
tenantId: 'hectronic-demo',
topicId: 'hec_parking_v1',
sourceType: 'email',
sourceRef: 'ga-msg-003',
originalUrl: 'https://vergabe.niedersachsen.de/NetServer/notice/8765432',
canonicalUrl: 'https://vergabe.niedersachsen.de/notice/8765432',
title: 'Gemeinde Seevetal: Erneuerung Parkraumbewirtschaftungssystem',
snippet: 'Öffentliche Ausschreibung zur Erneuerung des Parkraumbewirtschaftungssystems mit 25 Pay-Stations und zentraler Management-Software.',
foundAt: new Date(Date.now() - 8 * 60 * 60 * 1000),
language: 'de',
countryGuess: 'Germany',
buyerGuess: 'Gemeinde Seevetal',
deadlineGuess: '2026-04-01',
importanceScore: 78,
importanceLabel: 'DRINGEND',
decisionLabel: 'relevant',
decisionConfidence: 0.88,
decisionTrace: {
rulesTriggered: ['procurement_signal_match', 'public_buyer_match', 'product_match'],
llmUsed: false,
signals: {
procurementSignalsFound: ['Öffentliche Ausschreibung', 'Erneuerung'],
publicBuyerSignalsFound: ['Gemeinde'],
productSignalsFound: ['Parkraumbewirtschaftungssystem', 'Pay-Stations', 'Management-Software'],
negativesFound: []
}
},
isRead: false,
createdAt: new Date(Date.now() - 8 * 60 * 60 * 1000)
},
{
id: 'hit-hec-004',
tenantId: 'hectronic-demo',
topicId: 'hec_parking_v1',
sourceType: 'email',
sourceRef: 'ga-msg-004',
originalUrl: 'https://news.example.com/parking-industry-trends-2026',
canonicalUrl: 'https://news.example.com/parking-trends-2026',
title: 'Parking Industry Trends 2026: Smart Cities investieren in digitale Lösungen',
snippet: 'Branchenanalyse zeigt wachsende Nachfrage nach vernetzten Parkscheinautomaten. Experten erwarten 15% Marktwachstum.',
foundAt: new Date(Date.now() - 12 * 60 * 60 * 1000),
language: 'de',
countryGuess: 'Germany',
buyerGuess: undefined,
deadlineGuess: undefined,
importanceScore: 15,
importanceLabel: 'INFO',
decisionLabel: 'irrelevant',
decisionConfidence: 0.91,
decisionTrace: {
rulesTriggered: ['soft_exclude_triggered'],
llmUsed: false,
signals: {
procurementSignalsFound: [],
publicBuyerSignalsFound: [],
productSignalsFound: ['Parkscheinautomaten'],
negativesFound: ['Branchenanalyse', 'Experten', 'Marktwachstum']
}
},
isRead: true,
createdAt: new Date(Date.now() - 12 * 60 * 60 * 1000)
},
{
id: 'hit-hec-005',
tenantId: 'hectronic-demo',
topicId: 'hec_ev_charging_v1',
sourceType: 'rss',
sourceRef: 'rss-item-005',
originalUrl: 'https://ausschreibungen.at/ladeinfrastruktur-wien',
canonicalUrl: 'https://ausschreibungen.at/ladeinfrastruktur-wien',
title: 'Stadt Wien: Rahmenvertrag Ladeinfrastruktur öffentlicher Raum',
snippet: 'Vergabeverfahren für Rahmenvertrag über Lieferung und Betrieb von Ladeinfrastruktur im öffentlichen Raum. Details hinter Login.',
foundAt: new Date(Date.now() - 18 * 60 * 60 * 1000),
language: 'de',
countryGuess: 'Austria',
buyerGuess: 'Stadt Wien',
deadlineGuess: undefined,
importanceScore: 55,
importanceLabel: 'WICHTIG',
decisionLabel: 'needs_review',
decisionConfidence: 0.62,
decisionTrace: {
rulesTriggered: ['procurement_signal_match', 'public_buyer_match'],
llmUsed: true,
llmConfidence: 0.62,
signals: {
procurementSignalsFound: ['Vergabeverfahren', 'Rahmenvertrag'],
publicBuyerSignalsFound: ['Stadt Wien', 'öffentlicher Raum'],
productSignalsFound: ['Ladeinfrastruktur'],
negativesFound: ['Details hinter Login']
}
},
isRead: false,
createdAt: new Date(Date.now() - 18 * 60 * 60 * 1000)
},
{
id: 'hit-hec-006',
tenantId: 'hectronic-demo',
topicId: 'hec_fuel_v1',
sourceType: 'email',
sourceRef: 'ga-msg-006',
originalUrl: 'https://vergabe.bund.de/tankautomat-bundeswehr',
canonicalUrl: 'https://vergabe.bund.de/tankautomat-bw',
title: 'Bundesamt für Ausrüstung: Tankautomaten für Liegenschaften',
snippet: 'Beschaffung von unbemannten Tankautomaten für Flottenbetankung an 12 Bundeswehr-Standorten. EU-weite Ausschreibung.',
foundAt: new Date(Date.now() - 24 * 60 * 60 * 1000),
language: 'de',
countryGuess: 'Germany',
buyerGuess: 'Bundesamt für Ausrüstung',
deadlineGuess: '2026-05-15',
importanceScore: 72,
importanceLabel: 'DRINGEND',
decisionLabel: 'relevant',
decisionConfidence: 0.86,
decisionTrace: {
rulesTriggered: ['procurement_signal_match', 'public_buyer_match', 'product_match'],
llmUsed: false,
signals: {
procurementSignalsFound: ['Beschaffung', 'EU-weite Ausschreibung'],
publicBuyerSignalsFound: ['Bundesamt'],
productSignalsFound: ['Tankautomaten', 'Flottenbetankung', 'unbemannt'],
negativesFound: []
}
},
isRead: true,
createdAt: new Date(Date.now() - 24 * 60 * 60 * 1000)
}
]
// ============================================
// DEFAULT SETTINGS
// ============================================
export const defaultB2BSettings: B2BSettings = {
migrationCompleted: false,
wizardCompleted: false,
selectedRegions: ['EUROPE'],
selectedLanguages: ['de', 'en'],
selectedPackages: ['PARKING', 'EV_CHARGING'],
noiseMode: 'STRICT',
notificationCadence: 'DAILY',
notificationTime: '08:00',
maxDigestItems: 10
}
export const defaultTenant: B2BTenant = {
id: 'demo-tenant',
name: 'Demo Account',
companyName: 'Meine Firma GmbH',
industry: 'Payment & Infrastructure',
plan: 'trial',
inboundEmailDomain: 'alerts.breakpilot.de',
createdAt: new Date(),
settings: defaultB2BSettings
}