riksdagsmonitor 0.8.15 → 0.8.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/dist/lib/dashboards/coalition-dashboard.d.ts.map +1 -1
  2. package/dist/lib/dashboards/coalition-dashboard.js +25 -9
  3. package/dist/lib/dashboards/coalition-dashboard.js.map +1 -1
  4. package/dist/lib/dashboards/coalition-loader.d.ts.map +1 -1
  5. package/dist/lib/dashboards/coalition-loader.js +68 -32
  6. package/dist/lib/dashboards/coalition-loader.js.map +1 -1
  7. package/dist/lib/shared/chart-factory.d.ts +9 -2
  8. package/dist/lib/shared/chart-factory.d.ts.map +1 -1
  9. package/dist/lib/shared/chart-factory.js +9 -2
  10. package/dist/lib/shared/chart-factory.js.map +1 -1
  11. package/dist/lib/shared/theme.d.ts +1 -18
  12. package/dist/lib/shared/theme.d.ts.map +1 -1
  13. package/dist/lib/shared/theme.js +1 -18
  14. package/dist/lib/shared/theme.js.map +1 -1
  15. package/dist/scripts/analysis-reader.d.ts +2 -1
  16. package/dist/scripts/analysis-reader.d.ts.map +1 -1
  17. package/dist/scripts/analysis-reader.js.map +1 -1
  18. package/dist/scripts/data-transformers/content-generators/index.d.ts +32 -4
  19. package/dist/scripts/data-transformers/content-generators/index.d.ts.map +1 -1
  20. package/dist/scripts/data-transformers/content-generators/index.js +4 -2
  21. package/dist/scripts/data-transformers/content-generators/index.js.map +1 -1
  22. package/dist/scripts/data-transformers/content-generators/shared.d.ts +44 -2
  23. package/dist/scripts/data-transformers/content-generators/shared.d.ts.map +1 -1
  24. package/dist/scripts/data-transformers/content-generators/shared.js +9 -3
  25. package/dist/scripts/data-transformers/content-generators/shared.js.map +1 -1
  26. package/dist/scripts/generate-news-enhanced/config.d.ts +5 -4
  27. package/dist/scripts/generate-news-enhanced/config.d.ts.map +1 -1
  28. package/dist/scripts/generate-news-enhanced/config.js +3 -3
  29. package/dist/scripts/generate-news-enhanced/config.js.map +1 -1
  30. package/dist/scripts/generate-news-enhanced/generators.d.ts.map +1 -1
  31. package/dist/scripts/generate-news-enhanced/generators.js +38 -15
  32. package/dist/scripts/generate-news-enhanced/generators.js.map +1 -1
  33. package/dist/scripts/generate-news-enhanced/helpers.d.ts +1 -2
  34. package/dist/scripts/generate-news-enhanced/helpers.d.ts.map +1 -1
  35. package/dist/scripts/generate-news-enhanced/helpers.js +31 -1
  36. package/dist/scripts/generate-news-enhanced/helpers.js.map +1 -1
  37. package/dist/scripts/generate-news-enhanced/swot-analyzer.d.ts +12 -1
  38. package/dist/scripts/generate-news-enhanced/swot-analyzer.d.ts.map +1 -1
  39. package/dist/scripts/generate-news-enhanced/swot-analyzer.js +48 -0
  40. package/dist/scripts/generate-news-enhanced/swot-analyzer.js.map +1 -1
  41. package/dist/scripts/news-types/breaking-news.d.ts.map +1 -1
  42. package/dist/scripts/news-types/breaking-news.js +5 -1
  43. package/dist/scripts/news-types/breaking-news.js.map +1 -1
  44. package/dist/scripts/pre-article-analysis/markdown-serializer.d.ts +64 -1
  45. package/dist/scripts/pre-article-analysis/markdown-serializer.d.ts.map +1 -1
  46. package/dist/scripts/pre-article-analysis/markdown-serializer.js.map +1 -1
  47. package/dist/scripts/pre-article-analysis.d.ts.map +1 -1
  48. package/dist/scripts/pre-article-analysis.js +20 -7
  49. package/dist/scripts/pre-article-analysis.js.map +1 -1
  50. package/dist/scripts/types/article.d.ts +33 -3
  51. package/dist/scripts/types/article.d.ts.map +1 -1
  52. package/package.json +3 -3
  53. package/dist/scripts/ai-analysis/coalition-detector.d.ts +0 -28
  54. package/dist/scripts/ai-analysis/coalition-detector.d.ts.map +0 -1
  55. package/dist/scripts/ai-analysis/coalition-detector.js +0 -242
  56. package/dist/scripts/ai-analysis/coalition-detector.js.map +0 -1
  57. package/dist/scripts/ai-analysis/dashboard-analyzer.d.ts +0 -73
  58. package/dist/scripts/ai-analysis/dashboard-analyzer.d.ts.map +0 -1
  59. package/dist/scripts/ai-analysis/dashboard-analyzer.js +0 -511
  60. package/dist/scripts/ai-analysis/dashboard-analyzer.js.map +0 -1
  61. package/dist/scripts/ai-analysis/document-analyzer.d.ts +0 -196
  62. package/dist/scripts/ai-analysis/document-analyzer.d.ts.map +0 -1
  63. package/dist/scripts/ai-analysis/document-analyzer.js +0 -1001
  64. package/dist/scripts/ai-analysis/document-analyzer.js.map +0 -1
  65. package/dist/scripts/ai-analysis/domains/index.d.ts +0 -15
  66. package/dist/scripts/ai-analysis/domains/index.d.ts.map +0 -1
  67. package/dist/scripts/ai-analysis/domains/index.js +0 -494
  68. package/dist/scripts/ai-analysis/domains/index.js.map +0 -1
  69. package/dist/scripts/ai-analysis/helpers.d.ts +0 -43
  70. package/dist/scripts/ai-analysis/helpers.d.ts.map +0 -1
  71. package/dist/scripts/ai-analysis/helpers.js +0 -79
  72. package/dist/scripts/ai-analysis/helpers.js.map +0 -1
  73. package/dist/scripts/ai-analysis/index.d.ts +0 -15
  74. package/dist/scripts/ai-analysis/index.d.ts.map +0 -1
  75. package/dist/scripts/ai-analysis/index.js +0 -14
  76. package/dist/scripts/ai-analysis/index.js.map +0 -1
  77. package/dist/scripts/ai-analysis/pipeline.d.ts +0 -41
  78. package/dist/scripts/ai-analysis/pipeline.d.ts.map +0 -1
  79. package/dist/scripts/ai-analysis/pipeline.js +0 -208
  80. package/dist/scripts/ai-analysis/pipeline.js.map +0 -1
  81. package/dist/scripts/ai-analysis/political-significance.d.ts +0 -63
  82. package/dist/scripts/ai-analysis/political-significance.d.ts.map +0 -1
  83. package/dist/scripts/ai-analysis/political-significance.js +0 -227
  84. package/dist/scripts/ai-analysis/political-significance.js.map +0 -1
  85. package/dist/scripts/ai-analysis/quality-assessor.d.ts +0 -104
  86. package/dist/scripts/ai-analysis/quality-assessor.d.ts.map +0 -1
  87. package/dist/scripts/ai-analysis/quality-assessor.js +0 -554
  88. package/dist/scripts/ai-analysis/quality-assessor.js.map +0 -1
  89. package/dist/scripts/ai-analysis/swot/index.d.ts +0 -56
  90. package/dist/scripts/ai-analysis/swot/index.d.ts.map +0 -1
  91. package/dist/scripts/ai-analysis/swot/index.js +0 -360
  92. package/dist/scripts/ai-analysis/swot/index.js.map +0 -1
  93. package/dist/scripts/ai-analysis/swot/placeholders.d.ts +0 -30
  94. package/dist/scripts/ai-analysis/swot/placeholders.d.ts.map +0 -1
  95. package/dist/scripts/ai-analysis/swot/placeholders.js +0 -381
  96. package/dist/scripts/ai-analysis/swot/placeholders.js.map +0 -1
  97. package/dist/scripts/ai-analysis/types.d.ts +0 -333
  98. package/dist/scripts/ai-analysis/types.d.ts.map +0 -1
  99. package/dist/scripts/ai-analysis/types.js +0 -19
  100. package/dist/scripts/ai-analysis/types.js.map +0 -1
  101. package/dist/scripts/ai-analysis/visualisation/index.d.ts +0 -15
  102. package/dist/scripts/ai-analysis/visualisation/index.d.ts.map +0 -1
  103. package/dist/scripts/ai-analysis/visualisation/index.js +0 -179
  104. package/dist/scripts/ai-analysis/visualisation/index.js.map +0 -1
  105. package/dist/scripts/analysis-framework/cross-reference.d.ts +0 -35
  106. package/dist/scripts/analysis-framework/cross-reference.d.ts.map +0 -1
  107. package/dist/scripts/analysis-framework/cross-reference.js +0 -290
  108. package/dist/scripts/analysis-framework/cross-reference.js.map +0 -1
  109. package/dist/scripts/analysis-framework/index.d.ts +0 -79
  110. package/dist/scripts/analysis-framework/index.d.ts.map +0 -1
  111. package/dist/scripts/analysis-framework/index.js +0 -133
  112. package/dist/scripts/analysis-framework/index.js.map +0 -1
  113. package/dist/scripts/analysis-framework/lenses/citizen.d.ts +0 -29
  114. package/dist/scripts/analysis-framework/lenses/citizen.d.ts.map +0 -1
  115. package/dist/scripts/analysis-framework/lenses/citizen.js +0 -220
  116. package/dist/scripts/analysis-framework/lenses/citizen.js.map +0 -1
  117. package/dist/scripts/analysis-framework/lenses/economic.d.ts +0 -29
  118. package/dist/scripts/analysis-framework/lenses/economic.d.ts.map +0 -1
  119. package/dist/scripts/analysis-framework/lenses/economic.js +0 -227
  120. package/dist/scripts/analysis-framework/lenses/economic.js.map +0 -1
  121. package/dist/scripts/analysis-framework/lenses/government.d.ts +0 -32
  122. package/dist/scripts/analysis-framework/lenses/government.d.ts.map +0 -1
  123. package/dist/scripts/analysis-framework/lenses/government.js +0 -265
  124. package/dist/scripts/analysis-framework/lenses/government.js.map +0 -1
  125. package/dist/scripts/analysis-framework/lenses/international.d.ts +0 -29
  126. package/dist/scripts/analysis-framework/lenses/international.d.ts.map +0 -1
  127. package/dist/scripts/analysis-framework/lenses/international.js +0 -248
  128. package/dist/scripts/analysis-framework/lenses/international.js.map +0 -1
  129. package/dist/scripts/analysis-framework/lenses/media.d.ts +0 -29
  130. package/dist/scripts/analysis-framework/lenses/media.d.ts.map +0 -1
  131. package/dist/scripts/analysis-framework/lenses/media.js +0 -211
  132. package/dist/scripts/analysis-framework/lenses/media.js.map +0 -1
  133. package/dist/scripts/analysis-framework/lenses/opposition.d.ts +0 -29
  134. package/dist/scripts/analysis-framework/lenses/opposition.d.ts.map +0 -1
  135. package/dist/scripts/analysis-framework/lenses/opposition.js +0 -234
  136. package/dist/scripts/analysis-framework/lenses/opposition.js.map +0 -1
  137. package/dist/scripts/analysis-framework/methodology-types.d.ts +0 -309
  138. package/dist/scripts/analysis-framework/methodology-types.d.ts.map +0 -1
  139. package/dist/scripts/analysis-framework/methodology-types.js +0 -38
  140. package/dist/scripts/analysis-framework/methodology-types.js.map +0 -1
  141. package/dist/scripts/analysis-framework/political-classification.d.ts +0 -58
  142. package/dist/scripts/analysis-framework/political-classification.d.ts.map +0 -1
  143. package/dist/scripts/analysis-framework/political-classification.js +0 -414
  144. package/dist/scripts/analysis-framework/political-classification.js.map +0 -1
  145. package/dist/scripts/analysis-framework/political-risk-assessment.d.ts +0 -74
  146. package/dist/scripts/analysis-framework/political-risk-assessment.d.ts.map +0 -1
  147. package/dist/scripts/analysis-framework/political-risk-assessment.js +0 -656
  148. package/dist/scripts/analysis-framework/political-risk-assessment.js.map +0 -1
  149. package/dist/scripts/analysis-framework/political-threat-analysis.d.ts +0 -65
  150. package/dist/scripts/analysis-framework/political-threat-analysis.d.ts.map +0 -1
  151. package/dist/scripts/analysis-framework/political-threat-analysis.js +0 -553
  152. package/dist/scripts/analysis-framework/political-threat-analysis.js.map +0 -1
  153. package/dist/scripts/analysis-framework/significance-scorer.d.ts +0 -62
  154. package/dist/scripts/analysis-framework/significance-scorer.d.ts.map +0 -1
  155. package/dist/scripts/analysis-framework/significance-scorer.js +0 -196
  156. package/dist/scripts/analysis-framework/significance-scorer.js.map +0 -1
  157. package/dist/scripts/analysis-framework/types.d.ts +0 -138
  158. package/dist/scripts/analysis-framework/types.d.ts.map +0 -1
  159. package/dist/scripts/analysis-framework/types.js +0 -12
  160. package/dist/scripts/analysis-framework/types.js.map +0 -1
  161. package/dist/scripts/data-transformers/content-generators/ai-swot-analyzer.d.ts +0 -89
  162. package/dist/scripts/data-transformers/content-generators/ai-swot-analyzer.d.ts.map +0 -1
  163. package/dist/scripts/data-transformers/content-generators/ai-swot-analyzer.js +0 -667
  164. package/dist/scripts/data-transformers/content-generators/ai-swot-analyzer.js.map +0 -1
  165. package/dist/scripts/data-transformers/content-generators/stakeholder-swot-section.d.ts +0 -83
  166. package/dist/scripts/data-transformers/content-generators/stakeholder-swot-section.d.ts.map +0 -1
  167. package/dist/scripts/data-transformers/content-generators/stakeholder-swot-section.js +0 -219
  168. package/dist/scripts/data-transformers/content-generators/stakeholder-swot-section.js.map +0 -1
@@ -1,196 +0,0 @@
1
- /**
2
- * @module ai-analysis/document-analyzer
3
- * @description AI-powered comprehensive document analysis framework for
4
- * parliamentary documents, government propositions, and policy papers.
5
- *
6
- * Provides multi-stakeholder impact assessment, PESTLE analysis, coalition
7
- * dynamics, historical context, implementation feasibility, risk assessment,
8
- * and confidence scoring through a multi-iteration analysis protocol.
9
- *
10
- * The framework is the shared analytical backbone consumed by all content
11
- * generators and agentic workflows for consistent, high-quality political
12
- * intelligence.
13
- *
14
- * @author Hack23 AB
15
- * @license Apache-2.0
16
- */
17
- import type { RawDocument, CIAContext } from '../data-transformers/types.js';
18
- import type { Language } from '../types/language.js';
19
- import type { SwotData } from '../types/article.js';
20
- import { type ConfidenceLevel, type DomainKey } from '../data-transformers/policy-analysis.js';
21
- /** Available stakeholder groups that may be relevant for a document */
22
- export type StakeholderGroup = 'government-coalition' | 'opposition-parties' | 'state-agencies' | 'municipalities-regions' | 'private-sector' | 'labor-market' | 'civil-society' | 'international-eu' | 'media-press' | 'academia-research' | 'citizens-voters';
23
- /** Direction of impact on a stakeholder */
24
- export type ImpactDirection = 'positive' | 'negative' | 'neutral' | 'mixed';
25
- /** Burden level for implementation */
26
- export type BurdenLevel = 'high' | 'medium' | 'low';
27
- /** Direct impact assessment for one stakeholder */
28
- export interface ImpactAssessment {
29
- direction: ImpactDirection;
30
- magnitude: 'significant' | 'moderate' | 'minor';
31
- summary: string;
32
- }
33
- /** Full stakeholder impact analysis for a single stakeholder group */
34
- export interface StakeholderImpact {
35
- stakeholder: StakeholderGroup;
36
- /** Human-readable name for display */
37
- displayName: string;
38
- directImpact: ImpactAssessment;
39
- /** Secondary / downstream effects */
40
- indirectEffects: string[];
41
- implementationBurden: BurdenLevel;
42
- /** Political positioning implications */
43
- politicalImplications: string;
44
- /** Per-stakeholder SWOT analysis */
45
- swot: SwotData;
46
- /** Confidence level for this stakeholder assessment */
47
- confidence: ConfidenceLevel;
48
- }
49
- /** PESTLE analysis dimensions */
50
- export interface PESTLEAnalysis {
51
- political: string[];
52
- economic: string[];
53
- social: string[];
54
- technological: string[];
55
- legal: string[];
56
- environmental: string[];
57
- }
58
- /** Detected policy domain with relevance score */
59
- export interface PolicyDomain {
60
- key: DomainKey | string;
61
- name: string;
62
- relevanceScore: number;
63
- }
64
- /** Coalition dynamics analysis */
65
- export interface CoalitionAnalysis {
66
- governmentImpact: ImpactDirection;
67
- oppositionResponse: string;
68
- crossPartyPotential: boolean;
69
- stabilityEffect: 'stabilising' | 'neutral' | 'destabilising';
70
- summary: string;
71
- }
72
- /** Historical and legislative context */
73
- export interface HistoricalContext {
74
- precedents: string[];
75
- relatedLegislation: string[];
76
- policyEvolution: string;
77
- }
78
- /** Implementation feasibility assessment */
79
- export interface ImplementationAssessment {
80
- feasibility: 'high' | 'medium' | 'low';
81
- estimatedTimeline: string;
82
- keyObstacles: string[];
83
- resourceRequirements: string;
84
- agenciesInvolved: string[];
85
- }
86
- /** Risk factor identified in the document */
87
- export interface RiskAssessment {
88
- type: 'political' | 'implementation' | 'public-acceptance' | 'legal' | 'financial';
89
- severity: 'high' | 'medium' | 'low';
90
- description: string;
91
- mitigationOptions: string[];
92
- }
93
- /** One pass of the multi-iteration analysis protocol */
94
- export interface AnalysisIteration {
95
- iteration: 1 | 2 | 3 | 4;
96
- label: 'generation' | 'deepening' | 'stakeholder-review' | 'synthesis';
97
- summary: string;
98
- refinements: string[];
99
- }
100
- /** Full document analysis result */
101
- export interface DocumentAnalysis {
102
- /** Document identifier (dok_id or slug) */
103
- documentId: string;
104
- /** Document title for display */
105
- documentTitle: string;
106
- /** AI-generated executive summary (2–3 paragraphs) */
107
- executiveSummary: string;
108
- /** Per-stakeholder impact assessments */
109
- stakeholderImpacts: StakeholderImpact[];
110
- /** PESTLE dimension analysis */
111
- pestleDimensions: PESTLEAnalysis;
112
- /** Affected policy domains */
113
- policyDomains: PolicyDomain[];
114
- /** Coalition dynamics analysis */
115
- coalitionDynamics: CoalitionAnalysis;
116
- /** Historical and legislative context */
117
- historicalContext: HistoricalContext;
118
- /** Implementation feasibility */
119
- implementationAssessment: ImplementationAssessment;
120
- /** Risk factors */
121
- riskAssessment: RiskAssessment[];
122
- /** Per-dimension confidence scores */
123
- confidenceScores: Map<string, ConfidenceLevel>;
124
- /** Multi-iteration protocol record */
125
- iterations: AnalysisIteration[];
126
- /** Overall influence score (0–100) */
127
- influenceScore: number;
128
- /** ISO-8601 timestamp of analysis */
129
- analyzedAt: string;
130
- }
131
- /**
132
- * Maximum number of entries retained in `_analysisCache`.
133
- * When the limit is reached the oldest entry (first inserted — Map iteration
134
- * order) is evicted. This prevents unbounded memory growth in long-running
135
- * processes or large batch runs.
136
- */
137
- export declare const MAX_CACHE_SIZE = 500;
138
- /** Clear the in-process analysis cache (useful for testing). */
139
- export declare function clearAnalysisCache(): void;
140
- /**
141
- * Precomputed values that are expensive to derive and shared across
142
- * multiple builder functions within a single `analyzeDocument()` call.
143
- *
144
- * By computing `domains` and `influenceScore` once and threading this
145
- * context through helpers we avoid 7–11× redundant `detectPolicyDomains()`
146
- * and `calculateInfluenceScore()` calls per document.
147
- */
148
- export interface PrecomputedContext {
149
- domains: string[];
150
- influenceScore: number;
151
- }
152
- /**
153
- * Determine which stakeholder groups are relevant for a document.
154
- * Government coalition, opposition parties, and citizens/voters are always
155
- * included; other groups are added based on document-content signals.
156
- */
157
- export declare function selectRelevantStakeholders(doc: RawDocument): StakeholderGroup[];
158
- /** Build PESTLE analysis dimensions from a document. */
159
- export declare function buildPestleAnalysis(doc: RawDocument, lang?: Language | string, ctx?: PrecomputedContext): PESTLEAnalysis;
160
- /** Derive coalition dynamics from document and CIA context. */
161
- export declare function buildCoalitionDynamics(doc: RawDocument, ciaContext?: CIAContext): CoalitionAnalysis;
162
- /** Build historical and legislative context (structural inference). */
163
- export declare function buildHistoricalContext(doc: RawDocument, precomputedDomains?: string[]): HistoricalContext;
164
- /** Build implementation feasibility assessment from document metadata. */
165
- export declare function buildImplementationAssessment(doc: RawDocument, ctx?: PrecomputedContext): ImplementationAssessment;
166
- /** Build risk assessment list for a document. */
167
- export declare function buildRiskAssessment(doc: RawDocument, ciaContext?: CIAContext, ctx?: PrecomputedContext): RiskAssessment[];
168
- /** Generate a structured executive summary for a document. */
169
- export declare function generateExecutiveSummary(doc: RawDocument, lang: Language | string, ctx?: PrecomputedContext): string;
170
- /**
171
- * Analyse a parliamentary document through the comprehensive multi-iteration
172
- * framework. Results are cached by document ID to avoid redundant analysis
173
- * when the same document appears in multiple articles.
174
- *
175
- * @param doc - Raw document from the MCP server
176
- * @param lang - Target language for localised display names
177
- * @param ciaContext - Optional CIA intelligence context for enriched analysis
178
- * @param forceRefresh - Skip cache and recompute (default false)
179
- * @returns Full DocumentAnalysis result
180
- */
181
- export declare function analyzeDocument(doc: RawDocument, lang?: Language | string, ciaContext?: CIAContext, forceRefresh?: boolean): DocumentAnalysis;
182
- /**
183
- * Analyse multiple documents in batch, returning a map from document ID to
184
- * analysis result. Uses caching so documents appearing multiple times are
185
- * only analysed once.
186
- *
187
- * When the input array contains multiple versions of the same document
188
- * (e.g. a metadata-only record and a content-enriched record sharing the
189
- * same `dok_id`), the batch is de-duplicated up-front using a "prefer
190
- * enriched" strategy: among entries that share the same stable document
191
- * base key, the version with `fullText` or `fullContent` wins. This
192
- * prevents order-dependent overwrites and ensures the richest available
193
- * version is analysed.
194
- */
195
- export declare function analyzeDocuments(docs: RawDocument[], lang?: Language | string, ciaContext?: CIAContext): Map<string, DocumentAnalysis>;
196
- //# sourceMappingURL=document-analyzer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-analyzer.d.ts","sourceRoot":"","sources":["../../../scripts/ai-analysis/document-analyzer.ts"],"names":[],"mappings":"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"}