Skip to content

fix(orch): reconcile-work-items requires a nonempty updatedAt on started rows - #1441

Merged
Brad (bmethod) merged 2 commits into
mainfrom
vst-318-followup
Aug 17, 2026
Merged

fix(orch): reconcile-work-items requires a nonempty updatedAt on started rows#1441
Brad (bmethod) merged 2 commits into
mainfrom
vst-318-followup

Conversation

@bmethod

Copy link
Copy Markdown
Collaborator

Follow-up to #1430 for the one finding deferred past its push budget (thread #1430 (comment)): the structural cache validation now requires a nonempty updatedAt on started rows. GNU date -d "" parses an empty field as midnight today, so a started row missing its timestamp could quietly read as fresh and let the sweep report clean; BSD date rejected the same row, so behavior also diverged across platforms. Now it is an exit-2 config error on both. One new pin (19 green).

https://claude.ai/code/session_012epxJEzGqT7q3qcFhdZUt5

Copilot AI balanced review requested due to automatic review settings August 17, 2026 13:07
@linear-code

linear-code Bot commented Aug 17, 2026

Copy link
Copy Markdown

VST-318

@qodo-code-review

Copy link
Copy Markdown

ⓘ Qodo reviews are paused because your trial has ended. Ask your workspace admin to add credits to resume reviews. Manage billing

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Note

Copilot was unable to run its full agentic suite in this review.

Adds stronger validation for cached Linear issues so “started” work items must include a usable updatedAt, and extends the shell test suite to cover this config-error scenario.

Changes:

  • Enforce updatedAt presence/non-emptiness for rows where state.type == "started" during cache schema validation.
  • Add a regression test ensuring empty updatedAt on a started item fails as a config error.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
skills/orch/scripts/reconcile-work-items Tightens jq schema validation to require non-empty updatedAt for started issues.
skills/orch/tests/reconcile-work-items.test.sh Adds a test case asserting empty updatedAt on started issues triggers a config error.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread skills/orch/scripts/reconcile-work-items Outdated
Comment thread skills/orch/tests/reconcile-work-items.test.sh
Comment thread skills/orch/tests/reconcile-work-items.test.sh
macroscopeapp[bot]
macroscopeapp Bot previously approved these changes Aug 17, 2026
@macroscopeapp

macroscopeapp Bot commented Aug 17, 2026

Copy link
Copy Markdown

Approvability

Verdict: Approved aa84123

Straightforward input validation fix that catches invalid cache data early (empty/missing updatedAt on started rows) instead of allowing silent misbehavior. Limited scope with clear intent and corresponding tests.

You can customize Macroscope's approvability policy. Learn more.

Copilot AI review requested due to automatic review settings August 17, 2026 13:10
@macroscopeapp
macroscopeapp Bot dismissed their stale review August 17, 2026 13:10

Dismissing prior approval to re-evaluate aa84123

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

Suppressed comments (1)

skills/orch/tests/reconcile-work-items.test.sh:120

  • The new validation enforces a nonblank updatedAt (via a whitespace check), but the comment says “without a usable timestamp”. If “usable” means parseable by date, consider either tightening the validation to match the expected timestamp format, or rewording the comment to match the actual constraint (e.g., “nonblank timestamp”).
# A started row without a usable timestamp must be a config error: GNU date
# parses an empty field as midnight today, which would quietly read as fresh.

Comment thread skills/orch/scripts/reconcile-work-items
@bmethod
Brad (bmethod) added this pull request to the merge queue Aug 17, 2026
Merged via the queue into main with commit bc17553 Aug 17, 2026
35 checks passed
@bmethod
Brad (bmethod) deleted the vst-318-followup branch August 17, 2026 13:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants