Skip to content

chore(git): union-merge driver for CHANGELOG to cut parallel-PR conflicts (REQ-164, #422)#423

Merged
avrabe merged 2 commits into
mainfrom
chore/changelog-union-merge
Jun 3, 2026
Merged

chore(git): union-merge driver for CHANGELOG to cut parallel-PR conflicts (REQ-164, #422)#423
avrabe merged 2 commits into
mainfrom
chore/changelog-union-merge

Conversation

@avrabe
Copy link
Copy Markdown
Contributor

@avrabe avrabe commented Jun 3, 2026

Implements the safe half of #422 (a friction I hit repeatedly this session — resolving CHANGELOG/requirements conflicts on #419 and #421 within the same hour).

What

  • .gitattributes: CHANGELOG.md merge=union — git's built-in union driver keeps both sides' added lines instead of conflicting. Ideal for an append-only prose log; worst case is an out-of-order entry, trivially fixed.

Deliberately NOT done

No CHANGELOG entry here on purpose — it's a .gitattributes chore, and adding one would create exactly the conflict this fixes.

rivet validate PASS.

Implements: REQ-164

…icts (REQ-164, #422)

Self-found while landing several one-REQ-per-PR changes in one session:
every PR conflicts in CHANGELOG.md (entries at the top of `[Unreleased]`)
and requirements.yaml, forcing a manual resolve each time.

Add `.gitattributes` `CHANGELOG.md merge=union` — git's built-in union
driver keeps both sides' added lines instead of conflicting (safe for an
append-only prose log). Deliberately NOT applied to artifacts/*.yaml:
union-concatenating conflicting YAML hunks can silently produce malformed
YAML, worse than a conflict that forces review — the guidance there is to
append REQs at EOF (as REQ-164 itself does) or use `rivet add`.

REQ-164 artifact appended at end-of-file (practising the guidance).
rivet validate PASS.

Implements: REQ-164
Refs: REQ-007
Trace: skip
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 3, 2026

📐 Rivet artifact delta

Change Count
Added 1
Removed 0
Modified 0
Downstream impacted (depth ≤ 5) 0

Graph

graph LR
  REQ_164["REQ-164"]:::added
  classDef added fill:#d4edda,stroke:#28a745,color:#155724
  classDef removed fill:#f8d7da,stroke:#dc3545,color:#721c24
  classDef modified fill:#fff3cd,stroke:#ffc107,color:#856404
  classDef overflow fill:#e2e3e5,stroke:#6c757d,color:#495057,stroke-dasharray: 3 3
Loading
Added
  • REQ-164

📎 Full HTML dashboard attached as workflow artifact rivet-delta-pr-423download from the workflow run.

Posted by rivet-delta workflow. The graph shows only changed artifacts; open the HTML dashboard (above) for full context.

Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

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

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Rivet Criterion Benchmarks'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20.

Benchmark suite Current: c60e0d0 Previous: 950c605 Ratio
traceability_matrix/1000 60598 ns/iter (± 882) 44712 ns/iter (± 163) 1.36
query/10000 346818 ns/iter (± 2973) 232623 ns/iter (± 1748) 1.49

This comment was automatically generated by workflow using github-action-benchmark.

…-merge

# Conflicts:
#	artifacts/requirements.yaml
@avrabe avrabe merged commit 973c419 into main Jun 3, 2026
18 of 38 checks passed
@avrabe avrabe deleted the chore/changelog-union-merge branch June 3, 2026 07:15
@codecov
Copy link
Copy Markdown

codecov Bot commented Jun 3, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

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.

1 participant