<feed xmlns='http://www.w3.org/2005/Atom'>
<title>soryu/makima/src/db/models.rs, branch makima/task-task-8958634f-8958634f</title>
<subtitle>soryu-co/soryu mirror</subtitle>
<id>http://src.eirin.xyz/soryu/atom?h=makima%2Ftask-task-8958634f-8958634f</id>
<link rel='self' href='http://src.eirin.xyz/soryu/atom?h=makima%2Ftask-task-8958634f-8958634f'/>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/'/>
<updated>2026-02-01T00:52:02+00:00</updated>
<entry>
<title>[WIP] Heartbeat checkpoint - 2026-02-01 00:52:02 UTC</title>
<updated>2026-02-01T00:52:02+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-02-01T00:52:02+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=c076455ea651a6be3764af7392ff41175ec0bed1'/>
<id>urn:sha1:c076455ea651a6be3764af7392ff41175ec0bed1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[WIP] Heartbeat checkpoint - 2026-02-01 00:42:02 UTC</title>
<updated>2026-02-01T00:42:02+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-02-01T00:42:02+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=10d9b4ce345ac74161108818ad5532a74336cc3d'/>
<id>urn:sha1:10d9b4ce345ac74161108818ad5532a74336cc3d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>feat: Add contract management system improvements (Phase 1)</title>
<updated>2026-01-31T22:54:50+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-31T22:53:28+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=44bb3fe07ab191abd8260af6975bc175c223878e'/>
<id>urn:sha1:44bb3fe07ab191abd8260af6975bc175c223878e</id>
<content type='text'>
- Add docs/contract-management-spec.md with full system design
- Add docs/plans/implementation-plan.md with 5-phase rollout plan
- Add validate_deliverable() function and use in mark_deliverable_complete
- Add PhaseChangeResult enum and change_contract_phase_with_version() with FOR UPDATE locking
- Enforce phase_guard at API level for all callers

This addresses critical issues in contract management:
- Deliverable validation to prevent marking non-existent deliverables complete
- Version conflict detection for phase changes with row locking
- Phase guard enforcement at API level (applies to all callers including supervisors)
- Comprehensive specification and implementation plan for future phases
</content>
</entry>
<entry>
<title>Add auto_merge_local option for local-only contracts (#50)</title>
<updated>2026-01-31T22:17:09+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-31T22:17:09+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=3ea2c72e2c50c0d73614d9ac82f41508b6ab1ce4'/>
<id>urn:sha1:3ea2c72e2c50c0d73614d9ac82f41508b6ab1ce4</id>
<content type='text'>
When local_only=true on a contract, all completion actions are skipped.
This adds a new option auto_merge_local that, when enabled along with
local_only, will automatically merge completed task changes to the
master/main branch locally (without pushing or creating PRs).

Changes:
- Add auto_merge_local column to contracts table (migration)
- Add auto_merge_local field to Contract model and summary
- Update CreateContractRequest and UpdateContractRequest structs
- Update contract repository create/update functions
- Add auto_merge_local to WebSocket protocol StartTask command
- Pass auto_merge_local through spawn_task and run_task functions
- Modify task manager completion logic: if local_only=true AND
  auto_merge_local=true, execute 'merge' completion action locally
- Update all server handlers to retrieve and pass auto_merge_local
- Add TypeScript types to frontend components

Co-authored-by: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;</content>
</entry>
<entry>
<title>Fix Red Team UI visibility by adding red_team_enabled to ContractSummary</title>
<updated>2026-01-29T17:23:03+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-29T01:10:43+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=aef9c46c5608c8e455d49d31d790a4cc483706b9'/>
<id>urn:sha1:aef9c46c5608c8e455d49d31d790a4cc483706b9</id>
<content type='text'>
The Red Team toggle was implemented in the frontend but not visible because
the backend API's ContractSummary response struct was missing the
red_team_enabled field. The frontend relies on this field to:

1. Show the red team badge in the contract list view
2. Show the red team badge and tab in the contract detail view

Changes:
- Add red_team_enabled field to ContractSummary struct in models.rs
- Update list_contracts_for_owner SQL query to include red_team_enabled
- Update get_contract_summary_for_owner SQL query to include red_team_enabled
- Update all fallback ContractSummary constructions in contracts.rs handler

Co-Authored-By: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Fix phase config in DB</title>
<updated>2026-01-29T14:34:52+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-29T14:34:52+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=a7485a17157d2c066473de70d4dc630d18f3d294'/>
<id>urn:sha1:a7485a17157d2c066473de70d4dc630d18f3d294</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Allow null phase configs for legacy contracts</title>
<updated>2026-01-29T12:26:00+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-29T12:26:00+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=61017ee388320925dcce83f8edf8890666f791d2'/>
<id>urn:sha1:61017ee388320925dcce83f8edf8890666f791d2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix contract type selection</title>
<updated>2026-01-29T02:56:44+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-29T02:56:44+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=f19acd400cc5bbe1fe51c004c50ee90d704240d8'/>
<id>urn:sha1:f19acd400cc5bbe1fe51c004c50ee90d704240d8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix worktree cleanup to not run for shared worktrees</title>
<updated>2026-01-29T02:30:16+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-29T02:30:16+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=7af8561677cfdcfd23d099a25783c7fef51d1ba6'/>
<id>urn:sha1:7af8561677cfdcfd23d099a25783c7fef51d1ba6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add Red Team adversarial review system for contract monitoring (#35)</title>
<updated>2026-01-27T01:05:25+00:00</updated>
<author>
<name>soryu</name>
<email>soryu@soryu.co</email>
</author>
<published>2026-01-27T01:05:25+00:00</published>
<link rel='alternate' type='text/html' href='http://src.eirin.xyz/soryu/commit/?id=6cd5b20670d7ecd3d48539ff898e021988f2a503'/>
<id>urn:sha1:6cd5b20670d7ecd3d48539ff898e021988f2a503</id>
<content type='text'>
Implements a parallel "red team" task that monitors work task outputs in
real-time, verifying implementations stick to contract requirements,
repository standards, and the execution plan.

Key features:
- New `red_team_enabled` and `red_team_prompt` contract configuration
- Red team tasks auto-spawn when first work task is created
- `makima red-team notify` CLI command for alerting supervisors
- POST /api/v1/mesh/red-team/notify and /status endpoints
- Alert delivery to supervisor via SendMessage daemon command
- Notification audit trail via history_events table

Database changes:
- Add red_team_enabled/red_team_prompt columns to contracts
- Add is_red_team flag to tasks with partial index
- Create red_team_notifications table for audit logging

Co-authored-by: Claude Opus 4.5 &lt;noreply@anthropic.com&gt;</content>
</entry>
</feed>
