---
name: "Mergemaster accepts stories without squash-merging code"
---

# Bug 226: Mergemaster accepts stories without squash-merging code

## Description

The mergemaster agent moves stories through the pipeline (current → QA → merge → done → accepted) without actually squash-merging the feature branch code into master. Stories 98 and 218 both have code on their feature branches but were accepted with only .md file moves — zero code changes landed on master.

## How to Reproduce

1. Start an agent on a story, let it write code on its feature branch
2. Move the story through QA → merge stages
3. Mergemaster runs and "completes" the merge
4. Check git log — only .md pipeline moves, no squash-merge commit with actual code

## Actual Result

Story is accepted and archived but the feature branch code never lands on master. The mergemaster only commits .md file moves between pipeline directories.

## Expected Result

Mergemaster should squash-merge the feature branch into master, landing all code changes, before moving the story to done/accepted.

## Acceptance Criteria

- [ ] Stories cannot be moved to done unless a squash-merge commit with code changes exists on master
- [ ] merge_agent_work correctly runs git merge --squash and commits the result
- [ ] If the feature branch has no code changes (only .md moves), the merge should either fail or warn rather than silently accepting
