case
type: Case
case name: flandor
question: Is the Flemish Economic Resilience Board allowed to use a neutral macro-economic insight for regional stabilization, and if so which package should it activate for Flanders?
expected files written: 6
request purpose: regional_stabilization
request action: use
hub created at: 2026-04-08T07:00:00+00:00
hub expires at: 2026-04-08T19:00:00+00:00
board auth at: 2026-04-08T09:15:00+00:00
board duty at: 2026-04-08T18:30:00+00:00
files written: 6
audit entries: 1
export weakness: true
skills strain: true
grid stress: true
needs retooling pulse: true
derived from need: regional_retooling_and_flexibility

flanders
type: Region
region name: Flanders

signals
type: SecureAggregate
observed firms: 217
aggregation level: regional_cluster
contains firm names: false
contains payroll rows: false

cluster antwerp
type: IndustrialCluster
cluster name: Antwerp chemicals
export orders index: 84
energy intensity: 92

cluster ghent
type: IndustrialCluster
cluster name: Ghent manufacturing
export orders index: 87
energy intensity: 76

labourMarket
type: LabourMarket
tech vacancy rate tenths: 46
tech vacancy rate: 4.6

grid
type: GridSignal
congestion hours: 19
renewable curtailment m wh: 240

budget
type: BudgetWindow
max MEUR: 140
window name: Q2 resilience window

pkg training only
type: PolicyPackage
package id: pkg:TRAIN_070
package name: Flanders Skills Sprint
cost MEUR: 70
worker coverage: 900
grid relief MW: 0
covers skills strain: true

pkg logistics only
type: PolicyPackage
package id: pkg:PORT_095
package name: Schelde Trade Buffer
cost MEUR: 95
worker coverage: 300
grid relief MW: 10
covers export weakness: true

pkg flandor
type: PolicyPackage
package id: pkg:RET_FLEX_120
package name: Flandor Retooling Pulse
cost MEUR: 120
worker coverage: 1200
grid relief MW: 85
covers export weakness: true
covers skills strain: true
covers grid stress: true

pkg full corridor
type: PolicyPackage
package id: pkg:CORRIDOR_165
package name: Full Corridor Shock Shield
cost MEUR: 165
worker coverage: 1600
grid relief MW: 110
covers export weakness: true
covers skills strain: true
covers grid stress: true

macroInsight
type: Insight
id: flandor
metric: regional_retooling_priority
threshold score: 3
threshold display: 3 active needs
suggestion policy: lowest_cost_package_covering_all_active_needs
scope device: economic-resilience-board
scope event: budget-prep-window
region: Flanders
created at: 2026-04-08T07:00:00+00:00
expires at: 2026-04-08T19:00:00+00:00
serialized lowercase: {"createdat":"2026-04-08t07:00:00+00:00","expiresat":"2026-04-08t19:00:00+00:00","id":"https://example.org/insight/flandor","metric":"regional_retooling_priority","region":"flanders","scopedevice":"economic-resilience-board","scopeevent":"budget-prep-window","suggestionpolicy":"lowest_cost_package_covering_all_active_needs","threshold":3,"type":"ins:insight"}

policy
type: Policy
profile: Flandor-Insight-Policy
permission:
  action: use
  target: flandor
  constraint:
    left operand: purpose
    operator: eq
    right operand: regional_stabilization
prohibition:
  action: distribute
  target: flandor
  constraint:
    left operand: purpose
    operator: eq
    right operand: firm_surveillance
duty:
  action: delete
  constraint:
    left operand: dateTime
    operator: eq
    right operand: 2026-04-08T19:00:00+00:00
permission:
  action: use
  target: flandor
  constraint:
    left operand: purpose
    operator: eq
    right operand: regional_stabilization
prohibition:
  action: distribute
  constraint:
    right operand: firm_surveillance

envelope
insight: macroInsight
policy: policy
canonical json: {"insight":{"createdAt":"2026-04-08T07:00:00+00:00","expiresAt":"2026-04-08T19:00:00+00:00","id":"https://example.org/insight/flandor","metric":"regional_retooling_priority","region":"Flanders","scopeDevice":"economic-resilience-board","scopeEvent":"budget-prep-window","suggestionPolicy":"lowest_cost_package_covering_all_active_needs","threshold":3,"type":"ins:Insight"},"policy":{"duty":{"action":"odrl:delete","constraint":{"leftOperand":"odrl:dateTime","operator":"odrl:eq","rightOperand":"2026-04-08T19:00:00+00:00"}},"permission":{"action":"odrl:use","constraint":{"leftOperand":"odrl:purpose","operator":"odrl:eq","rightOperand":"regional_stabilization"},"target":"https://example.org/insight/flandor"},"profile":"Flandor-Insight-Policy","prohibition":{"action":"odrl:distribute","constraint":{"leftOperand":"odrl:purpose","operator":"odrl:eq","rightOperand":"firm_surveillance"},"target":"https://example.org/insight/flandor"},"type":"odrl:Policy"}}

signature
alg: HMAC-SHA256
keyid: demo-shared-secret
created: 2026-04-08T07:00:00+00:00
hmac verification mode: trustedPrecomputedInput

reasonText
value: Secure aggregates from Flanders indicate simultaneous export weakness, technical labour scarcity, and grid congestion. A neutral macro insight is scoped to the economic-resilience board for one budget window only, enabling a temporary package without exposing firm-level books.

check
payload hash matches: true
signature verifies: true
minimization strips sensitive terms: true
scope complete: true
authorization allowed: true
package within budget: true
package covers all needs: true
duty timing consistent: true
surveillance reuse prohibited: true
files written expected: true
threshold reached: true
lowest cost eligible package chosen: true
hmac matches: true

decision
at: 2026-04-08T09:15:00+00:00
outcome: Allowed
target: flandor

type
covers export weakness: true
covers skills strain: true
covers grid stress: true

coversExportWeakness
covers skills strain: true
covers grid stress: true

answer
active need count: 3
active need threshold: 3

result
all checks pass: true

out01
output string: # flandor ## Source files - [N3 rules](../flandor.n3) ## Answer

out02
output string: Name: Flandor

out03
output string: Region: Flanders

out04
output string: Metric: regional_retooling_priority

out07
output string: Budget cap: €140M

out11
output string: ## Reason Why

out12
output string: Export weakness is active because at least one cluster has exportOrdersIndex < 90 (Antwerp chemicals=84, Ghent manufacturing=87).

out13
output string: Skills strain is active because technical vacancy rate is 4.6% (threshold > 3.9%).

out14
output string: Grid stress is active because congestion hours = 19 (threshold > 11).

out15
output string: The recommendation policy is "lowest_cost_package_covering_all_active_needs", so the cheapest package that covers all active needs within budget is selected.

out16
output string: Selected package "Flandor Retooling Pulse" covers export=true, skills=true, grid=true, cost=€120M.

out17
output string: Usage is permitted only for purpose "regional_stabilization" and the envelope expires at 2026-04-08T19:00:00+00:00.

out18
output string: ## Check

out19
output string: - PASS: payload hash matches

out20
output string: - PASS: hmac matches

out21
output string: - PASS: threshold reached

out22
output string: - PASS: scope complete

out23
output string: - PASS: minimization respected

out24
output string: - PASS: authorized purpose allowed

out25
output string: - PASS: deletion duty still on time

out26
output string: - PASS: surveillance reuse prohibited

out27
output string: - PASS: package exists within budget

out28
output string: - PASS: package covers all active needs

out29
output string: - PASS: lowest-cost eligible package chosen