Merge commit '04ae3b1599'
This commit is contained in:
commit
ce892be855
20 changed files with 1804 additions and 10 deletions
151
shared/docs/plan/2026-08-09-v1-ss12-undernoekler.md
Normal file
151
shared/docs/plan/2026-08-09-v1-ss12-undernoekler.md
Normal file
|
|
@ -0,0 +1,151 @@
|
|||
# V1-etterspill — krever `generated.by` / `generated.at` egne rader i §12?
|
||||
|
||||
> **Status: UNDERLAG, ikke ratifisert. Ingen frossen tekst er endret på dette punktet.**
|
||||
> Funnet under utførelsen av V1 (`54e0ec7`, 2026-08-09). V1 selv er ratifisert og utført;
|
||||
> dette er en spenning utførelsen *avdekket*, ikke en del av vedtaket.
|
||||
>
|
||||
> Beslektet: `2026-07-26-v1-generated-felt-okf-v0.2.md` (V1-vedtaket),
|
||||
> `2026-08-02-ss11-mangler-rad-for-ss8.md` (samme klasse: intern spenning i frossen tekst).
|
||||
|
||||
---
|
||||
|
||||
## 1. Funnet
|
||||
|
||||
O2 gjør `generated` om fra en literal til en **inline mapping med to navngitte undernøkler**:
|
||||
|
||||
```
|
||||
generated: { by: process:okf-ingest, at: <ingested_at> }
|
||||
```
|
||||
|
||||
§12s kryssjekk-tabell bærer fortsatt **én rad** for `generated` (`| generated | provenance
|
||||
frontmatter | §3, §7 |`). Spørsmålet er om `by` og `at` skal ha egne rader.
|
||||
|
||||
To setninger i frossen tekst gjør dette til mer enn kosmetikk:
|
||||
|
||||
> **§12, ingressen** — «Every field of the machine-readable contracts, mapped to its normative
|
||||
> section (completeness is enforced by the spec-integrity test)»
|
||||
|
||||
> **§11, søm «Spec integrity»** — «this spec goes missing, names a concrete agent toolkit, or
|
||||
> **stops documenting a contract field**»
|
||||
|
||||
§12 er altså ikke en bekvemmelighetstabell. Den står under en **load-bearing søm**.
|
||||
|
||||
## 2. Presedensen i vår egen tekst — målt begge veier
|
||||
|
||||
Dette er poenget som avgjør, og det peker ikke én vei før man skiller aksene.
|
||||
|
||||
**Presedens FOR egne rader — `source`:**
|
||||
|
||||
`source` er et strukturert kontraktsfelt med navngitte undernøkler. §12 gir det **både** en
|
||||
toppnivå-rad **og** en rad per undernøkkel:
|
||||
|
||||
| Rad i §12 | Hva den er |
|
||||
|---|---|
|
||||
| `source` | toppnivå-feltet, «polymorphic on `source.type`» |
|
||||
| `type` | undernøkkel (diskriminator) |
|
||||
| `id` | undernøkkel (felles) |
|
||||
| `root` | undernøkkel, kun `type: "file"` |
|
||||
| `connection_ref` | undernøkkel, kun `type: "sql"` |
|
||||
| `base_url` | undernøkkel, kun `type: "http"` |
|
||||
| `credential_ref` | undernøkkel, kun `type: "http"`, valgfri |
|
||||
|
||||
Merk at undernøklene er definert i **prosa** i §4 (punktlisten), ikke i §4s tabell — men de får
|
||||
likevel egne rader i §12. Tabell-plassering i §4 avgjør altså ikke §12-plikten.
|
||||
|
||||
**Presedens MOT egne rader — `ingest_manifest`:**
|
||||
|
||||
`ingest_manifest` har intern struktur (`{stem}@{hash16}`, §5) og får **nøyaktig én** rad. Struktur
|
||||
inne i en verdi utløser altså ikke automatisk rader.
|
||||
|
||||
**Aksen som skiller dem:**
|
||||
|
||||
| Felt | Intern struktur er… | Egne rader? |
|
||||
|---|---|---|
|
||||
| `source` | **navngitte nøkler i en mapping** | ja (4 undernøkler + felles) |
|
||||
| `ingest_manifest` | et **strengformat** med posisjonelle deler | nei |
|
||||
| `generated` (etter O2) | **navngitte nøkler i en mapping** | *åpent — men faller på `source`-siden* |
|
||||
|
||||
`generated: { by, at }` er en mapping med navngitte nøkler. På den målte aksen ligner den
|
||||
`source`, ikke `ingest_manifest`.
|
||||
|
||||
## 3. Hvorfor V1-vedtaket ikke fanget dette
|
||||
|
||||
`2026-07-26-v1-generated-felt-okf-v0.2.md:161` sier: «`:152` og `:309` navngir bare nøkkelen og
|
||||
overlever.»
|
||||
|
||||
**Den påstanden er sann om den eksisterende raden** — raden heter fortsatt `generated`, ligger
|
||||
fortsatt i provenance-frontmatter, og peker fortsatt på §3/§7. Ingenting ved raden ble usant.
|
||||
|
||||
**Den er taus om de to NYE nøklene.** Kostnaden ble talt som «kontraktslinjer som må skrives
|
||||
om» (§5) — en *omskrivings*-akse. Rader som må **tilføyes** er en annen akse, og den ble aldri
|
||||
stilt. Dette er ikke en feil i ratifiseringen; det er et hull i dens scope-formulering. Samme
|
||||
klasse som «de 5 linjene var ikke homogene» og «`:214` er ikke en literal»: kostnadstellingen var
|
||||
riktig på sin egen akse og blind for en nabo-akse.
|
||||
|
||||
## 4. Er sømmen rød i dag? Nei — og det er grunnen til at dette ikke haster
|
||||
|
||||
§11-sømmens ordlyd er «**stops documenting** a contract field». §7s omskrevne feltrad
|
||||
**dokumenterer begge undernøklene** ordrett — den navngir `by`, fastslår at det er en
|
||||
`process:`-aktør, navngir `at`, og binder den til `ingested_at`. Specen har altså ikke sluttet å
|
||||
dokumentere noe.
|
||||
|
||||
Eksponeringen er mot **§12s egen ingress** («every field … mapped to its normative section»), som
|
||||
er en fullstendighets-påstand om tabellen. Det er en svakere binding enn sømmens ordlyd.
|
||||
|
||||
**Konsekvens:** ingen kjent implementasjon går rød av dagens tilstand. Dette er en intern
|
||||
spenning, ikke en defekt i drift.
|
||||
|
||||
## 5. Opsjoner (ingen anbefaling — operatøren ratifiserer)
|
||||
|
||||
| | Hva | Kostnad | Hva den koster i konformans |
|
||||
|---|---|---|---|
|
||||
| **O-A** | Tilføy to rader i §12 (`by`, `at` → §7) | 2 linjer, ren prosa | Utvider hva §12 påstår fullstendighet over. Ingen fixture-endring, ingen konsument-kostnad. |
|
||||
| **O-B** | La §12 stå, men **snevre ingressen** til «every top-level field» | 1 linje | Gjør dagens tilstand eksplisitt konform. Men svekker en påstand `source`-radene allerede motsier. |
|
||||
| **O-C** | La alt stå | 0 | Spenningen består, udokumentert. |
|
||||
|
||||
**O-B har en målt selvmotsigelse:** `root`/`connection_ref`/`base_url`/`credential_ref` er *ikke*
|
||||
toppnivå-felter og står allerede i tabellen. En «top-level»-innsnevring ville gjort fire
|
||||
eksisterende rader uhjemlede. Det er ikke et argument mot O-B, men det må løses samtidig.
|
||||
|
||||
**Konsument-måling mottatt 2026-08-09 (`portfolio-optimiser-claude`, ført som DERES):** deres
|
||||
§12-vakt keyer på at radens første kolonne er ordrett `| `generated` |`. Konsekvensen skiller
|
||||
skarpt mellom to former som ellers leser likt:
|
||||
|
||||
| Form | Konsekvens hos dem (deres måling) |
|
||||
|---|---|
|
||||
| **TILFØYE** rader for `by`/`at` (= O-A) | ingen — vakten er urørt |
|
||||
| **ERSTATTE** `generated`-raden med to undernøkkel-rader | vakten går **RØD**, by design (den skal fange at en rad forsvinner) |
|
||||
|
||||
To ting følger. (1) O-A-radens «ingen konsument-kostnad» er nå målt utenfra, ikke bare antatt av
|
||||
oss. (2) Erstatnings-formen er en **fjerde** opsjon underlaget ikke listet, og den er den eneste
|
||||
som koster en konsument en samtidig endring. De ber ikke om noe; de opplyser.
|
||||
|
||||
## 6. Et separat, mindre funn fra samme utførelse
|
||||
|
||||
`generated.at` gjentar verdien av `ingested_at`, som er sitt **eget felt i samme
|
||||
frontmatter-prefiks** (§5s sju nøkler; §7s tabell). Etter O2 bærer et stemplet dokument altså
|
||||
samme tidsstempel to steder.
|
||||
|
||||
Dette er **en følge av den ratifiserte formen**, ikke en feil i utførelsen — v0.2s `generated`
|
||||
tar `at` som påkrevd del av mappingen, og §1s premiss («der `at` finnes, bindes den til
|
||||
`ingested_at`») er innfridd nøyaktig som vedtatt. Ført her fordi det er den slags redundans som
|
||||
senere leses som drift hvis ingen skrev ned at den var tilsiktet.
|
||||
|
||||
**Ikke oppe til vurdering her.** En eventuell konsolidering ville rørt §5s ordnede prefiks, som er
|
||||
en helt annen og dyrere sak.
|
||||
|
||||
## 7. Ankere re-målt (2026-08-09, etter `54e0ec7`)
|
||||
|
||||
Utførelsen flyttet tre av våre egne ankere. Ført ordrett, ikke som linjenumre:
|
||||
|
||||
| Sted | Seksjon | Status |
|
||||
|---|---|---|
|
||||
| Honesty rule | §1 | omskrevet — «`generated.by` naming the ingest actor» |
|
||||
| Ingest owns only its own files | §3 | omskrevet — «`generated.by` equal to the ingest actor» |
|
||||
| No other writer may forge the stamp | §3 | omskrevet — samme gjengivelse |
|
||||
| Feltraden for `generated` | §7 | omskrevet, definerer begge undernøkler |
|
||||
| Load-bearing «Stamp integrity (curated writers)» | §11 | omskrevet — aktør-spesifikt predikat |
|
||||
| Frontmatter-prefikset (sju nøkler) | §5 | **uendret** — navngir bare nøkkelen |
|
||||
| Kryssjekk-raden for `generated` | §12 | **uendret** — dette dokumentets tema |
|
||||
|
||||
`generated: true` finnes ikke lenger i specen (verifisert med `grep`).
|
||||
10
shared/examples/tunnel-hauglia/cost-baseline.json
Normal file
10
shared/examples/tunnel-hauglia/cost-baseline.json
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"_note": "Prosjektets kostdata for TUNNEL-HAUGLIA, i det formatet den konsumerende implementasjonen definerer (deres akse - commons normerer ikke dette formatet). Raden er tunnelens arlige energikostnad: dagsone 60 kW x 2/3 x 4 500 t = 180 000 kWh/ar, indre-/utkjoringssone 21 kW x (4 500 t x 1,00 + 4 260 t x 0,50) = 139 230 kWh/ar, ovrige tekniske anlegg 16 020 kWh/ar, sum 335 250 kWh/ar a 1,00 NOK/kWh eks. mva. quantity og unit_cost er BYTE-IDENTISKE med affected_items-raden i validator-input.json fordi begge filene er skrevet fra denne ene summen - 5 %-toleransen er lukket ved konstruksjon, ikke ved avstemming. Investeringskostnad er BEVISST utelatt: NFF Publication 4 gir 1 000-3 000 NOK per lopemeter for tunnelbelysning, men publikasjonen er UDATERT (et belop uten arstall kan ikke prisjusteres) og prisen dekker HELE belysningsanlegget, mens tiltaket bytter bare styringen. En utledet verdi horer ikke hjemme i en kostbase. Se hauglia-tunnelen.md og tiltak-trinnstyring-innkjoringssone.md.",
|
||||
"project_id": "TUNNEL-HAUGLIA",
|
||||
"items": {
|
||||
"ENERGI-TUNNEL-EL": {
|
||||
"quantity": 335250,
|
||||
"unit_cost": 1.0
|
||||
}
|
||||
}
|
||||
}
|
||||
95
shared/examples/tunnel-hauglia/hauglia-tunnelen.md
Normal file
95
shared/examples/tunnel-hauglia/hauglia-tunnelen.md
Normal file
|
|
@ -0,0 +1,95 @@
|
|||
---
|
||||
type: project
|
||||
title: "Hauglia-tunnelen"
|
||||
description: "Fiktiv toløps vegtunnel, 2 400 m, 80 km/t, ÅDT under 4 000. Energibaseline for belysningen sone for sone, og rammene de lystekniske kravene setter."
|
||||
resource: TUNNEL-HAUGLIA
|
||||
tags: [tunnel, tunnelbelysning, innkjoringssone, energibaseline, V124, N500]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Hauglia-tunnelen (TUNNEL-HAUGLIA)
|
||||
|
||||
**Fiktivt anlegg.** Tallene er illustrative, men geometrien og de lystekniske rammene er
|
||||
hentet fra norske primærkilder med årstall. En produksjons-deployer erstatter dette laget med
|
||||
sin egen anleggsdatabase.
|
||||
|
||||
Tunnelen er **2 400 m, to løp, to felt**, skiltet **80 km/t**, med **ÅDT(10) under 4 000**.
|
||||
Geometrien er ikke funnet på: den er valgt slik at den faller innenfor referansetunnelen
|
||||
CEDR REETS D2.1 modellerer på (`>500 m, 2-bore, 2 lane`), slik at det ene eksterne
|
||||
kryss-sjekk-tallet vi har, faktisk gjelder samme anleggstype. Se
|
||||
[kilder-tunnelbelysning-realisering.md](kilder-tunnelbelysning-realisering.md).
|
||||
|
||||
## Soneinndeling
|
||||
|
||||
Håndbok V124 (2021) § 9.2: «Lysteknisk sett inndeles en tunnel i innkjøringssone,
|
||||
overgangssone, indre sone og utkjøringssone». Lengden på innkjøringssonen er lik avstanden
|
||||
fra portalen til målepunktet for adaptasjonsluminans — **99 m ved 80 km/t** (V124 tabell 9.1,
|
||||
iht. CIE 088).
|
||||
|
||||
| Sone | Utstrekning | Merknad |
|
||||
|---|---|---|
|
||||
| Innkjørings- + overgangssone («dagsonen») | **300 m per løp**, 2 løp = 600 m | [I] innkjøringssone 99 m [V] + overgangssone; V124 § 9.6.1 styrer dem som **ett** objekt |
|
||||
| Indre sone + utkjøringssone | 2 100 m per løp, 2 løp = 4 200 m | beregnet: 2 400 − 300 |
|
||||
|
||||
**Dagsonen er den eneste sonen som er dagslysavhengig,** og derfor den eneste der en
|
||||
styringsforbedring kan hente energi. Det er også der nesten all installert effekt sitter.
|
||||
|
||||
## Energibaseline
|
||||
|
||||
| Størrelse | Verdi | Merknad |
|
||||
|---|---|---|
|
||||
| Armaturer, dagsone | 300 à **200 W** = **60 kW** | [I] illustrativt (én rad per løp, ca. hver 4. m i to rekker) |
|
||||
| Armaturer, indre-/utkjøringssone | 350 à **60 W** = **21 kW** | [I] illustrativt (ca. hver 12. m) |
|
||||
| Timer dagtrinn aktivt | **4 500 t/år** | [I-avledet] se «Om de 4 500 timene» under |
|
||||
| Timer natt-/mørkedrift | 4 260 t/år | beregnet: 8 760 − 4 500 |
|
||||
| **Dagsone, slik den drives i dag (3-trinn)** | **180 000 kWh/år** | beregnet: 60 kW × 2/3 × 4 500 t |
|
||||
| **Indre sone + utkjøringssone** | **139 230 kWh/år** | beregnet: 21 kW × (4 500 t × 1,00 + 4 260 t × 0,50) |
|
||||
| **Øvrige tekniske anlegg** | **16 020 kWh/år** | [I] pumper, skilt/signal, nødnett, SD-anlegg, UPS, periodisk jetviftedrift |
|
||||
| **TOTALT ELFORBRUK** | **335 250 kWh/år** | beregnet: sum |
|
||||
| Variabel energikostnad | **1,00 NOK/kWh** ekskl. mva | [V-forankret] kraftpris + nettleie energiledd + elavgift |
|
||||
| **Total årlig energikostnad** | **335 250 NOK/år** | beregnet |
|
||||
|
||||
Faktoren **2/3** på dagsonen er ikke en dimmeinnstilling — det er **midlere servert nivå** for
|
||||
et 3-trinns kontaktorstyrt anlegg. Utledningen står i
|
||||
[tiltak-trinnstyring-innkjoringssone.md](tiltak-trinnstyring-innkjoringssone.md); det er
|
||||
nettopp den faktoren tiltaket angriper.
|
||||
|
||||
Nattnivået på indre sone er satt til 50 % fordi V124 tabell 9.4 halverer kravet: 1,00 cd/m²
|
||||
dag mot 0,50 cd/m² natt for denne ÅDT-/fartsklassen.
|
||||
|
||||
### Om de 4 500 timene — og hvorfor de er merket [I], ikke [V]
|
||||
|
||||
Dagtrinnet er aktivt når det er dagslys ute. Sola står over horisonten omtrent halve året
|
||||
uansett breddegrad, altså ≈ **4 380 t/år**, og skumringsmarginen der innkjøringssonen fortsatt
|
||||
trenger forhøyet nivå ligger oppå det. **4 500 t/år er valgt innenfor det båndet.**
|
||||
|
||||
Valget er ikke nøytralt, og det skal stå: det er tatt slik at
|
||||
`realiseringsgrad × modellert besparelse` **lukker i heltall**. Det er samme konvensjon som
|
||||
veglys-bundelen brukte da den valgte antall lyspunkter, og den hører hjemme i teksten, ikke i
|
||||
en fotnote. **Ingen kilde i materialet gir en norsk, målt timekurve for dagtrinn i tunnel.**
|
||||
|
||||
## Rammer (constraints)
|
||||
|
||||
- **Luminansnivå i innkjøringssonen skal ikke være under 50 cd/m²** (V124 tabell 9.4,
|
||||
merknad; normativ kilde N500 Vegtunneler). Det er et hardt gulv — ingen besparelse kan
|
||||
hentes under det.
|
||||
- **Innkjøringssone dag = 3,00 % av adaptasjonsluminansen** for ÅDT(10) < 4 000 ved 80 km/t
|
||||
(V124 tabell 9.4). Nivået er altså ikke fast, men **følger L20 utenfor portalen** — det er
|
||||
hele grunnen til at sonen kan dimmes, og hele grunnen til at gevinsten avhenger av hvor
|
||||
godt styringen følger kurven.
|
||||
- **Adaptasjonsluminansen skal kontinuerlig måles med luminansmåler** (V124 § 9.6, normativ
|
||||
kilde N500). Måleren finnes altså allerede — men den måler **inngangssignalet**, ikke
|
||||
energien. Se [metode-ipmvp-a.md](metode-ipmvp-a.md).
|
||||
- **Hysteresetid minimum 60 sekunder** ved nivåendringer (V124 § 9.6.1). Den er et
|
||||
sikkerhetskrav, og den koster energi. Den er ikke valgfri, og tiltaket kan ikke regne den bort.
|
||||
- Indre sone kan halveres etter 60 sekunders kjøretid i lange tunneler, dog ikke under
|
||||
1,00 cd/m² på dagtid (V124 tabell 9.4, merknad). **Ikke modellert som besparelse her** —
|
||||
om Hauglia kvalifiserer som «svært lang» er en vurdering kilden ikke avgjør for oss.
|
||||
- Budsjett og anskaffelsesrammer eies av deployer; her holdes de minimale.
|
||||
|
||||
## Kandidat-tiltak
|
||||
|
||||
- [tiltak-trinnstyring-innkjoringssone.md](tiltak-trinnstyring-innkjoringssone.md) —
|
||||
oppgradering fra 3-trinns kontaktorstyring til 13-trinns dimming av dagsonen.
|
||||
- [tiltak-portalskjerming.md](tiltak-portalskjerming.md) — passiv portalskjerming som senker
|
||||
L20 og dermed kravet i innkjøringssonen.
|
||||
88
shared/examples/tunnel-hauglia/index.md
Normal file
88
shared/examples/tunnel-hauglia/index.md
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
---
|
||||
type: index
|
||||
okf_version: 0.1
|
||||
title: "Hauglia-tunnelen — trinnstyring av dagsonen og passiv portalskjerming"
|
||||
description: "OKF-bundle for en toløps vegtunnel med to kandidat-tiltak: oppgradering fra 3-trinns til 13-trinns dimming av innkjørings- og overgangssonen, og passiv portalskjerming. Bygget rundt et gap som oppstår i drift, ikke i parameterne — og rundt fire premisser fra forarbeidet som ble målt feil."
|
||||
tags: [energieffektivisering, tunnel, tunnelbelysning, lysstyring, M&V, IPMVP, realiseringsgrad]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Hauglia-tunnelen
|
||||
|
||||
En OKF-bundle for **belysningen i en norsk vegtunnel**: ett anlegg, to kandidat-tiltak.
|
||||
Den deler lærings-overflate med veglys- og bygg-bundlene, men står på egne ben: metode- og
|
||||
kildelaget er **materialisert inn her**, ikke lenket på tvers av bundler.
|
||||
|
||||
> Framework-nøytral artefakt (null kode-avhengighet). Deles uendret mellom
|
||||
> implementasjonene. Se [shared/README.md](../../README.md).
|
||||
|
||||
**Prosjektlaget er fiktivt, litteraturlaget er ekte.** Hauglia-tunnelen finnes ikke;
|
||||
geometrien, sonekravene og trinnrekkene den er bygget av er hentet fra navngitte
|
||||
primærkilder med årstall og merket `[V]` der de er verifisert. En produksjons-deployer
|
||||
erstatter prosjektlaget med en ekte kunnskapsbase og beholder litteraturlaget.
|
||||
|
||||
## Hvorfor tunnel
|
||||
|
||||
Domenet ble valgt fordi gapet mellom modellert og realisert besparelse her har **en annen
|
||||
årsak** enn i de to andre bundlene — og en lærings-sløyfe som bare har sett én årsak, har
|
||||
ikke lært noe generelt.
|
||||
|
||||
I kontorbygget og i veglysporteføljen er gapet en **parameterfeil**: brenntimene var
|
||||
overvurdert. Anlegget gjorde det det skulle; tallet vi matet inn var galt.
|
||||
|
||||
Her er parameterne kjent og modellen aritmetisk lukket. Gapet oppstår **i drift**: en
|
||||
hysterese normen krever, en variabel sonelengde normen ber om å få implementert, og en
|
||||
kalibreringsmargin ingen driftsorganisasjon setter for lavt. Utstyret kan levere; anlegget
|
||||
gjør det ikke. Derfor bærer frøet `gap_source: control-tracking-overestimation` og ikke
|
||||
`hours-of-use-overestimation` — se [verdict-trinnstyring-fro.md](verdict-trinnstyring-fro.md).
|
||||
|
||||
## ⛔ Fire premisser fra forarbeidet som ble målt feil
|
||||
|
||||
Bundelen ble bestilt på antakelsen om at tunnelen hadde et **ekte norsk ex-post-par** og
|
||||
dermed ikke trengte å låne sin realiseringsgrad slik veglys-bundelen måtte. **Den antakelsen
|
||||
holdt ikke.** CEDR-tallene står under `MODEL INPUTS` og er modellerte, ikke målte; CEDR er
|
||||
europeisk, og Norge er medfinansiør av programmet, ikke datakilde; og NFF-sitatet om vifter
|
||||
på full hastighet gjelder byggefasen, ikke drift.
|
||||
|
||||
**Hauglia låner altså også sin rate.** Fullstendig oppgjør i
|
||||
[kilder-tunnelbelysning-realisering.md](kilder-tunnelbelysning-realisering.md).
|
||||
|
||||
Det som faktisk skiller denne bundelen fra veglys-bundelen er tre andre ting: **geometrien og
|
||||
kravene er norske, daterte og normative** (Håndbok V124, april 2021, som beskriver tiltaket
|
||||
ved navn), **gap-mekanismen er en annen**, og **M&V-asymmetrien er omvendt** — her åpner
|
||||
ex-post seg i det tiltaket settes i drift, mens ex-ante lukket seg da anlegget ble bygget.
|
||||
|
||||
## Innhold (progressiv disclosure)
|
||||
|
||||
- [hauglia-tunnelen.md](hauglia-tunnelen.md) — `type: project` — anlegget, soneinndelingen,
|
||||
energibaselinen og rammene de lystekniske kravene setter.
|
||||
- [tiltak-trinnstyring-innkjoringssone.md](tiltak-trinnstyring-innkjoringssone.md) —
|
||||
`type: hypothesis` — kandidat-tiltak 1: fra 3-trinns kontaktorstyring til 13-trinns
|
||||
dimming av dagsonen. **Det er dette tiltaket som er projisert inn i validatoren.**
|
||||
- [tiltak-portalskjerming.md](tiltak-portalskjerming.md) — `type: hypothesis` —
|
||||
kandidat-tiltak 2: passiv skjerming som senker L20 og dermed selve kravet. Høyere modellert
|
||||
besparelse, langt høyere investering, og **ingenting som kan overstyres** — derfor en
|
||||
kontrast, ikke en dom.
|
||||
- [metode-ipmvp-a.md](metode-ipmvp-a.md) — `type: methodology` — M&V-metoden (IPMVP Option A),
|
||||
og baseline-asymmetrien som stenger Option B bakover i tid.
|
||||
- [kilder-tunnelbelysning-realisering.md](kilder-tunnelbelysning-realisering.md) —
|
||||
`type: reference` — verifisert litteratur, de fire korrigerte premissene, og
|
||||
programlitteraturen realiseringsgraden er lånt fra.
|
||||
- [verdict-trinnstyring-fro.md](verdict-trinnstyring-fro.md) — `type: verdict` — frøsatt
|
||||
ekspert-dom. **ExpeL-frøet loopens steg 1 henter fra.**
|
||||
|
||||
## Hvordan den kjøres i dag
|
||||
|
||||
`validator-input.json` er IR-projeksjonen den eksisterende deterministiske validatoren
|
||||
konsumerer uendret; `cost-baseline.json` bærer det samme tallgrunnlaget som prosjektets
|
||||
kostdata. **De to filene er bygget fra samme linje aritmetikk og bærer identisk `code`,
|
||||
`quantity` og `unit_cost`** — se
|
||||
[tiltak-trinnstyring-innkjoringssone.md](tiltak-trinnstyring-innkjoringssone.md),
|
||||
§«Mapping til validatoren».
|
||||
|
||||
Bundelen ships **uten `golden.json`**, av samme grunn som veglys-bundelen: den blokken er
|
||||
kryss-implementasjons-fasit produsert av en seedet Monte Carlo, og commons har ingen kjørbar
|
||||
pipeline å produsere den med. En fasit ingen gate leser er verre enn ingen fasit.
|
||||
Lærings-overflaten går ikke tapt: de strukturerte feltene ExpeL-folden faktisk henter
|
||||
(`realization_rate`, `expected_actual_saving_nok`) ligger i frontmatteren til
|
||||
[verdict-trinnstyring-fro.md](verdict-trinnstyring-fro.md), som er der loopen leser dem.
|
||||
|
|
@ -0,0 +1,221 @@
|
|||
---
|
||||
type: reference
|
||||
title: "Kilder: tunnelbelysning, lysstyring og realisering av styringsbesparelser"
|
||||
description: "Verifisert litteratur bak Hauglia-bundelen. Norske, daterte regelverksankere for geometri og krav; europeisk modellert litteratur for kryss-sjekk; og programlitteraturen realiseringsgraden er lånt fra. Fører også de fire premissene som ble målt FEIL i forarbeidet."
|
||||
resource: TUNNEL-HAUGLIA
|
||||
tags: [kilder, V124, N500, CEDR, NFF, LBNL, IPMVP, provenienss]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Kilder
|
||||
|
||||
Konvensjonen er den samme som i de øvrige bundlene: **`[V]` verifisert mot primærkilde,
|
||||
`[V-forankret]` utledet av en verifisert verdi, `[I]` illustrativt, `[U]` uverifisert.**
|
||||
Metode- og kildelaget er **materialisert inn i denne bundelen** — ingen lenker til andre
|
||||
bundler.
|
||||
|
||||
---
|
||||
|
||||
## ⛔ FIRE PREMISSER SOM BLE MÅLT FEIL — og som står korrigert her
|
||||
|
||||
Forarbeidet til denne bundelen bar fire påstander som **ikke holdt** da primærkildene ble hentet.
|
||||
De føres her fordi en kildeliste som bare viser det som overlevde, skjuler hvordan den ble til.
|
||||
|
||||
**1. CEDR-paret `150 059 → 33 114 kWh/år` er IKKE en måling.**
|
||||
Tallene står i D2.1 under overskriften **`MODEL INPUTS`**, som «Pre-deployment» og
|
||||
«Post-deployment», og resultatlinjen heter **`ASSESSMENT RESULTS: Energy saving potential
|
||||
116,945 kWh/year`**. Det er et **modellert ex-ante-anslag for en generisk referansetunnel**
|
||||
(`>500 m, 2-bore, 2 lane`), ikke et ex-post-par fra et virkelig anlegg.
|
||||
|
||||
**2. CEDR-tallene er IKKE norske.**
|
||||
Forfatterne av D2.1 er Isabela Mocanu (AIT, Østerrike), James Peeling og Matthew Wayman (TRL,
|
||||
UK), John Potter (Mouchel, UK) og John Rands (DfL, UK). **Norge er medfinansiør** av CEDR Call
|
||||
2013 sammen med Tyskland, Storbritannia, Nederland, Østerrike og Slovenia — ikke datakilde.
|
||||
Utbredelsen oppgis som «c.10 % across Europe».
|
||||
|
||||
**3. NFF Publication 13s «vifta på full hastighet» gjelder BYGGEFASEN.**
|
||||
Sitatet — «The fan was kept running at full speed most if the time hence the power saving
|
||||
potential was not realised» *(sic)* — står i avsnittet om **Bragernes-tunnelen under driving**,
|
||||
om ventilasjon av **stuffen** ved sprengningsgass og massetransport. Det er anleggsventilasjon
|
||||
i en tunnel under bygging, **ikke CO/NOx-styrt driftsventilasjon i en tunnel i trafikk**.
|
||||
Årsaken er heller ikke den samme: på stuff kjøres full hastighet for mannskapssikkerhet og
|
||||
produksjonsmargin. **Mekanismen er derfor ikke båret over til driftsfasen i denne bundelen.**
|
||||
|
||||
**4. `≈ €400 000 per inngang` er kostnaden for portalskjerming**, ikke for «belysning ved
|
||||
tunnelinngang».
|
||||
|
||||
**Konsekvensen for bundelen, uttalt:** Hauglia har **ingen norsk ex-post-måling** av en
|
||||
realiseringsgrad. Raten er **lånt**, akkurat som i veglys-bundelen, og lånet er merket i
|
||||
`provenance`. Det som skiller denne bundelen fra veglys er ikke en norsk måling — det er at
|
||||
**geometrien og kravene er norske, daterte og normative**, og at gap-mekanismen er en annen.
|
||||
|
||||
---
|
||||
|
||||
## Norske regelverksankere [V]
|
||||
|
||||
### Statens vegvesen, Håndbok V124 — «Teknisk planlegging av veg- og tunnelbelysning»
|
||||
|
||||
**Veiledning, Vegdirektoratet, april 2021.**
|
||||
`https://www.vegvesen.no/globalassets/fag/handboker/hb-v124.pdf`
|
||||
|
||||
Dette er bundelens viktigste kilde. Den er norsk, datert, offisiell — og den beskriver
|
||||
tiltaket vårt ved navn.
|
||||
|
||||
| Ankeret | Ordrett / verdi | Sted |
|
||||
|---|---|---|
|
||||
| Soneinndeling | «Lysteknisk sett inndeles en tunnel i innkjøringssone, overgangssone, indre sone og utkjøringssone» | § 9.2 |
|
||||
| Innkjøringssonens lengde | **99 m ved 80 km/t** (avstand portal → målepunkt for adaptasjonsluminans, iht. CIE 088) | tabell 9.1 |
|
||||
| Krav innkjøringssone dag | **3,00 %** av adaptasjonsluminansen (ÅDT(10) < 4 000, 80 km/t) | tabell 9.4 |
|
||||
| Krav indre sone | 1,00 cd/m² dag, 0,50 cd/m² natt og kl. 00–05 (samme klasse) | tabell 9.4 |
|
||||
| Hardt gulv | «Luminansnivå i innkjøringssonen skal ikke være under 50 cd/m2» | tabell 9.4, merknad |
|
||||
| Kontinuerlig måling | «Adaptasjonsluminansen for belysning i innkjørings- og overgangs- sonene **skal kontinuerlig måles** ved bruk av luminansmåler» *(normativ kilde: N500)* | § 9.6 |
|
||||
| Dagens praksis | «I utførelse har dette vært begrenset til **3 trinn** arrangert med oppdeling i kurser styrt via kontaktorer» | § 9.6.1 |
|
||||
| Anbefalt tiltak | «Det anbefales å definere innkjørings-/overgansgssone i **13 trinn** henholdsvis **0-5-10-15-20-25-30-40-50-60-70-80-90-100 %** alternativt dynamisk» | § 9.6.1 |
|
||||
| Hysterese | «Det bør som minimum legges til en **hysteresetid på 60 sekunder** for endringer i nivåene» | § 9.6.1 |
|
||||
| Restforutsetning | «Ved varierende trinn vil også **lengden av innkjøringssonen variere**, og dette er viktig å få implementert for å utnytte energisparepotensialet mest mulig» | § 9.6.1 |
|
||||
| Energisynlighet ved DALI | «Måling av lampestrøm vil i tillegg gi mulighet for å følge med i armaturens energiforbruk, samt innstilt nivå ved behovsstyrt lysregulering» | § 5.2, pkt. 3 |
|
||||
| L20-reduserende grep | overbygg, vintergrønne trær, mørk asfalt siste 200 m, mørk betong/stein på portal | § 9.2.1 |
|
||||
|
||||
**Ett anker til, som gjelder veglys og ikke tunnel — men som er verdt å notere presist:**
|
||||
V124 § 6 sier at eldre vegbelysningsanlegg **«på riksvegene»** er «vanligvis umålte, og
|
||||
energikostnadene blir beregnet ut fra et bestemt antall brukstimer per år (4 000 – 4 100)».
|
||||
De 4 000–4 100 er altså **en avregningskonvensjon for umålte anlegg**, ikke en målt
|
||||
brenntimekurve — og teksten avgrenser dem til **riksveger**. Det er en presisering mot hvordan
|
||||
tallet ellers siteres.
|
||||
|
||||
### Statens vegvesen, Håndbok N500 «Vegtunneler» [V — sekundært]
|
||||
|
||||
Normativ kilde for de lystekniske kravene V124 gjengir. Sitert her via V124s egne
|
||||
marginhenvisninger, ikke hentet direkte.
|
||||
|
||||
---
|
||||
|
||||
## Norske kostnads- og anleggsdata [V, men udatert]
|
||||
|
||||
### NFF Publication 4 (Norsk Forening for Fjellsprengningsteknikk)
|
||||
|
||||
`https://nff.no/wp-content/uploads/sites/2/2020/04/Publication-4.pdf`
|
||||
|
||||
| Verdi | Ordrett |
|
||||
|---|---|
|
||||
| Andel ventilerte tunneler | «Only 5% of our tunnels are ventilated (20% of the total length of tunnels}» |
|
||||
| Enhetspris belysning | «For tunnels longer than approx. 300 metres, the average price per linear metre could vary between **NOK 1000 and NOK 3000**. (This price includes fittings, cable trays, installation of transformer and mains connection)» |
|
||||
|
||||
**⚠️ Prisen er IKKE brukt i `cost-baseline.json`, og grunnen skal stå:** publikasjonen er
|
||||
**udatert** i vårt uttrekk (den omtaler «more than 700 road tunnels in Norway», et tall Norge
|
||||
passerte for flere tiår siden), og et beløp uten årstall kan ikke prisjusteres. Den dekker
|
||||
dessuten **hele belysningsanlegget** per løpemeter, mens vårt tiltak bytter **bare styringen**.
|
||||
Å skalere den ned til en styringsandel ville vært å produsere et tall og kalle det et anker.
|
||||
|
||||
### NFF Publication 13
|
||||
|
||||
`https://nff.no/wp-content/uploads/sites/2/2020/04/Publication-13.pdf`
|
||||
|
||||
Brukt **kun** som korreksjon (se punkt 3 øverst). Beskriver anleggsventilasjon under driving
|
||||
av Bømlafjord- og Bragernes-tunnelene: to AL 17-vifter à 230–250 kW, ca. 100 m³/s, PLC-styring
|
||||
på CO/NO2 og lufttrykk. **Ingen av tallene er brukt i bundelen.**
|
||||
|
||||
---
|
||||
|
||||
## Europeisk modellert litteratur (kryss-sjekk) [V som modell, ikke som måling]
|
||||
|
||||
### CEDR REETS D2.1 — «Assessment of technologies with potential for energy reduction»
|
||||
|
||||
**Deliverable 2.1, februar 2015.** CEDR Transnational Road Research Programme Call 2013:
|
||||
Energy efficiency. Forfattere: Mocanu (AIT), Peeling (TRL), Potter (Mouchel), Rands (DfL),
|
||||
Wayman (TRL).
|
||||
`https://cedr.eu/download/other_public_files/research_programme/call_2013/energy_efficiency/reets/D2.1-Description_and_assessment_results_v1.0.pdf`
|
||||
|
||||
Referansetunnel for begge tiltak: **`>500 meters, 2-bore, 2 lane`**.
|
||||
|
||||
| Tiltak | Pre | Post | Reduksjon | Kostnad | Utbredelse |
|
||||
|---|---|---|---|---|---|
|
||||
| Skjermer/duk ved portal (senker L20) | 150 059 kWh/år | 33 114 kWh/år | **77,9 %** | «c. €400k per entrance» | «c.10 % across Europe» |
|
||||
| LED med «closed loop»-tilbakekobling | 158 059 kWh/år | 136 893 kWh/år | **13,4 %** | «c. €35k per entrance» | «c.15 % (mainly Austria and Germany)» |
|
||||
|
||||
**⚠️ Felle i kilden:** de to tiltakene oppgir **ulik** pre-deployment-baseline for nominelt
|
||||
samme referansetunnel — **150 059** mot **158 059**. Baselinen er ikke felles på tvers av
|
||||
tiltakene i D2.1, og de to radene kan ikke settes i samme regnestykke. Bundelen setter dem
|
||||
ikke sammen.
|
||||
|
||||
---
|
||||
|
||||
## Realiseringsgraden — hvor den er lånt fra [V, men LÅNT]
|
||||
|
||||
### LBNL-5095E — «A Meta-Analysis of Energy Savings from Lighting Controls in Commercial Buildings»
|
||||
|
||||
Alison Williams, Barbara Atkinson, Karina Garbesi og Francis Rubinstein (Energy Analysis
|
||||
Department, Lawrence Berkeley National Laboratory) og Erik Page (Erik Page & Associates).
|
||||
**September 2011.**
|
||||
`https://eta-publications.lbl.gov/sites/default/files/a_meta-analysis_of_energy_savings_from_lighting_controls_in_commercial_buildings_lbnl-5095e.pdf`
|
||||
|
||||
**240 besparelsesanslag fra 88 artikler og case-studier**, sortert på styringsstrategi og
|
||||
deretter filtrert suksessivt for å avdekke skjevheter i analysemetoden.
|
||||
|
||||
For **daylighting** — dagslysstyrt regulering, som er nøyaktig strategien i vårt tiltak:
|
||||
|
||||
| Filter | Gjennomsnittlig besparelse | n |
|
||||
|---|---|---|
|
||||
| Lighting controls only | 39 % | 73 |
|
||||
| Lighting energy only | 39 % | 73 |
|
||||
| **Actual installation only** | **28 %** | **32** |
|
||||
|
||||
Rapportens egne konklusjoner, ordrett:
|
||||
|
||||
> «the best estimates of average energy savings potential are 24% for occupancy, **28% for
|
||||
> daylighting**, 31% for personal tuning, 36% for institutional tuning, and 38% for multiple
|
||||
> approaches»
|
||||
|
||||
> «The results suggest that **simulations significantly overestimate (by at least 10%) the
|
||||
> average savings obtainable from daylighting in actual buildings.**»
|
||||
|
||||
> «energy policy and savings estimates should not be based on simulations alone, but should
|
||||
> include field measurement or at least **downward adjustment of savings predicted from
|
||||
> simulations**»
|
||||
|
||||
**Forholdet 28 / 39 = 0,718** er ankeret realiseringsgraden **0,72** er lånt fra.
|
||||
|
||||
**Hva lånet IKKE er, og det må stå like tydelig som hva det er:**
|
||||
|
||||
- Det er **ikke** en prosjekt-realiseringsgrad (målt ÷ predikert for de samme prosjektene).
|
||||
Det er forholdet mellom **to filtrerte populasjonsgjennomsnitt** i samme metastudie — anslag
|
||||
som inkluderer simuleringer, mot anslag fra faktiske installasjoner. Antallet faller fra
|
||||
73 til 32 mellom de to.
|
||||
- Det gjelder **næringsbygg**, ikke tunneler. Dagslysstyring i et kontorlokale og
|
||||
L20-styring av en tunnelportal deler mekanisme og feilmodus, men ikke geometri, krav eller
|
||||
driftsorganisasjon.
|
||||
- Det er **amerikansk og fra 2011**.
|
||||
|
||||
Lånet er valgt fordi det er den nærmeste treffende kilden vi har: **samme styringsstrategi**
|
||||
(dagslysstyrt regulering), og et eksplisitt, tallfestet funn om at modellerte anslag ligger
|
||||
over det faktiske installasjoner leverer. **Det finnes ingen norsk ex-post-evaluering av
|
||||
realiseringsgrad for tunnelbelysningsstyring i materialet vårt.**
|
||||
|
||||
---
|
||||
|
||||
## Metoderammeverk [V]
|
||||
|
||||
### IPMVP / EVO
|
||||
|
||||
**International Performance Measurement and Verification Protocol**, eid og vedlikeholdt av
|
||||
**Efficiency Valuation Organization**. De fire opsjonene (A/B/C/D) og kjernesetningen
|
||||
*"Savings cannot be directly measured, because savings represent the absence of energy use."*
|
||||
er gjengitt i [metode-ipmvp-a.md](metode-ipmvp-a.md).
|
||||
|
||||
### FEMP/RDH — måleterskel
|
||||
|
||||
Veiledningen om at en besparelse bør overstige **~10 % av baseline** for å skilles pålitelig
|
||||
fra støy i en hovedmåler. Brukt i [metode-ipmvp-a.md](metode-ipmvp-a.md).
|
||||
|
||||
---
|
||||
|
||||
## Kilder som er vurdert og IKKE brukt
|
||||
|
||||
- **«Energy Savings in Tunnels» (proceedings)** — oppga 236–453 MWh/år for hel tunnel.
|
||||
Utrekk feilet (host utilgjengelig), tallet er udatert, og bundelen bygger sin egen baseline
|
||||
fra parametere. **Ikke brukt.**
|
||||
- **LIAISON / González-Norniella m.fl.** — «opptil 40 %» modellert for adaptiv
|
||||
ventilasjonsstyring. Ventilasjon er ikke et tiltak i denne bundelen. **Ikke brukt.**
|
||||
- **Signify, Sørnes-tunnelen** — norsk case, men leverandørkilde. **Ikke brukt.**
|
||||
- **TRL449** — £1 000 per 50 m for retrofit dimming (UK). Udatert i materialet og gjelder et
|
||||
annet marked. **Ikke brukt.**
|
||||
98
shared/examples/tunnel-hauglia/metode-ipmvp-a.md
Normal file
98
shared/examples/tunnel-hauglia/metode-ipmvp-a.md
Normal file
|
|
@ -0,0 +1,98 @@
|
|||
---
|
||||
type: methodology
|
||||
title: "IPMVP Option A for tunnelstyring — anlegget måler inngangssignalet, ikke energien"
|
||||
description: "M&V-metoden for å verifisere besparelsen fra en styringsoppgradering i tunnel. Option A er valgt fordi baselinen ikke kan måles i etterkant — ikke fordi måling mangler. Tiltaket installerer selv den målingen som ville gjort Option B mulig, ett år for sent."
|
||||
methodology: IPMVP
|
||||
option: A
|
||||
tags: [IPMVP, M&V, EVO, retrofit-isolation, tunnelbelysning, baseline-asymmetri]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# M&V-metode: IPMVP Option A for en styringsoppgradering
|
||||
|
||||
**IPMVP** (International Performance Measurement and Verification Protocol) er
|
||||
konsensus-rammeverket for å måle og verifisere energibesparelser, eid og vedlikeholdt av
|
||||
**EVO** (Efficiency Valuation Organization). Kjerneinnsikten som begrunner hele
|
||||
lærings-sløyfa står eksplisitt i protokollen [V]:
|
||||
|
||||
> *"Savings cannot be directly measured, because savings represent the absence of energy use."*
|
||||
|
||||
Besparelse er en **kontrafaktisk** størrelse — det finnes ingen måler for «det som ikke ble
|
||||
brukt». Den *beregnes*: `Baseline-energi − Rapporterings-energi ± justeringer` (IPMVP Eq. 1).
|
||||
|
||||
## De fire opsjonene (EVO, offisielle navn) [V]
|
||||
|
||||
- **Option A — Retrofit Isolation: Key Parameter Measurement.** Måler nøkkelparameteren på det
|
||||
berørte utstyret; øvrige parametere *estimeres*.
|
||||
- **Option B — Retrofit Isolation: All Parameter Measurement.** Måler alle relevante parametere.
|
||||
- **Option C — Whole Facility.** Besparelse fra anleggets hovedmåler, med rutinejustering.
|
||||
- **Option D — Calibrated Simulation.** Besparelse via simuleringsmodell kalibrert mot måledata.
|
||||
|
||||
## Asymmetrien som avgjør valget
|
||||
|
||||
En tunnel er **ikke** et umålt anlegg. V124 § 9.6 stiller et normativt krav:
|
||||
|
||||
> «Adaptasjonsluminansen for belysning i innkjørings- og overgangs- sonene skal kontinuerlig
|
||||
> måles ved bruk av luminansmåler.» *(normativ kilde: N500 Vegtunneler)*
|
||||
|
||||
Anlegget måler altså **kontinuerlig** — men det måler **inngangssignalet** (L20 utenfor
|
||||
portalen), ikke energien. Og det er nettopp den forskjellen som stenger opsjonene:
|
||||
|
||||
- **Option C er stengt av oppløsning, ikke av målermangel.** Tunnelen har hovedmåler, men
|
||||
belysningen er 95 % av forbruket sammen med indre sone, pumper og øvrige anlegg på samme
|
||||
linje. Et tiltak på **10,00 %** av totalen skal skilles fra sesongvariasjon i pumpedrift og
|
||||
ventilasjon på den samme måleren. Signalet drukner ikke helt — men det er ikke et rent kutt.
|
||||
- **Option D er stengt av kalibreringsdata.** En simulering av dagsonen må kalibreres mot en
|
||||
målt L20-fordeling over året. Luminansmåleren produserer den dataen **i sanntid for
|
||||
styringsformål**, men ingen kilde i materialet dokumenterer at den **logges og lagres**.
|
||||
Uten historikk finnes det ingenting å kalibrere mot.
|
||||
- **Option B er stengt bakover i tid, ikke framover.** Og det er den interessante.
|
||||
|
||||
## Baseline-asymmetrien
|
||||
|
||||
Nøkkelparameteren for dette tiltaket er **midlere servert nivå over året** — hvor høyt
|
||||
styringen faktisk legger seg i forhold til CIE-kurven.
|
||||
|
||||
- **Etter tiltaket kan den måles.** V124 § 5.2 punkt 3 beskriver det selv: med dimming via
|
||||
DALI-drivere gir «Måling av lampestrøm (…) i tillegg mulighet for å følge med i armaturens
|
||||
energiforbruk, samt innstilt nivå ved behovsstyrt lysregulering».
|
||||
- **Før tiltaket kan den ikke måles.** Dagens 3-trinns kontaktorstyring kobler kurser av og på.
|
||||
Den har ingen driver som rapporterer nivå, og den logger ikke hvilket trinn som sto inne når.
|
||||
|
||||
**Tiltaket installerer altså selv den målingen som ville gjort Option B mulig — ett år for
|
||||
sent til å måle sin egen baseline.** Det er ikke en svakhet ved dette anlegget; det er den
|
||||
normale formen på en styringsoppgradering, og grunnen til at baselinen for slike tiltak nesten
|
||||
alltid er **stipulert**.
|
||||
|
||||
**Kontrast verdt å merke seg:** i et umålt veglysanlegg er ex-post *permanent* stengt. Her er
|
||||
det motsatt — ex-post åpner seg i det tiltaket settes i drift, men ex-ante lukket seg da
|
||||
anlegget ble bygget. Realiseringsgapet overlever begge veier, av motsatte grunner.
|
||||
|
||||
## Der metoden lekker: den estimerte parameteren
|
||||
|
||||
Option A måler det som er billig og presist (installert effekt per trinn) og **stipulerer
|
||||
hvordan nivået fordeler seg over året**. For dette tiltaket er stipulatet svakt på et bestemt
|
||||
punkt:
|
||||
|
||||
Modellen i [tiltak-trinnstyring-innkjoringssone.md](tiltak-trinnstyring-innkjoringssone.md)
|
||||
antar at kravnivået er **jevnt fordelt** over trinnrekkens spenn. Den antakelsen er ikke
|
||||
verifisert, og **ingen kilde i materialet gir en norsk L20-fordeling over året.** Den er
|
||||
dessuten den eneste antakelsen som står mellom parameterne og besparelsestallet.
|
||||
|
||||
## Måleterskelen
|
||||
|
||||
FEMP/RDH-veiledningen sier at en besparelse bør overstige **~10 % av baseline** for å skilles
|
||||
pålitelig fra støy. Tiltaket ligger på **10,00 %** av tunnelens totale forbruk — bokstavelig
|
||||
talt på terskelen — og **18,6 %** av dagsonen, altså godt over hvis man måler på riktig
|
||||
avgrensning.
|
||||
|
||||
Det er en grunn til at avgrensningen betyr noe her og ikke bare i validator-mappingen: målt
|
||||
på tunnelmåleren er tiltaket akkurat i grenseland, målt på dagsonens egen kurs er det tydelig.
|
||||
**Å legge en kursmåler på dagsonen samtidig med styringen er derfor det billigste enkelttiltaket
|
||||
for å gjøre dette anlegget lærbart** — det gjør Option B tilgjengelig for *neste* tiltak.
|
||||
|
||||
## Konsekvensen for lærings-sløyfa
|
||||
|
||||
Fram til den kursmåleren finnes, er den eneste tilgjengelige korreksjonen **akkumulert
|
||||
ekspert-erfaring**. Se [verdict-trinnstyring-fro.md](verdict-trinnstyring-fro.md) og
|
||||
[kilder-tunnelbelysning-realisering.md](kilder-tunnelbelysning-realisering.md).
|
||||
81
shared/examples/tunnel-hauglia/tiltak-portalskjerming.md
Normal file
81
shared/examples/tunnel-hauglia/tiltak-portalskjerming.md
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
---
|
||||
type: hypothesis
|
||||
title: "Portalskjerming: senke L20 i stedet for å styre lyset bedre"
|
||||
description: "Passivt tiltak som senker adaptasjonsluminansen utenfor portalen og dermed selve kravet i innkjøringssonen. Svært høy modellert besparelse, svært høy investering, og — i motsetning til styringstiltaket — ingenting som kan overstyres i drift."
|
||||
resource: TUNNEL-HAUGLIA
|
||||
measure_id: TUNNEL-LYS-02
|
||||
tags: [tunnelbelysning, portal, L20, passivt-tiltak, CEDR]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Tiltak: portalskjerming
|
||||
|
||||
Kravet i innkjøringssonen er ikke et fast luminansnivå — det er en **prosentandel av
|
||||
adaptasjonsluminansen L20 utenfor portalen** (V124 tabell 9.4: 3,00 % for Hauglias
|
||||
ÅDT-/fartsklasse). Senker man L20, senker man kravet, og da faller energibehovet uten at
|
||||
noe styres bedre.
|
||||
|
||||
V124 § 9.2.1 lister virkemidlene direkte:
|
||||
|
||||
> «Luminansene utenfor tunnelen kan reduseres ved å: Legge tunnelinngangen slik at det blir
|
||||
> lite himmellys i synsfeltet fram mot tunnelen. Plante vintergrønne trær som skjermer for
|
||||
> himmellyset. Bygge et overbygg foran tunnelportalen som gradvis slipper inn mindre lys.
|
||||
> Legge mørk asfalt de siste 200 m før tunnelportalen. Benytte mørk betong eller mørk stein
|
||||
> til utvendige flater på portal og murer.»
|
||||
|
||||
Og normen sier hvorfor det er verdt å gjøre: dette «kan både øke trafikksikkerheten og
|
||||
redusere energiforbruket og kostnadene til belysning».
|
||||
|
||||
## Hvorfor dette tiltaket står her uten å være dømt
|
||||
|
||||
**Det er en kontrast, og kontrasten er hele poenget.**
|
||||
|
||||
| | Trinnstyring (TUNNEL-LYS-01) | Portalskjerming (TUNNEL-LYS-02) |
|
||||
|---|---|---|
|
||||
| Type | aktiv styring | **passivt byggverk** |
|
||||
| Modellert reduksjon | 18,6 % av dagsonen | **77,9 %** av terskelsonen (CEDR) |
|
||||
| Investering | ingen kilde bærer | **≈ €400 000 per inngang** (CEDR) |
|
||||
| Kan overstyres i drift? | **Ja** — og det er hele realiseringsrisikoen | **Nei. Det finnes ingenting å overstyre.** |
|
||||
|
||||
Et overbygg som senker L20, senker L20 hver eneste dag uten at noen gjør noe. Det har ingen
|
||||
hysterese, ingen kalibrering, ingen driftsrutine som kan tolkes forsiktig. **Realiseringsgapet
|
||||
styringstiltaket har, har dette tiltaket i praksis ikke** — og det er nettopp derfor det ikke
|
||||
kan arve dommen i [verdict-trinnstyring-fro.md](verdict-trinnstyring-fro.md).
|
||||
|
||||
Risikoprofilen er en helt annen, ikke en mildere versjon av den samme: her ligger usikkerheten
|
||||
i **byggekostnad og gjennomførbarhet**, ikke i om anlegget brukes som forutsatt.
|
||||
|
||||
## Tallene, og hva de faktisk er
|
||||
|
||||
CEDR REETS D2.1 modellerer tiltaket «reducing threshold luminance» via skjermer eller
|
||||
strekkonstruksjoner ved portalen:
|
||||
|
||||
> Pre-deployment: **150 059 kWh/år** (threshold zones)
|
||||
> Post-deployment: **33 114 kWh/år** (threshold zones)
|
||||
> Energy saving potential: **116 945 kWh/år** — altså **77,9 %**
|
||||
|
||||
**⛔ Disse tallene er IKKE en måling.** De står i D2.1 under overskriften `MODEL INPUTS`, og
|
||||
resultatlinjen heter `ASSESSMENT RESULTS: Energy saving potential`. Det er et **modellert
|
||||
ex-ante-anslag for en generisk referansetunnel** — ikke et ex-post-par fra et virkelig anlegg,
|
||||
og ikke norsk. Se
|
||||
[kilder-tunnelbelysning-realisering.md](kilder-tunnelbelysning-realisering.md), som fører
|
||||
provenienssen i sin helhet.
|
||||
|
||||
**Tiltaket er ikke regnet om til Hauglia-tall, og det er med vilje.** D2.1s baseline for dette
|
||||
tiltaket (150 059) er en annen enn baselinen for styringstiltaket (158 059) på nominelt samme
|
||||
referansetunnel. Å skalere 77,9 % ned på vår dagsone ville vært å låne en prosentandel fra en
|
||||
baseline som ikke er vår, og presentere resultatet som vårt eget regnestykke.
|
||||
|
||||
## Hvorfor det ikke er projisert inn i validatoren
|
||||
|
||||
To grunner, og den andre er den viktige:
|
||||
|
||||
1. **Kostnadssiden ville dominert.** €400 000 per inngang, for to innganger, mot en besparelse
|
||||
i størrelsesorden hundretusen kroner i året. Tilbakebetalingstiden er ikke marginal — den
|
||||
er utenfor det en energibegrunnelse bærer alene. Tiltaket bygges i praksis når portalen
|
||||
uansett skal bygges eller rehabiliteres; D2.1 sier det selv: «Deployment costs would be
|
||||
part of tunnel building costs».
|
||||
2. **Det har ingen lærings-overflate.** Bundelen finnes for å frø en lærings-sløyfe med et
|
||||
gap mellom modellert og realisert. Et passivt byggverk uten driftsavhengighet har
|
||||
knapt noe slikt gap å lære av. Det gjør det til en dårlig kandidat for et verdict-frø —
|
||||
og til en god kontrast som viser hvorfor det *andre* tiltaket trenger ett.
|
||||
|
|
@ -0,0 +1,167 @@
|
|||
---
|
||||
type: hypothesis
|
||||
title: "Trinnstyring av innkjørings- og overgangssone: fra 3 trinn til 13"
|
||||
description: "Erstatte kontaktorstyrt 3-trinns regulering av dagsonen med 13-trinns dimming slik Håndbok V124 anbefaler. Modellert besparelse utledet av kvantiseringsoverskuddet i de to trinnrekkene, med et åpent kostnadsgulv."
|
||||
resource: TUNNEL-HAUGLIA
|
||||
measure_id: TUNNEL-LYS-01
|
||||
tags: [tunnelbelysning, lysstyring, dimming, DALI, ECM, V124]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Tiltak: 13-trinns dimming av dagsonen
|
||||
|
||||
Oppgradering av styringen i **innkjørings- og overgangssonen** fra dagens
|
||||
**3-trinns kontaktorstyring** til **13-trinns dimming**, slik Håndbok V124 (2021) § 9.6.1
|
||||
anbefaler. Armaturene byttes ikke — det er reguleringen som byttes.
|
||||
|
||||
Dette er tiltaket som er **projisert inn i validatoren**.
|
||||
|
||||
## Tiltaket er beskrevet av normen selv
|
||||
|
||||
V124 § 9.6.1 beskriver både utgangspunktet og målet, ordrett:
|
||||
|
||||
> «Innkjøringssonens nedtrapping er gitt av «CIE kurven» i figur 9.2. I utførelse har dette
|
||||
> vært begrenset til 3 trinn arrangert med oppdeling i kurser styrt via kontaktorer. LED og
|
||||
> dimbare anlegg åpner for en bedre tilpasning til kurven ved hjelp av dimming i flere trinn
|
||||
> som vil redusere energiforbruket vesentlig.»
|
||||
>
|
||||
> «Det anbefales å definere innkjørings-/overgansgssone i 13 trinn henholdsvis
|
||||
> 0-5-10-15-20-25-30-40-50-60-70-80-90-100 % alternativt dynamisk (…). Det bør som minimum
|
||||
> legges til en hysteresetid på 60 sekunder for endringer i nivåene.»
|
||||
|
||||
**Det er uvanlig komfortabelt utgangspunkt for en hypotese:** normen navngir dagens praksis,
|
||||
navngir tiltaket, og lister trinnene. Vi trenger ikke finne på noen av delene.
|
||||
|
||||
## Parametere
|
||||
|
||||
| Parameter | Verdi | Status | Kilde/forankring |
|
||||
|---|---|---|---|
|
||||
| Installert effekt, dagsone | 60 kW | [I] | se [hauglia-tunnelen.md](hauglia-tunnelen.md) |
|
||||
| Timer dagtrinn aktivt | 4 500 t/år | [I-avledet] | ≈ 4 380 t soltimer + skumringsmargin |
|
||||
| Trinnrekke FØR | 3 trinn: 33,3 / 66,7 / 100 % | [V-forankret] | V124 § 9.6.1, «oppdeling i kurser styrt via kontaktorer» |
|
||||
| Trinnrekke ETTER | 14 nivåer: 0-5-10-15-20-25-30-40-50-60-70-80-90-100 % | [V] | V124 § 9.6.1, ordrett |
|
||||
| Variabel energipris | 1,00 NOK/kWh | [V-forankret] | se [hauglia-tunnelen.md](hauglia-tunnelen.md) |
|
||||
|
||||
## Modellert besparelse (ex-ante)
|
||||
|
||||
Mekanismen er **kvantiseringsoverskudd**. En trinnstyrt regulator må aldri legge seg *under*
|
||||
det CIE-kurven krever — gulvet er et sikkerhetskrav, ikke en preferanse. Den må derfor velge
|
||||
**det laveste tilgjengelige trinnet som er ≥ kravet**. Energitapet er den midlere
|
||||
overskytingen, og den krymper når trinnene blir finere.
|
||||
|
||||
Med kravet modellert som **jevnt fordelt over trinnrekkens spenn** blir midlere servert nivå:
|
||||
|
||||
> 3 trinn `{33,3 %, 66,7 %, 100 %}` → midlere servert nivå **66,67 %**
|
||||
> 13 trinn `{0 … 100 %}` → midlere servert nivå **54,25 %**
|
||||
> Reduksjon: **12,42 prosentpoeng av installert effekt = 18,625 % av dagsonens energi**
|
||||
|
||||
Regnestykket, med den ene antakelsen synlig:
|
||||
|
||||
> Dagsone i dag: 60 kW × 0,6667 × 4 500 t = **180 000 kWh/år**
|
||||
> Dagsone etter: 60 kW × 0,5425 × 4 500 t = **146 475 kWh/år**
|
||||
> Besparelse: 180 000 − 146 475 = **33 525 kWh/år** = **33 525 NOK/år**
|
||||
|
||||
Det er **18,6 %** av dagsonens forbruk og **10,00 %** av tunnelens totale elforbruk.
|
||||
|
||||
**Antakelsen som bærer tallet, og som ikke er verifisert:** at kravnivået er jevnt fordelt.
|
||||
Det er det nesten sikkert ikke — L20 utenfor en norsk portal er skjevfordelt mot lave verdier
|
||||
store deler av året, og i den skjevheten hjelper de fine trinnene *mer* enn jevnfordelingen
|
||||
tilsier, ikke mindre. **Ingen kilde i materialet gir en norsk L20-fordeling.** Vi lar
|
||||
antakelsen stå eksplisitt i stedet for å skjule den i et rundt tall.
|
||||
|
||||
## Kryss-sjekk mot CEDR (og hvorfor tallene ikke er like)
|
||||
|
||||
CEDR REETS D2.1 modellerer et beslektet tiltak — *«LED lighting with 'closed loop' feedback»* —
|
||||
på en referansetunnel med samme geometriklasse som Hauglia:
|
||||
|
||||
| | CEDR REETS D2.1 | Hauglia (vår) |
|
||||
|---|---|---|
|
||||
| Terskel-/dagsone før | 158 059 kWh/år | 180 000 kWh/år |
|
||||
| Terskel-/dagsone etter | 136 893 kWh/år | 146 475 kWh/år |
|
||||
| **Besparelse** | **21 166 kWh/år (13,4 %)** | **33 525 kWh/år (18,6 %)** |
|
||||
|
||||
Størrelsesordenen stemmer — og det er hele poenget med en kryss-sjekk. Men **vår andel er
|
||||
5,2 prosentpoeng høyere, og det skal forklares, ikke bortforklares:**
|
||||
|
||||
- CEDR-tiltaket beholder **konvensjonelle fotometer-sensorer** og forbedrer selve
|
||||
tilbakekoblingssløyfa. Vårt tiltak endrer **trinnoppløsningen** fra 3 til 13. Det er to
|
||||
ulike inngrep i samme kjede, og de har ingen grunn til å gi samme tall.
|
||||
- CEDRs tall er **modellert av CEDR**, ikke målt av CEDR. Det er et anslag på linje med vårt,
|
||||
ikke en fasit vårt anslag skal kalibreres mot.
|
||||
- Vår jevnfordelings-antakelse trekker i retning av **for lavt** anslag, ikke for høyt (se over).
|
||||
|
||||
**⚠️ Og en felle i selve kilden:** D2.1 oppgir **ulik** pre-deployment-baseline for nominelt
|
||||
samme referansetunnel — **158 059** kWh/år for dette tiltaket, men **150 059** kWh/år for
|
||||
portalskjermings-tiltaket ([tiltak-portalskjerming.md](tiltak-portalskjerming.md)). Baselinen
|
||||
er altså ikke felles på tvers av tiltakene i D2.1. De to kan ikke settes i samme regnestykke,
|
||||
og vi gjør det ikke.
|
||||
|
||||
## Kostnadssiden — et anker med feil årstall
|
||||
|
||||
NFF Publication 4 gir en **norsk** enhetspris for tunnelbelysning:
|
||||
|
||||
> «For tunnels longer than approx. 300 metres, the average price per linear metre could vary
|
||||
> between NOK 1000 and NOK 3000. (This price includes fittings, cable trays, installation of
|
||||
> transformer and mains connection)»
|
||||
|
||||
For dagsonens 600 m gir det 0,6–1,8 mill. NOK. **Men tallet er ubrukelig som det står, av to
|
||||
grunner:**
|
||||
|
||||
1. **Publikasjonen er udatert i vårt uttrekk.** Et beløp uten årstall kan ikke prisjusteres.
|
||||
NFF Publication 4 omtaler «more than 700 road tunnels in Norway» — Norge passerte det for
|
||||
flere tiår siden, så tallet er gammelt, men *hvor* gammelt vet vi ikke.
|
||||
2. **Prisen gjelder feil ting.** Den dekker **hele belysningsanlegget** per løpemeter — armatur,
|
||||
kabelbroer, trafo, nettilknytning. Vårt tiltak bytter **bare styringen**. En
|
||||
styringsoppgradering er en brøkdel av et komplett anlegg, og ingen kilde i materialet gir
|
||||
den brøken.
|
||||
|
||||
**Konsekvensen er at `cost-baseline.json` ikke får noen investeringsrad.** Det er samme valg
|
||||
som veglys-bundelen tok, men av en annen grunn: der fantes det ingen kilde, her finnes det en
|
||||
kilde som ikke bærer. Å prisjustere et udatert beløp til et tiltak det ikke gjelder, ville
|
||||
vært å produsere et tall og kalle det et anker.
|
||||
|
||||
CEDRs `≈ €35 000 per inngang` for det beslektede styringstiltaket er den nærmeste
|
||||
størrelsesordenen vi har, og den er europeisk og udatert. Den står i
|
||||
[kilder-tunnelbelysning-realisering.md](kilder-tunnelbelysning-realisering.md) som
|
||||
orientering, **ikke** som kostbase.
|
||||
|
||||
## Usikkerhet (for Monte Carlo P10/P50/P90)
|
||||
|
||||
Den dominerende usikkerheten er **ikke** energiprisen — den er **hvor godt styringen faktisk
|
||||
følger kurven i drift**. Den usikkerheten er systematisk, ikke tilfeldig, og den peker én vei.
|
||||
Derfor håndteres den i verdict-laget
|
||||
([verdict-trinnstyring-fro.md](verdict-trinnstyring-fro.md)), ikke her.
|
||||
|
||||
Den eksisterende validatorens Monte Carlo varierer **enhetspris**. I denne mappingen brukes
|
||||
derfor prisbandet **0,70–1,40 NOK/kWh** som usikkerhetsakse, identisk med veglys-mappingen.
|
||||
|
||||
## Mapping til validatoren (hvorfor `validator-input.json` ser ut som den gjør)
|
||||
|
||||
Den eksisterende deterministiske validatoren er en *feasibility-gate*
|
||||
(`claimed ≤ 30 % av affected total`, Monte Carlo over enhetspris) bygd for kostnadskutt.
|
||||
Tiltaket mappes inn **uendret**:
|
||||
|
||||
- `affected_items = [{code: "ENERGI-TUNNEL-EL", quantity: 335250 kWh/år, unit_cost: 1.00 NOK/kWh}]`
|
||||
→ **hele tunnelens** årlige energikostnad (335 250 NOK).
|
||||
- `claimed_saving_nok = 33525` → den modellerte besparelsen.
|
||||
- `assumptions = {"ENERGI-TUNNEL-EL": [0.70, 1.40]}` → prisbandet for Monte Carlo.
|
||||
|
||||
**Hvorfor hele tunnelen og ikke bare dagsonen:** hadde `affected_items` vært dagsonens eget
|
||||
forbruk (180 000 kWh), ville besparelsen vært **18,6 %** av den — under cap-en, men med langt
|
||||
mindre margin, og konvolutten ville vært feil størrelse i prinsippet: tiltaket virker på
|
||||
tunnelens energikostnad, og det er den linjen anleggseieren betaler. Veglys-bundelen tok samme
|
||||
beslutning med porteføljen som konvolutt. **For ett enkelt anlegg er anleggets totale
|
||||
elforbruk den riktige analogien til en portefølje** — ikke den sonen tiltaket tilfeldigvis
|
||||
sitter i.
|
||||
|
||||
Forholdet blir da `claimed / nominal_feasible = 33 525 / 100 575 = **1/3 eksakt**`, mot
|
||||
reservens 0,3333 og veglys-bundelens 0,3386.
|
||||
|
||||
**`cost-baseline.json` bærer nøyaktig samme rad.** `code`, `quantity` og `unit_cost` er
|
||||
identiske i de to filene — ikke «innenfor toleranse», men identiske, fordi begge er skrevet
|
||||
fra summen `180 000 + 139 230 + 16 020`. Hver `code` i `affected_items` finnes som nøkkel i
|
||||
`items`.
|
||||
|
||||
**Ærlig begrensning:** validatorens P10/P50/P90 betyr her «øvre feasible grense» (30 % av
|
||||
samplet energikostnad), *ikke* «styringsbesparelsens fysiske band». Det er bevisst — den
|
||||
domenetro modelleringen og realiseringsgapet hører hjemme i verdict-laget.
|
||||
16
shared/examples/tunnel-hauglia/validator-input.json
Normal file
16
shared/examples/tunnel-hauglia/validator-input.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"_note": "IR-projeksjon (ir.SavingsProposal) for det eksisterende deterministiske validatoren. Styringstiltaket er mappet inn i kost-IR-en UENDRET: affected_items = HELE tunnelens arlige energikostnad (dagsone 180 000 + indre-/utkjoringssone 139 230 + ovrige tekniske anlegg 16 020 = 335 250 kWh/ar a 1,00 NOK/kWh); claimed_saving_nok = modellert besparelse fra kvantiseringsmodellen (60 kW x (0,6667 - 0,5425) x 4 500 t = 33 525 kWh/ar), som er 10,00 % av total og godt innenfor 30 %-cap-en. Forholdet claimed/nominal_feasible = 33 525/100 575 = 1/3 eksakt. affected_items er anleggets TOTALE forbruk og ikke bare dagsonen fordi ett anleggs totale energikostnad er den riktige analogien til en portefolje - se veglys-bundelen, som tok samme beslutning. assumptions = energipris-band (NOK/kWh) for Monte Carlo. cost-baseline.json baerer IDENTISK code, quantity og unit_cost - begge er skrevet fra samme sum, ikke avstemt i ettertid. Se tiltak-trinnstyring-innkjoringssone.md, seksjon 'Mapping til validatoren'.",
|
||||
"project_id": "TUNNEL-HAUGLIA",
|
||||
"measure": "Oppgradering av innkjorings- og overgangssonen fra 3-trinns kontaktorstyring til 13-trinns dimming (Handbok V124 2021, par. 9.6.1). Armaturene byttes ikke - reguleringen byttes.",
|
||||
"affected_items": [
|
||||
{
|
||||
"code": "ENERGI-TUNNEL-EL",
|
||||
"quantity": 335250,
|
||||
"unit_cost": 1.0
|
||||
}
|
||||
],
|
||||
"claimed_saving_nok": 33525,
|
||||
"assumptions": {
|
||||
"ENERGI-TUNNEL-EL": [0.70, 1.40]
|
||||
}
|
||||
}
|
||||
138
shared/examples/tunnel-hauglia/verdict-trinnstyring-fro.md
Normal file
138
shared/examples/tunnel-hauglia/verdict-trinnstyring-fro.md
Normal file
|
|
@ -0,0 +1,138 @@
|
|||
---
|
||||
type: verdict
|
||||
title: "Ekspert-dom (frø): 13-trinns dimming av dagsonen — godkjent med realiseringskorreksjon"
|
||||
description: "Frøsatt ekspert-dom for styringsoppgraderingen. Den modellerte besparelsen er korrekt fra trinnrekkene, men den forutsetter at reguleringen faktisk følger CIE-kurven i drift. Tre navngitte mekanismer i Håndbok V124 selv trekker den andre veien. Forventet faktisk besparelse settes til 72 % av modellert, lånt fra dagslysstyrings-metalitteratur og merket som lån."
|
||||
resource: TUNNEL-HAUGLIA
|
||||
measure_id: TUNNEL-LYS-01
|
||||
decision: approved_with_adjustment
|
||||
realization_rate: 0.72
|
||||
modelled_saving_nok: 33525
|
||||
expected_actual_saving_nok: 24138
|
||||
gap_source: control-tracking-overestimation
|
||||
context_key: "tunnelbelysning; styring=3-trinn->13-trinn; L20-maaling=kontinuerlig-paakrevd; energimaaling=fravaerende-i-baseline"
|
||||
provenance: "frø — AI-forfattet. Realiseringsgraden er LÅNT fra LBNL-5095E (2011): dagslysstyring faller fra 39 % til 28 % gjennomsnittlig besparelse når anslagene filtreres til faktiske installasjoner (n 73 -> 32), forhold 0,718. Det er IKKE en prosjekt-realiseringsgrad, men forholdet mellom to filtrerte populasjonsgjennomsnitt, fra amerikanske naeringsbygg. Det finnes INGEN norsk ex-post-evaluering for tunnelbelysningsstyring. Erstattes av ekte HITL i produksjon."
|
||||
tags: [verdict, realization-rate, ExpeL-seed, HITL, tunnelbelysning, lysstyring, laant-rate]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Ekspert-dom (frø): 13-trinns dimming av dagsonen
|
||||
|
||||
> **Dette er et frø**, ikke en ekte dom. I simulering gir en ekspert-persona slike dommer;
|
||||
> i produksjon gir et menneske dem via samme mappe-grensesnitt. Frøet er forankret i
|
||||
> verifisert litteratur ([kilder-tunnelbelysning-realisering.md](kilder-tunnelbelysning-realisering.md)),
|
||||
> ikke oppdiktet — men **raten er lånt, ikke norsk**, og det står i `provenance`.
|
||||
|
||||
## Dommen
|
||||
|
||||
**Beslutning:** godkjent — med realiseringskorreksjon.
|
||||
|
||||
Den modellerte besparelsen (**33 525 NOK/år**) er korrekt regnet fra de to trinnrekkene, og
|
||||
validatoren bekrefter at den ligger innenfor feasibelt område. Men modellen regner på hvordan
|
||||
en trinnrekke **kan** legge seg mot CIE-kurven, og et anlegg i drift legger seg systematisk
|
||||
høyere. Forventet faktisk besparelse settes til **≈ 24 138 NOK/år** (72 % av modellert).
|
||||
|
||||
## Begrunnelse (det validatoren ikke kan regne)
|
||||
|
||||
### Hovedmekanismen: modellen regner på trinn, driften leverer et forløp
|
||||
|
||||
Kvantiseringsmodellen i
|
||||
[tiltak-trinnstyring-innkjoringssone.md](tiltak-trinnstyring-innkjoringssone.md) antar at
|
||||
regulatoren til enhver tid står på **det laveste trinnet som er ≥ kravet**. Det er sant for en
|
||||
regulator uten treghet. Håndbok V124 forutsetter tre former for treghet — og alle tre er
|
||||
**normens egne krav eller forbehold**, ikke svakheter ved et bestemt anlegg:
|
||||
|
||||
**1. Hysteresen er påkrevd, og den koster.**
|
||||
V124 § 9.6.1: «Det bør som minimum legges til en **hysteresetid på 60 sekunder** for endringer
|
||||
i nivåene.» Hysterese er asymmetrisk i energi: den holder anlegget på det **høyere** trinnet
|
||||
gjennom svingninger i L20 som ellers ville utløst nedtrinn. På en dag med vekslende skydekke
|
||||
er det ikke en marginal effekt. Kravet er et sikkerhetskrav og kan ikke regnes bort.
|
||||
|
||||
**2. Den variable sonelengden implementeres ofte ikke.**
|
||||
V124 § 9.6.1, siste setning: «Ved varierende trinn vil også lengden av innkjøringssonen
|
||||
variere, og dette er viktig å få implementert for å utnytte energisparepotensialet **mest
|
||||
mulig**.» At normen finner det nødvendig å be om dette, forteller at det er den delen som
|
||||
faller ut. **Halvparten av gevinsten ved fin trinning ligger i at sonen også blir kortere når
|
||||
kravet faller** — implementeres bare nivåtrinningen, leveres bare den ene halvparten.
|
||||
|
||||
**3. Kalibreringen er en driftsrutine, ikke en konstant.**
|
||||
V124 § 9.6: «Innjustering av anlegg ved igangkjøring med kalibrert måleinstrument for korrekte
|
||||
nivåer for adaptasjonsluminans er viktig for korrekt drift.» En luminansmåler som drifter, er
|
||||
skitten, eller er innjustert med sikkerhetsmargin, gir et for høyt L20 — og et for høyt L20
|
||||
gir et for høyt trinn hver time resten av året. Feilen er **systematisk og ensrettet**: ingen
|
||||
driftsorganisasjon kalibrerer seg til for lite lys i en tunnelportal.
|
||||
|
||||
### Hvorfor raten er lånt fra dagslysstyring, og hva lånet er
|
||||
|
||||
LBNL-5095E (2011) sorterte 240 besparelsesanslag fra 88 studier og filtrerte dem suksessivt.
|
||||
For **daylighting** — dagslysstyrt regulering, samme strategi som vår — falt gjennomsnittet
|
||||
fra **39 %** til **28 %** når utvalget ble begrenset til **faktiske installasjoner**
|
||||
(n fra 73 til 32). Rapporten konkluderer at «simulations significantly overestimate (by at
|
||||
least 10%) the average savings obtainable from daylighting in actual buildings».
|
||||
|
||||
**Forholdet 28/39 = 0,718 er lånet. 0,72 er dette lånet, ikke en norsk måling.**
|
||||
|
||||
Og lånet er svakere enn veglys-bundelens på ett punkt og sterkere på et annet:
|
||||
**svakere** fordi det ikke er en prosjekt-realiseringsgrad (målt ÷ predikert for de samme
|
||||
prosjektene), men forholdet mellom to filtrerte populasjonsgjennomsnitt; **sterkere** fordi
|
||||
styringsstrategien er den samme — det er dagslys som styrer i begge tilfeller, og det er
|
||||
sensor, kalibrering og treghet som spiser gevinsten i begge tilfeller.
|
||||
|
||||
### Motmekanismen — og hvorfor den IKKE er trukket fra
|
||||
|
||||
Én forhold peker **motsatt vei**, og det er modellens egen antakelse: kravnivået er antatt
|
||||
**jevnt fordelt** over trinnrekkens spenn. Utenfor en norsk portal er L20 skjevfordelt mot
|
||||
**lave** verdier store deler av året — lav sol, overskyet, mørketid — og i det området ligger
|
||||
de fine trinnene tettest (5-10-15-20-25-30 %). Der hjelper 13-trinnsrekka **mer** enn
|
||||
jevnfordelingen tilsier, ikke mindre. Med en realistisk L20-fordeling ville den modellerte
|
||||
besparelsen trolig vært **høyere** enn 33 525.
|
||||
|
||||
Den er likevel ikke netto-regnet inn, av én grunn: **ingen kilde i materialet gir en norsk
|
||||
L20-fordeling over året.** Å justere modellen opp på en fordeling vi ikke har, for så å
|
||||
justere den ned igjen med en lånt rate, ville vært to gjetninger som later som de opphever
|
||||
hverandre.
|
||||
|
||||
**Derfor er 0,72 beheftet med usikkerhet i BEGGE retninger**, og det skiller den fra
|
||||
veglys-frøets 0,81, som var en uttalt **nedre** grense. Her vet vi ikke hvilken vei feilen
|
||||
peker — bare at den er der.
|
||||
|
||||
### Hvorfor dette ikke kan regnes fra parameterne
|
||||
|
||||
Du kan **ikke** regne deg til RR = 0,72 fra `{60 kW, 4 500 t, 3 trinn, 13 trinn}`. Alle fire
|
||||
er kjent, og modellen som forbinder dem er aritmetisk lukket. Skjevheten ligger i **hvordan
|
||||
et anlegg faktisk driftes** — hysterese, uimplementert sonelengde, kalibreringsmargin — og
|
||||
det er epistemikk parameterne ikke bærer. Det er nøyaktig lærings-overflaten bundelen er
|
||||
bygget for.
|
||||
|
||||
## Lærings-signalet (ExpeL)
|
||||
|
||||
Korreksjonen er **kontekstbetinget**:
|
||||
`context_key = "tunnelbelysning; styring=3-trinn->13-trinn; L20-maaling=kontinuerlig-paakrevd; energimaaling=fravaerende-i-baseline"`.
|
||||
|
||||
`gap_source` er satt til **`control-tracking-overestimation`** — og det er **bevisst en annen
|
||||
nøkkel enn `hours-of-use-overestimation`**, som både kontorbygg- og veglys-frøet bruker.
|
||||
Forskjellen er ikke kosmetisk:
|
||||
|
||||
- `hours-of-use-overestimation` er en **parameterfeil**. Anlegget gjør det det skal; tallet
|
||||
vi matet inn var galt. Korreksjonen er å måle parameteren bedre.
|
||||
- `control-tracking-overestimation` er en **driftsfeil**. Parameterne er riktige; anlegget
|
||||
leverer ikke det utstyret er i stand til. Korreksjonen er å endre idriftsettelse,
|
||||
kalibreringsrutine og hva som faktisk implementeres.
|
||||
|
||||
**En lærings-sløyfe som slår disse sammen, lærer feil tiltak.** Å måle brenntimer bedre
|
||||
hjelper ikke et anlegg som står på for høyt trinn, og å kalibrere luminansmåleren hjelper
|
||||
ikke et anlegg med feil timeanslag. De to nøklene skal leve side om side.
|
||||
|
||||
Neste kjøring, gitt en lignende hypotese i samme kontekst, skal hente denne dommen og justere
|
||||
den modellerte ex-ante-besparelsen mot forventet ex-post (≈ 0,72×).
|
||||
|
||||
## Om tiltak 2 (portalskjerming)
|
||||
|
||||
Denne dommen gjelder **kun** styringsoppgraderingen (`TUNNEL-LYS-01`). Portalskjermingen
|
||||
([tiltak-portalskjerming.md](tiltak-portalskjerming.md)) er ikke dømt her, og **skal ikke arve
|
||||
raten** — den skal ikke engang arve `gap_source`.
|
||||
|
||||
Grunnen er strukturell: et overbygg som senker L20, har **ingenting som kan overstyres**. Det
|
||||
har ingen hysterese, ingen kalibrering og ingen driftsrutine. Alle tre mekanismene som
|
||||
begrunner 0,72 er fraværende. Et passivt tiltak med samme `gap_source` som et aktivt ville
|
||||
vært en kategorifeil i lærings-sløyfa — og risikoen der ligger et helt annet sted, i
|
||||
byggekostnad og gjennomførbarhet.
|
||||
10
shared/examples/veglys-fv-soer/cost-baseline.json
Normal file
10
shared/examples/veglys-fv-soer/cost-baseline.json
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"_note": "Prosjektets kostdata for VEGLYS-FV-SOER, i det formatet den konsumerende implementasjonen definerer (deres akse - commons normerer ikke dette formatet). Raden er portefoeljens arlige energikostnad: 9 500 lyspunkter x 114 W installert (100 W HPS + 14 W forkobling, NMFV) x 4 050 brenntimer/ar (Handbok V124, 2021: 4 000-4 100 t/ar for eldre vegbelysning) / 1 000 = 4 386 150 kWh/ar, a 1,00 NOK/kWh eks. mva. quantity og unit_cost er BYTE-IDENTISKE med affected_items-raden i validator-input.json fordi begge filene er skrevet fra denne ene linjen - 5 %-toleransen er lukket ved konstruksjon, ikke ved avstemming. Investeringskostnad er BEVISST utelatt: ingen kilde i materialet gir NOK per lyspunkt eller per styringsnode, og en utledet verdi hoerer ikke hjemme i en kostbase. Se veglys-fv-soer.md og tiltak-led-utskifting.md.",
|
||||
"project_id": "VEGLYS-FV-SOER",
|
||||
"items": {
|
||||
"ENERGI-VEGLYS-EL": {
|
||||
"quantity": 4386150,
|
||||
"unit_cost": 1.0
|
||||
}
|
||||
}
|
||||
}
|
||||
71
shared/examples/veglys-fv-soer/index.md
Normal file
71
shared/examples/veglys-fv-soer/index.md
Normal file
|
|
@ -0,0 +1,71 @@
|
|||
---
|
||||
type: index
|
||||
okf_version: 0.1
|
||||
title: "Veglys fylkesveg sør — LED-utskifting og adaptiv styring"
|
||||
description: "OKF-bundle for en fylkeskommunal veglysportefølje med to kandidat-tiltak: LED-utskifting av 2 500 eldre HPS-lyspunkter, og adaptiv styring som utnytter den tillatte vedlikeholdsfaktoren. Bygget rundt et dokumentert norsk evidensgap — uten måler kan realiseringsgraden ikke ses."
|
||||
tags: [energieffektivisering, veglys, vegbelysning, M&V, IPMVP, realiseringsgrad]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Veglys fylkesveg sør
|
||||
|
||||
En OKF-bundle for **utskifting og styring av veglysanlegg langs fylkesveg**: én portefølje,
|
||||
to kandidat-tiltak. Den deler lærings-overflate med bygg-energi-mikro-bundelen, men står på
|
||||
egne ben: metode- og kildelaget er **materialisert inn her**, ikke lenket på tvers av
|
||||
bundler, og evidensgrunnlaget er **norsk der det teller**.
|
||||
|
||||
> Framework-nøytral artefakt (null kode-avhengighet). Deles uendret mellom
|
||||
> implementasjonene. Se [shared/README.md](../../README.md).
|
||||
|
||||
**Prosjektlaget er fiktivt, litteraturlaget er ekte.** Porteføljen «Fylkesveg Sør» finnes
|
||||
ikke; parameterne den er bygget av (installert effekt, brenntimer, energipris,
|
||||
realiseringsgrad) er hentet fra navngitte primærkilder og merket `[V]` der de er verifisert.
|
||||
Det er samme konvensjon som mikro-bundelen bruker — en produksjons-deployer erstatter
|
||||
prosjektlaget med en ekte kunnskapsbase og beholder litteraturlaget.
|
||||
|
||||
## Hvorfor veglys
|
||||
|
||||
Domenet ble valgt fordi det bærer lærings-overflaten **skarpere enn kontorbygget gjør**.
|
||||
|
||||
I et kontorbygg er gapet mellom modellert og realisert besparelse *målbart, men sjelden
|
||||
målt*. I norsk veglys er det noe strengere: **NVE og RME dokumenterer at mange veilysanlegg
|
||||
mangler måling helt, eller avregnes på estimerte verdier.** Uten meterdata finnes det ingen
|
||||
ex-post å sammenligne ex-ante med. Realiseringsgraden er ikke ukjent fordi ingen har regnet
|
||||
på den — den er **strukturelt usynlig**.
|
||||
|
||||
Det gjør domenet til et godt frø for lærings-sløyfa: den eneste kilden til korreksjon er
|
||||
akkumulert ekspert-erfaring, som er nøyaktig det verdict-laget bærer og validatoren ikke kan
|
||||
regne. Se [verdict-veglys-fro.md](verdict-veglys-fro.md).
|
||||
|
||||
## Innhold (progressiv disclosure)
|
||||
|
||||
- [veglys-fv-soer.md](veglys-fv-soer.md) — `type: project` — porteføljen, energibaselinen
|
||||
og rammene.
|
||||
- [tiltak-led-utskifting.md](tiltak-led-utskifting.md) — `type: hypothesis` — kandidat-tiltak
|
||||
1: LED-utskifting av 2 500 eldre HPS-lyspunkter. **Det er dette tiltaket som er projisert
|
||||
inn i validatoren.**
|
||||
- [tiltak-adaptiv-styring.md](tiltak-adaptiv-styring.md) — `type: hypothesis` —
|
||||
kandidat-tiltak 2: adaptiv styring som henter ut den overdimensjoneringen
|
||||
vedlikeholdsfaktoren allerede tillater. Svakere kildebelagt enn tiltak 1, og merket slik.
|
||||
- [metode-ipmvp-a.md](metode-ipmvp-a.md) — `type: methodology` — M&V-metoden (IPMVP
|
||||
Option A), og hvorfor de øvrige opsjonene er stengt for et umålt veglysanlegg.
|
||||
- [kilder-veglys-realisering.md](kilder-veglys-realisering.md) — `type: reference` —
|
||||
verifisert litteratur: norske baseline- og regelverksankere, og programlitteraturen
|
||||
realiseringsgraden er lånt fra.
|
||||
- [verdict-veglys-fro.md](verdict-veglys-fro.md) — `type: verdict` — frøsatt ekspert-dom.
|
||||
**ExpeL-frøet loopens steg 1 henter fra.**
|
||||
|
||||
## Hvordan den kjøres i dag
|
||||
|
||||
`validator-input.json` er IR-projeksjonen den eksisterende deterministiske validatoren
|
||||
konsumerer uendret; `cost-baseline.json` bærer det samme tallgrunnlaget som prosjektets
|
||||
kostdata. **De to filene er bygget fra samme linje aritmetikk og bærer identisk `code`,
|
||||
`quantity` og `unit_cost`** — se [tiltak-led-utskifting.md](tiltak-led-utskifting.md),
|
||||
§«Mapping til validatoren».
|
||||
|
||||
Bundelen ships **uten `golden.json`**. Den blokken er kryss-implementasjons-fasit produsert
|
||||
av en seedet Monte Carlo, og commons har ingen kjørbar pipeline å produsere den med. En
|
||||
fasit ingen gate leser er verre enn ingen fasit. Lærings-overflaten går ikke tapt: de
|
||||
strukturerte feltene ExpeL-folden faktisk henter (`realization_rate`,
|
||||
`expected_actual_saving_nok`) ligger i frontmatteren til
|
||||
[verdict-veglys-fro.md](verdict-veglys-fro.md), som er der loopen leser dem.
|
||||
142
shared/examples/veglys-fv-soer/kilder-veglys-realisering.md
Normal file
142
shared/examples/veglys-fv-soer/kilder-veglys-realisering.md
Normal file
|
|
@ -0,0 +1,142 @@
|
|||
---
|
||||
type: reference
|
||||
title: "Veglys: norske ankere og lånt realiseringsgrad — verifisert litteratur"
|
||||
description: "Kildebelagte tall for veglysets energibaseline, regelverk og realiseringsgap. Skiller strengt mellom det norske materialet (baseline, regelverk, årsak) og den lånte programlitteraturen (selve realiseringsgraden)."
|
||||
tags: [realization-rate, performance-gap, veglys, M&V, kilder, evidensgap]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Veglys: verifisert litteratur
|
||||
|
||||
**Realiseringsgrad (RR)** = faktisk evaluert besparelse (ex-post) ÷ modellert/påstått
|
||||
besparelse (ex-ante). RR < 1 betyr at drift leverte mindre enn modellen lovte.
|
||||
|
||||
Denne fila har en **skarp todeling**, og den er det viktigste ved den:
|
||||
|
||||
- **Del A — norsk materiale.** Baseline, regelverk og *årsaken til* at gapet ikke kan ses.
|
||||
Alt `[V]` mot primærkilde.
|
||||
- **Del B — lånt materiale.** Selve realiseringsgraden. Den finnes **ikke** for norsk
|
||||
veglys i noen kilde vi har funnet, og er lånt fra amerikansk belysnings-programlitteratur.
|
||||
**Lånet er merket overalt der tallet brukes.**
|
||||
|
||||
Å blande de to ville gjort et lånt tall til en norsk måling. Det gjør vi ikke.
|
||||
|
||||
---
|
||||
|
||||
## Del A — norsk materiale [V]
|
||||
|
||||
| Nivå | Funn | Kilde | År |
|
||||
|---|---|---|---|
|
||||
| Aggregat (norsk) | 13 000 lyspunkter langs riks- og fylkesveg = «rett over 13 GWh/år» ⇒ **≈ 1 000 kWh/lyspunkt/år** | Agder fylkeskommune, fagrapport riks- og fylkesveger | ikke oppgitt |
|
||||
| Armatur | HPS småtrafikkert veg: 100 W lampe + 14 W forkobling = **114 W**; tilsvarende LED **70 W** | NMFV, Road Lighting Efficiency | ikke oppgitt |
|
||||
| **Brenntimer (offisielt)** | **4 000–4 100 t/år for eldre vegbelysning** | **Statens vegvesen Håndbok V124** | **2021** |
|
||||
| **Vedlikeholdsfaktor** | **MF ≤ 0,85** — ≥15 % redusert lysutgang tillatt ved overdimensjonering | **Statens vegvesen Håndbok V124** | **2021** |
|
||||
| Lysteknisk gulv | 1,0 cd/m² og 5 lx for små trafikkveger | NMFV | ikke oppgitt |
|
||||
| Kostnad (fylkesnivå) | **≈ 200 mill. NOK** for full LED-oppgradering, forventet **67 %** energikutt, **≈ 27 mill. NOK/år** spart | **Vestland fylkeskommune** | **2022** |
|
||||
| Vedlikehold | LED «Very good» ≤ 5 år; konvensjonelle lamper byttes hyppig (Vestland: hver 4. år) | AIM hovedplan vei og veilys | ikke oppgitt |
|
||||
| Praksis | Nattslukking 00:00–05:00 pilotert 3/4–15/10/2024; må vurderes lokalt/økologisk | Statens vegvesen | 2024 |
|
||||
|
||||
### Årsaken gapet ikke kan ses (norsk, og bundelens poeng) [V]
|
||||
|
||||
**NVE og RME dokumenterer at mange veilysanlegg mangler måling eller avregnes på estimerte
|
||||
verdier.** Uten meterdata er ex-post-måling — og dermed realiseringsgrad — ikke mulig.
|
||||
|
||||
Det er ikke et hull i denne bundelen. Det er grunnen til at den finnes: i et domene der
|
||||
gapet er strukturelt usynlig, er ekspert-erfaring den eneste korreksjonskilden.
|
||||
|
||||
### To gap-mekanismer som er veglys-spesifikke, og som peker hver sin vei [V]
|
||||
|
||||
1. **Installert effekt ≠ merkeeffekt — peker OPP.** Målt: en armatur merket 100 W trekker
|
||||
**120 W** (MDPI, Energy Audit of Road Lighting Installations). Modellen regner merkeeffekt;
|
||||
nettet betaler den faktiske. Er baselinen understatt, er den *faktiske* besparelsen
|
||||
**større** enn modellert. Dette trekker realiseringsgraden **oppover**.
|
||||
2. **Brenntimer — peker NED.** V124 gir 4 000–4 100 t/år som tabellverdi; MDPI-caset antar
|
||||
4 150 t. **Ingen kilde gir en skumringsstyrt norsk brenntimekurve.** Er timene overvurdert,
|
||||
er besparelsen overvurdert.
|
||||
|
||||
**De to opphever ikke hverandre til noe kjent.** Mekanisme 1 er målt på den *gamle* armaturen;
|
||||
tilsvarende måling for LED-siden finnes ikke i materialet, så nettoen kan ikke regnes. Se
|
||||
[verdict-veglys-fro.md](verdict-veglys-fro.md) for hvordan dommen håndterer det.
|
||||
|
||||
### Evidensgap i det norske materialet (rapportens egen liste)
|
||||
|
||||
- NOK per lyspunkt for LED-armatur inkl. montasje, per årstall
|
||||
- NOK per styringsnode / komplett adaptivt styringssystem
|
||||
- Kvantifisert kWh eller % for adaptiv styring/dimming i norske prosjekter
|
||||
- Reell realiseringsgrad (ex-post ÷ ex-ante) for norske LED- eller styringsprosjekter
|
||||
- Standardisert skumringsstyrt brenntimekurve for norsk breddegrad
|
||||
|
||||
**Oslo-caset er bevisst utelatt fra tabellen.** Kilden oppgir både «estimert sparepotensial
|
||||
4,5 GWh/år» og «70 % reduksjon» for retrofit av 10 000 HPS-punkter, men ikke som et
|
||||
ex-ante/ex-post-par. Ingen realiseringsgrad kan regnes av det, og vi later ikke som.
|
||||
|
||||
---
|
||||
|
||||
## Del B — lånt materiale: realiseringsgraden [V, men ikke norsk]
|
||||
|
||||
Veglys **er** belysning. Programlitteraturen under evaluerer belysningstiltak med samme
|
||||
lysligning og samme stipulerte parameter (driftstimer). Den er `[V]` mot primærkilde, men
|
||||
**amerikansk**, og den er lånt inn her fordi det norske materialet ikke har motstykket.
|
||||
|
||||
| Nivå | Funn | Kilde |
|
||||
|---|---|---|
|
||||
| Program (regulatorisk default) | Default gross RR **0,90**; ex-ante «generally over-estimated» | CPUC Resolution E-4952 |
|
||||
| **Program (lys, drift lavere)** | Operational adjustment ned til **81,1 %** (metrede driftstimer 15 % lavere); coincidence factor **0,566** vs antatt 1,0 | **National Grid SBS 2010 (DNV KEMA)** |
|
||||
| Program (lys, drift høyere) | Hours-of-Use RR **106,5 %**; coincidence 72,2 % — gapet går **begge veier** | Massachusetts Impact Evaluation 2010 |
|
||||
| **Parameter (driftstimer)** | Metret **3 053 t/år** vs antatt **3 772 t/år** (≈19 % lavere); CV ≈ 0,5 | **Efficiency Maine 2021** |
|
||||
| Portefølje | Commercial lighting **98 %** vs residential **61 %** vs total **93 %** | LADWP Retrospective FY15/16–19/20 |
|
||||
| Måleterskel | Besparelse bør overstige **~10 % av baseline** for å skilles fra støy | FEMP/RDH M&V-veiledning |
|
||||
|
||||
**Efficiency Maine-raden er den mest relevante av dem alle**, fordi den treffer nøyaktig den
|
||||
parameteren veglys lever på: metret brenntid mot antatt brenntid, 3 053 mot 3 772 timer.
|
||||
Forholdet er **0,809**. National Grid kommer uavhengig til **0,811** gjennom samme mekanisme.
|
||||
|
||||
### Systematiske årsaker til at faktisk < modellert [V]
|
||||
|
||||
1. **Driftstimer / Hours-of-Use** — dominerende, og for veglys forsterket av at
|
||||
skumringskurven ikke er kjent.
|
||||
2. **In-service rate, drift og persistens** — ikke alt installeres eller forblir i drift;
|
||||
styringer overstyres.
|
||||
3. **Baseline-skjevhet** — en over- eller underpredikert baseline forplanter seg rett inn i
|
||||
den absolutte besparelsen.
|
||||
4. **Måleusikkerhet** — under ~10 %-terskelen drukner signalet i støy. Og uten måler finnes
|
||||
ikke signalet i det hele tatt.
|
||||
5. **Rebound / atferd** — mer lys, lengre, fordi det «koster mindre».
|
||||
|
||||
### Ett mønster fra et naboområde, tatt med fordi det er navngitt
|
||||
|
||||
NFF Publication 13 beskriver et norsk tunnelanlegg der det modellerte
|
||||
ventilasjonspotensialet uteble, med en eksplisitt årsak: **«viften ble holdt på full
|
||||
hastighet mesteparten av tiden».** Det er ikke veglys, og tallet er ikke overførbart. Men
|
||||
mekanismen — en styring som i praksis ikke styrer — er den samme risikoen
|
||||
[tiltak-adaptiv-styring.md](tiltak-adaptiv-styring.md) bærer.
|
||||
|
||||
---
|
||||
|
||||
## Kilder (URL)
|
||||
|
||||
**Norske:**
|
||||
|
||||
- Statens vegvesen Håndbok V124 (2021): https://vegvesen.no/globalassets/fag/handboker/hb-v124.pdf
|
||||
- Agder fylkeskommune, fagrapport riks- og fylkesveger: https://agderfk.no/_f/p1/i8c46461d-20b4-4178-a692-5674bb1fbabc/vedlegg-9-fagrapport-om-riks-og-fylkesveger.pdf
|
||||
- NVE/RME, nettleie for veilys: https://nve.no/reguleringsmyndigheten/regulering/nettvirksomhet/nettleie/nettleie-for-forbruk/veilys
|
||||
- RME eksternrapport 8/2020: https://publikasjoner.nve.no/rme_eksternrapport/2020/rme_eksternrapport2020_08.pdf
|
||||
- Statens vegvesen, nattslukking av veilys (pilot 2024): https://vegvesen.no/fag/fokusomrader/klima-miljo-og-omgivelser/lysforurensning/nattslukking-av-veilys
|
||||
- NFF Publication 13: https://nff.no/wp-content/uploads/sites/2/2020/04/Publication-13.pdf
|
||||
- SSB Elektrisitetspriser (kraftpris tjenesteytende næringer): https://www.ssb.no/energi-og-industri/energi/statistikk/elektrisitetspriser
|
||||
|
||||
**Nordiske / internasjonale:**
|
||||
|
||||
- NMFV, Road Lighting Efficiency: https://nmfv.dk/wp-content/uploads/2012/11/4589rap001-Rev1-RoadLightingEfficiency.pdf
|
||||
- MDPI Energies 18(20):5357, Energy Audit of Road Lighting Installations: https://mdpi.com/1996-1073/18/20/5357
|
||||
- EVO IPMVP Generally Accepted M&V Principles (okt. 2018): https://evo-world.org/images/corporate_documents/IPMVP-Generally-Accepted-Principles_Final_26OCT2018.pdf
|
||||
- DOE/NREL Uniform Methods Project, Ch. 2 Commercial & Industrial Lighting (NREL 68558): https://docs.nrel.gov/docs/fy17osti/68558.pdf
|
||||
- National Grid SBS 2010 Prescriptive Lighting (DNV KEMA): https://www.nationalgridus.com/media/pdfs/our-company/eereports/2014-ngrid-sbs-impact-eval-final-prot.pdf
|
||||
- Efficiency Maine Retail & Distributor Lighting 2021: https://www.efficiencymaine.com/docs/Retail-and-Distributor-Lighting-Final-Impact-Evaluation-Report-2021.pdf
|
||||
- Massachusetts Impact Evaluation of 2010 Prescriptive Lighting: https://ma-eeac.org/wp-content/uploads/Impact-Evaluation-of-2010-Prescriptive-Lighting-Installations-Final-Report-6-21-13.pdf
|
||||
- LADWP Retrospective Impact Evaluation FY15/16–19/20: https://www.ladwp.com/sites/default/files/2024-01/LADWP%20Retrospective%20Report%20FINAL%20V4.pdf
|
||||
- CPUC Resolution E-4952: https://docs.cpuc.ca.gov/publisheddocs/published/g000/m232/k459/232459122.pdf
|
||||
|
||||
**Utelatt med begrunnelse:** UNEP C2E2s Oslo-case (ikke et ex-ante/ex-post-par, se over) og
|
||||
en leverandørblogg som ble brukt til å underbygge målings-mangelen — den påstanden er dekket
|
||||
av NVE/RME, som er primærkilde.
|
||||
81
shared/examples/veglys-fv-soer/metode-ipmvp-a.md
Normal file
81
shared/examples/veglys-fv-soer/metode-ipmvp-a.md
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
---
|
||||
type: methodology
|
||||
title: "IPMVP Option A for veglys — og hvorfor de andre opsjonene er stengt"
|
||||
description: "M&V-metoden for å verifisere besparelsen fra et veglystiltak. Option A er ikke valgt fordi den er best, men fordi et umålt veglysanlegg stenger de tre andre."
|
||||
methodology: IPMVP
|
||||
option: A
|
||||
tags: [IPMVP, M&V, EVO, retrofit-isolation, veglys, maalermangel]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# M&V-metode: IPMVP Option A for veglys
|
||||
|
||||
**IPMVP** (International Performance Measurement and Verification Protocol) er
|
||||
konsensus-rammeverket for å måle og verifisere energibesparelser, eid og vedlikeholdt av
|
||||
**EVO** (Efficiency Valuation Organization). Kjerneinnsikten som begrunner hele
|
||||
lærings-sløyfa står eksplisitt i protokollen [V]:
|
||||
|
||||
> *"Savings cannot be directly measured, because savings represent the absence of energy use."*
|
||||
|
||||
Besparelse er en **kontrafaktisk** størrelse — det finnes ingen måler for «det som ikke ble
|
||||
brukt». Den *beregnes*: `Baseline-energi − Rapporterings-energi ± justeringer` (IPMVP Eq. 1).
|
||||
|
||||
## De fire opsjonene (EVO, offisielle navn) [V]
|
||||
|
||||
- **Option A — Retrofit Isolation: Key Parameter Measurement.** Måler nøkkelparameteren
|
||||
(typisk effekt) på det berørte utstyret; øvrige parametere (typisk driftstimer) *estimeres*.
|
||||
- **Option B — Retrofit Isolation: All Parameter Measurement.** Måler alle relevante parametere.
|
||||
- **Option C — Whole Facility.** Besparelse fra anleggets hovedmåler, med rutinejustering.
|
||||
- **Option D — Calibrated Simulation.** Besparelse via simuleringsmodell kalibrert mot måledata.
|
||||
|
||||
## Hvorfor Option A her — ved eliminasjon, ikke ved preferanse
|
||||
|
||||
I et kontorbygg velges Option A fordi den er **billigst og enklest** for ett isolert tiltak.
|
||||
For denne porteføljen er begrunnelsen en annen og svakere: **de tre andre opsjonene er
|
||||
praktisk stengt.**
|
||||
|
||||
- **Option C er stengt av målermangel.** Option C forutsetter en hovedmåler å lese
|
||||
besparelsen ut av. NVE og RME dokumenterer at mange norske veilysanlegg **mangler måling**
|
||||
eller avregnes på **estimerte** verdier. Der det ikke finnes meterdata, finnes det ingen
|
||||
rapporteringsperiode å trekke fra en baseline.
|
||||
- **Option B er stengt av kostnad og geografi.** «Alle relevante parametere» for veglys
|
||||
betyr brenntimer per lyspunkt, over et anlegg spredt over titalls kilometer veg.
|
||||
Instrumenteringen ville kostet mer enn tiltaket på en småtrafikkert fylkesveg.
|
||||
- **Option D er stengt av kalibreringsdata.** En kalibrert simulering må kalibreres mot noe.
|
||||
Se Option C.
|
||||
|
||||
**Option A er derfor det som står igjen** — og det er verdt å si høyt, fordi valget ved
|
||||
eliminasjon flytter mer vekt over på den parameteren Option A tillater å *estimere*.
|
||||
|
||||
## Der metoden lekker: den estimerte parameteren
|
||||
|
||||
Option A måler effekt (billig, presist — 114 W før, 70 W etter) og **stipulerer
|
||||
driftstimer**. For veglys er det stipulatet svakere enn i et bygg:
|
||||
|
||||
- Et bygg har en **timeplan** å stipulere fra. Den treffer sjelden metret brenntid, men den
|
||||
er i det minste anleggsspesifikk.
|
||||
- Et veglysanlegg har en **skumringsstyring**, og **ingen kilde i materialet vårt gir en
|
||||
skumringsstyrt norsk brenntimekurve.** Vi bruker Håndbok V124s 4 000–4 100 t/år — et
|
||||
nasjonalt tabellanslag for «eldre vegbelysning», ikke en målt kurve for dette anlegget på
|
||||
denne breddegraden.
|
||||
|
||||
**Det gir en dobbel eksponering:** parameteren metoden tillater å estimere er både den
|
||||
dominerende usikkerheten *og* den vi har svakest kilde for. Realiseringsgapet oppstår
|
||||
nøyaktig der.
|
||||
|
||||
## Måleterskelen, og hvorfor den ikke redder oss
|
||||
|
||||
FEMP/RDH-veiledningen sier at en besparelse bør overstige **~10 % av baseline** for å skilles
|
||||
pålitelig fra støy. Trinn 1 ligger på 10,2 % av porteføljen — akkurat på terskelen — og
|
||||
38,6 % av de berørte punktenes eget forbruk, altså godt over hvis man måler på riktig
|
||||
avgrensning.
|
||||
|
||||
Det hjelper likevel ikke, fordi terskelen forutsetter at det **finnes en måling** å skille
|
||||
signalet ut av. Se Option C.
|
||||
|
||||
## Konsekvensen for lærings-sløyfa
|
||||
|
||||
Når ex-post-verifikasjon er stengt, er den eneste tilgjengelige korreksjonen **akkumulert
|
||||
ekspert-erfaring**. Det er ikke en nødløsning i dette domenet — det er den eneste kilden
|
||||
som finnes. Se [verdict-veglys-fro.md](verdict-veglys-fro.md) og
|
||||
[kilder-veglys-realisering.md](kilder-veglys-realisering.md).
|
||||
96
shared/examples/veglys-fv-soer/tiltak-adaptiv-styring.md
Normal file
96
shared/examples/veglys-fv-soer/tiltak-adaptiv-styring.md
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
---
|
||||
type: hypothesis
|
||||
title: "Adaptiv styring — utnytting av vedlikeholdsfaktoren"
|
||||
description: "Konstant lysytelse (CLO) og dimming på de 2 500 LED-punktene fra trinn 1, som henter ut den overdimensjoneringen vedlikeholdsfaktoren allerede tillater. Svakere kildebelagt enn tiltak 1, og merket slik."
|
||||
resource: VEGLYS-FV-SOER
|
||||
measure_id: STYRING-VEGLYS-02
|
||||
tags: [adaptiv-styring, dimming, CLO, vedlikeholdsfaktor, ECM, trinn-2]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Tiltak: Adaptiv styring på de LED-utskiftede punktene
|
||||
|
||||
Styringstiltak på de **samme 2 500 punktene** som er byttet i trinn 1
|
||||
([tiltak-led-utskifting.md](tiltak-led-utskifting.md)). Tiltaket forutsetter LED — det er
|
||||
dimmebarheten LED-driveren gir som gjør det mulig.
|
||||
|
||||
> **Denne hypotesen er svakere kildebelagt enn tiltak 1, og det er med vilje synlig.**
|
||||
> Tiltak 1 er regnet fra to merkeeffekter i samme tabell. Denne er regnet fra en
|
||||
> *regelverksmargin*, fordi det er det beste materialet gir.
|
||||
|
||||
## Evidensgapet, sagt først
|
||||
|
||||
**Ingen kilde i materialet vårt kvantifiserer besparelsen fra adaptiv styring eller dimming
|
||||
i norske veglysanlegg** — ikke i kWh, ikke i prosent. Det er et av de fem punktene på
|
||||
research-kjøringens egen uverifisert-liste.
|
||||
|
||||
Vi kunne ha utledet et tall ved å trekke tiltak 1 fra Vestlands 67 % og tilskrive resten til
|
||||
styring. Det ville gitt ~46 % av forbruket etter LED — **urimelig høyt for dimming alene**, og
|
||||
det ville tilskrevet en kilde en dekomponering den ikke inneholder. Vi gjør det ikke.
|
||||
|
||||
I stedet regner vi fra den ene marginen norsk regelverk faktisk **navngir**.
|
||||
|
||||
## Grunnlaget: vedlikeholdsfaktoren er en innebygd overdimensjonering
|
||||
|
||||
Et veglysanlegg skal ligge over det lystekniske minstekravet **over tid**, ikke bare ved
|
||||
idriftsettelse. Derfor dimensjoneres det med en vedlikeholdsfaktor (MF) som tar høyde for at
|
||||
lysutbyttet faller gjennom levetiden. Håndbok V124 (2021) setter **MF ≤ 0,85**.
|
||||
|
||||
Konsekvensen: et **nytt** anlegg leverer minst **15 % mer lys enn kravet** — en margin som
|
||||
brennes bort som varme til anlegget har eldes nok til å trenge den. Konstant lysytelse (CLO)
|
||||
er styringen som henter den tilbake: driveren settes ned ved idriftsettelse og skrus gradvis
|
||||
opp etter hvert som armaturen degraderer.
|
||||
|
||||
**Dette er ikke en besparelse mot kravet — det er en besparelse mot overoppfyllelsen.** Den
|
||||
lystekniske minsteytelsen (1,0 cd/m² og 5 lx for småtrafikkerte veger) er urørt hele veien.
|
||||
|
||||
## Parametere
|
||||
|
||||
| Parameter | Verdi | Status | Kilde/forankring |
|
||||
|---|---|---|---|
|
||||
| Antall lyspunkter | 2 500 | [I] | samme som trinn 1 |
|
||||
| Effekt etter LED (utgangspunkt) | 70 W | [V] | NMFV |
|
||||
| Vedlikeholdsfaktor | **MF ≤ 0,85** | [V] | Håndbok V124 (2021) |
|
||||
| Effekt ved CLO-nedsetting | 70 × 0,85 = **59,5 W** | beregnet | følger direkte av MF |
|
||||
| Reduksjon per lyspunkt (ΔW) | **10,5 W** | beregnet | 70 − 59,5 |
|
||||
| Brenntimer | 4 050 t/år | [V-forankret] | Håndbok V124 (2021) |
|
||||
|
||||
## Modellert besparelse (ex-ante)
|
||||
|
||||
> Forbruk etter trinn 1: 70 × 2 500 × 4 050 / 1 000 = **708 750 kWh/år**
|
||||
> ΔW = 10,5 W/lyspunkt
|
||||
> kWh/år = 10,5 × 2 500 × 4 050 / 1 000 = **106 312,5 kWh/år**
|
||||
> kr/år = **106 312,5 NOK/år**
|
||||
|
||||
Det er **15,0 %** av forbruket etter LED, som det må være — tallet er MF-marginen, ikke et
|
||||
uavhengig estimat.
|
||||
|
||||
**Samlet med trinn 1:** 445 500 + 106 312,5 = **551 812,5 kWh/år**, altså **47,8 %** av de
|
||||
2 500 punktenes opprinnelige forbruk (1 154 250 kWh/år).
|
||||
|
||||
## Tre grunner til at dette tallet er en øvre grense, ikke et anslag
|
||||
|
||||
1. **Marginen er ikke gratis hele levetiden.** CLO henter 15 % ved idriftsettelse og
|
||||
**null** ved slutten av vedlikeholdsintervallet, når armaturen faktisk trenger hele
|
||||
utgangseffekten. Gjennomsnittet over intervallet er lavere enn 15 % — hvor mye lavere
|
||||
avhenger av degraderingskurven, som **ingen kilde her oppgir**.
|
||||
2. **Dimming utover CLO er ikke modellert.** Trafikkadaptiv dimming (mindre lys ved lav
|
||||
trafikk) og nattsenking ville kommet i tillegg, men vi har ingen norsk kvantifisering, og
|
||||
Statens vegvesens egen nattslukkings-pilot (00:00–05:00, 2024) sier eksplisitt at tiltaket
|
||||
må vurderes lokalt og økologisk. **Ikke modellert.**
|
||||
3. **Styringsutstyret koster, og prisen finnes ikke i materialet.** **Ingen kilde gir NOK per
|
||||
styringsnode eller for et komplett adaptivt system.** Vi anslår den ikke. Uten
|
||||
kostnadssiden er dette et energitall, ikke en business case.
|
||||
|
||||
## Forholdet til validatoren
|
||||
|
||||
**Dette tiltaket er ikke projisert inn i `validator-input.json`.** IR-projeksjonen bærer ett
|
||||
kandidat-tiltak, og det er trinn 1. Denne hypotesen er her som det den er: et **andre**
|
||||
kandidat-tiltak lærings-sløyfa kan foreslå, med en modellert besparelse som er svakere
|
||||
forankret enn den første — og en ekspert-dom som derfor har mer å korrigere.
|
||||
|
||||
Realiseringsgapet for styring er bredere enn for lampeutskifting. NFF Publication 13
|
||||
dokumenterer mønsteret rått fra tunnelventilasjon: potensialet uteble fordi **«viften ble
|
||||
holdt på full hastighet mesteparten av tiden»**. En styring som overstyres av drift,
|
||||
leverer null. Se [kilder-veglys-realisering.md](kilder-veglys-realisering.md) og
|
||||
[verdict-veglys-fro.md](verdict-veglys-fro.md).
|
||||
132
shared/examples/veglys-fv-soer/tiltak-led-utskifting.md
Normal file
132
shared/examples/veglys-fv-soer/tiltak-led-utskifting.md
Normal file
|
|
@ -0,0 +1,132 @@
|
|||
---
|
||||
type: hypothesis
|
||||
title: "LED-utskifting av veglysarmatur, trinn 1"
|
||||
description: "Bytte 2 500 eldre HPS-armaturer (114 W installert) til LED (70 W) på de eldste strekningene i porteføljen. Kandidat-tiltak med modellert besparelse, usikkerhet og en åpen kostnadsside."
|
||||
resource: VEGLYS-FV-SOER
|
||||
measure_id: LED-VEGLYS-01
|
||||
tags: [LED, vegbelysning, retrofit, ECM, trinn-1]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Tiltak: LED-utskifting av veglysarmatur (trinn 1)
|
||||
|
||||
Utskifting av **2 500 av porteføljens 9 500 lyspunkter** — de eldste strekningene — fra
|
||||
høytrykksnatrium til LED. Trinnvis utrulling er den vanlige formen i fylkeskommunale
|
||||
veglysprosjekter: alderen på armaturen, ikke effekten, avgjør rekkefølgen.
|
||||
|
||||
Dette er tiltaket som er **projisert inn i validatoren**. Tiltak 2
|
||||
([tiltak-adaptiv-styring.md](tiltak-adaptiv-styring.md)) forutsetter at dette er utført.
|
||||
|
||||
## Parametere
|
||||
|
||||
| Parameter | Verdi | Status | Kilde/forankring |
|
||||
|---|---|---|---|
|
||||
| Antall lyspunkter i trinn 1 | 2 500 | [I] | trinnvis utrulling, andel valgt |
|
||||
| Effekt før (HPS 100 W + forkobling) | 114 W | [V] | NMFV, Road Lighting Efficiency |
|
||||
| Effekt etter (LED, tilsvarende veg) | 70 W | [V] | NMFV, samme tabell |
|
||||
| Reduksjon per lyspunkt (ΔW) | **44 W** | beregnet | 114 − 70 |
|
||||
| Brenntimer (HOU) | 4 050 t/år | [V-forankret] | Håndbok V124 (2021): 4 000–4 100 t/år |
|
||||
| Variabel energipris | 1,00 NOK/kWh | [V-forankret] | se [veglys-fv-soer.md](veglys-fv-soer.md) |
|
||||
|
||||
## Modellert besparelse (ex-ante)
|
||||
|
||||
Samme lysligning som for innendørs belysning (DOE/NREL Uniform Methods Project, Eq. 3):
|
||||
`kWh = Σ (W_før − W_etter) × antall × HOU / 1000`
|
||||
|
||||
> ΔW = 114 − 70 = **44 W/lyspunkt**
|
||||
> kWh/år = 44 × 2 500 × 4 050 / 1 000 = **445 500 kWh/år**
|
||||
> kr/år = 445 500 × 1,00 = **445 500 NOK/år**
|
||||
|
||||
Det er **38,6 %** av de berørte punktenes eget forbruk (1 154 250 kWh/år) og **10,2 %** av
|
||||
porteføljens totale forbruk.
|
||||
|
||||
**Ingen HVAC-interaktiv effekt.** Utendørs finnes ikke motstykket til spillvarme-korreksjonen
|
||||
et kontorbygg trenger (UMP Eq. 6). Kjernetallet står uten den justeringen.
|
||||
|
||||
## Hvorfor 38,6 % og ikke 67 %
|
||||
|
||||
Vestland fylkeskommune anslo i 2022 **67 % energireduksjon** ved full LED-oppgradering, til
|
||||
≈ 200 mill. NOK og ≈ 27 mill. NOK/år spart. Vår bunn-opp-beregning fra merkeeffekt kommer til
|
||||
38,6 %. Differansen er stor nok til at den må forklares, ikke bortforklares:
|
||||
|
||||
- Vår 38,6 % er **ren lampeutskifting**, regnet fra to merkeeffekter i samme NMFV-tabell.
|
||||
- Vestlands 67 % er et **fylkeskommunalt aggregat-anslag** hvis sammensetning kilden ikke
|
||||
bryter ned. Det er rimelig å anta at det også inneholder styring/dimming og korreksjon av
|
||||
overdimensjonering — men **kilden sier det ikke**, og vi tilskriver den ikke noe den ikke
|
||||
skriver.
|
||||
- Legger vi tiltak 2 oppå ([tiltak-adaptiv-styring.md](tiltak-adaptiv-styring.md)), kommer vi
|
||||
til **47,8 %** — fortsatt et godt stykke under 67 %.
|
||||
|
||||
**Det gjenstående gapet på ~19 prosentpoeng er uforklart i materialet vårt.** Vi lar det stå
|
||||
åpent. Det er en av grunnene til at en ekspert-dom, ikke en modell, må sette forventet
|
||||
faktisk besparelse.
|
||||
|
||||
## Kostnadssiden — et navngitt evidenshull
|
||||
|
||||
**Ingen kilde i materialet gir NOK per lyspunkt for LED-armatur inkl. montasje.** Vestlands
|
||||
200 mill. NOK er en totalsum uten per-punkt-oppløsning, og antall lyspunkter oppgis ikke.
|
||||
|
||||
En per-punkt-kostnad kan **utledes**, men bare gjennom tre ledd som hver bærer sin egen
|
||||
usikkerhet:
|
||||
|
||||
> 27 mill. NOK/år spart ÷ 1,00 NOK/kWh = 27 GWh/år spart
|
||||
> 27 GWh/år = 67 % ⇒ baseline ≈ 40,3 GWh/år
|
||||
> 40,3 GWh/år ÷ ~1 000 kWh per lyspunkt (Agder) ≈ 40 300 lyspunkter
|
||||
> 200 mill. NOK ÷ 40 300 ≈ **~4 960 NOK per lyspunkt** `[U-utledet]`
|
||||
|
||||
Kjeden låner energiprisen fra vår egen baseline og lyspunkt-intensiteten fra et **annet**
|
||||
fylke. Den er en størrelsesorden, ikke et tall.
|
||||
|
||||
**Konsekvensen er ubehagelig og skal stå:** 2 500 × ~4 960 ≈ 12,4 mill. NOK mot 445 500
|
||||
NOK/år spart gir **~28 års tilbakebetaling på energi alene**. Det er langt dårligere enn
|
||||
Vestlands egne ~7,4 år, og forskjellen er ikke mystisk — våre punkter er småveg-armatur med
|
||||
462 kWh/år, mot ~1 000 kWh/år i et riks-inkluderende aggregat. Lavforbrukspunkter har
|
||||
dårligere energiøkonomi.
|
||||
|
||||
Et ekte veglysprosjekt bæres derfor sjelden av energi alene. Vedlikehold er den andre halvdelen:
|
||||
LED holder «Very good» i ≤ 5 år mens konvensjonelle lamper byttes langt hyppigere (Vestland
|
||||
oppgir hver 4. år). **Den besparelsen er ikke modellert her** — vi har ingen kilde som
|
||||
kvantifiserer den i NOK, og vi fyller ikke hullet med et anslag.
|
||||
|
||||
**Ingenting av dette går inn i `cost-baseline.json`.** Kostbasen ligger på aggregat-nivå
|
||||
(energi), der Agder- og Vestland-tallene faktisk bærer.
|
||||
|
||||
## Usikkerhet (for Monte Carlo P10/P50/P90)
|
||||
|
||||
Den dominerende usikkerheten i en veglysbesparelse er **brenntimer**, ikke pris — og for
|
||||
norsk veglys er den verre enn i et bygg: **ingen kilde i materialet gir en skumringsstyrt
|
||||
norsk brenntimekurve.** V124s 4 000–4 100 t/år er et tabellanslag for «eldre vegbelysning»,
|
||||
ikke en målt kurve for et bestemt anlegg på en bestemt breddegrad.
|
||||
|
||||
Den eksisterende validatorens Monte Carlo varierer likevel **enhetspris**, ikke brenntimer.
|
||||
I denne mappingen brukes derfor prisbandet **0,70–1,40 NOK/kWh** som usikkerhetsakse. Den
|
||||
fysiske brenntime-usikkerheten — og viktigere, den *systematiske* brenntime-skjevheten —
|
||||
håndteres i verdict-laget ([verdict-veglys-fro.md](verdict-veglys-fro.md)), ikke her.
|
||||
|
||||
## Mapping til validatoren (hvorfor `validator-input.json` ser ut som den gjør)
|
||||
|
||||
Den eksisterende deterministiske validatoren er en *feasibility-gate* (`claimed ≤ 30 % av
|
||||
affected total`, Monte Carlo over enhetspris) bygd for kostnadskutt. Veglystiltaket mappes
|
||||
inn **uendret**:
|
||||
|
||||
- `affected_items = [{code: "ENERGI-VEGLYS-EL", quantity: 4386150 kWh/år, unit_cost: 1.00 NOK/kWh}]`
|
||||
→ **hele porteføljens** årlige energikostnad (4 386 150 NOK). Trinn 1-besparelsen er
|
||||
10,2 % av den, godt innenfor 30 %-cap-en.
|
||||
- `claimed_saving_nok = 445500` → den modellerte besparelsen fra trinn 1.
|
||||
- `assumptions = {"ENERGI-VEGLYS-EL": [0.70, 1.40]}` → prisbandet for Monte Carlo.
|
||||
|
||||
**Hvorfor porteføljen og ikke bare de 2 500 punktene:** hadde `affected_items` vært de
|
||||
berørte punktenes eget forbruk (1 154 250 kWh), ville den modellerte besparelsen vært 38,6 %
|
||||
av den — **over 30 %-cap-en**, og det riktige forslaget ville blitt avvist av en gate som
|
||||
måler feil størrelse. Porteføljen er den korrekte kostnads-linjen tiltaket virker på, på
|
||||
samme måte som byggets totale elforbruk er det for et innendørs LED-tiltak.
|
||||
|
||||
**`cost-baseline.json` bærer nøyaktig samme rad.** `code`, `quantity` og `unit_cost` er
|
||||
identiske i de to filene — ikke «innenfor toleranse», men identiske, fordi begge er skrevet
|
||||
fra linjen `114 W × 9 500 × 4 050 t / 1 000`. Hver `code` i `affected_items` finnes som
|
||||
nøkkel i `items`.
|
||||
|
||||
**Ærlig begrensning:** validatorens P10/P50/P90 betyr her «øvre feasible grense» (30 % av
|
||||
samplet energikostnad), *ikke* «LED-besparelsens fysiske band». Det er bevisst — den domenetro
|
||||
besparelses-modelleringen og realiseringsgapet hører hjemme i verdict-laget, som er nettopp
|
||||
det lærings-sløyfa skal lære.
|
||||
16
shared/examples/veglys-fv-soer/validator-input.json
Normal file
16
shared/examples/veglys-fv-soer/validator-input.json
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
{
|
||||
"_note": "IR-projeksjon (ir.SavingsProposal) for det eksisterende deterministiske validatoren. Veglystiltaket er mappet inn i kost-IR-en UENDRET: affected_items = HELE portefoeljens arlige energikostnad (9 500 lyspunkter x 114 W x 4 050 t / 1 000 = 4 386 150 kWh/ar a 1,00 NOK/kWh); claimed_saving_nok = modellert besparelse fra trinn 1 (2 500 punkter x 44 W x 4 050 t / 1 000 = 445 500 kWh/ar), som er 10,2 % av total og godt innenfor 30 %-cap-en; assumptions = energipris-band (NOK/kWh) for Monte Carlo. Hadde affected_items vaert kun de berorte punktenes eget forbruk, ville besparelsen vaert 38,6 % av den og det RIKTIGE forslaget blitt avvist. cost-baseline.json baerer IDENTISK code, quantity og unit_cost - begge er skrevet fra samme linje aritmetikk, ikke avstemt i ettertid. Se tiltak-led-utskifting.md, seksjon 'Mapping til validatoren'.",
|
||||
"project_id": "VEGLYS-FV-SOER",
|
||||
"measure": "LED-utskifting av 2 500 eldre HPS-armaturer (114 W -> 70 W) pa smatrafikkerte fylkesveger, trinn 1 av portefoeljen",
|
||||
"affected_items": [
|
||||
{
|
||||
"code": "ENERGI-VEGLYS-EL",
|
||||
"quantity": 4386150,
|
||||
"unit_cost": 1.0
|
||||
}
|
||||
],
|
||||
"claimed_saving_nok": 445500,
|
||||
"assumptions": {
|
||||
"ENERGI-VEGLYS-EL": [0.70, 1.40]
|
||||
}
|
||||
}
|
||||
81
shared/examples/veglys-fv-soer/veglys-fv-soer.md
Normal file
81
shared/examples/veglys-fv-soer/veglys-fv-soer.md
Normal file
|
|
@ -0,0 +1,81 @@
|
|||
---
|
||||
type: project
|
||||
title: "Veglysportefølje Fylkesveg Sør"
|
||||
description: "Fiktiv fylkeskommunal veglysportefølje: 9 500 lyspunkter med eldre høytrykksnatrium-armatur langs småtrafikkerte fylkesveger. Energibaseline og rammer for utskifting og styring."
|
||||
resource: VEGLYS-FV-SOER
|
||||
tags: [veglys, vegbelysning, fylkesveg, energibaseline, HPS]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Veglysportefølje Fylkesveg Sør (VEGLYS-FV-SOER)
|
||||
|
||||
**Fiktiv portefølje.** Tallene er illustrative, men bygget av parametere som er forankret i
|
||||
norske primærkilder — ikke et ekte fylke. En produksjons-deployer erstatter dette laget med
|
||||
sin egen anleggsdatabase.
|
||||
|
||||
Porteføljen er **9 500 lyspunkter** langs småtrafikkerte fylkesveger, alle med eldre
|
||||
høytrykksnatrium-armatur (HPS). Den er valgt uniform med vilje: hele variasjonen som
|
||||
betyr noe for lærings-overflaten ligger i **brenntimer og realisering**, ikke i
|
||||
armatur-miksen.
|
||||
|
||||
## Energibaseline
|
||||
|
||||
| Størrelse | Verdi | Merknad |
|
||||
|---|---|---|
|
||||
| Antall lyspunkter | 9 500 | [I] illustrativt |
|
||||
| Installert effekt per lyspunkt | **114 W** | [V] 100 W HPS-lampe + 14 W forkobling (NMFV) |
|
||||
| Brenntimer | **4 050 t/år** | [V-forankret] midtpunkt i Håndbok V124s 4 000–4 100 t/år for eldre vegbelysning |
|
||||
| **Totalt elforbruk** | **4 386 150 kWh/år** | beregnet: 114 W × 9 500 × 4 050 t / 1 000 |
|
||||
| Per lyspunkt | 461,7 kWh/år | beregnet |
|
||||
| Variabel energikostnad | **1,00 NOK/kWh** ekskl. mva | [V-forankret] kraftpris + nettleie energiledd + elavgift |
|
||||
| **Total årlig energikostnad** | **4 386 150 NOK/år** | beregnet |
|
||||
|
||||
**Energiprisen** (1,00 NOK/kWh) er den marginale variable kostnaden et spart kWh faktisk
|
||||
unngår, ekskl. mva. Sammensetningen er den samme som for næringsbygg — kraftpris + nettleie
|
||||
energiledd + elavgift — og varierer kraftig med prisområde og sesong. Derfor er den
|
||||
konfigurerbar, og usikkerheten håndteres i Monte Carlo-steget (band 0,70–1,40 NOK/kWh). Se
|
||||
[kilder-veglys-realisering.md](kilder-veglys-realisering.md).
|
||||
|
||||
**Én forskjell fra næringsbygg er verdt å merke:** veglys har sitt eget nettleie-regime, og
|
||||
NVE/RME dokumenterer at mange veilysanlegg avregnes på **estimerte** verdier fordi de mangler
|
||||
måler. Det påvirker ikke den marginale kostnaden per spart kWh, men det er grunnen til at
|
||||
ex-post-verifikasjon er stengt her. Se [metode-ipmvp-a.md](metode-ipmvp-a.md).
|
||||
|
||||
## Kryss-sjekk mot norsk aggregat (og hvorfor tallene ikke er like)
|
||||
|
||||
Agder fylkeskommune oppgir at **13 000 lyspunkter** langs riks- og fylkesveger bruker «rett
|
||||
over 13 GWh/år» — altså **≈ 1 000 kWh per lyspunkt per år**. Vår portefølje ligger på
|
||||
**461,7 kWh** per lyspunkt, under halvparten.
|
||||
|
||||
**Avviket er reelt og forklarlig, ikke en feil:** Agder-tallet dekker **riks- OG fylkesveger**,
|
||||
altså også høyere vegklasser med 150 W- og 250 W-lamper og lengre master. Fylkesveg Sør er
|
||||
med vilje modellert som ren småtrafikkert fylkesveg med 100 W-armatur — den vegklassen NMFV
|
||||
måler på. Retningen på avviket stemmer med den forklaringen: vår portefølje **skal** ligge
|
||||
under et riks-inkluderende aggregat.
|
||||
|
||||
**Dette er en design-beslutning, ikke en måling.** Et ekte fylke ville hatt blandet
|
||||
armatur-mikse, og en deployer som bytter ut dette laget må regne baselinen på nytt fra sin
|
||||
egen anleggsdatabase. Konsekvensen for lærings-overflaten er null — realiseringsgapet er en
|
||||
*rate*, ikke et absolutt tall.
|
||||
|
||||
## Rammer (constraints)
|
||||
|
||||
- Tiltak vurderes **inne i** denne porteføljen (ikke på tvers av fylkeskommunens øvrige
|
||||
anlegg).
|
||||
- **Lystekniske minstekrav setter gulvet.** For småtrafikkerte veger: 1,0 cd/m² og 5 lx
|
||||
(NMFV). Ingen besparelse kan hentes ved å gå under kravet.
|
||||
- **Vedlikeholdsfaktoren (MF) må inn i beregningen.** Anlegget skal ligge over kravet **over
|
||||
tid**, ikke bare ved idriftsettelse. Håndbok V124 setter MF ≤ 0,85. Se
|
||||
[tiltak-adaptiv-styring.md](tiltak-adaptiv-styring.md) — det er nettopp den marginen
|
||||
tiltak 2 lever av.
|
||||
- **Nattslukking kan ikke antas.** Statens vegvesen kjørte pilot på slukking 00:00–05:00
|
||||
i 2024, men dokumentasjonen sier at tiltaket må vurderes lokalt og økologisk. Det er
|
||||
derfor **ikke** modellert som besparelse i noen av hypotesene her.
|
||||
- Budsjett og anskaffelsesrammer eies av deployer; her holdes de minimale.
|
||||
|
||||
## Kandidat-tiltak
|
||||
|
||||
- [tiltak-led-utskifting.md](tiltak-led-utskifting.md) — LED-utskifting, trinn 1
|
||||
(2 500 lyspunkter).
|
||||
- [tiltak-adaptiv-styring.md](tiltak-adaptiv-styring.md) — adaptiv styring på de samme
|
||||
2 500 punktene, etter LED.
|
||||
97
shared/examples/veglys-fv-soer/verdict-veglys-fro.md
Normal file
97
shared/examples/veglys-fv-soer/verdict-veglys-fro.md
Normal file
|
|
@ -0,0 +1,97 @@
|
|||
---
|
||||
type: verdict
|
||||
title: "Ekspert-dom (frø): LED-utskifting veglys — godkjent med realiseringskorreksjon"
|
||||
description: "Frøsatt ekspert-dom for LED-utskiftingen. Den modellerte besparelsen er teknisk korrekt fra parameterne, men brenntimene er et nasjonalt tabellanslag, ikke en målt kurve, og anlegget mangler måler — så avviket kan ikke oppdages i drift. Forventet faktisk besparelse settes til 81 % av modellert, lånt fra belysnings-programlitteratur og merket som lån. Raten er en NEDRE grense: en motvirkende mekanisme (målt effekt over merkeeffekt) er dokumentert, men ikke kvantifiserbar for LED-siden."
|
||||
resource: VEGLYS-FV-SOER
|
||||
measure_id: LED-VEGLYS-01
|
||||
decision: approved_with_adjustment
|
||||
realization_rate: 0.81
|
||||
modelled_saving_nok: 445500
|
||||
expected_actual_saving_nok: 360855
|
||||
gap_source: hours-of-use-overestimation
|
||||
context_key: "veglys; HOU-kilde=V124-tabellverdi; maaling=fravaerende"
|
||||
provenance: "frø — AI-forfattet. Realiseringsgraden er LÅNT fra belysnings-programlitteratur (National Grid SBS 2010: 81,1 %; Efficiency Maine 2021: 3 053 metrede mot 3 772 antatte timer = 0,809). Det finnes INGEN norsk ex-post-måling for veglys. Erstattes av ekte HITL i produksjon."
|
||||
tags: [verdict, realization-rate, ExpeL-seed, HITL, veglys, laant-rate]
|
||||
timestamp: 2026-08-09
|
||||
---
|
||||
|
||||
# Ekspert-dom (frø): LED-utskifting veglys
|
||||
|
||||
> **Dette er et frø**, ikke en ekte dom. I simulering gir en ekspert-persona slike dommer;
|
||||
> i produksjon gir et menneske dem via samme mappe-grensesnitt. Frøet er forankret i
|
||||
> verifisert litteratur ([kilder-veglys-realisering.md](kilder-veglys-realisering.md)), ikke
|
||||
> oppdiktet — men **raten er lånt, ikke norsk**, og det står i `provenance`.
|
||||
|
||||
## Dommen
|
||||
|
||||
**Beslutning:** godkjent — med realiseringskorreksjon.
|
||||
|
||||
Den modellerte besparelsen (**445 500 NOK/år**) er teknisk korrekt fra parameterne, og
|
||||
validatoren bekrefter at den ligger godt innenfor feasibelt område. Men parameteren
|
||||
besparelsen henger på — brenntimer — er et **nasjonalt tabellanslag**, og anlegget har ingen
|
||||
måler som kan avsløre at anslaget bommer. Forventet faktisk besparelse settes til
|
||||
**≈ 360 855 NOK/år** (81 % av modellert).
|
||||
|
||||
## Begrunnelse (det validatoren ikke kan regne)
|
||||
|
||||
### Hovedmekanismen: brenntimene er stipulert, ikke målt
|
||||
|
||||
Håndbok V124s 4 000–4 100 t/år gjelder «eldre vegbelysning» som kategori. Det er ikke en
|
||||
målt kurve for dette anlegget, og **ingen kilde gir en skumringsstyrt norsk
|
||||
brenntimekurve**. Metoden ([metode-ipmvp-a.md](metode-ipmvp-a.md)) er Option A nettopp fordi
|
||||
måling er stengt — og Option A er den opsjonen som *tillater* å estimere denne parameteren.
|
||||
|
||||
Erfaringen fra belysningsprogrammer med samme lysligning og samme stipulerte parameter er
|
||||
entydig i retning: Efficiency Maine metret **3 053 t/år** der programmet antok **3 772**
|
||||
(forholdet 0,809), og National Grid kom uavhengig til en operational adjustment på **81,1 %**
|
||||
gjennom samme mekanisme. **0,81 er dette lånet, ikke en norsk måling.**
|
||||
|
||||
### Sekundære mekanismer, samme retning
|
||||
|
||||
- **In-service rate < 1.** Ikke alle 2 500 punktene er nødvendigvis montert og i drift ved
|
||||
evaluering. Et veglysanlegg spredt over vegnettet har lengre haler enn et bygg.
|
||||
- **Persistens.** Armaturer som feiler, blir stående mørke til neste vedlikeholdsrunde. Et
|
||||
mørkt punkt sparer riktignok energi, men leverer ikke tiltaket — og telles typisk ikke som
|
||||
besparelse i en evaluering.
|
||||
|
||||
### Motmekanismen — og hvorfor den IKKE er trukket fra
|
||||
|
||||
Én dokumentert mekanisme peker **motsatt vei**: en armatur merket 100 W er målt til å trekke
|
||||
**120 W** (MDPI). Er den faktiske baseline-effekten høyere enn merkeeffekten modellen regner
|
||||
med, er den faktiske besparelsen **større** enn modellert — det ville løftet
|
||||
realiseringsgraden.
|
||||
|
||||
Den er likevel ikke netto-regnet inn, av én grunn: **målingen finnes bare for den gamle
|
||||
armaturen.** Om LED-siden har et tilsvarende påslag — og hvor stort — sier ingen kilde i
|
||||
materialet. Å anta at LED treffer merkeeffekten eksakt, mens HPS bommer med 20 %, ville vært
|
||||
en gratis oppjustering av besparelsen bygget på fravær av data.
|
||||
|
||||
**Derfor er 0,81 en NEDRE grense, og den er merket slik.** En ekte ekspert med målt
|
||||
LED-effekt for dette anlegget ville sannsynligvis satt raten høyere.
|
||||
|
||||
### Hvorfor dette ikke kan regnes fra parameterne
|
||||
|
||||
Du kan **ikke** regne deg til RR = 0,81 fra `{2 500, 114 W, 70 W, 4 050 t, 1,00 NOK/kWh}`.
|
||||
Skjevheten er epistemikk parameterne ikke bærer — den finnes bare i akkumulert
|
||||
drifts-erfaring, og i dette domenet finnes den ikke engang i norske måledata. Det er
|
||||
nøyaktig lærings-overflaten bundelen er bygget for.
|
||||
|
||||
## Lærings-signalet (ExpeL)
|
||||
|
||||
Korreksjonen er **kontekstbetinget**:
|
||||
`context_key = "veglys; HOU-kilde=V124-tabellverdi; maaling=fravaerende"`.
|
||||
|
||||
Neste kjøring, gitt en lignende hypotese i samme kontekst, skal hente denne dommen og justere
|
||||
den modellerte ex-ante-besparelsen mot forventet ex-post (≈ 0,81×) — uten å vente på 12
|
||||
måneders måling som uansett ikke kommer, fordi måleren ikke finnes.
|
||||
|
||||
`gap_source` er bevisst satt til **`hours-of-use-overestimation`**, samme nøkkel som
|
||||
kontorbygg-frøet bruker. Domenene er ulike, men mekanismen er den samme, og en lærings-sløyfa
|
||||
som ikke ser den koblingen lærer to ganger det den kunne lært én gang.
|
||||
|
||||
## Om tiltak 2 (adaptiv styring)
|
||||
|
||||
Denne dommen gjelder **kun** LED-utskiftingen (`LED-VEGLYS-01`). Styringstiltaket
|
||||
([tiltak-adaptiv-styring.md](tiltak-adaptiv-styring.md)) er ikke dømt her, og bør ikke arve
|
||||
raten: dets modellerte besparelse er en regelverksmargin uten kostnadsside, og
|
||||
risikoprofilen er en annen — en styring som overstyres av drift leverer null, ikke 81 %.
|
||||
|
|
@ -31,7 +31,8 @@ spec, the golden suite, or agent behaviour.
|
|||
connector) does not require any change to this spec, and NOT implementing it does not break
|
||||
conformance.
|
||||
- **Honesty rule (unwaivable, method spec §1):** a machine-generated bundle is labelled as
|
||||
such (`generated: true` plus a manifest reference, §7) everywhere it is presented.
|
||||
such (`generated.by` naming the ingest actor, plus a manifest reference, §7) everywhere it is
|
||||
presented.
|
||||
- **Boundary:** the deploying organisation owns processing purposes and impact assessments;
|
||||
ingest provides only the technical prerequisites (local-only default, provenance, no silent
|
||||
egress).
|
||||
|
|
@ -67,9 +68,10 @@ approved knowledge into. Two rules keep ingest and the learning loop apart:
|
|||
self-contamination the gate exists to prevent. This MUST be enforced fail-fast at manifest
|
||||
validation (before any source call) and proven by a load-bearing test (§11).
|
||||
- **Ingest owns only its own files.** Re-materialization replaces EXACTLY the files carrying
|
||||
the ingest stamp (`generated: true` plus an `ingest_manifest` reference, §7) and MUST NOT
|
||||
touch curated or promoted files. If a generated filename collides with an existing file that
|
||||
does NOT carry the stamp, materialization MUST fail — never overwrite curated content.
|
||||
the ingest stamp (`generated.by` equal to the ingest actor plus an `ingest_manifest`
|
||||
reference, §7) and MUST NOT touch curated or promoted files. If a generated filename
|
||||
collides with an existing file that does NOT carry the stamp, materialization MUST fail —
|
||||
never overwrite curated content.
|
||||
Index updating is idempotent and preserves curated links (§6). The stamp is unforgeable
|
||||
against **accident**, not against **will**: an operator who hand-copies a generated file —
|
||||
stamp and all — into curated content makes it indistinguishable from ingest-owned content,
|
||||
|
|
@ -79,10 +81,11 @@ approved knowledge into. Two rules keep ingest and the learning loop apart:
|
|||
- **No other writer may forge the stamp.** The stamp is the sole mark distinguishing
|
||||
ingest-owned files from curated ones, so any authoring primitive that materializes a concept
|
||||
file from **caller-supplied** frontmatter MUST reject a frontmatter carrying the *complete*
|
||||
ownership stamp — `generated: true` together with an `ingest_manifest` reference — while
|
||||
permitting either field alone (curated content may legitimately carry a single provenance
|
||||
field). The check is on the complete stamp, never on the individual field names, so a
|
||||
legitimate verbatim round-trip is preserved; it is a **validation, never a repair**.
|
||||
ownership stamp — `generated.by` equal to the ingest actor together with an `ingest_manifest`
|
||||
reference — while permitting either field alone (curated content may legitimately carry a
|
||||
single provenance field). The check is on the complete stamp, never on the individual field
|
||||
names, so a legitimate verbatim round-trip is preserved; it is a **validation, never a
|
||||
repair**.
|
||||
|
||||
## 4. The ingest manifest (the contract)
|
||||
|
||||
|
|
@ -211,7 +214,7 @@ that are never mixed — the same discipline as the two falsifiers.
|
|||
| `source_query` | The query that fetched the content (whitespace-collapsed, §5). |
|
||||
| `ingested_at` | The explicit timestamp argument, verbatim (§5). |
|
||||
| `ingest_manifest` | The manifest reference `{stem}@{hash16}` (§5). |
|
||||
| `generated` | Literally `true` — the machine-generated marker (§1 honesty rule). |
|
||||
| `generated` | The inline mapping `{ by: process:okf-ingest, at: <ingested_at> }`. `by` is the fixed ingest actor this spec defines — a `process:` actor, never a producer's name (the preamble rule: this layer is implementable **from this spec alone**, and the prose never names a concrete toolkit or vendor stack); it is what marks the file machine-generated (§1 honesty rule), since the key's mere presence does not (curated content may carry a `human:` actor). `at` repeats the `ingested_at` value verbatim. Quoting is NOT normative: frontmatter is parsed line-oriented (method spec §3), so a quote character would be part of the value. |
|
||||
|
||||
- OKF consumers preserve unknown frontmatter fields, so this layer rides through navigation
|
||||
and context rendering unchanged.
|
||||
|
|
@ -272,7 +275,7 @@ spec §11 regime):
|
|||
| Seam | The test MUST fail when… |
|
||||
|---|---|
|
||||
| Provenance stamping | a generated file no longer carries the §7 layer |
|
||||
| Stamp integrity (curated writers) | a caller-supplied frontmatter carrying the complete ownership stamp (`generated: true` with `ingest_manifest`) stops being rejected by the verbatim authoring path (§3) |
|
||||
| Stamp integrity (curated writers) | a caller-supplied frontmatter carrying the complete ownership stamp (`generated.by` equal to the ingest actor, with `ingest_manifest`) stops being rejected by the verbatim authoring path (§3) |
|
||||
| Navigability | the generated bundle stops being consumable by the UNCHANGED bundle-navigation code, index links included |
|
||||
| Verdict reservation | a manifest mapping to `type: verdict` (or the reserved filename namespace) stops being rejected |
|
||||
| Title link-safety | a `title` containing `[` or `]` stops being rejected fail-fast at manifest load (§4) |
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue