@unisonlabs/sixminute-admin 0.1.1176-next → 0.1.1178-next

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.
@@ -21,7 +21,7 @@ import { homedir } from "node:os";
21
21
  import { fileURLToPath } from "node:url";
22
22
 
23
23
  // tools/admin/src/build-info.ts
24
- var BUILT = { version: "0.1.1176-next", commit: "e29549bfa51d4f19c66265cb76647e6f40ce8064", surface: "481c62497e7a2c35" };
24
+ var BUILT = { version: "0.1.1178-next", commit: "aa6661cb3f2161016ef4a04f9cca7ee4aafeea08", surface: "f5bb26b597e7d03c" };
25
25
 
26
26
  // tools/admin/src/run.ts
27
27
  import { rmSync as rmSync3 } from "node:fs";
@@ -4285,6 +4285,7 @@ var MatterSchema = exports_external.object({
4285
4285
  opened_at: TimestampSchema,
4286
4286
  closed_at: TimestampSchema.nullable().default(null),
4287
4287
  last_activity_at: TimestampSchema.nullable().default(null),
4288
+ firm_internal: exports_external.boolean().default(false),
4288
4289
  billing: MatterBillingSchema,
4289
4290
  attribute_sets: MatterAttributeSetsSchema.default({}),
4290
4291
  attribute_required: MatterAttributeRequiredSchema.default({}),
@@ -5076,7 +5077,8 @@ var MatterInputSchema = MatterSchema.omit({
5076
5077
  created_at: true,
5077
5078
  updated_at: true,
5078
5079
  attribute_required: true,
5079
- narrative_language: true
5080
+ narrative_language: true,
5081
+ firm_internal: true
5080
5082
  }).extend({
5081
5083
  id: MatterSchema.shape.id.optional(),
5082
5084
  opened_at: MatterSchema.shape.opened_at.optional()
@@ -5085,8 +5087,10 @@ var MatterPatchSchema = MatterSchema.omit({
5085
5087
  id: true,
5086
5088
  created_at: true,
5087
5089
  updated_at: true,
5088
- attribute_required: true
5090
+ attribute_required: true,
5091
+ firm_internal: true
5089
5092
  }).partial();
5093
+ var FirmInternalPutSchema = exports_external.object({ firm_internal: exports_external.boolean() });
5090
5094
  var AttributeSetPutSchema = AttributeSetSchema.omit({ updated_at: true });
5091
5095
  var AttributeSetsQuerySchema = exports_external.object({ attribute: AttributeKeySchema.optional() });
5092
5096
  var MatterImportSchema = exports_external.object({
@@ -5104,7 +5108,8 @@ var MatterImportSchema = exports_external.object({
5104
5108
  closed_at: true,
5105
5109
  last_activity_at: true,
5106
5110
  attribute_required: true,
5107
- narrative_language: true
5111
+ narrative_language: true,
5112
+ firm_internal: true
5108
5113
  }).extend({ opened_at: TimestampSchema.optional() })))
5109
5114
  })))
5110
5115
  });
@@ -5331,7 +5336,8 @@ var CompletionPurposeSchema = exports_external.enum([
5331
5336
  "merge",
5332
5337
  "merge_prose",
5333
5338
  "assign",
5334
- "judge"
5339
+ "judge",
5340
+ "judge_shortlist"
5335
5341
  ]);
5336
5342
  var CompletionDecisionSchema = exports_external.object({
5337
5343
  property: exports_external.string().min(1),
@@ -5911,7 +5917,8 @@ var JudgeTunablesSchema = exports_external.object({
5911
5917
  joinFewer: exports_external.number().min(0).max(1).optional(),
5912
5918
  joinDefault: exports_external.enum(["more", "balanced", "fewer"]).optional(),
5913
5919
  summaryMaxChars: exports_external.number().int().positive().optional(),
5914
- summaryStatedChars: exports_external.number().int().positive().optional()
5920
+ summaryStatedChars: exports_external.number().int().positive().optional(),
5921
+ shortlistDepth: exports_external.number().int().positive().optional()
5915
5922
  });
5916
5923
  var ServedJudgeTunablesSchema = JudgeTunablesSchema.extend({
5917
5924
  windowMinutes: exports_external.number(),
@@ -5944,6 +5951,8 @@ var ConfigPromptsSchema = exports_external.object({
5944
5951
  summary: SummaryPromptPartsSchema.optional(),
5945
5952
  matter: exports_external.string().min(1).optional(),
5946
5953
  matter_prior: exports_external.string().min(1).optional(),
5954
+ matter_own: exports_external.string().min(1).optional(),
5955
+ shortlist_judge: exports_external.string().min(1).optional(),
5947
5956
  block_boundary: exports_external.string().min(1).optional(),
5948
5957
  block_label: exports_external.string().min(1).optional(),
5949
5958
  join: exports_external.string().min(1).optional(),
@@ -7199,6 +7208,11 @@ is required; without one every command answers 403.
7199
7208
  sixminute-admin matter unarchive --env <env> --tenant tenant_... --matter matter_... [--json]
7200
7209
  Sets the matter inactive, or active again. A temporary matter with
7201
7210
  entries on it is refused: move the entries first.
7211
+ sixminute-admin matter internal --env <env> --tenant tenant_... --matter matter_... --on|--off [--json]
7212
+ Marks one matter as the firm's own (--on), so the matching lists it
7213
+ for every interval, or clears the mark (--off), and prints the matter
7214
+ as it now stands. Works on ANY firm, internal or not: the team sets up
7215
+ a pilot firm's internal matters during onboarding.
7202
7216
  sixminute-admin matters import --env <env> --tenant tenant_... --from-file tools/admin/examples/matters-import.json [--json]
7203
7217
  Clients with their matters, from a document: the file IS the body of
7204
7218
  POST /v1/matters/import, checked against its schema before anything is
@@ -7312,6 +7326,8 @@ var BOOLEAN_FLAGS = new Set([
7312
7326
  "password-stdin",
7313
7327
  "all",
7314
7328
  "timekeeper",
7329
+ "on",
7330
+ "off",
7315
7331
  "auto",
7316
7332
  "review"
7317
7333
  ]);
@@ -8072,6 +8088,17 @@ async function runMatter(run2, subcommand) {
8072
8088
  const matter = MatterSchema.parse(answer.body);
8073
8089
  return render(run2, { matter }, [actingHead(tenant, answer), ...matterLines(matter)]);
8074
8090
  }
8091
+ if (subcommand === "internal") {
8092
+ const id = required(flags, "matter", "which matter_... to mark (matter list prints them)");
8093
+ const [on, off] = [switched(flags, "on"), switched(flags, "off")];
8094
+ if (on === off)
8095
+ throw new AdminUsageError("say --on or --off: mark the matter as the firm's own, or clear the mark");
8096
+ const answer = await call(run2.api, "PUT", tenantPath(tenant, `/matters/${enc(id)}/firm-internal`), { firm_internal: on });
8097
+ if (answer.status !== 200)
8098
+ return refused(run2, answer, [actingHead(tenant, answer)]);
8099
+ const matter = MatterSchema.parse(answer.body);
8100
+ return render(run2, { matter }, [actingHead(tenant, answer), ...matterLines(matter), `internal ${matter.firm_internal ? "yes" : "no"}`]);
8101
+ }
8075
8102
  throw new AdminUsageError(`unknown command: matter ${subcommand ?? ""}`.trim());
8076
8103
  }
8077
8104
  async function runMattersImport(run2) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unisonlabs/sixminute-admin",
3
- "version": "0.1.1176-next",
3
+ "version": "0.1.1178-next",
4
4
  "description": "Sixminute operator tool: the admin commands of the Sixminute API, run with your own operator sign-in.",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {