Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
bcb162c
Initial plan
Copilot Mar 13, 2026
e49db9b
feat: enhanced stakeholder SWOT analysis with AI-driven 6-perspective…
Copilot Mar 13, 2026
180490e
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 14, 2026
fb55c6a
fix: address PR review — unused params, %t leak, trend i18n, justific…
Copilot Mar 14, 2026
2a980ef
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 14, 2026
8321b1b
fix: address review round 2 — ContentLabelSet keys, role=img, skr rou…
Copilot Mar 14, 2026
ae51df3
fix: improve module description punctuation consistency
Copilot Mar 14, 2026
1b4363c
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 14, 2026
d1046a4
fix: address review round 3 — skr SWOT routing, confidence scoring, s…
Copilot Mar 14, 2026
19fc33c
fix: make skr test assertion more robust (check relatedDocuments only)
Copilot Mar 14, 2026
6a830cf
fix: review round 4 — SankeyNodeColor type, SFS dedup, trendIndicator…
Copilot Mar 14, 2026
a7e1ce1
fix: guard private-sector → civil-society cross-reference on regulato…
Copilot Mar 15, 2026
467a126
fix: address review round 6 — barrel re-export, withTopic global repl…
Copilot Mar 15, 2026
5238878
fix: use replaceAll for withTopic, add bucketTotal helper, defensive …
Copilot Mar 15, 2026
44a4b2e
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 15, 2026
9fe1d1b
fix: normalize SFS-by-name docs in typeCounts + type-strengthen trend…
Copilot Mar 15, 2026
8f8e1a1
refactor: import TrendDirection directly from ai-swot-analyzer instea…
Copilot Mar 15, 2026
de2139a
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 15, 2026
182b08c
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 15, 2026
e7cfcef
fix: use TrendDirection type in EnhancedSwotEntry instead of inline s…
Copilot Mar 15, 2026
9efbdc3
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 15, 2026
f340401
fix: remove unused SWOT_DEFAULTS/swotDefault (TS6133) + timezone-safe…
Copilot Mar 15, 2026
460f9fb
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 15, 2026
ff93692
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 15, 2026
f0ffdd1
fix: add other bucket to DocBuckets for accurate docCount + remove st…
Copilot Mar 15, 2026
c995969
fix: computeConfidence uses contentFetched + deduplicate workflow exa…
Copilot Mar 15, 2026
510a65a
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 15, 2026
527226a
fix: extend SWOT quadrant CSS selectors to cover h4 headings used by …
Copilot Mar 15, 2026
80fb53f
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 15, 2026
427df8f
fix: move TrendDirection to shared types/article.ts + close unclosed …
Copilot Mar 15, 2026
4ca9cba
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 15, 2026
8d4e284
fix: deduplicate CSS into component files, strengthen STAKEHOLDER_NAM…
Copilot Mar 15, 2026
2680923
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
f64bdea
Changes before error encountered
Copilot Mar 16, 2026
c813959
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
29c7da9
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
4840832
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
f24774c
fix: standardize withTopic() usage + remove TrendDirection barrel re-…
Copilot Mar 16, 2026
9bd82a5
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
3595efe
Changes before error encountered
Copilot Mar 16, 2026
161ac33
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
3b1baf3
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
e3a91a8
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
4bd4a92
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
7ee7894
Merge branch 'main' into copilot/enhance-swot-analysis-ai
pethers Mar 16, 2026
73c05ae
fix: address review comments — EU doc 'eu'+'fpm' filter, English fall…
Copilot Mar 16, 2026
1937920
docs: clarify classifiedTypes contract comment in generators.ts
Copilot Mar 16, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .github/workflows/news-evening-analysis.md
Original file line number Diff line number Diff line change
Expand Up @@ -247,6 +247,18 @@ const weekFromDate = new Date(Date.now() - 5 * 86400000).toISOString().slice(0,
- `get_propositioner` — filter by `publicerad` date
- `search_anforanden` — filter by `datum` field

Filter results to only include items with dates `>= fromDate` using timezone-safe ISO string comparison:

Comment on lines +250 to +251
For tools without native date support, apply a post-query date filter:

```javascript
// Calculate lookback window (e.g. 24 hours = 86400000 ms, 1 hour = 3600000 ms)
const fromDate = new Date(Date.now() - 24 * 3600000).toISOString().slice(0, 10);
const results = queryResults.filter(
item => (item.publicerad || item.datum || item.inlämnad || '').slice(0, 10) >= fromDate
);
Comment on lines +255 to +259
```

Filter results to only include items with dates `>= fromDate` using ISO-string comparison (avoids timezone-sensitive `new Date()` parsing):
```js
const filtered = results.filter(item =>
Expand Down
28 changes: 28 additions & 0 deletions scripts/data-transformers/constants/content-labels-part1.ts
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,10 @@ export const CONTENT_LABELS_PART1: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'High',
swotImpactMedium: 'Medium',
swotImpactLow: 'Low',
swotJustification: 'Analysis',
swotTrendImproving: 'Improving',
swotTrendStable: 'Stable',
swotTrendDeteriorating: 'Deteriorating',
Comment on lines 123 to +127
dashboardTitle: 'Dashboard',
dashboardSummary: 'Summary',
dashboardPanel: 'Panel',
Expand Down Expand Up @@ -240,6 +244,10 @@ export const CONTENT_LABELS_PART1: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'Hög',
swotImpactMedium: 'Medel',
swotImpactLow: 'Låg',
swotJustification: 'Analys',
swotTrendImproving: 'Förbättras',
swotTrendStable: 'Stabil',
swotTrendDeteriorating: 'Försämras',
dashboardTitle: 'Instrumentpanel',
dashboardSummary: 'Sammanfattning',
dashboardPanel: 'Panel',
Expand Down Expand Up @@ -359,6 +367,10 @@ export const CONTENT_LABELS_PART1: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'Høj',
swotImpactMedium: 'Middel',
swotImpactLow: 'Lav',
swotJustification: 'Analyse',
swotTrendImproving: 'Forbedres',
swotTrendStable: 'Stabil',
swotTrendDeteriorating: 'Forværres',
dashboardTitle: 'Dashboard',
dashboardSummary: 'Sammenfatning',
dashboardPanel: 'Panel',
Expand Down Expand Up @@ -478,6 +490,10 @@ export const CONTENT_LABELS_PART1: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'Høy',
swotImpactMedium: 'Middels',
swotImpactLow: 'Lav',
swotJustification: 'Analyse',
swotTrendImproving: 'Forbedres',
swotTrendStable: 'Stabil',
swotTrendDeteriorating: 'Forverres',
dashboardTitle: 'Dashbord',
dashboardSummary: 'Sammendrag',
dashboardPanel: 'Panel',
Expand Down Expand Up @@ -597,6 +613,10 @@ export const CONTENT_LABELS_PART1: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'Korkea',
swotImpactMedium: 'Keskitaso',
swotImpactLow: 'Matala',
swotJustification: 'Analyysi',
swotTrendImproving: 'Paranee',
swotTrendStable: 'Vakaa',
swotTrendDeteriorating: 'Heikkenee',
dashboardTitle: 'Kojelauta',
dashboardSummary: 'Yhteenveto',
dashboardPanel: 'Paneeli',
Expand Down Expand Up @@ -716,6 +736,10 @@ export const CONTENT_LABELS_PART1: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'Hoch',
swotImpactMedium: 'Mittel',
swotImpactLow: 'Niedrig',
swotJustification: 'Analyse',
swotTrendImproving: 'Verbessernd',
swotTrendStable: 'Stabil',
swotTrendDeteriorating: 'Verschlechternd',
dashboardTitle: 'Dashboard',
dashboardSummary: 'Zusammenfassung',
dashboardPanel: 'Panel',
Expand Down Expand Up @@ -835,6 +859,10 @@ export const CONTENT_LABELS_PART1: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'Élevé',
swotImpactMedium: 'Moyen',
swotImpactLow: 'Faible',
swotJustification: 'Analyse',
swotTrendImproving: 'En amélioration',
swotTrendStable: 'Stable',
swotTrendDeteriorating: 'En détérioration',
dashboardTitle: 'Tableau de bord',
dashboardSummary: 'Résumé',
dashboardPanel: 'Panneau',
Expand Down
28 changes: 28 additions & 0 deletions scripts/data-transformers/constants/content-labels-part2.ts
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,10 @@ export const CONTENT_LABELS_PART2: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'Alto',
swotImpactMedium: 'Medio',
swotImpactLow: 'Bajo',
swotJustification: 'Análisis',
swotTrendImproving: 'Mejorando',
swotTrendStable: 'Estable',
swotTrendDeteriorating: 'Deteriorando',
Comment on lines 123 to +127
dashboardTitle: 'Panel de control',
dashboardSummary: 'Resumen',
dashboardPanel: 'Panel',
Expand Down Expand Up @@ -240,6 +244,10 @@ export const CONTENT_LABELS_PART2: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'Hoog',
swotImpactMedium: 'Gemiddeld',
swotImpactLow: 'Laag',
swotJustification: 'Analyse',
swotTrendImproving: 'Verbeterend',
swotTrendStable: 'Stabiel',
swotTrendDeteriorating: 'Verslechterend',
dashboardTitle: 'Dashboard',
dashboardSummary: 'Samenvatting',
dashboardPanel: 'Paneel',
Expand Down Expand Up @@ -359,6 +367,10 @@ export const CONTENT_LABELS_PART2: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'مرتفع',
swotImpactMedium: 'متوسط',
swotImpactLow: 'منخفض',
swotJustification: 'تحليل',
swotTrendImproving: 'تحسن',
swotTrendStable: 'مستقر',
swotTrendDeteriorating: 'تدهور',
dashboardTitle: 'لوحة المعلومات',
dashboardSummary: 'ملخص',
dashboardPanel: 'لوحة',
Expand Down Expand Up @@ -478,6 +490,10 @@ export const CONTENT_LABELS_PART2: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: 'גבוה',
swotImpactMedium: 'בינוני',
swotImpactLow: 'נמוך',
swotJustification: 'ניתוח',
swotTrendImproving: 'משתפר',
swotTrendStable: 'יציב',
swotTrendDeteriorating: 'מתדרדר',
dashboardTitle: 'לוח מחוונים',
dashboardSummary: 'סיכום',
dashboardPanel: 'לוח',
Expand Down Expand Up @@ -597,6 +613,10 @@ export const CONTENT_LABELS_PART2: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: '高',
swotImpactMedium: '中',
swotImpactLow: '低',
swotJustification: '分析',
swotTrendImproving: '改善中',
swotTrendStable: '安定',
swotTrendDeteriorating: '悪化中',
dashboardTitle: 'ダッシュボード',
dashboardSummary: '概要',
dashboardPanel: 'パネル',
Expand Down Expand Up @@ -716,6 +736,10 @@ export const CONTENT_LABELS_PART2: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: '높음',
swotImpactMedium: '보통',
swotImpactLow: '낮음',
swotJustification: '분석',
swotTrendImproving: '개선 중',
swotTrendStable: '안정',
swotTrendDeteriorating: '악화 중',
dashboardTitle: '대시보드',
dashboardSummary: '요약',
dashboardPanel: '패널',
Expand Down Expand Up @@ -835,6 +859,10 @@ export const CONTENT_LABELS_PART2: Partial<Record<string, ContentLabelSet>> = {
swotImpactHigh: '高',
swotImpactMedium: '中',
swotImpactLow: '低',
swotJustification: '分析',
swotTrendImproving: '改善中',
swotTrendStable: '稳定',
swotTrendDeteriorating: '恶化中',
dashboardTitle: '仪表板',
dashboardSummary: '摘要',
dashboardPanel: '面板',
Expand Down
Loading
Loading