gea-program 0.62.0__tar.gz → 0.64.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {gea_program-0.62.0/gea_program.egg-info → gea_program-0.64.0}/PKG-INFO +15 -1
- {gea_program-0.62.0 → gea_program-0.64.0}/README.md +14 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/__init__.py +1 -1
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/__main__.py +44 -3
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/acceptance_tests.py +557 -7
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/casing_design.py +344 -63
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/declarations.py +65 -51
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/dossier.py +165 -4
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/dossier_verify.py +41 -7
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/IT_SECURITY.md +1 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/casing.md +3 -1
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/declare.md +1 -1
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/dossier.md +3 -1
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/hydraulics.md +1 -1
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/rig-time.md +2 -2
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/helplib.py +1 -1
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/hydraulics.py +28 -4
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/rig_state.py +12 -32
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/service.py +17 -0
- gea_program-0.64.0/gea/timestamp.py +568 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/web/app.html +26 -10
- {gea_program-0.62.0 → gea_program-0.64.0/gea_program.egg-info}/PKG-INFO +15 -1
- {gea_program-0.62.0 → gea_program-0.64.0}/gea_program.egg-info/SOURCES.txt +1 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/pyproject.toml +1 -1
- {gea_program-0.62.0 → gea_program-0.64.0}/LICENSE +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/BENCH_TEST_PROTOCOL.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/accuracy_statement.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/alarm_engine.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/alerts.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/backup.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/bench.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/blind_harness.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/acex_lomonosov_age_depth_model.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/acex_lomonosov_age_depth_model.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/agassiz77_canada_temperature.csv +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/agassiz77_canada_temperature.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/barbados_110_consolidation.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/barbados_110_consolidation.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/bengal_u1452_grain_size.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/bengal_u1452_grain_size.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/blake_164_methane_isotopes.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/blake_164_methane_isotopes.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/chicxulub_m0077a_pwave_velocity.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/chicxulub_m0077a_pwave_velocity.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/collingwood_1_28_ks_complete.las +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/collingwood_1_28_ks_complete.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/costa_rica_odp_friction_envelope.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/costa_rica_odp_friction_envelope.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/dead_sea_5017_debrite_xrf_ms.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/dead_sea_5017_debrite_xrf_ms.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/dsdp_504b_physical_properties.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/dsdp_504b_physical_properties.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/dsdp_504b_sound_velocity.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/dsdp_504b_sound_velocity.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/elgygytgyn_5011_turbidites.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/elgygytgyn_5011_turbidites.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/epica_domec_co2_800kyr.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/epica_domec_co2_800kyr.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/fram_909_organic_petrography.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/fram_909_organic_petrography.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/gbr_325_coral_uth_ages.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/gbr_325_coral_uth_ages.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/gisp2_greenland_temperature.csv +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/gisp2_greenland_temperature.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/gom_308_t2p_insitu.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/gom_308_t2p_insitu.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/guaymas_385_dom_d13c.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/guaymas_385_dom_d13c.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/hikurangi_u1520_friction_insitu.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/hikurangi_u1520_friction_insitu.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/hydrate_ridge_204_ncr_hydrate.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/hydrate_ridge_204_ncr_hydrate.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/iodp_u1324_pore_pressure.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/iodp_u1324_pore_pressure.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/jfast_c0019_slow_slip_events.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/jfast_c0019_slow_slip_events.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/kennetcook_2_p129_excerpt.las +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/kennetcook_2_p129_excerpt.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_bhgm_density.dat +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_bhgm_density.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_complog_6020_excerpt.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_complog_6020_excerpt.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_hlog246_temperature.dat +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_hlog246_temperature.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_rockmech_compress.dat +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_rockmech_compress.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_tvd_0_9080_excerpt.dat +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_hb_tvd_0_9080_excerpt.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_vb_rockmech_compress.dat +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_vb_rockmech_compress.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_vb_vlog251_temperature.dat +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ktb_vb_vlog251_temperature.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/l06_06_nl_survey.csv +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/l06_06_nl_survey.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/l07_01_nl_excerpt.las +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/l07_01_nl_excerpt.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/mariana_1200_serpentinite_geochem.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/mariana_1200_serpentinite_geochem.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/med_160_sapropels.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/med_160_sapropels.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/nankai_megasplay_shear_strength.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/nankai_megasplay_shear_strength.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_1027b_thermal_conductivity.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_1027b_thermal_conductivity.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_1027c_cork_temperature.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_1027c_cork_temperature.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_1165b_thermal_conductivity.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_1165b_thermal_conductivity.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_1274a_mantle_peridotite_mad.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_1274a_mantle_peridotite_mad.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_504b_dike_elastic_moduli.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_504b_dike_elastic_moduli.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_504b_leg137_borehole_fluids.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_504b_leg137_borehole_fluids.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_735b_gabbro_elastic_moduli.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/odp_735b_gabbro_elastic_moduli.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/peru_201_sulfate_reduction.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/peru_201_sulfate_reduction.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/scorpio_e1_sa_excerpt.las +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/scorpio_e1_sa_excerpt.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/sumatra_362_cohesion.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/sumatra_362_cohesion.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/university_6_17_no1_tx_excerpt.las +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/university_6_17_no1_tx_excerpt.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ursa_308_xrd_mineralogy.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/ursa_308_xrd_mineralogy.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/volve_15_9_19_sr_excerpt.las +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/volve_15_9_19_sr_excerpt.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/volve_15_9_19a_core_excerpt.csv +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/volve_15_9_19a_core_excerpt.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/volve_f12_f14_production_excerpt.csv +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/volve_f12_f14_production_excerpt.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/walvis_208_petm_carbonate.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/walvis_208_petm_carbonate.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/woodlark_1109_rock_eval.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog/woodlark_1109_rock_eval.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog_map.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/catalog_register.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/certificates.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/cli.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/client_reports.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/collision.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/config_versioning.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/conformance.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/control_room.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/correlation.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/dashboard.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/decline.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/deviation.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/dlis.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/dnp3.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/doctor.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/downhole_engine.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/drift_monitor.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/drill_string.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/earth_model.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/economics.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/ed25519.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/edr.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/elevation.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/etp.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/etp12_schemas.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/example_register_map.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/fat_sat.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/files.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/fixtures/README.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/fixtures/comcat_delaware_basin_2026-09.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/fixtures/comcat_mahoning_1990-2026.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/fixtures/comcat_youngstown_2011-2012.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/fixtures/ne_110m_coastline.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/follower.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/forward_model.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/frac_hits.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/friction_priors.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/gamma.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/gauge_aging.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/gauge_specs.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/geodesy.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/geomag.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/gravity_reference.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/hartip.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/TESTER_GUIDE.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/alarms.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/alerts.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/audit-update.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/backup.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/catalog.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/charts.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/collision.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/company-sign-in.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/conformance.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/control-room.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/data-in.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/decline.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/dlis.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/doctor.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/drift.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/drillstring.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/economics.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/edr.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/etp.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/field-ports.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/files.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/frac-hits.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/historian.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/https.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/instruments.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/interval.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/invoice-check.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/map.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/month-end.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/notifications.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/opseis.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/osdu.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/pad-summary.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/patches.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/penetrator.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/plan.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/pore-pressure.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/ppdm.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/quakeml.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/quality.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/report-history.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/seedlink.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/seismic.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/setup.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/simulation.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/site.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/sites.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/slip.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/soak.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/sra.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/start.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/structure.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/tools.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/torque-drag.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/transients.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/upkeep.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/vibration.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/well-report.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/well-tests.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/help/well3d.md +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/housekeeping.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/interval.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/inverse_engine.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/invoice_check.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/jobs.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/live_ports.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/loadtest.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/matplotlib_demo.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/modbus.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/modbus_rtu.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/model_card.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/month_end.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/mqtt_port.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/notify.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/oidc.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/oidc_mock.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/op_seismicity.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/opcua_port.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/operator_app.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/osdu.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/pad_summary.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/patches.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/pdf_report.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/penetrator.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/permits.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/piwebapi.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/pore_pressure.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/ports.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/ppdm.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/profile_catalog.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/project.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/qt6_downhole_app.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/quakeml.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reconciler.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/IU_ANMO_10_BHZ_response.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/IU_ANMO_10_BHZ_response.xml +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/WMM2025.COF +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/eia_henry_hub_daily.csv.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/eia_prices.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/eia_wti_daily.csv.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/iscwsa_rev4_example.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/iscwsa_rev5_example.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/l0701_sonic_gr.las.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/l0701_sonic_gr.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/libmseed_steim.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/libmseed_steim1_4096.mseed +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/libmseed_steim2_4096.mseed +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/libmseed_steim2_512.mseed +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/mahoning_example.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/mud_motor_specs.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/owsg_tool_models.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/penetrator_ratings.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/seismicity_protocols.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/tool_sources.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/us_outline.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/us_outline.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_3d.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_f4_interpretation.las.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_f4_logs.provenance.json +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_f4_lwd.las.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_surfaces.json.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_traj_F-10.xml.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_traj_F-4.xml.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_traj_F-5_12.25in.xml.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_traj_F-5_17.5in.xml.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_traj_F-5_36in.xml.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_traj_F-5_8.5in.xml.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/reference/volve_well_picks.csv.gz +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/report_history.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/rock_inventory.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/sample_record.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/sample_well_profile.csv +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/sbom.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seedlink.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/segy.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_array.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_assoc.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_detect.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_film.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_harmonic.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_qc.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_response.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_signature.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_track.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_uncertainty.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_unlisted.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/seismic_watch.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/sensor_swap.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/series_cache.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/service_life.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/setup_checklist.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/shapefile.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/shell.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/shut_in.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/simulation.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/site_map.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/sla_report.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/slip.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/soak.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/sra.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/store_forward.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/strata_join.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/structure.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/supervisor.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/survey_cmd.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/survey_view.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/telemetry.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/tls.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/tool_catalog.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/tool_library.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/tool_taxonomy.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/torque_drag.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/transient.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/vibration.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/well3d.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/well_assembler.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/well_report.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/well_test_validation.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/wellplan.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/wellpos.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/wits0.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/witsml.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/workspace.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea/xlsx_read.py +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea_program.egg-info/dependency_links.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea_program.egg-info/entry_points.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea_program.egg-info/requires.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/gea_program.egg-info/top_level.txt +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/setup.cfg +0 -0
- {gea_program-0.62.0 → gea_program-0.64.0}/tests/test_acceptance.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gea-program
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.64.0
|
|
4
4
|
Summary: GEA-Program: downhole gauge monitoring - canonical measurement records, quality rules, drift evaluation with a re-fit change log, well-test validation, alarm management, model cards, store-and-forward, monthly SLA measurement, FAT/SAT protocols and a dashboard, generated from live objects in the client's reporting outline.
|
|
5
5
|
Author: Daniel T. Murphy
|
|
6
6
|
License: MPL-2.0
|
|
@@ -683,8 +683,22 @@ catalogue well is added only from an entry that carries a downhole gauge
|
|
|
683
683
|
series, with a well inside it and its gauge depth; a live seismic station
|
|
684
684
|
whose feed has written nothing yet is listed as having no recording yet.
|
|
685
685
|
|
|
686
|
+
### Trusted timestamps
|
|
687
|
+
|
|
688
|
+
A signed dossier's time is the signing machine's clock. With a public
|
|
689
|
+
time-stamping service named (RFC 3161: DigiCert, Sectigo or the site's
|
|
690
|
+
own), each dossier also carries the authority's signed word that its
|
|
691
|
+
signature existed at a given time - only the signature's SHA-256 is
|
|
692
|
+
sent - and the dossier's own checker verifies it to a root the reader's
|
|
693
|
+
computer trusts. `gea dossier --workspace C:\site --timestamp-url
|
|
694
|
+
http://timestamp.digicert.com --timestamp on`; `gea help dossier`.
|
|
695
|
+
|
|
686
696
|
### Casing design and kick tolerance
|
|
687
697
|
|
|
698
|
+
A well's casing is declared once, as its casing program (the Casing &
|
|
699
|
+
kick tolerance tab, `gea casing`, or the declarations sheet's `[casing]`):
|
|
700
|
+
rig time, hydraulics and torque and drag read the same strings, and a
|
|
701
|
+
string needs only its size and shoe until it is to be checked.
|
|
688
702
|
Each casing string's burst, collapse and tension ratings by API TR 5C3,
|
|
689
703
|
from its size, weight and grade, against the loads the hole can put on it
|
|
690
704
|
- gas to the surface held by the shoe, an emptied string, the buoyed
|
|
@@ -644,8 +644,22 @@ catalogue well is added only from an entry that carries a downhole gauge
|
|
|
644
644
|
series, with a well inside it and its gauge depth; a live seismic station
|
|
645
645
|
whose feed has written nothing yet is listed as having no recording yet.
|
|
646
646
|
|
|
647
|
+
### Trusted timestamps
|
|
648
|
+
|
|
649
|
+
A signed dossier's time is the signing machine's clock. With a public
|
|
650
|
+
time-stamping service named (RFC 3161: DigiCert, Sectigo or the site's
|
|
651
|
+
own), each dossier also carries the authority's signed word that its
|
|
652
|
+
signature existed at a given time - only the signature's SHA-256 is
|
|
653
|
+
sent - and the dossier's own checker verifies it to a root the reader's
|
|
654
|
+
computer trusts. `gea dossier --workspace C:\site --timestamp-url
|
|
655
|
+
http://timestamp.digicert.com --timestamp on`; `gea help dossier`.
|
|
656
|
+
|
|
647
657
|
### Casing design and kick tolerance
|
|
648
658
|
|
|
659
|
+
A well's casing is declared once, as its casing program (the Casing &
|
|
660
|
+
kick tolerance tab, `gea casing`, or the declarations sheet's `[casing]`):
|
|
661
|
+
rig time, hydraulics and torque and drag read the same strings, and a
|
|
662
|
+
string needs only its size and shoe until it is to be checked.
|
|
649
663
|
Each casing string's burst, collapse and tension ratings by API TR 5C3,
|
|
650
664
|
from its size, weight and grade, against the loads the hole can put on it
|
|
651
665
|
- gas to the surface held by the shoe, an emptied string, the buoyed
|
|
@@ -596,6 +596,12 @@ def main(argv=None) -> int:
|
|
|
596
596
|
p_dz.add_argument("--rotate-key", action="store_true", help="retire this site's signing key and start a new one, signed over by the old (give --reason)")
|
|
597
597
|
p_dz.add_argument("--reason", type=str, default="", help="with --rotate-key: why the key is retired")
|
|
598
598
|
p_dz.add_argument("--key-history", action="store_true", help="the site's keys, current and retired, and the rotations between them")
|
|
599
|
+
p_dz.add_argument("--timestamp-url", type=str, default=None, help="the RFC 3161 time-stamping service to use, e.g. http://timestamp.digicert.com ('none' to forget it)")
|
|
600
|
+
p_dz.add_argument("--timestamp", type=str, choices=["on", "off"], default=None, help="stamp every dossier as it is signed (on) or not (off)")
|
|
601
|
+
p_dz.add_argument("--timestamp-anchors", type=str, default=None, help="a PEM file with the service's root certificate, when this machine's store does not hold it ('none' to forget it)")
|
|
602
|
+
p_dz.add_argument("--timestamp-test", action="store_true", help="ask the service to stamp a random hash and check its reply (nothing is written)")
|
|
603
|
+
p_dz.add_argument("--stamp", type=str, default=None, help="stamp a dossier this site signed, by its id (gea dossier --list)")
|
|
604
|
+
p_dz.add_argument("--anchors", type=str, default="", help="with --verify: a PEM file of roots to trust for the timestamp, beside this machine's own")
|
|
599
605
|
p_dz.add_argument("--actor", type=str, default="cli")
|
|
600
606
|
p_dz.add_argument("--json", action="store_true")
|
|
601
607
|
|
|
@@ -2507,11 +2513,40 @@ def main(argv=None) -> int:
|
|
|
2507
2513
|
except WorkspaceError as e:
|
|
2508
2514
|
raise SystemExit(f"dossier: {e}")
|
|
2509
2515
|
if a.verify:
|
|
2510
|
-
|
|
2516
|
+
if a.anchors and ws is None:
|
|
2517
|
+
from . import dossier_verify as _DV, timestamp as _TSM
|
|
2518
|
+
with open(a.anchors, "rb") as fh_:
|
|
2519
|
+
r = _DV.check(a.verify, a.sources, _TSM.ts_system_anchors() + _TSM.ts_pem_certs(fh_.read()))
|
|
2520
|
+
else:
|
|
2521
|
+
r = _DZ.verify(a.verify, ws, a.sources)
|
|
2511
2522
|
print(_json.dumps(r, default=str) if a.json else _DZ.text(r))
|
|
2512
2523
|
return 0 if r["status"] == "VALID" else 1
|
|
2513
2524
|
if ws is None:
|
|
2514
2525
|
raise SystemExit("dossier: give --workspace (or --verify FILE)")
|
|
2526
|
+
if a.timestamp_url is not None or a.timestamp is not None or a.timestamp_anchors is not None:
|
|
2527
|
+
try:
|
|
2528
|
+
st_ = _DZ.set_timestamp(ws, a.actor, ("" if (a.timestamp_url or "").lower() == "none" else a.timestamp_url),
|
|
2529
|
+
None if a.timestamp is None else a.timestamp == "on",
|
|
2530
|
+
("" if (a.timestamp_anchors or "").lower() == "none" else a.timestamp_anchors))
|
|
2531
|
+
except ValueError as ex:
|
|
2532
|
+
raise SystemExit(f"dossier: {ex}")
|
|
2533
|
+
print(f"time-stamping service: {st_['url'] or 'none'}; every dossier stamped as it is signed: {'yes' if st_['enabled'] else 'no'}"
|
|
2534
|
+
+ (f"; extra trusted roots: {st_['anchors']}" if st_["anchors"] else ""))
|
|
2535
|
+
return 0
|
|
2536
|
+
if a.timestamp_test or a.stamp:
|
|
2537
|
+
from . import timestamp as _TSM
|
|
2538
|
+
try:
|
|
2539
|
+
if a.timestamp_test:
|
|
2540
|
+
t_ = _DZ.test_timestamp(ws)
|
|
2541
|
+
print(f"{t_['url']}: {t_['status']} - {t_['tsa']} stamped {t_['gen_time']}" + (f" (accuracy {t_['accuracy_s']:g} s)" if t_.get("accuracy_s") else ""))
|
|
2542
|
+
print(f" the chain: {t_['chain_detail']}")
|
|
2543
|
+
return 0 if t_["status"] in ("TRUSTED", "VERIFIED") else 1
|
|
2544
|
+
rec = _DZ.stamp(ws, a.actor, a.stamp)
|
|
2545
|
+
except (KeyError, ValueError, OSError) as ex:
|
|
2546
|
+
raise SystemExit(f"dossier: {ex.args[0] if ex.args else ex}")
|
|
2547
|
+
print(f"stamped {rec['dossier_id']}: {rec['status']} - {rec['tsa']} at {rec['gen_time']} (signed {rec['signed_utc']} by this machine's clock)")
|
|
2548
|
+
print(f" the chain: {rec['chain']}")
|
|
2549
|
+
return 0
|
|
2515
2550
|
if a.key:
|
|
2516
2551
|
k = _DZ.key_info(ws)
|
|
2517
2552
|
print(f"Ed25519 {k['fingerprint']} (public key {k['public_key']}, made {k['created_utc']})" if k else "no signing key yet: the first dossier makes one")
|
|
@@ -2534,8 +2569,11 @@ def main(argv=None) -> int:
|
|
|
2534
2569
|
print("no key history yet")
|
|
2535
2570
|
return 0
|
|
2536
2571
|
if a.list:
|
|
2572
|
+
st_ = _DZ.stamps(ws)
|
|
2537
2573
|
for e in reversed(_DZ.ledger(ws)):
|
|
2538
|
-
|
|
2574
|
+
t_ = st_.get(e["dossier_id"]) or {}
|
|
2575
|
+
print(f"{e['utc']} {e['dossier_id']} {e['display']:<24} {e['n_files']:>4} files {e['path']}"
|
|
2576
|
+
+ (f" [timestamp {t_['status']}" + (f" {t_['gen_time']}]" if t_.get("gen_time") else "]") if t_ else ""))
|
|
2539
2577
|
return 0
|
|
2540
2578
|
try:
|
|
2541
2579
|
e = _DZ.build(ws, a.actor, __version__, a.well, a.include_sources)
|
|
@@ -2544,6 +2582,9 @@ def main(argv=None) -> int:
|
|
|
2544
2582
|
print(f"signed {e['dossier_id']}: {e['display']}, {e['n_files']} file(s), {e['n_sources']} source record(s) {'embedded' if e['sources_embedded'] else 'by hash'}")
|
|
2545
2583
|
print(f" {os.path.join(ws.reports_dir, e['path'])}")
|
|
2546
2584
|
print(f" key fingerprint {e['fingerprint']}")
|
|
2585
|
+
t_ = e.get("timestamp")
|
|
2586
|
+
if t_:
|
|
2587
|
+
print(f" trusted timestamp: {t_['status']}" + (f" - {t_['tsa']} at {t_['gen_time']}" if t_.get("gen_time") else f" - {t_.get('reason', '')}"))
|
|
2547
2588
|
return 0
|
|
2548
2589
|
elif a.cmd == "collision":
|
|
2549
2590
|
import json as _json
|
|
@@ -2931,7 +2972,7 @@ def main(argv=None) -> int:
|
|
|
2931
2972
|
if not a.well:
|
|
2932
2973
|
raise ValueError("--casing needs --well")
|
|
2933
2974
|
c_ = _RS.set_casing(ws, a.actor, a.well, a.casing, a.shoe_md, a.source, a.set_time)
|
|
2934
|
-
print(f"casing {c_['size']} in, shoe at {c_['shoe_md_ft']:,.0f} ft MD ({c_['source']})")
|
|
2975
|
+
print(f"casing {c_['size']} in, shoe at {c_['shoe_md_ft']:,.0f} ft MD ({c_['source']}) - in the well's casing program (gea casing)")
|
|
2935
2976
|
return 0
|
|
2936
2977
|
if a.w2w_min is not None or a.trip_in is not None or a.trip_out is not None or a.block_weight is not None:
|
|
2937
2978
|
if a.block_weight is not None and not a.well:
|