Detect squash-merged PRs when closing task cards #544

Merged
weichen merged 12 commits from feature/card-merge-squash-detect into main 2026-10-14 09:00:43 +00:00
12 Commits
Author SHA1 Message Date
weichen b926c701f2 Record task-sync evidence after the rebase onto latest main
ci / svc-realcombo (pull_request) Successful in 1m50s
ci / test (pull_request) Successful in 9m1s
ci / test-pg (pull_request) Successful in 10m31s
2026-10-14 08:49:38 +00:00
weichen 55ab7489e5 Record the sync checkpoint
Why: bind the task validation checkpoint to the integration baseline.

Evidence: SELF recursive component checks; sync_base=7e9ebdea5055a63c713ccc0fb1f938ffe35a6b9d; before_record=b6a070265733b0995a2724e1d600e914c21200ef.

Impact: task metadata only.

Refs: .task/feature-card-merge-squash-detect.md
2026-10-14 08:49:12 +00:00
weichen b6a0702657 Merge authoritative main into the task branch
Why: include the current integration baseline before verification.

Evidence: fetched origin/main=7e9ebdea5055a63c713ccc0fb1f938ffe35a6b9d.

Impact: integrate upstream changes without rewriting task history.

Refs: task-sync
2026-10-14 08:48:51 +00:00
weichen 15b2defd76 Correct the evidence interpretation after the green rerun
ci / test (pull_request) Successful in 12m55s
ci / test-pg (pull_request) Successful in 10m49s
ci / svc-realcombo (pull_request) Successful in 2m56s
2026-10-14 08:34:40 +00:00
weichen c20c9de70d Re-record governance evidence at the synced head 2026-10-14 08:33:23 +00:00
weichen cd9a5d19e7 Record task-sync evidence on the card 2026-10-14 08:28:53 +00:00
weichen 375e4db09f Record the sync checkpoint
Why: bind the task validation checkpoint to the integration baseline.

Evidence: SELF recursive component checks; sync_base=11aa76a3bc1c5047791f9a2de154e451634b6567; before_record=e579783cd35b36ecbf258809f05392de21fd960f.

Impact: task metadata only.

Refs: .task/feature-card-merge-squash-detect.md
2026-10-14 08:28:52 +00:00
weichen e579783cd3 Merge authoritative main into the task branch
Why: include the current integration baseline before verification.

Evidence: fetched origin/main=11aa76a3bc1c5047791f9a2de154e451634b6567.

Impact: integrate upstream changes without rewriting task history.

Refs: task-sync
2026-10-14 08:28:27 +00:00
weichen da9d1c5a09 Fill task card scope, verification and evidence interpretation 2026-10-14 08:28:24 +00:00
weichen 83375fb23c Record governance suite evidence on the task card 2026-10-14 07:57:42 +00:00
weichen f4eeba1733 Detect squash-merged PRs when closing task cards
Why: card_merge only recognized "Merge ... from <branch> into main"
merge commits, so a PR landed as a squash (real case: #457) left its
task card in .task/ forever; task-close reported nothing to close and
precheck showed no debt. Closing required a manual backfill (PR #541).

Evidence: card_merge now returns sha|subject|pr and falls back to a
Gitea API lookup by head ref or label (deleted branches keep the
original name only in label), gated by merge_commit_sha ancestry in
origin/main; precheck [cards] reuses card_merge so both surfaces agree.
Live probe against production Gitea returns 226a4af15791|Reset
per-service runtime state in svc.sh env_config|457 for
feature/svc-pidcheck-leak; stub-server tests cover squash landing,
decoy skip and the not-on-main refusal; full governance suite follows
in-card evidence.

Impact: scripts/task.sh close and precheck detect squash-merged cards
when GITEA_TOKEN is set (merge-commit path unchanged without token);
tests/test_task.py adds two regressions; no protocol change for
existing merge-commit closures beyond the appended pr field.

Refs: card-merge-misses-squash-merges (memory); PR #541 manual closure.
2026-10-14 07:53:52 +00:00
weichen 26c5532c88 Record the task card for feature-card-merge-squash-detect
Why: establish the authorized task workspace and its initial baseline.

Evidence: preserved precheck receipt in .task/feature-card-merge-squash-detect.md; R0=d23fb4363dcc0a206e71e47f9cd23a644c7e1c70.

Impact: task metadata only; the feature workspace starts at d23fb4363d.

Refs: .task/feature-card-merge-squash-detect.md
2026-10-14 07:45:50 +00:00