@wrenautomation/aerie 0.4.0 → 0.4.1

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.
package/dist/http.js CHANGED
@@ -156,7 +156,13 @@ export function aerieRoutes(store) {
156
156
  create: async (i, by) => rowOf(await store.create(i.task, by, i.why ? { why: i.why } : {})),
157
157
  saveView: (i, by) => store.saveView(by, i),
158
158
  deleteView: (i, by) => store.deleteView(by, i.name),
159
- decide: (i, by) => store.decide(i.id, i.answer, by, i.why),
159
+ decide: async (i, by) => {
160
+ // an answer edits the tasks it blocks (status, notes): a task write
161
+ const [d] = await store.decisions({ ids: [i.id] });
162
+ if (d?.blocks.length && !(await writesOn()))
163
+ throw new AerieError(`decision ${i.id} blocks ${d.blocks.join(", ")}: answer it in the CLI until the switch (setting web_writes)`, 403);
164
+ return store.decide(i.id, i.answer, by, i.why);
165
+ },
160
166
  };
161
167
  return {
162
168
  /** the viewer's sign-in email → actor id; an unknown email is refused (`aerie actor set <id> --email`) */
package/dist/http.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"http.js","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
@@ -30,7 +30,7 @@ export async function migrateAerie(db, o = {}) {
30
30
  return db.transaction(async (tx) => {
31
31
  if (role)
32
32
  await tx.execute(sql.raw(`SET LOCAL ROLE ${quote(role)}`));
33
- await tx.execute(sql.raw(`CREATE TABLE IF NOT EXISTS "${s}"."${t}" (id SERIAL PRIMARY KEY, hash text NOT NULL, created_at bigint)`));
33
+ await tx.execute(sql.raw(`CREATE TABLE IF NOT EXISTS "${s}"."${t}" (id SERIAL CONSTRAINT "pk_aerie_migrations" PRIMARY KEY, hash text NOT NULL, created_at bigint)`));
34
34
  const last = rows(await tx.execute(sql.raw(`select created_at from "${s}"."${t}" order by created_at desc limit 1`)))[0];
35
35
  const todo = readMigrationFiles({
36
36
  ...MIGRATIONS,
@@ -1 +1 @@
1
- {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migrations.js","sourceRoot":"","sources":["../src/migrations.ts"],"names":[],"mappings":"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"}
@@ -8394,7 +8394,7 @@ var init_schema2 = __esm({
8394
8394
  area = aerie.table(
8395
8395
  "area",
8396
8396
  {
8397
- id: serial().primaryKey(),
8397
+ id: serial().notNull(),
8398
8398
  parentId: integer("parent_id"),
8399
8399
  slug: text().notNull(),
8400
8400
  name: text().notNull(),
@@ -8404,7 +8404,12 @@ var init_schema2 = __esm({
8404
8404
  sort: doublePrecision().notNull().default(0)
8405
8405
  },
8406
8406
  (t) => [
8407
- foreignKey({ columns: [t.parentId], foreignColumns: [t.id] }).onDelete("restrict"),
8407
+ primaryKey({ columns: [t.id], name: "pk_area" }),
8408
+ foreignKey({
8409
+ columns: [t.parentId],
8410
+ foreignColumns: [t.id],
8411
+ name: "fk_area_parent_id_area"
8412
+ }).onDelete("restrict"),
8408
8413
  unique("area_parent_slug").on(t.parentId, t.slug).nullsNotDistinct(),
8409
8414
  check("area_slug_shape", sql`${t.slug} ~ '^[a-z0-9][a-z0-9-]*$'`)
8410
8415
  ]
@@ -8412,23 +8417,36 @@ var init_schema2 = __esm({
8412
8417
  actor = aerie.table(
8413
8418
  "actor",
8414
8419
  {
8415
- id: text().primaryKey(),
8420
+ id: text().notNull(),
8416
8421
  kind: text().notNull(),
8417
8422
  name: text().notNull(),
8418
8423
  /** a host's sign-in (the portal's viewer email) → this actor */
8419
8424
  email: text().unique("actor_email")
8420
8425
  },
8421
- (t) => [oneOf("actor_kind", t.kind, ACTOR_KINDS)]
8426
+ (t) => [
8427
+ primaryKey({ columns: [t.id], name: "pk_actor" }),
8428
+ oneOf("actor_kind", t.kind, ACTOR_KINDS)
8429
+ ]
8422
8430
  );
8423
8431
  areaRole = aerie.table(
8424
8432
  "area_role",
8425
8433
  {
8426
- areaId: integer("area_id").notNull().references(() => area.id, { onDelete: "cascade" }),
8427
- actorId: text("actor_id").notNull().references(() => actor.id, { onDelete: "cascade" }),
8434
+ areaId: integer("area_id").notNull(),
8435
+ actorId: text("actor_id").notNull(),
8428
8436
  role: text().notNull()
8429
8437
  },
8430
8438
  (t) => [
8431
- primaryKey({ columns: [t.areaId, t.actorId, t.role] }),
8439
+ primaryKey({ columns: [t.areaId, t.actorId, t.role], name: "pk_area_role" }),
8440
+ foreignKey({
8441
+ columns: [t.areaId],
8442
+ foreignColumns: [area.id],
8443
+ name: "fk_area_role_area_id_area"
8444
+ }).onDelete("cascade"),
8445
+ foreignKey({
8446
+ columns: [t.actorId],
8447
+ foreignColumns: [actor.id],
8448
+ name: "fk_area_role_actor_id_actor"
8449
+ }).onDelete("cascade"),
8432
8450
  index("area_role_actor_idx").on(t.actorId),
8433
8451
  oneOf("area_role_role", t.role, AREA_ROLES)
8434
8452
  ]
@@ -8436,9 +8454,9 @@ var init_schema2 = __esm({
8436
8454
  task = aerie.table(
8437
8455
  "task",
8438
8456
  {
8439
- id: text().primaryKey(),
8457
+ id: text().notNull(),
8440
8458
  /** home area */
8441
- areaId: integer("area_id").notNull().references(() => area.id, { onDelete: "restrict" }),
8459
+ areaId: integer("area_id").notNull(),
8442
8460
  title: text().notNull(),
8443
8461
  status: text().notNull(),
8444
8462
  priority: text(),
@@ -8470,6 +8488,12 @@ var init_schema2 = __esm({
8470
8488
  version: integer().notNull().default(1)
8471
8489
  },
8472
8490
  (t) => [
8491
+ primaryKey({ columns: [t.id], name: "pk_task" }),
8492
+ foreignKey({
8493
+ columns: [t.areaId],
8494
+ foreignColumns: [area.id],
8495
+ name: "fk_task_area_id_area"
8496
+ }).onDelete("restrict"),
8473
8497
  // parent_id: text like dependencies, no key: imported boards hold parents no file has
8474
8498
  index("task_area_id_idx").on(t.areaId),
8475
8499
  index("task_status_idx").on(t.status),
@@ -8481,21 +8505,44 @@ var init_schema2 = __esm({
8481
8505
  taskArea = aerie.table(
8482
8506
  "task_area",
8483
8507
  {
8484
- taskId: text("task_id").notNull().references(() => task.id, { onDelete: "cascade" }),
8485
- areaId: integer("area_id").notNull().references(() => area.id, { onDelete: "cascade" })
8508
+ taskId: text("task_id").notNull(),
8509
+ areaId: integer("area_id").notNull()
8486
8510
  },
8487
- (t) => [primaryKey({ columns: [t.taskId, t.areaId] }), index("task_area_area_idx").on(t.areaId)]
8511
+ (t) => [
8512
+ primaryKey({ columns: [t.taskId, t.areaId], name: "pk_task_area" }),
8513
+ foreignKey({
8514
+ columns: [t.taskId],
8515
+ foreignColumns: [task.id],
8516
+ name: "fk_task_area_task_id_task"
8517
+ }).onDelete("cascade"),
8518
+ foreignKey({
8519
+ columns: [t.areaId],
8520
+ foreignColumns: [area.id],
8521
+ name: "fk_task_area_area_id_area"
8522
+ }).onDelete("cascade"),
8523
+ index("task_area_area_idx").on(t.areaId)
8524
+ ]
8488
8525
  );
8489
8526
  taskActor = aerie.table(
8490
8527
  "task_actor",
8491
8528
  {
8492
- taskId: text("task_id").notNull().references(() => task.id, { onDelete: "cascade" }),
8493
- actorId: text("actor_id").notNull().references(() => actor.id, { onDelete: "restrict" }),
8529
+ taskId: text("task_id").notNull(),
8530
+ actorId: text("actor_id").notNull(),
8494
8531
  role: text().notNull(),
8495
8532
  sort: integer().notNull().default(0)
8496
8533
  },
8497
8534
  (t) => [
8498
- primaryKey({ columns: [t.taskId, t.actorId, t.role] }),
8535
+ primaryKey({ columns: [t.taskId, t.actorId, t.role], name: "pk_task_actor" }),
8536
+ foreignKey({
8537
+ columns: [t.taskId],
8538
+ foreignColumns: [task.id],
8539
+ name: "fk_task_actor_task_id_task"
8540
+ }).onDelete("cascade"),
8541
+ foreignKey({
8542
+ columns: [t.actorId],
8543
+ foreignColumns: [actor.id],
8544
+ name: "fk_task_actor_actor_id_actor"
8545
+ }).onDelete("restrict"),
8499
8546
  index("task_actor_actor_idx").on(t.actorId),
8500
8547
  oneOf("task_actor_role", t.role, TASK_ROLES)
8501
8548
  ]
@@ -8503,19 +8550,26 @@ var init_schema2 = __esm({
8503
8550
  taskHolder = aerie.table(
8504
8551
  "task_holder",
8505
8552
  {
8506
- taskId: text("task_id").notNull().references(() => task.id, { onDelete: "cascade" }),
8553
+ taskId: text("task_id").notNull(),
8507
8554
  holder: text().notNull(),
8508
8555
  since: at("since").notNull().defaultNow(),
8509
8556
  /** order in Backlog.md's assignee list: peers compares the list as text */
8510
8557
  sort: integer().notNull().default(0)
8511
8558
  },
8512
- (t) => [primaryKey({ columns: [t.taskId, t.holder] })]
8559
+ (t) => [
8560
+ primaryKey({ columns: [t.taskId, t.holder], name: "pk_task_holder" }),
8561
+ foreignKey({
8562
+ columns: [t.taskId],
8563
+ foreignColumns: [task.id],
8564
+ name: "fk_task_holder_task_id_task"
8565
+ }).onDelete("cascade")
8566
+ ]
8513
8567
  );
8514
8568
  view = aerie.table(
8515
8569
  "view",
8516
8570
  {
8517
- id: serial().primaryKey(),
8518
- owner: text().notNull().references(() => actor.id, { onDelete: "cascade" }),
8571
+ id: serial().notNull(),
8572
+ owner: text().notNull(),
8519
8573
  name: text().notNull(),
8520
8574
  filter: jsonb().notNull().default({}),
8521
8575
  sort: jsonb().notNull().default([]),
@@ -8524,12 +8578,21 @@ var init_schema2 = __esm({
8524
8578
  /** List columns: field keys in order; null = the default set */
8525
8579
  columns: jsonb()
8526
8580
  },
8527
- (t) => [unique("view_owner_name").on(t.owner, t.name), oneOf("view_layout", t.layout, LAYOUTS)]
8581
+ (t) => [
8582
+ primaryKey({ columns: [t.id], name: "pk_view" }),
8583
+ foreignKey({
8584
+ columns: [t.owner],
8585
+ foreignColumns: [actor.id],
8586
+ name: "fk_view_owner_actor"
8587
+ }).onDelete("cascade"),
8588
+ unique("view_owner_name").on(t.owner, t.name),
8589
+ oneOf("view_layout", t.layout, LAYOUTS)
8590
+ ]
8528
8591
  );
8529
8592
  taskEvent = aerie.table(
8530
8593
  "task_event",
8531
8594
  {
8532
- seq: bigserial({ mode: "number" }).primaryKey(),
8595
+ seq: bigserial({ mode: "number" }).notNull(),
8533
8596
  taskId: text("task_id").notNull(),
8534
8597
  at: at("at").notNull().defaultNow(),
8535
8598
  by: text().notNull(),
@@ -8537,25 +8600,33 @@ var init_schema2 = __esm({
8537
8600
  why: text(),
8538
8601
  body: jsonb().notNull().default({})
8539
8602
  },
8540
- (t) => [index("task_event_task_idx").on(t.taskId, t.seq)]
8603
+ (t) => [
8604
+ primaryKey({ columns: [t.seq], name: "pk_task_event" }),
8605
+ index("task_event_task_idx").on(t.taskId, t.seq)
8606
+ ]
8607
+ );
8608
+ milestone = aerie.table(
8609
+ "milestone",
8610
+ { id: text().notNull(), title: text().notNull(), description: text() },
8611
+ (t) => [primaryKey({ columns: [t.id], name: "pk_milestone" })]
8612
+ );
8613
+ mirrorFile = aerie.table(
8614
+ "mirror_file",
8615
+ {
8616
+ taskId: text("task_id").notNull(),
8617
+ path: text().notNull().unique(),
8618
+ hash: text().notNull(),
8619
+ /** the task's version when the mirror wrote: a file edit wins while the row has not moved */
8620
+ version: integer().notNull().default(0),
8621
+ at: at("at").notNull().defaultNow()
8622
+ },
8623
+ (t) => [primaryKey({ columns: [t.taskId], name: "pk_mirror_file" })]
8624
+ );
8625
+ setting = aerie.table(
8626
+ "setting",
8627
+ { key: text().notNull(), value: text().notNull() },
8628
+ (t) => [primaryKey({ columns: [t.key], name: "pk_setting" })]
8541
8629
  );
8542
- milestone = aerie.table("milestone", {
8543
- id: text().primaryKey(),
8544
- title: text().notNull(),
8545
- description: text()
8546
- });
8547
- mirrorFile = aerie.table("mirror_file", {
8548
- taskId: text("task_id").primaryKey(),
8549
- path: text().notNull().unique(),
8550
- hash: text().notNull(),
8551
- /** the task's version when the mirror wrote: a file edit wins while the row has not moved */
8552
- version: integer().notNull().default(0),
8553
- at: at("at").notNull().defaultNow()
8554
- });
8555
- setting = aerie.table("setting", {
8556
- key: text().primaryKey(),
8557
- value: text().notNull()
8558
- });
8559
8630
  coordGen = aerie.sequence("coord_gen");
8560
8631
  coordLease = aerie.table(
8561
8632
  "coord_lease",
@@ -8570,19 +8641,22 @@ var init_schema2 = __esm({
8570
8641
  lane: text(),
8571
8642
  pin: text()
8572
8643
  },
8573
- (t) => [primaryKey({ columns: [t.ns, t.taskId, t.holder] })]
8644
+ (t) => [primaryKey({ columns: [t.ns, t.taskId, t.holder], name: "pk_coord_lease" })]
8574
8645
  );
8575
8646
  coordClosing = aerie.table(
8576
8647
  "coord_closing",
8577
8648
  {
8578
- id: bigserial({ mode: "number" }).primaryKey(),
8649
+ id: bigserial({ mode: "number" }).notNull(),
8579
8650
  ns: text().notNull(),
8580
8651
  taskId: text("task_id").notNull(),
8581
8652
  holder: text().notNull(),
8582
8653
  reason: text().notNull(),
8583
8654
  at: at("at").notNull().defaultNow()
8584
8655
  },
8585
- (t) => [index("coord_closing_task_idx").on(t.ns, t.taskId)]
8656
+ (t) => [
8657
+ primaryKey({ columns: [t.id], name: "pk_coord_closing" }),
8658
+ index("coord_closing_task_idx").on(t.ns, t.taskId)
8659
+ ]
8586
8660
  );
8587
8661
  coordTask = aerie.table(
8588
8662
  "coord_task",
@@ -8591,7 +8665,7 @@ var init_schema2 = __esm({
8591
8665
  taskId: text("task_id").notNull(),
8592
8666
  updated: at("updated").notNull().defaultNow()
8593
8667
  },
8594
- (t) => [primaryKey({ columns: [t.ns, t.taskId] })]
8668
+ (t) => [primaryKey({ columns: [t.ns, t.taskId], name: "pk_coord_task" })]
8595
8669
  );
8596
8670
  coordQueue = aerie.table(
8597
8671
  "coord_queue",
@@ -8602,12 +8676,15 @@ var init_schema2 = __esm({
8602
8676
  pin: text(),
8603
8677
  pos: doublePrecision().notNull()
8604
8678
  },
8605
- (t) => [primaryKey({ columns: [t.ns, t.taskId] }), index("coord_queue_pos_idx").on(t.ns, t.pos)]
8679
+ (t) => [
8680
+ primaryKey({ columns: [t.ns, t.taskId], name: "pk_coord_queue" }),
8681
+ index("coord_queue_pos_idx").on(t.ns, t.pos)
8682
+ ]
8606
8683
  );
8607
8684
  decision = aerie.table(
8608
8685
  "decision",
8609
8686
  {
8610
- id: serial().primaryKey(),
8687
+ id: serial().notNull(),
8611
8688
  question: text().notNull(),
8612
8689
  /** [{ key, text, cost? }] */
8613
8690
  options: jsonb().notNull().default([]),
@@ -8617,7 +8694,7 @@ var init_schema2 = __esm({
8617
8694
  brief: text(),
8618
8695
  /** task ids this decision blocks */
8619
8696
  blocks: text().array().notNull().default(sql`'{}'::text[]`),
8620
- areaId: integer("area_id").references(() => area.id),
8697
+ areaId: integer("area_id"),
8621
8698
  askedBy: text("asked_by").notNull(),
8622
8699
  askedAt: at("asked_at").notNull().defaultNow(),
8623
8700
  due: at("due"),
@@ -8627,7 +8704,16 @@ var init_schema2 = __esm({
8627
8704
  answeredAt: at("answered_at"),
8628
8705
  why: text()
8629
8706
  },
8630
- (t) => [index("decision_open_idx").on(t.answeredAt)]
8707
+ (t) => [
8708
+ primaryKey({ columns: [t.id], name: "pk_decision" }),
8709
+ foreignKey({
8710
+ columns: [t.areaId],
8711
+ foreignColumns: [area.id],
8712
+ name: "fk_decision_area_id_area"
8713
+ }),
8714
+ index("decision_area_idx").on(t.areaId),
8715
+ index("decision_open_idx").on(t.answeredAt)
8716
+ ]
8631
8717
  );
8632
8718
  }
8633
8719
  });