summaryrefslogtreecommitdiff
path: root/internal/executor/channel.go
diff options
context:
space:
mode:
authorClaudomator Agent <agent@claudomator>2026-07-08 09:11:14 +0000
committerClaudomator Agent <agent@claudomator>2026-07-08 09:11:14 +0000
commit09066e1e4e928487bea0658492fd8573607c77c3 (patch)
tree76f3456fbf4eb3c71d90598297919dad97d43ddb /internal/executor/channel.go
parent2d311c129b6233ae7279587a82c95ffec3d6eeb5 (diff)
feat(agentchannel,executor): add ReportVerdict for structured approve/reject signals
Diffstat (limited to 'internal/executor/channel.go')
-rw-r--r--internal/executor/channel.go13
1 files changed, 13 insertions, 0 deletions
diff --git a/internal/executor/channel.go b/internal/executor/channel.go
index 9392c77..55da7b1 100644
--- a/internal/executor/channel.go
+++ b/internal/executor/channel.go
@@ -273,4 +273,17 @@ func (c *storeChannel) ProposeRoleConfig(_ context.Context, config role.RoleConf
return row.Version, err
}
return row.Version, nil
+}
+
+func (c *storeChannel) ReportVerdict(_ context.Context, approved bool, reasoning string) error {
+ payload, _ := json.Marshal(struct {
+ Approved bool `json:"approved"`
+ Reasoning string `json:"reasoning"`
+ }{Approved: approved, Reasoning: reasoning})
+ return c.store.CreateEvent(&event.Event{
+ TaskID: c.taskID,
+ Kind: event.KindVerdictReported,
+ Actor: event.ActorAgent,
+ Payload: payload,
+ })
} \ No newline at end of file