fix: pass event/mol/time fields through --rig flag (bd-xwvo)

createInRig was missing event fields (event_kind, actor, target, payload),
molecule/agent fields (mol_type, role_type, rig), and time scheduling
fields (due_at, defer_until). Now extracts these from cmd.Flags() directly.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
beads/crew/emma
2026-01-02 17:10:43 -08:00
committed by Steve Yegge
parent 1ffd1431b7
commit 939f222c35

View File

@@ -663,6 +663,42 @@ func createInRig(cmd *cobra.Command, rigName, title, description, issueType stri
externalRefPtr = &externalRef
}
// Extract event-specific flags (bd-xwvo fix)
eventCategory, _ := cmd.Flags().GetString("event-category")
eventActor, _ := cmd.Flags().GetString("event-actor")
eventTarget, _ := cmd.Flags().GetString("event-target")
eventPayload, _ := cmd.Flags().GetString("event-payload")
// Extract molecule/agent flags (bd-xwvo fix)
molTypeStr, _ := cmd.Flags().GetString("mol-type")
var molType types.MolType
if molTypeStr != "" {
molType = types.MolType(molTypeStr)
}
roleType, _ := cmd.Flags().GetString("role-type")
agentRig, _ := cmd.Flags().GetString("agent-rig")
// Extract time-based scheduling flags (bd-xwvo fix)
var dueAt *time.Time
dueStr, _ := cmd.Flags().GetString("due")
if dueStr != "" {
t, err := timeparsing.ParseRelativeTime(dueStr, time.Now())
if err != nil {
FatalError("invalid --due format %q", dueStr)
}
dueAt = &t
}
var deferUntil *time.Time
deferStr, _ := cmd.Flags().GetString("defer")
if deferStr != "" {
t, err := timeparsing.ParseRelativeTime(deferStr, time.Now())
if err != nil {
FatalError("invalid --defer format %q", deferStr)
}
deferUntil = &t
}
// Create issue without ID - CreateIssue will generate one with the correct prefix
issue := &types.Issue{
Title: title,
@@ -677,6 +713,18 @@ func createInRig(cmd *cobra.Command, rigName, title, description, issueType stri
ExternalRef: externalRefPtr,
Ephemeral: wisp,
CreatedBy: getActorWithGit(),
// Event fields (bd-xwvo fix)
EventKind: eventCategory,
Actor: eventActor,
Target: eventTarget,
Payload: eventPayload,
// Molecule/agent fields (bd-xwvo fix)
MolType: molType,
RoleType: roleType,
Rig: agentRig,
// Time scheduling fields (bd-xwvo fix)
DueAt: dueAt,
DeferUntil: deferUntil,
}
if err := targetStore.CreateIssue(ctx, issue, actor); err != nil {