Repository navigation
fix(api): handle blank optional pipeline timestamps - #362
Merged
Merged
Conversation
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
🤖 AI Code Review ResultsAI review skipped: provider 'anthropic' is not configured; deterministic gates remain authoritative. ✅ No critical issues found. AI Code Review powered by GitForge |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
The nullable SQLite
finished_atcolumn can contain a legacy empty string. The optional timestamp decoder treated""as a malformed RFC3339 value, so one legacy row caused the entire authorizedGET /api/pipeline-runslisting to return HTTP 500. Malformed nonblank values still need to remain visible as database errors.Changes
NULL, empty, and whitespace-only optional timestamp values as absent.200withfinished_at: null) and malformed nonblank timestamps (500 database_error).Validation
22fe4c16:cargo test --offline -p gitforge-api --test ci_routes pipeline_run_list -- --test-threads=1— 2 passed, 0 failed.cargo fmt --check --package gitforge-api --package gitforge-db— passed.The source branch is
fix/pipeline-run-empty-timestamp-20261102atb1aff466. GitForge pipeline receipt and deployed service validation are pending; the production API has not yet been restarted.