Update AutoGrowth upload pipeline for high-frequency OD pre-aggregation and flexible calibration inputs - #48
Conversation
enryH
left a comment
There was a problem hiding this comment.
very good. step-for-step changes on spot.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 62e78ce9df
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ) | ||
| group_columns = ["timestamp_localtime", "pioreactor_unit"] | ||
| agg_map = { | ||
| col: (aggregation_method if col == "od_reading" else "first") |
There was a problem hiding this comment.
Recompute rounded timestamps after raw aggregation
When high-frequency PioReactor data does not start exactly on a 15-second boundary, timestamp_localtime is floored to the aggregation bin but the already-created timestamp_rounded column is kept as the first raw sample's rounded value. process_od_pioreactor later derives start_time, elapsed seconds, and the wide pivot from timestamp_rounded, so samples like 00:00:03/:08/:13 get aggregated into the 00:00:00 bin but can still be labeled 00:00:05, shifting the time axis and any metadata alignment. Please recompute or drop timestamp_rounded after aggregation, or aggregate before creating it.
Useful? React with 👍 / 👎.
This update extends the upload flow to better handle real-world acquisition and calibration formats: high-frequency PioReactor streams can now be pre-aggregated before processing, and calibration uploads now accept both delimiter variants and Excel files. It also clarifies ECOD sensitivity behavior directly in the UI.
Raw OD pre-aggregation for sub-15s sampling
process_od_pioreactor(...)viamaybe_aggregate_high_frequency_raw_data(...), with summary messaging on whether aggregation was applied.ECOD sensitivity UX clarification
Calibration ingestion: delimiter + Excel support
read_od_adjustment_table(...)to centralize calibration parsing.,and;separators (sniffed from file header)..xlsx/.xlssupport for calibration uploads and wired upload UI accordingly.Focused processing tests
Also updated: