@autohq/cli 0.1.556 → 0.1.558

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30870,7 +30870,7 @@ Object.assign(lookup, {
30870
30870
  // package.json
30871
30871
  var package_default = {
30872
30872
  name: "@autohq/cli",
30873
- version: "0.1.556",
30873
+ version: "0.1.558",
30874
30874
  license: "SEE LICENSE IN README.md",
30875
30875
  publishConfig: {
30876
30876
  access: "public"
@@ -35363,6 +35363,38 @@ var TriggerFilterRecordSchema = external_exports.record(
35363
35363
  );
35364
35364
  var TriggerFilterSchema = TriggerFilterRecordSchema.default({});
35365
35365
 
35366
+ // ../../packages/schemas/src/tasks.ts
35367
+ var TASK_STATUSES = [
35368
+ "open",
35369
+ "in_progress",
35370
+ "done",
35371
+ "dropped"
35372
+ ];
35373
+ var TaskStatusSchema = external_exports.enum(TASK_STATUSES);
35374
+ var TASK_COMPLETION_KINDS = [
35375
+ "manual",
35376
+ "implementation_merged",
35377
+ "all_subtasks_done"
35378
+ ];
35379
+ var TaskCompletionKindSchema = external_exports.enum(TASK_COMPLETION_KINDS);
35380
+ var TASK_LINK_ROLES = ["implements", "tracks", "relates"];
35381
+ var TaskLinkRoleSchema = external_exports.enum(TASK_LINK_ROLES);
35382
+ var TASK_LINK_STATUSES = ["attached", "detached"];
35383
+ var TaskLinkStatusSchema = external_exports.enum(TASK_LINK_STATUSES);
35384
+ var TASK_LINK_TARGET_TYPES = [
35385
+ "github.pull_request",
35386
+ "github.issue",
35387
+ "linear.issue",
35388
+ "slack.thread",
35389
+ "auto.session",
35390
+ "auto.task"
35391
+ ];
35392
+ var TaskLinkTargetTypeSchema = external_exports.enum(TASK_LINK_TARGET_TYPES);
35393
+ var TaskLinkTargetSchema = BindingTargetSchema.refine(
35394
+ (target) => TASK_LINK_TARGET_TYPES.includes(target.type),
35395
+ "Target type cannot be linked to a task"
35396
+ );
35397
+
35366
35398
  // ../../packages/schemas/src/trigger-router.ts
35367
35399
  var CANONICAL_ROUTE_BY_KINDS = [
35368
35400
  "allLiveSessions",
@@ -35410,6 +35442,15 @@ var SpawnBindSchema = external_exports.object({
35410
35442
  context: JsonObjectSchema.optional(),
35411
35443
  eventContext: JsonObjectSchema.optional()
35412
35444
  }).strict();
35445
+ var TriggerTaskCreateSchema = external_exports.object({
35446
+ create: external_exports.object({
35447
+ title: external_exports.string().trim().min(1).max(256),
35448
+ description: external_exports.string().max(65536).optional(),
35449
+ completionCriterion: TaskCompletionKindSchema.optional(),
35450
+ parentTaskId: external_exports.string().trim().min(1).optional(),
35451
+ context: JsonObjectSchema.optional()
35452
+ }).strict()
35453
+ }).strict();
35413
35454
  var TriggerReleaseSchema = external_exports.union([
35414
35455
  external_exports.literal(false),
35415
35456
  external_exports.literal(true).transform(() => ({ context: null })),
@@ -35432,6 +35473,7 @@ var CanonicalTriggerRoutingSchema = external_exports.discriminatedUnion("kind",
35432
35473
  external_exports.object({
35433
35474
  kind: external_exports.literal("spawn"),
35434
35475
  bind: SpawnBindSchema.optional(),
35476
+ task: TriggerTaskCreateSchema.optional(),
35435
35477
  complete: external_exports.boolean().optional()
35436
35478
  }),
35437
35479
  // Deliver route: `routeBy` names the resolution strategy. Omitting it is
@@ -35441,6 +35483,7 @@ var CanonicalTriggerRoutingSchema = external_exports.discriminatedUnion("kind",
35441
35483
  kind: external_exports.literal("deliver"),
35442
35484
  routeBy: RouteBySchema.optional(),
35443
35485
  onUnmatched: OnUnmatchedSchema,
35486
+ task: external_exports.never().optional(),
35444
35487
  complete: external_exports.boolean().optional()
35445
35488
  }),
35446
35489
  // Bind route: resolve the event's routing target to the session bound to it
@@ -35451,6 +35494,7 @@ var CanonicalTriggerRoutingSchema = external_exports.discriminatedUnion("kind",
35451
35494
  kind: external_exports.literal("bind"),
35452
35495
  target: TriggerBindingTargetTypeSchema,
35453
35496
  onUnmatched: OnUnmatchedSchema,
35497
+ task: external_exports.never().optional(),
35454
35498
  // Declarative binding release: after the router routes this event
35455
35499
  // (delivered, revived, or unmatched), the platform releases the target's
35456
35500
  // active binding as a follow-up activity. Deliver-then-release — the bound
@@ -35741,6 +35785,7 @@ function triggerBaseSchema(guard) {
35741
35785
  }).strict().superRefine((trigger, context) => {
35742
35786
  validateTriggerChecks(trigger, context, [trigger.event]);
35743
35787
  validateAttachedUserPrompt(trigger, context, guard);
35788
+ validateTriggerTaskCreate(trigger, context, guard);
35744
35789
  });
35745
35790
  }
35746
35791
  function triggerDefinitionBaseSchema(guard) {
@@ -35770,6 +35815,7 @@ function triggerDefinitionBaseSchema(guard) {
35770
35815
  trigger.event ? [trigger.event] : trigger.events ?? []
35771
35816
  );
35772
35817
  validateAttachedUserPrompt(trigger, context, guard);
35818
+ validateTriggerTaskCreate(trigger, context, guard);
35773
35819
  });
35774
35820
  }
35775
35821
  function heartbeatTriggerBaseSchema(guard) {
@@ -35786,6 +35832,7 @@ function heartbeatTriggerBaseSchema(guard) {
35786
35832
  }).strict().superRefine((trigger, context) => {
35787
35833
  validateTriggerChecks(trigger, context, ["heartbeat"]);
35788
35834
  validateAttachedUserPrompt(trigger, context, guard);
35835
+ validateTriggerTaskCreate(trigger, context, guard);
35789
35836
  });
35790
35837
  }
35791
35838
  var TriggerSchema = triggerBaseSchema("stored").extend({
@@ -35998,6 +36045,21 @@ var AgentApplySpecSchema = AgentApplySpecFieldsSchema.superRefine(
35998
36045
  validateTriggerObservedTargetConfig(spec, context);
35999
36046
  }
36000
36047
  );
36048
+ function validateTriggerTaskCreate(trigger, context, guard) {
36049
+ if (guard !== "authoring" || trigger.routing.kind !== "spawn") return;
36050
+ if (!trigger.routing.task) return;
36051
+ refineNoPayloadPrefixedTemplateTokens(
36052
+ trigger.routing.task.create.title,
36053
+ context
36054
+ );
36055
+ if (trigger.routing.bind?.target === "auto.task") {
36056
+ context.addIssue({
36057
+ code: external_exports.ZodIssueCode.custom,
36058
+ path: ["routing", "bind", "target"],
36059
+ message: "Trigger task creation claims auto.task itself and cannot also bind the spawn to auto.task"
36060
+ });
36061
+ }
36062
+ }
36001
36063
  function validateConcurrencyConfig(spec, context) {
36002
36064
  if (spec.concurrency === void 0 && spec.replace !== void 0) {
36003
36065
  context.addIssue({
@@ -37895,6 +37957,12 @@ var ProjectHomeResourceHealthSchema = external_exports.object({
37895
37957
  failed: external_exports.number().int().nonnegative(),
37896
37958
  lastAppliedAt: external_exports.string().datetime().nullable()
37897
37959
  }).strict();
37960
+ var ProjectHomeTaskSchema = external_exports.object({
37961
+ id: external_exports.string().trim().min(1),
37962
+ title: external_exports.string().trim().min(1),
37963
+ status: TaskStatusSchema,
37964
+ updatedAt: external_exports.string().datetime()
37965
+ }).strict();
37898
37966
  var ProjectHomeReadyViewSchema = external_exports.object({
37899
37967
  kind: DashboardViewKindSchema,
37900
37968
  status: external_exports.literal("ready"),
@@ -37922,8 +37990,11 @@ var ProjectHomeReadModelSchema = external_exports.object({
37922
37990
  running: external_exports.number().int().nonnegative(),
37923
37991
  awaiting: external_exports.number().int().nonnegative(),
37924
37992
  completed24h: external_exports.number().int().nonnegative(),
37925
- spend24hUsd: external_exports.number().nonnegative()
37993
+ spend24hUsd: external_exports.number().nonnegative(),
37994
+ openTasks: external_exports.number().int().nonnegative().default(0)
37926
37995
  }).strict(),
37996
+ taskVisibility: external_exports.boolean().default(false),
37997
+ tasks: external_exports.array(ProjectHomeTaskSchema).max(5).default([]),
37927
37998
  sessions: external_exports.array(ProjectHomeSessionSchema).max(25),
37928
37999
  pinnedSession: external_exports.object({
37929
38000
  session: SessionRecordSchema,
@@ -39153,38 +39224,6 @@ var ProjectTemplateSubscriptionSchema = external_exports.object({
39153
39224
  // ../../packages/schemas/src/templates/catalog.ts
39154
39225
  var import_yaml2 = __toESM(require_dist(), 1);
39155
39226
 
39156
- // ../../packages/schemas/src/tasks.ts
39157
- var TASK_STATUSES = [
39158
- "open",
39159
- "in_progress",
39160
- "done",
39161
- "dropped"
39162
- ];
39163
- var TaskStatusSchema = external_exports.enum(TASK_STATUSES);
39164
- var TASK_COMPLETION_KINDS = [
39165
- "manual",
39166
- "implementation_merged",
39167
- "all_subtasks_done"
39168
- ];
39169
- var TaskCompletionKindSchema = external_exports.enum(TASK_COMPLETION_KINDS);
39170
- var TASK_LINK_ROLES = ["implements", "tracks", "relates"];
39171
- var TaskLinkRoleSchema = external_exports.enum(TASK_LINK_ROLES);
39172
- var TASK_LINK_STATUSES = ["attached", "detached"];
39173
- var TaskLinkStatusSchema = external_exports.enum(TASK_LINK_STATUSES);
39174
- var TASK_LINK_TARGET_TYPES = [
39175
- "github.pull_request",
39176
- "github.issue",
39177
- "linear.issue",
39178
- "slack.thread",
39179
- "auto.session",
39180
- "auto.task"
39181
- ];
39182
- var TaskLinkTargetTypeSchema = external_exports.enum(TASK_LINK_TARGET_TYPES);
39183
- var TaskLinkTargetSchema = BindingTargetSchema.refine(
39184
- (target) => TASK_LINK_TARGET_TYPES.includes(target.type),
39185
- "Target type cannot be linked to a task"
39186
- );
39187
-
39188
39227
  // ../../packages/schemas/src/temporal.ts
39189
39228
  var RUNTIME_ESCALATION_LEASE_STATES = [
39190
39229
  "fenced",
@@ -39389,6 +39428,12 @@ var ProjectUsageResponseSchema = external_exports.object({
39389
39428
  until: external_exports.string().datetime()
39390
39429
  }),
39391
39430
  totals: ProjectUsageTotalsSchema,
39431
+ taskSummary: external_exports.object({
39432
+ open: external_exports.number().int().nonnegative(),
39433
+ inProgress: external_exports.number().int().nonnegative(),
39434
+ done: external_exports.number().int().nonnegative(),
39435
+ dropped: external_exports.number().int().nonnegative()
39436
+ }).optional(),
39392
39437
  byAgent: external_exports.array(ProjectUsageAgentSummarySchema),
39393
39438
  byModel: external_exports.array(ProjectUsageModelSummarySchema),
39394
39439
  byFundingSource: external_exports.array(UsageFundingSummarySchema),