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:
committed by
Steve Yegge
parent
1ffd1431b7
commit
939f222c35
@@ -663,6 +663,42 @@ func createInRig(cmd *cobra.Command, rigName, title, description, issueType stri
|
|||||||
externalRefPtr = &externalRef
|
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
|
// Create issue without ID - CreateIssue will generate one with the correct prefix
|
||||||
issue := &types.Issue{
|
issue := &types.Issue{
|
||||||
Title: title,
|
Title: title,
|
||||||
@@ -677,6 +713,18 @@ func createInRig(cmd *cobra.Command, rigName, title, description, issueType stri
|
|||||||
ExternalRef: externalRefPtr,
|
ExternalRef: externalRefPtr,
|
||||||
Ephemeral: wisp,
|
Ephemeral: wisp,
|
||||||
CreatedBy: getActorWithGit(),
|
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 {
|
if err := targetStore.CreateIssue(ctx, issue, actor); err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user