campaign (druh scénáře)
Druh scénáře enginu v0.40.0, rodina Kampaně. Pouze poradní charakter: výstup analýzy z výzkumného a inženýrského nástroje; nejde o typově schválené navigační zařízení ani o službu z oblasti bezpečnosti života. Každé označení zde pochází z enginu nebo z verifikační matice; druh je MODELLED, pokud matice neuvádí jinak (jak se označení získává: oddíl Evidence v README).
Co dělá#
Campaign: existující druhy scénářů složené do jednoho běhu, přičemž každé číslo je načteno ze skutečného běhu pojmenovaného druhu. Čtyři oddíly v libovolné kombinaci. FÁZE: řetězená mise na jedné sdílené časové ose -- každá fáze spouští jeden nebo více scénářů (například rušení, poté spoofing, poté hodiny v holdoveru s inerciálním navigačním systémem, který letí vedle nich, poté alarm integrity, poté zotavení), jejich výstupy se načítají do pojmenovaných kanálů (časová chyba hodin proti jejich ochranné mezi, poměr nosné k hustotě šumu proti prahu sledování, ochranná úroveň proti mezi výstrahy, chyba polohy, sledované družice, příznaky alarmu) předvolbou pro daný druh nebo explicitními cestami k výsledkům a převzorkují se na společnou mřížku podržením nultého řádu, s hranicemi fází a událostmi; stav se předává pomocí carry (kanál pokračuje od koncové hodnoty předchozí fáze), handoff (číslo z předchozí fáze zapsané do scénáře této fáze) a end_at (fáze končí v čase, který vypočetl nějaký běh, například v čase detekce monitoru spoofingu). SWEEP: mřížka přes jeden až tři klíče scénáře zapsané s tečkami, libovolného druhu (celočíselný segment indexuje pole tabulek, jako v system.2.sisre_m), s metrikami načítanými podle cesty k výsledku a, pokud je počet běhů větší než jedna, s Monte Carlo souborem se seedem v každém uzlu. MONTE_CARLO: realizace k běží se seedem base_seed + k; každá metrika uvádí průměr, směrodatnou odchylku, percentily 5., 50. a 95. podle nejbližší pořadové hodnoty a bootstrapový 95% interval spolehlivosti průměru s pevným seedem. COMPOSE: několik scénářů se sdílenými hodnotami (výkon a poloha jednoho rušiče zapsané do námořního a silničního přijímače) s kombinovaným souhrnem nejlepšího a nejhoršího případu. Výsledek nese hash kampaně, souhrn přes všechny výsledky členů a záznam jednotek pro každé emitované číslo; exporty pro interoperabilitu zapisují každý členský scénář, který má geometrii, jako vlastní sadu souborů. Identity skládání jsou testovány: jednofázová kampaň reprodukuje samostatný běh bit po bitu, soubor s pevným seedem je bajtově stabilní a u hodin se šumem bílé frekvence leží průměr souboru uvnitř uvedeného intervalu a rozptyl odpovídá sqrt(q_wf * tau). MODELLED: aditivní carry a podržení nultého řádu jsou modelové volby a každá fáze nese označení druhu, který ji spustil.
Jeden běh scenarios/campaign-sweep-jammer-power.toml se shrnuje takto: campaign 46aa07cb58fb | Jammer power sweep: availability and J/S against transmit power | sweep of jamming: 13 uzlů přes [jammer_power] | 13 běhů členů (MODELLED)
Vstupy#
Ze schématu (kshana kinds --json):
- Povinná pole: žádná
- Volitelná pole:
title,seed,timeline,phases,sweep,monte_carlo,compose
Příklad scenarios/campaign-sweep-jammer-power.toml mimo jiné nastavuje:
| Pole | Hodnota | Jednotka |
|---|---|---|
kind |
campaign | text |
seed |
20260928 | 1 |
sweep.axes[0].key |
jammer.power_dbw | text |
sweep.axes[0].name |
jammer_power | text |
sweep.axes[0].start |
-50 | neuvedeno |
sweep.axes[0].steps |
13 | neuvedeno |
sweep.axes[0].stop |
10 | neuvedeno |
sweep.axes[0].unit |
dBW | text |
sweep.metrics[0].name |
dostupnost | text |
sweep.metrics[0].path |
fom.availability_under_jamming | text |
sweep.metrics[1].name |
mean_js | text |
sweep.metrics[1].path |
fom.mean_js_db | text |
Spusťte jej#
kshana scenarios/campaign-sweep-jammer-power.toml
Tento druh používá 22 přibalených scénářů; ostatní jsou v scenarios/.
Co poskytuje#
Skalární výsledky tohoto běhu s jednotkami, které engine uvádí:
| Výsledek | Hodnota | Jednotka |
|---|---|---|
evidence.id_rule |
stabilní id řádku matice (ID | text |
evidence.matrix |
docs/VERIFICATION-MATRIX.md | text |
evidence.tier |
PARTNER | text |
reproducibility.campaign_hash |
46aa07cb58fbfbd3784c2e1ef8d6070508ad5f5c | text |
reproducibility.run_digest |
a082a9466bcd5c8788a2a46373a47e418db1393c | text |
reproducibility.runs_total |
13 | počet |
seed |
20260928 | 1 |
sweep.axes.jammer_power.key |
jammer.power_dbw | text |
sweep.axes.jammer_power.scale |
lin | text |
sweep.axes.jammer_power.unit |
dBW | text |
Označení výsledku (z enginu): MODELLED skládání existujících druhů scénářů. Každé číslo je načteno ze skutečného běhu pojmenovaného druhu; řetězení (aditivní carry kanálu přes hranici fáze, podržení nultého řádu na mřížku časové osy, fáze ukončená ve vypočteném čase) je modelová volba a každá fáze nese označ
Důkazy#
MODELLED: řádky verifikační matice, které tento druh jmenují.
- MODELLED iq::campaign::detect a běhoun kampaní: volitelná tabulka [monitors] spouští monitory IQ v každé buňce v jediném průchodu běhouna. Testy: iq_campaign.rs.
- MODELLED iq::campaign::detect (windows, roc) a iq::campaign::report::rocs: každá buňka kampaně s monitory uchovává pro každý druh alarmu a kanál maximum vlastní testové statistiky monitoru přes každé uvedené okno události (kladné) a přes t
- MODELLED iq::labfit (campaign, cn0, iqfit, iqreport) a
[input] campaignnakshana iq labfit, Pythonkshana.iq_labfita nástroj labfit v MCP (složky kampaní jen uvnitř jeho pracovního adresáře): čte výstupní složkukshana iq campaignpodle jejích Testy: iq_labfit_followup.rs. - MODELLED Fáze druhu
campaign: každá fáze spouští přes run_toml jeden nebo více scénářů existujících druhů, jejich výstupy načítá do pojmenovaných kanálů (časová chyba hodin a ochranná mez, střední efektivní poměr nosné k hustotě šumu a práh sledování, v Testy: campaign_composition_reference.rs. - a 4 další v matici.
Řádky, které běh sám procvičil, s orákulem, které matice každému dává (veřejné zdroje jsou tam uvedeny):
- MODELLED Rozpočet spoje J/S z geometrie, C/N₀ odolné proti rušení, ztráta zachycení signálu na jednotlivé družice. Oracle (InternalConsistency): Rovnice rozpočtu spoje pro C/N₀ odolné proti rušení je křížově zkontrolována nezávislým odvozením v numpy (sdílí stejný uzavřený tvar → InternalConsistency) a charakterizací zhoršení C/N₀ z reálného JammerTest-2024. 0,30 kolo 2, zablokováno (zůstává MODELLED): naměřený pokles C/N0 v JammerTest 2024 proti predikci rozpočtu spoje (předregistrováno 6a66994b, do 3 dB) nebyl proveden, protože poloha a zaměření antény F8.1 při
- MODELLED Deterministické, hashované po scénářích, brány SBOM a zlatých výsledků mezi platformami. Orákulum (ExternalDataset): shoda SBOM s oficiálním schématem JSON CycloneDX 1,5 (+ platné identifikátory SPDX) — externí publikovaný standard, nula chyb validace přes celý graf závislostí; část o determinismu FoM / bajtové reprodukovatelnosti zůstává zafixovanou kontrolou vlastní konzistence, takže řádek zůstává MODELLED
- PARTNER Neposkytuje se: Kshana modeluje výkon signálu, nikoli nákladový hardware ani antény. Oracle (NoneKind): žádné: disciplína ve vlastnictví partnera, záměrně bez modulu a bez testu
- MODELLED Průchod druhu
campaign(jeden až tři klíče zapsané s tečkami libovolného druhu, na hodnotách os obecného průchodu, volitelně se souborem v každém uzlu) a oddíl monte_carlo. Oracle (InternalConsistency): Uzavřený tvar náhodné procházky fáze při šumu bílé frekvence, rozptyl q_wf tau (NIST Technical Note 1337), pro statistický aparát a bajtová shoda se samostatnými běhy pro seedování. Kontroluje aritmetiku souboru na vlastním modelu hodin enginu, nikoli vnější datovou sadu
Omezení#
Co zpráva samotného běhu uvádí jako nemodelované nebo neověřené:
- MODELLED skládání existujících druhů scénářů. Každé číslo je načteno ze skutečného běhu pojmenovaného druhu; řetězení (aditivní carry kanálu přes hranici fáze, podržení nultého řádu na mřížku časové osy, fáze ukončená ve vypočteném čase) je modelová volba a každá fáze nese označení druhu, který ji vytvořil. (výsledek
label) - MODELLED: aditivní carry a podržení nultého řádu jsou modelové volby a každá fáze nese označení druhu, který ji spustil. (katalog druhů (
kshana kinds --json)) - MODELLED: stejně jako druh
jamming. (komentář v souboru scénáře, řádek 14) - Odolnost proti rušení při odepření GNSS je MODELLED, nikoli ověřena proti nezávislé vnější referenci: kontroluje se proti vlastní uzavřené / analytické identitě, což zachytí chyby přepisu a koeficientů, ale není to vnější orákulum. (verifikační matice (docs/MODELLED-RATIONALE.md))
- Reprodukovatelnost a zajištění softwaru je MODELLED, nikoli ověřeno nezávislou referencí: dílčí tvrzení je externě zkontrolováno, ale celá schopnost skládá modelované části, takže schopnost zůstává vypočtená z modelu. (verifikační matice (docs/MODELLED-RATIONALE.md))
- Průchody parametrů a Monte Carlo soubory se seedem přes libovolný druh scénáře jsou MODELLED, nikoli ověřeny proti nezávislé vnější referenci: kontrolují se proti vlastní uzavřené / analytické identitě, což zachytí chyby přepisu a koeficientů, ale není to vnější orákulum. (verifikační matice (docs/MODELLED-RATIONALE.md))
Viz také#
- Stránka rodiny: Kampaně
- Všechny druhy: KINDS.md
- Tematická stránka: LEO-PNT.md
- Tematická stránka: RESILIENCE-CROSSWALK.md