///|
pub(all) struct LunarEphemerisWindow {
window_id : String
source_id : String
output_path : String
output_sha256 : String
output_bytes : Int64
coverage : LunarCoverage
time_basis : String
review_status : LunarReviewStatus
notes : Array[String]
} derive(Debug, Eq, ToJson, FromJson)
///|
fn observer_timeline_path() -> String {
"sources/lunar_ephemeris/first_trusted_square_observer_timeline.json"
}
///|
fn observer_timeline_sha256() -> String {
"1530b15db38912e266461ff7e1f64197521c4002d15358052eeb48b2d960950a"
}
///|
fn observer_timeline_bytes() -> Int64 {
26853L
}
///|
fn mission_window_search_path() -> String {
"sources/lunar_ephemeris/first_trusted_square_window_search.json"
}
///|
fn mission_window_search_sha256() -> String {
"b3091eb70a50a0750093d6c58e70f84b0adf149f2c6b22da798e0dabe95c42ab"
}
///|
fn mission_window_search_bytes() -> Int64 {
4741L
}
///|
pub fn first_trusted_square_ephemeris_window() -> LunarEphemerisWindow {
{
window_id: "lunar-ephemeris-first-trusted-square-power-window-v1",
source_id: first_trusted_square_ephemeris_source_candidate().source_id,
output_path: "data/sources/lunar_ephemeris/first_trusted_square_power_window.json",
output_sha256: "724d317a10196f52113bacc0140aef3e3f9660b32fddaa130da1ff7fb69a6fd2",
output_bytes: 3883L,
coverage: lunar_coverage(-89.90, -89.86, 0.10, 0.14, -89.88, 0.12, 20.0),
time_basis: "Pinned local Sun/Moon geometry fixture",
review_status: NeedsHumanReview,
notes: [
"This evidence supports the power-window gate and remains review-blocked for mission clearance.",
"The fixture is local JSON generated from pinned ephemeris and orientation inputs.",
],
}
}
///|
pub fn first_trusted_square_ephemeris_dataset() -> @data_core.DatasetManifest {
let source = first_trusted_square_ephemeris_source()
let window = first_trusted_square_ephemeris_window()
@data_core.dataset_manifest(
"naif-lunar-first-trusted-square-power-window-v1",
"lunar-ephemeris-power-window",
@data_core.DataStatus::Curated,
0L,
source_ids=[source.source_id],
data_refs=[
@data_core.data_ref(
"first-trusted-square-power-window-json",
"lunar-ephemeris-json",
@data_core.data_uri(
"sources/lunar_ephemeris/first_trusted_square_power_window.json",
),
content_type="application/json",
byte_count=window.output_bytes,
checksum=@data_core.declared_checksum(
@data_core.ChecksumKind::Sha256,
window.output_sha256,
),
),
@data_core.data_ref(
"first-trusted-square-observer-timeline-json",
"lunar-observer-geometry-json",
@data_core.data_uri(observer_timeline_path()),
content_type="application/json",
byte_count=observer_timeline_bytes(),
checksum=@data_core.declared_checksum(
@data_core.ChecksumKind::Sha256,
observer_timeline_sha256(),
),
),
@data_core.data_ref(
"first-trusted-square-mission-window-search-json",
"lunar-mission-window-search-json",
@data_core.data_uri(mission_window_search_path()),
content_type="application/json",
byte_count=mission_window_search_bytes(),
checksum=@data_core.declared_checksum(
@data_core.ChecksumKind::Sha256,
mission_window_search_sha256(),
),
),
],
summary="Curated local Sun/Moon geometry, power-window evidence, and route-window search for the first trusted square.",
)
}
///|
pub fn first_trusted_square_lunar_datasets() -> Array[
@data_core.DatasetManifest,
] {
[
first_trusted_square_lola_dataset(),
first_trusted_square_ephemeris_dataset(),
]
}