@cat-factory/contracts 0.298.0 → 0.299.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.
@@ -729,8 +729,57 @@ export declare const publicWiredModelSchema: v.ObjectSchema<{
729
729
  * provider is wired" and takes the opposite remedy: bind a key to the subscription owner (or
730
730
  * start the run from the app) rather than add a provider key. A caller cannot derive this from
731
731
  * the rest of the row, which is why it is stated rather than left to be inferred from a label.
732
+ *
733
+ * SUPERSEDED by `personalSubscription`, and kept answering exactly as it always has: the
734
+ * subscription route is the one IN FORCE for this model. That reading has two faults this field
735
+ * cannot be corrected for without breaking a caller already branching on it. It is true of a
736
+ * POOLABLE vendor, whose token belongs to the workspace and which any key can therefore see; and
737
+ * it is false of a model that merely DECLARES a subscription beside a metered gateway, which is
738
+ * what `claude-opus` resolves to on a deployment with nothing configured. `personalSubscription`
739
+ * answers both correctly. Prefer it; this field will be removed in a future major version.
732
740
  */
733
741
  readonly userScoped: v.BooleanSchema<undefined>;
742
+ /**
743
+ * Whether this model runs on a credential that belongs to a PERSON: it declares a subscription
744
+ * route whose vendor is licensed for individual use only (Claude, Codex, GLM), so the credential
745
+ * is stored per user and no key that resolves no user can see it.
746
+ *
747
+ * Read off what the model DECLARES rather than off the route in force. A model reachable both by
748
+ * subscription and by a metered gateway resolves, with nothing configured, to the gateway, so
749
+ * reading the route in force reports the commonest personal credential of all (`claude-opus` on
750
+ * a Claude subscription) as plainly unwired.
751
+ *
752
+ * A POOLABLE vendor is deliberately NOT included, and that is the other half of the correction.
753
+ * Its token is held by the WORKSPACE, so a system token can see it and no identity is missing:
754
+ * reporting such a model as personal sends an operator to re-mint a key when the fix is a pooled
755
+ * token or a provider key.
756
+ */
757
+ readonly personalSubscription: v.BooleanSchema<undefined>;
758
+ /**
759
+ * Whether a personal subscription for this model's vendor IS stored for the person this key
760
+ * belongs to: its `actsAsUserId` when bound, else its minter. `null` when the question was not
761
+ * answered at all: there is no such person (a key provisioned headlessly through
762
+ * `POST /api/v1/keys`), the deployment stores no personal subscriptions, or the row is not
763
+ * `personalSubscription` and so has no vendor to ask about. `null` is NOT `false` and must not be
764
+ * read as one: "nobody was asked" and "asked, and there is none" send an operator to different
765
+ * screens.
766
+ *
767
+ * Only ever a statement about EXISTENCE, which is a row lookup: opening the credential needs the
768
+ * owner's personal password, and nothing here holds or wants one. That is what lets a system
769
+ * token be told the truth about a model it cannot run: `available: false` with
770
+ * `subscriptionConfigured: true` means the subscription is there and this token is not bound to
771
+ * it, so the remedy is to mint a personal key rather than to wire a provider.
772
+ *
773
+ * DISCLOSURE, stated because it is a deliberate trade rather than an oversight. When the key is
774
+ * unbound the person asked about is its MINTER, who need not be whoever holds the key: an
775
+ * `admin`-scoped key handed to CI or to a contractor learns one bit (a live personal subscription
776
+ * for this vendor exists / does not) about a named colleague, and about one who has since left
777
+ * the workspace too, since provenance is never re-validated against current membership. What
778
+ * contains it is that the bit is EXISTENCE only, never the person, never the vendor account and
779
+ * never the credential, and that the route floors at `admin` scope. The alternative, reporting
780
+ * for the workspace's members at large, is strictly more leakage for the same remedy.
781
+ */
782
+ readonly subscriptionConfigured: v.NullableSchema<v.BooleanSchema<undefined>, undefined>;
734
783
  }, undefined>;
735
784
  export type PublicWiredModel = v.InferOutput<typeof publicWiredModelSchema>;
736
785
  /**
@@ -745,11 +794,12 @@ export type PublicWiredModel = v.InferOutput<typeof publicWiredModelSchema>;
745
794
  * conflation `policyBlocked` exists to prevent, one level up: a third state, stated rather than
746
795
  * collapsed into a false.
747
796
  *
748
- * It answers for the models this read OMITS. The ones it lists but cannot judge are the row-level
749
- * `userScoped` flag's job, and the split is deliberate: a personal subscription's model IS in this
750
- * catalog (as unavailable), so reporting it here would say "something is missing" about an entry
751
- * the caller can see, while saying nothing about WHICH. A caller diagnosing one model wants the
752
- * row; a caller deciding whether the whole answer is complete wants the flag.
797
+ * It answers for the models this read OMITS. The ones it lists but could not run are the row-level
798
+ * `personalSubscription` / `subscriptionConfigured` pair's job, and the split is deliberate: a personal
799
+ * subscription's model IS in this catalog (as unavailable), so reporting it here would say
800
+ * "something is missing" about an entry the caller can see, while saying nothing about WHICH. A
801
+ * caller diagnosing one model wants the row; a caller deciding whether the whole answer is complete
802
+ * wants the flag.
753
803
  */
754
804
  export declare const publicWiredModelListSchema: v.ObjectSchema<{
755
805
  readonly models: v.ArraySchema<v.ObjectSchema<{
@@ -772,8 +822,57 @@ export declare const publicWiredModelListSchema: v.ObjectSchema<{
772
822
  * provider is wired" and takes the opposite remedy: bind a key to the subscription owner (or
773
823
  * start the run from the app) rather than add a provider key. A caller cannot derive this from
774
824
  * the rest of the row, which is why it is stated rather than left to be inferred from a label.
825
+ *
826
+ * SUPERSEDED by `personalSubscription`, and kept answering exactly as it always has: the
827
+ * subscription route is the one IN FORCE for this model. That reading has two faults this field
828
+ * cannot be corrected for without breaking a caller already branching on it. It is true of a
829
+ * POOLABLE vendor, whose token belongs to the workspace and which any key can therefore see; and
830
+ * it is false of a model that merely DECLARES a subscription beside a metered gateway, which is
831
+ * what `claude-opus` resolves to on a deployment with nothing configured. `personalSubscription`
832
+ * answers both correctly. Prefer it; this field will be removed in a future major version.
775
833
  */
776
834
  readonly userScoped: v.BooleanSchema<undefined>;
835
+ /**
836
+ * Whether this model runs on a credential that belongs to a PERSON: it declares a subscription
837
+ * route whose vendor is licensed for individual use only (Claude, Codex, GLM), so the credential
838
+ * is stored per user and no key that resolves no user can see it.
839
+ *
840
+ * Read off what the model DECLARES rather than off the route in force. A model reachable both by
841
+ * subscription and by a metered gateway resolves, with nothing configured, to the gateway, so
842
+ * reading the route in force reports the commonest personal credential of all (`claude-opus` on
843
+ * a Claude subscription) as plainly unwired.
844
+ *
845
+ * A POOLABLE vendor is deliberately NOT included, and that is the other half of the correction.
846
+ * Its token is held by the WORKSPACE, so a system token can see it and no identity is missing:
847
+ * reporting such a model as personal sends an operator to re-mint a key when the fix is a pooled
848
+ * token or a provider key.
849
+ */
850
+ readonly personalSubscription: v.BooleanSchema<undefined>;
851
+ /**
852
+ * Whether a personal subscription for this model's vendor IS stored for the person this key
853
+ * belongs to: its `actsAsUserId` when bound, else its minter. `null` when the question was not
854
+ * answered at all: there is no such person (a key provisioned headlessly through
855
+ * `POST /api/v1/keys`), the deployment stores no personal subscriptions, or the row is not
856
+ * `personalSubscription` and so has no vendor to ask about. `null` is NOT `false` and must not be
857
+ * read as one: "nobody was asked" and "asked, and there is none" send an operator to different
858
+ * screens.
859
+ *
860
+ * Only ever a statement about EXISTENCE, which is a row lookup: opening the credential needs the
861
+ * owner's personal password, and nothing here holds or wants one. That is what lets a system
862
+ * token be told the truth about a model it cannot run: `available: false` with
863
+ * `subscriptionConfigured: true` means the subscription is there and this token is not bound to
864
+ * it, so the remedy is to mint a personal key rather than to wire a provider.
865
+ *
866
+ * DISCLOSURE, stated because it is a deliberate trade rather than an oversight. When the key is
867
+ * unbound the person asked about is its MINTER, who need not be whoever holds the key: an
868
+ * `admin`-scoped key handed to CI or to a contractor learns one bit (a live personal subscription
869
+ * for this vendor exists / does not) about a named colleague, and about one who has since left
870
+ * the workspace too, since provenance is never re-validated against current membership. What
871
+ * contains it is that the bit is EXISTENCE only, never the person, never the vendor account and
872
+ * never the credential, and that the route floors at `admin` scope. The alternative, reporting
873
+ * for the workspace's members at large, is strictly more leakage for the same remedy.
874
+ */
875
+ readonly subscriptionConfigured: v.NullableSchema<v.BooleanSchema<undefined>, undefined>;
777
876
  }, undefined>, undefined>;
778
877
  /** Whether per-user locally-run endpoints exist here that this read could not enumerate. */
779
878
  readonly excludesUserScopedModels: v.BooleanSchema<undefined>;
@@ -935,4 +1034,81 @@ export declare const publicModelPresetListSchema: v.ObjectSchema<{
935
1034
  }, undefined>, undefined>;
936
1035
  }, undefined>;
937
1036
  export type PublicModelPresetList = v.InferOutput<typeof publicModelPresetListSchema>;
1037
+ /**
1038
+ * What the platform does to a task's linked tracker issue as its pull request progresses.
1039
+ *
1040
+ * Three independent actions rather than one switch, because they are answerable separately: a
1041
+ * workspace can want the merge recorded on the ticket without wanting a parked review's questions
1042
+ * asked there. Each is `true`/`false` here and not the internal `'on' | 'off'` override vocabulary,
1043
+ * which belongs to the PER-TASK field this setting is the default for.
1044
+ *
1045
+ * The names drop the internal `writeback` prefix, which the nesting already says.
1046
+ */
1047
+ export declare const publicTrackerWritebackSchema: v.ObjectSchema<{
1048
+ /** Comment on the linked issue when a task's pull request opens. */
1049
+ readonly commentOnPrOpen: v.BooleanSchema<undefined>;
1050
+ /** Comment and CLOSE the linked issue when the pull request merges. */
1051
+ readonly resolveOnMerge: v.BooleanSchema<undefined>;
1052
+ /**
1053
+ * Post a headless run's parked requirements-review findings on the linked issue, so the
1054
+ * reporter can answer where they filed. Only consulted for runs started through this API or
1055
+ * dispatched from a ticket (`backend/docs/adr/0047-headless-clarification-loop.md`).
1056
+ */
1057
+ readonly questionsOnPark: v.BooleanSchema<undefined>;
1058
+ }, undefined>;
1059
+ export type PublicTrackerWriteback = v.InferOutput<typeof publicTrackerWritebackSchema>;
1060
+ /**
1061
+ * The workspace's writeback disposition, and whether anyone has ever chosen it.
1062
+ *
1063
+ * **Writeback only, deliberately, though the row it reads holds more.** The rest of
1064
+ * `tracker_settings` is the FILING selection (which tracker the tech-debt recurring pipeline raises
1065
+ * its ticket on, plus that vendor's target: a Jira project key, a Linear team). That is a different
1066
+ * decision with its own cross-field rules, and it is not what writeback keys off: the writeback
1067
+ * follows each LINKED issue's own source, so a workspace with no filing tracker selected still
1068
+ * writes back to the GitHub issue a task was filed from. Publishing the two together would invite
1069
+ * exactly the misreading that one gates the other. The filing half can be added here later, which
1070
+ * is why the path is `/tracker/writeback` under a `tracker` group rather than the whole row.
1071
+ */
1072
+ export declare const publicTrackerWritebackSettingsSchema: v.ObjectSchema<{
1073
+ readonly writeback: v.ObjectSchema<{
1074
+ /** Comment on the linked issue when a task's pull request opens. */
1075
+ readonly commentOnPrOpen: v.BooleanSchema<undefined>;
1076
+ /** Comment and CLOSE the linked issue when the pull request merges. */
1077
+ readonly resolveOnMerge: v.BooleanSchema<undefined>;
1078
+ /**
1079
+ * Post a headless run's parked requirements-review findings on the linked issue, so the
1080
+ * reporter can answer where they filed. Only consulted for runs started through this API or
1081
+ * dispatched from a ticket (`backend/docs/adr/0047-headless-clarification-loop.md`).
1082
+ */
1083
+ readonly questionsOnPark: v.BooleanSchema<undefined>;
1084
+ }, undefined>;
1085
+ /**
1086
+ * When the workspace last saved its writeback disposition, or NULL when it never has, in which
1087
+ * case the values above are this deployment's defaults rather than anyone's choice.
1088
+ *
1089
+ * Null rather than a `0`, which is what the internal read spells an absent row as: an epoch
1090
+ * timestamp is a value a caller can format, print and compare, and every one of those reads as a
1091
+ * setting saved in 1970 rather than as one nobody has touched.
1092
+ */
1093
+ readonly updatedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
1094
+ }, undefined>;
1095
+ export type PublicTrackerWritebackSettings = v.InferOutput<typeof publicTrackerWritebackSettingsSchema>;
1096
+ /**
1097
+ * Change one or more writeback actions, leaving the rest as they are.
1098
+ *
1099
+ * A genuine PATCH, unlike the internal `PUT /tracker-settings` it writes through, which replaces
1100
+ * the row wholesale and resets an omitted flag to the default. The SPA's panel can send all three
1101
+ * every time because it has just rendered all three; a caller here is acting on one decision, and a
1102
+ * merge is the only semantics under which doing so cannot silently move the other two.
1103
+ *
1104
+ * An empty patch is a harmless no-op, exactly as it is on task update.
1105
+ */
1106
+ export declare const updatePublicTrackerWritebackSchema: v.ObjectSchema<{
1107
+ readonly writeback: v.OptionalSchema<v.ObjectSchema<{
1108
+ readonly commentOnPrOpen: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
1109
+ readonly resolveOnMerge: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
1110
+ readonly questionsOnPark: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
1111
+ }, undefined>, undefined>;
1112
+ }, undefined>;
1113
+ export type UpdatePublicTrackerWritebackInput = v.InferOutput<typeof updatePublicTrackerWritebackSchema>;
938
1114
  //# sourceMappingURL=public-provisioning.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-provisioning.d.ts","sourceRoot":"","sources":["../src/public-provisioning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-provisioning.d.ts","sourceRoot":"","sources":["../src/public-provisioning.ts"],"names":[],"mappings":"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"}
@@ -485,8 +485,57 @@ export const publicWiredModelSchema = v.object({
485
485
  * provider is wired" and takes the opposite remedy: bind a key to the subscription owner (or
486
486
  * start the run from the app) rather than add a provider key. A caller cannot derive this from
487
487
  * the rest of the row, which is why it is stated rather than left to be inferred from a label.
488
+ *
489
+ * SUPERSEDED by `personalSubscription`, and kept answering exactly as it always has: the
490
+ * subscription route is the one IN FORCE for this model. That reading has two faults this field
491
+ * cannot be corrected for without breaking a caller already branching on it. It is true of a
492
+ * POOLABLE vendor, whose token belongs to the workspace and which any key can therefore see; and
493
+ * it is false of a model that merely DECLARES a subscription beside a metered gateway, which is
494
+ * what `claude-opus` resolves to on a deployment with nothing configured. `personalSubscription`
495
+ * answers both correctly. Prefer it; this field will be removed in a future major version.
488
496
  */
489
497
  userScoped: v.boolean(),
498
+ /**
499
+ * Whether this model runs on a credential that belongs to a PERSON: it declares a subscription
500
+ * route whose vendor is licensed for individual use only (Claude, Codex, GLM), so the credential
501
+ * is stored per user and no key that resolves no user can see it.
502
+ *
503
+ * Read off what the model DECLARES rather than off the route in force. A model reachable both by
504
+ * subscription and by a metered gateway resolves, with nothing configured, to the gateway, so
505
+ * reading the route in force reports the commonest personal credential of all (`claude-opus` on
506
+ * a Claude subscription) as plainly unwired.
507
+ *
508
+ * A POOLABLE vendor is deliberately NOT included, and that is the other half of the correction.
509
+ * Its token is held by the WORKSPACE, so a system token can see it and no identity is missing:
510
+ * reporting such a model as personal sends an operator to re-mint a key when the fix is a pooled
511
+ * token or a provider key.
512
+ */
513
+ personalSubscription: v.boolean(),
514
+ /**
515
+ * Whether a personal subscription for this model's vendor IS stored for the person this key
516
+ * belongs to: its `actsAsUserId` when bound, else its minter. `null` when the question was not
517
+ * answered at all: there is no such person (a key provisioned headlessly through
518
+ * `POST /api/v1/keys`), the deployment stores no personal subscriptions, or the row is not
519
+ * `personalSubscription` and so has no vendor to ask about. `null` is NOT `false` and must not be
520
+ * read as one: "nobody was asked" and "asked, and there is none" send an operator to different
521
+ * screens.
522
+ *
523
+ * Only ever a statement about EXISTENCE, which is a row lookup: opening the credential needs the
524
+ * owner's personal password, and nothing here holds or wants one. That is what lets a system
525
+ * token be told the truth about a model it cannot run: `available: false` with
526
+ * `subscriptionConfigured: true` means the subscription is there and this token is not bound to
527
+ * it, so the remedy is to mint a personal key rather than to wire a provider.
528
+ *
529
+ * DISCLOSURE, stated because it is a deliberate trade rather than an oversight. When the key is
530
+ * unbound the person asked about is its MINTER, who need not be whoever holds the key: an
531
+ * `admin`-scoped key handed to CI or to a contractor learns one bit (a live personal subscription
532
+ * for this vendor exists / does not) about a named colleague, and about one who has since left
533
+ * the workspace too, since provenance is never re-validated against current membership. What
534
+ * contains it is that the bit is EXISTENCE only, never the person, never the vendor account and
535
+ * never the credential, and that the route floors at `admin` scope. The alternative, reporting
536
+ * for the workspace's members at large, is strictly more leakage for the same remedy.
537
+ */
538
+ subscriptionConfigured: v.nullable(v.boolean()),
490
539
  });
491
540
  /**
492
541
  * The catalog, plus the one thing the catalog itself cannot say.
@@ -500,11 +549,12 @@ export const publicWiredModelSchema = v.object({
500
549
  * conflation `policyBlocked` exists to prevent, one level up: a third state, stated rather than
501
550
  * collapsed into a false.
502
551
  *
503
- * It answers for the models this read OMITS. The ones it lists but cannot judge are the row-level
504
- * `userScoped` flag's job, and the split is deliberate: a personal subscription's model IS in this
505
- * catalog (as unavailable), so reporting it here would say "something is missing" about an entry
506
- * the caller can see, while saying nothing about WHICH. A caller diagnosing one model wants the
507
- * row; a caller deciding whether the whole answer is complete wants the flag.
552
+ * It answers for the models this read OMITS. The ones it lists but could not run are the row-level
553
+ * `personalSubscription` / `subscriptionConfigured` pair's job, and the split is deliberate: a personal
554
+ * subscription's model IS in this catalog (as unavailable), so reporting it here would say
555
+ * "something is missing" about an entry the caller can see, while saying nothing about WHICH. A
556
+ * caller diagnosing one model wants the row; a caller deciding whether the whole answer is complete
557
+ * wants the flag.
508
558
  */
509
559
  export const publicWiredModelListSchema = v.object({
510
560
  models: v.array(publicWiredModelSchema),
@@ -614,4 +664,68 @@ export const publicModelPresetSchema = v.object({
614
664
  overrides: v.record(v.string(), v.string()),
615
665
  });
616
666
  export const publicModelPresetListSchema = v.object({ presets: v.array(publicModelPresetSchema) });
667
+ // ---- the workspace's tracker WRITEBACK disposition ----------------------------
668
+ /**
669
+ * What the platform does to a task's linked tracker issue as its pull request progresses.
670
+ *
671
+ * Three independent actions rather than one switch, because they are answerable separately: a
672
+ * workspace can want the merge recorded on the ticket without wanting a parked review's questions
673
+ * asked there. Each is `true`/`false` here and not the internal `'on' | 'off'` override vocabulary,
674
+ * which belongs to the PER-TASK field this setting is the default for.
675
+ *
676
+ * The names drop the internal `writeback` prefix, which the nesting already says.
677
+ */
678
+ export const publicTrackerWritebackSchema = v.object({
679
+ /** Comment on the linked issue when a task's pull request opens. */
680
+ commentOnPrOpen: v.boolean(),
681
+ /** Comment and CLOSE the linked issue when the pull request merges. */
682
+ resolveOnMerge: v.boolean(),
683
+ /**
684
+ * Post a headless run's parked requirements-review findings on the linked issue, so the
685
+ * reporter can answer where they filed. Only consulted for runs started through this API or
686
+ * dispatched from a ticket (`backend/docs/adr/0047-headless-clarification-loop.md`).
687
+ */
688
+ questionsOnPark: v.boolean(),
689
+ });
690
+ /**
691
+ * The workspace's writeback disposition, and whether anyone has ever chosen it.
692
+ *
693
+ * **Writeback only, deliberately, though the row it reads holds more.** The rest of
694
+ * `tracker_settings` is the FILING selection (which tracker the tech-debt recurring pipeline raises
695
+ * its ticket on, plus that vendor's target: a Jira project key, a Linear team). That is a different
696
+ * decision with its own cross-field rules, and it is not what writeback keys off: the writeback
697
+ * follows each LINKED issue's own source, so a workspace with no filing tracker selected still
698
+ * writes back to the GitHub issue a task was filed from. Publishing the two together would invite
699
+ * exactly the misreading that one gates the other. The filing half can be added here later, which
700
+ * is why the path is `/tracker/writeback` under a `tracker` group rather than the whole row.
701
+ */
702
+ export const publicTrackerWritebackSettingsSchema = v.object({
703
+ writeback: publicTrackerWritebackSchema,
704
+ /**
705
+ * When the workspace last saved its writeback disposition, or NULL when it never has, in which
706
+ * case the values above are this deployment's defaults rather than anyone's choice.
707
+ *
708
+ * Null rather than a `0`, which is what the internal read spells an absent row as: an epoch
709
+ * timestamp is a value a caller can format, print and compare, and every one of those reads as a
710
+ * setting saved in 1970 rather than as one nobody has touched.
711
+ */
712
+ updatedAt: v.nullable(v.number()),
713
+ });
714
+ /**
715
+ * Change one or more writeback actions, leaving the rest as they are.
716
+ *
717
+ * A genuine PATCH, unlike the internal `PUT /tracker-settings` it writes through, which replaces
718
+ * the row wholesale and resets an omitted flag to the default. The SPA's panel can send all three
719
+ * every time because it has just rendered all three; a caller here is acting on one decision, and a
720
+ * merge is the only semantics under which doing so cannot silently move the other two.
721
+ *
722
+ * An empty patch is a harmless no-op, exactly as it is on task update.
723
+ */
724
+ export const updatePublicTrackerWritebackSchema = v.object({
725
+ writeback: v.optional(v.object({
726
+ commentOnPrOpen: v.optional(v.boolean()),
727
+ resolveOnMerge: v.optional(v.boolean()),
728
+ questionsOnPark: v.optional(v.boolean()),
729
+ })),
730
+ });
617
731
  //# sourceMappingURL=public-provisioning.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-provisioning.js","sourceRoot":"","sources":["../src/public-provisioning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-provisioning.js","sourceRoot":"","sources":["../src/public-provisioning.ts"],"names":[],"mappings":"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"}
@@ -530,7 +530,10 @@ export declare const updatePublicServiceContract: {
530
530
  readonly minScope: "admin";
531
531
  };
532
532
  /**
533
- * The workspace's model catalog, with the two flags that decide whether a run can dispatch.
533
+ * The workspace's model catalog, with the flags that decide whether a run can dispatch and which of
534
+ * four unrelated fixes an unrunnable model needs: `available`, `policyBlocked`,
535
+ * `personalSubscription` and `subscriptionConfigured`. Each is documented on
536
+ * `publicWiredModelSchema`, which is where a caller reading the field learns what `null` means.
534
537
  *
535
538
  * The alternative to serving this is not a different call, it is a caller discovering an unwired
536
539
  * model forty minutes into a run it has already paid for.
@@ -569,6 +572,8 @@ export declare const listPublicWiredModelsContract: {
569
572
  readonly available: v.BooleanSchema<undefined>;
570
573
  readonly policyBlocked: v.BooleanSchema<undefined>;
571
574
  readonly userScoped: v.BooleanSchema<undefined>;
575
+ readonly personalSubscription: v.BooleanSchema<undefined>;
576
+ readonly subscriptionConfigured: v.NullableSchema<v.BooleanSchema<undefined>, undefined>;
572
577
  }, undefined>, undefined>;
573
578
  readonly excludesUserScopedModels: v.BooleanSchema<undefined>;
574
579
  }, undefined>;
@@ -724,4 +729,103 @@ export declare const listPublicModelPresetsContract: {
724
729
  } & {
725
730
  readonly minScope: "admin";
726
731
  };
732
+ /**
733
+ * What this workspace does to a task's linked tracker issue as its pull request progresses.
734
+ *
735
+ * Worth reading before a caller files a ticket-linked task, because it is what decides whether the
736
+ * issue the work came from ever hears about the outcome. It also keeps two states apart that a
737
+ * caller cannot otherwise tell apart: a disposition somebody CHOSE, and the deployment defaults a
738
+ * workspace that has never opened the panel runs on (`updatedAt: null`).
739
+ */
740
+ export declare const getPublicTrackerWritebackContract: {
741
+ readonly method: "get";
742
+ readonly pathResolver: () => string;
743
+ readonly responsesByStatusCode: {
744
+ readonly '4xx': v.ObjectSchema<{
745
+ readonly error: v.ObjectSchema<{
746
+ readonly code: v.StringSchema<undefined>;
747
+ readonly message: v.StringSchema<undefined>;
748
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
749
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
750
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
751
+ readonly message: v.StringSchema<undefined>;
752
+ }, undefined>, undefined>, undefined>;
753
+ }, undefined>;
754
+ }, undefined>;
755
+ readonly '5xx': v.ObjectSchema<{
756
+ readonly error: v.ObjectSchema<{
757
+ readonly code: v.StringSchema<undefined>;
758
+ readonly message: v.StringSchema<undefined>;
759
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
760
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
761
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
762
+ readonly message: v.StringSchema<undefined>;
763
+ }, undefined>, undefined>, undefined>;
764
+ }, undefined>;
765
+ }, undefined>;
766
+ readonly 200: v.ObjectSchema<{
767
+ readonly writeback: v.ObjectSchema<{
768
+ readonly commentOnPrOpen: v.BooleanSchema<undefined>;
769
+ readonly resolveOnMerge: v.BooleanSchema<undefined>;
770
+ readonly questionsOnPark: v.BooleanSchema<undefined>;
771
+ }, undefined>;
772
+ readonly updatedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
773
+ }, undefined>;
774
+ };
775
+ } & {
776
+ readonly minScope: "admin";
777
+ };
778
+ /**
779
+ * Change this workspace's writeback disposition, one action at a time if that is all it decides.
780
+ *
781
+ * `admin` on this file's rule, and here the stronger argument applies: it is workspace-wide
782
+ * configuration, so a caller enabling `resolveOnMerge` changes what happens to every other task's
783
+ * ticket on the board too. That is precisely why it MERGES rather than replacing, and why the read
784
+ * beside it reports `updatedAt`: a caller can see it is about to overwrite somebody's choice.
785
+ */
786
+ export declare const updatePublicTrackerWritebackContract: {
787
+ readonly method: "patch";
788
+ readonly pathResolver: () => string;
789
+ readonly requestBodySchema: v.ObjectSchema<{
790
+ readonly writeback: v.OptionalSchema<v.ObjectSchema<{
791
+ readonly commentOnPrOpen: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
792
+ readonly resolveOnMerge: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
793
+ readonly questionsOnPark: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
794
+ }, undefined>, undefined>;
795
+ }, undefined>;
796
+ readonly responsesByStatusCode: {
797
+ readonly '4xx': v.ObjectSchema<{
798
+ readonly error: v.ObjectSchema<{
799
+ readonly code: v.StringSchema<undefined>;
800
+ readonly message: v.StringSchema<undefined>;
801
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
802
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
803
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
804
+ readonly message: v.StringSchema<undefined>;
805
+ }, undefined>, undefined>, undefined>;
806
+ }, undefined>;
807
+ }, undefined>;
808
+ readonly '5xx': v.ObjectSchema<{
809
+ readonly error: v.ObjectSchema<{
810
+ readonly code: v.StringSchema<undefined>;
811
+ readonly message: v.StringSchema<undefined>;
812
+ readonly details: v.OptionalSchema<v.UnknownSchema, undefined>;
813
+ readonly issues: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
814
+ readonly path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
815
+ readonly message: v.StringSchema<undefined>;
816
+ }, undefined>, undefined>, undefined>;
817
+ }, undefined>;
818
+ }, undefined>;
819
+ readonly 200: v.ObjectSchema<{
820
+ readonly writeback: v.ObjectSchema<{
821
+ readonly commentOnPrOpen: v.BooleanSchema<undefined>;
822
+ readonly resolveOnMerge: v.BooleanSchema<undefined>;
823
+ readonly questionsOnPark: v.BooleanSchema<undefined>;
824
+ }, undefined>;
825
+ readonly updatedAt: v.NullableSchema<v.NumberSchema<undefined>, undefined>;
826
+ }, undefined>;
827
+ };
828
+ } & {
829
+ readonly minScope: "admin";
830
+ };
727
831
  //# sourceMappingURL=public-provisioning.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-provisioning.d.ts","sourceRoot":"","sources":["../../src/routes/public-provisioning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AA+C5B;;;;;;;GAOG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ5C,CAAA;AAID;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ5C,CAAA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQlC,CAAA;AAED,qFAAqF;AACrF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ1C,CAAA;AAID;;;;;;;;GAQG;AACH,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQnD,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ5C,CAAA;AAID;;;;;;;;;;GAUG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASvC,CAAA;AAID;;;;;GAKG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOzC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAO1C,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAO1C,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAO1C,CAAA"}
1
+ {"version":3,"file":"public-provisioning.d.ts","sourceRoot":"","sources":["../../src/routes/public-provisioning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAiD5B;;;;;;;GAOG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ5C,CAAA;AAID;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ5C,CAAA;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQlC,CAAA;AAED,qFAAqF;AACrF,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ1C,CAAA;AAID;;;;;;;;GAQG;AACH,eAAO,MAAM,uCAAuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQnD,CAAA;AAED;;;;;;GAMG;AACH,eAAO,MAAM,gCAAgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQ5C,CAAA;AAID;;;;;;;;;;GAUG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CASvC,CAAA;AAID;;;;;;;;GAQG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAOzC,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAO1C,CAAA;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAO1C,CAAA;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,8BAA8B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAO1C,CAAA;AAID;;;;;;;GAOG;AACH,eAAO,MAAM,iCAAiC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAO7C,CAAA;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,oCAAoC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAQhD,CAAA"}
@@ -1,6 +1,6 @@
1
1
  import * as v from 'valibot';
2
2
  import { defineApiContract } from '@toad-contracts/valibot';
3
- import { connectPublicEnvironmentSchema, linkPublicRepoSchema, publicAvailableRepoListSchema, publicBootstrapJobSchema, publicBootstrapRepoSchema, publicEnvironmentConnectionTestSchema, publicEnvironmentConnectionViewSchema, publicModelPresetListSchema, publicRiskPolicyListSchema, publicVcsConnectionViewSchema, publicWiredModelListSchema, testPublicEnvironmentConnectionSchema, updatePublicServiceSchema, } from '../public-provisioning.js';
3
+ import { connectPublicEnvironmentSchema, linkPublicRepoSchema, publicAvailableRepoListSchema, publicBootstrapJobSchema, publicBootstrapRepoSchema, publicEnvironmentConnectionTestSchema, publicEnvironmentConnectionViewSchema, publicModelPresetListSchema, publicRiskPolicyListSchema, publicTrackerWritebackSettingsSchema, publicVcsConnectionViewSchema, publicWiredModelListSchema, testPublicEnvironmentConnectionSchema, updatePublicServiceSchema, updatePublicTrackerWritebackSchema, } from '../public-provisioning.js';
4
4
  import { publicServiceSchema } from '../public-api.js';
5
5
  import { publicRepoSchema } from '../public-board.js';
6
6
  import { errorResponses, singleStringParam, withMinScope } from './_shared.js';
@@ -143,7 +143,10 @@ export const updatePublicServiceContract = withMinScope('admin', defineApiContra
143
143
  }));
144
144
  // ---- what this deployment has WIRED -----------------------------------------
145
145
  /**
146
- * The workspace's model catalog, with the two flags that decide whether a run can dispatch.
146
+ * The workspace's model catalog, with the flags that decide whether a run can dispatch and which of
147
+ * four unrelated fixes an unrunnable model needs: `available`, `policyBlocked`,
148
+ * `personalSubscription` and `subscriptionConfigured`. Each is documented on
149
+ * `publicWiredModelSchema`, which is where a caller reading the field learns what `null` means.
147
150
  *
148
151
  * The alternative to serving this is not a different call, it is a caller discovering an unwired
149
152
  * model forty minutes into a run it has already paid for.
@@ -197,4 +200,32 @@ export const listPublicModelPresetsContract = withMinScope('admin', defineApiCon
197
200
  pathResolver: () => '/api/v1/model-presets',
198
201
  responsesByStatusCode: { 200: publicModelPresetListSchema, ...errorResponses },
199
202
  }));
203
+ // ---- the workspace's tracker writeback disposition ---------------------------
204
+ /**
205
+ * What this workspace does to a task's linked tracker issue as its pull request progresses.
206
+ *
207
+ * Worth reading before a caller files a ticket-linked task, because it is what decides whether the
208
+ * issue the work came from ever hears about the outcome. It also keeps two states apart that a
209
+ * caller cannot otherwise tell apart: a disposition somebody CHOSE, and the deployment defaults a
210
+ * workspace that has never opened the panel runs on (`updatedAt: null`).
211
+ */
212
+ export const getPublicTrackerWritebackContract = withMinScope('admin', defineApiContract({
213
+ method: 'get',
214
+ pathResolver: () => '/api/v1/tracker/writeback',
215
+ responsesByStatusCode: { 200: publicTrackerWritebackSettingsSchema, ...errorResponses },
216
+ }));
217
+ /**
218
+ * Change this workspace's writeback disposition, one action at a time if that is all it decides.
219
+ *
220
+ * `admin` on this file's rule, and here the stronger argument applies: it is workspace-wide
221
+ * configuration, so a caller enabling `resolveOnMerge` changes what happens to every other task's
222
+ * ticket on the board too. That is precisely why it MERGES rather than replacing, and why the read
223
+ * beside it reports `updatedAt`: a caller can see it is about to overwrite somebody's choice.
224
+ */
225
+ export const updatePublicTrackerWritebackContract = withMinScope('admin', defineApiContract({
226
+ method: 'patch',
227
+ pathResolver: () => '/api/v1/tracker/writeback',
228
+ requestBodySchema: updatePublicTrackerWritebackSchema,
229
+ responsesByStatusCode: { 200: publicTrackerWritebackSettingsSchema, ...errorResponses },
230
+ }));
200
231
  //# sourceMappingURL=public-provisioning.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-provisioning.js","sourceRoot":"","sources":["../../src/routes/public-provisioning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-provisioning.js","sourceRoot":"","sources":["../../src/routes/public-provisioning.ts"],"names":[],"mappings":"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"}
package/dist/tracker.d.ts CHANGED
@@ -10,20 +10,23 @@ export declare const trackerSettingsSchema: v.ObjectSchema<{
10
10
  readonly linearTeamId: v.NullableSchema<v.StringSchema<undefined>, undefined>;
11
11
  /**
12
12
  * Writeback: when a task's PR opens, post a comment on the task's linked tracker
13
- * issue(s). Per-task overridable via `Block.trackerCommentOnPrOpen`. Default off.
13
+ * issue(s). Per-task overridable via `Block.trackerCommentOnPrOpen`; the default a
14
+ * workspace that has set nothing runs on is {@link DEFAULT_TRACKER_WRITEBACK}.
14
15
  */
15
16
  readonly writebackCommentOnPrOpen: v.BooleanSchema<undefined>;
16
17
  /**
17
18
  * Writeback: when a task's PR merges, comment + close the linked tracker issue(s)
18
19
  * as resolved (GitHub closes natively; Jira transitions to its Done category).
19
- * Per-task overridable via `Block.trackerResolveOnMerge`. Default off.
20
+ * Per-task overridable via `Block.trackerResolveOnMerge`; default
21
+ * {@link DEFAULT_TRACKER_WRITEBACK}.
20
22
  */
21
23
  readonly writebackResolveOnMerge: v.BooleanSchema<undefined>;
22
24
  /**
23
25
  * Writeback: when a HEADLESS run's requirements review parks with open findings, post
24
26
  * them — each with its stable finding id — as a comment on the task's linked tracker
25
27
  * issue(s), so the loop is answerable from where the work was requested. Per-task
26
- * overridable via `Block.trackerQuestionsOnPark`. Default off.
28
+ * overridable via `Block.trackerQuestionsOnPark`; default
29
+ * {@link DEFAULT_TRACKER_WRITEBACK}.
27
30
  *
28
31
  * Deliberately scoped to runs whose `ExecutionInstance.intakeOrigin` is HEADLESS
29
32
  * (`isHeadlessIntake`: a `/api/v1` start or a per-ticket tracker dispatch): a task started
@@ -34,7 +37,50 @@ export declare const trackerSettingsSchema: v.ObjectSchema<{
34
37
  readonly updatedAt: v.NumberSchema<undefined>;
35
38
  }, undefined>;
36
39
  export type TrackerSettings = v.InferOutput<typeof trackerSettingsSchema>;
37
- /** Set a workspace's issue-tracker selection. */
40
+ /** The three writeback actions, as they are spelled on a workspace's settings row. */
41
+ export type TrackerWritebackFlags = Pick<TrackerSettings, 'writebackCommentOnPrOpen' | 'writebackResolveOnMerge' | 'writebackQuestionsOnPark'>;
42
+ /**
43
+ * What each writeback action does for a workspace that has never set one.
44
+ *
45
+ * **ON, and that is a deliberate change of stance** (it was off for all three). The action only
46
+ * ever touches an issue a task is LINKED to, and nothing links one by accident: a link arrives by
47
+ * an operator importing an issue, by the recurring intake picking one up, or by a headless caller
48
+ * filing a task with `ticket`. Every one of those is a request to work the issue where it was
49
+ * filed, so leaving the loop half-closed by default meant the common outcome was a merged pull
50
+ * request and an issue still sitting open, with nothing on it saying the work had been done. The
51
+ * writeback is what makes the tracker, rather than this platform's own board, the place the
52
+ * reporter can keep watching.
53
+ *
54
+ * ONE constant rather than a literal per reader, because three readers have to agree about it: the
55
+ * settings service (what an absent row reports, and what the row is seeded with on first write),
56
+ * the writeback service (what it does when no row exists), and the SPA's store (what the toggles
57
+ * show before a row does). They disagreed here once already, and the failure is silent both ways
58
+ * round: a reader defaulting off never posts and logs nothing, and one defaulting on closes issues
59
+ * a panel is drawing as off.
60
+ *
61
+ * It is a SEED and never a reset. No write path fills an omitted action in from here: absence means
62
+ * the caller is not moving that action, which is the rule on both the internal PUT and
63
+ * `PATCH /api/v1/tracker/writeback`. Filling one in would make every partial write carry these
64
+ * values into a workspace that had chosen otherwise, and this flip to ON is exactly when that stops
65
+ * being harmless.
66
+ */
67
+ export declare const DEFAULT_TRACKER_WRITEBACK: TrackerWritebackFlags;
68
+ /**
69
+ * Set a workspace's issue-tracker FILING selection, and optionally move writeback actions with it.
70
+ *
71
+ * The filing half (`tracker` plus that vendor's target) is a wholesale replace, which is why
72
+ * `tracker` is the one required field: those three are one decision, and a caller editing it has
73
+ * the whole of it in front of them.
74
+ *
75
+ * The writeback half MERGES. An omitted action keeps whatever the row holds, and a caller that
76
+ * names none moves none, which is what lets a dialog about something else (the recurring
77
+ * tech-debt schedule, which persists the filing tracker) touch this row without deciding a
78
+ * workspace's writeback policy as a side effect. A caller that wants
79
+ * {@link DEFAULT_TRACKER_WRITEBACK} sends those values.
80
+ *
81
+ * `PATCH /api/v1/tracker/writeback` is the writeback half on its own, for a caller with no business
82
+ * naming a filing tracker.
83
+ */
38
84
  export declare const putTrackerSettingsSchema: v.ObjectSchema<{
39
85
  readonly tracker: v.NullableSchema<v.PicklistSchema<["github", "jira", "linear"], undefined>, undefined>;
40
86
  readonly jiraProjectKey: v.OptionalSchema<v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.TrimAction]>, undefined>, undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAY5B,eAAO,MAAM,iBAAiB,2DAA2C,CAAA;AACzE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEjE,oFAAoF;AACpF,eAAO,MAAM,qBAAqB;;IAEhC,mFAAmF;;IAEnF,uEAAuE;;IAEvE;;;OAGG;;IAEH;;;;OAIG;;IAEH;;;;;;;;;;OAUG;;;aAGH,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEzE,iDAAiD;AACjD,eAAO,MAAM,wBAAwB;;;;;;;aAOnC,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA"}
1
+ {"version":3,"file":"tracker.d.ts","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAY5B,eAAO,MAAM,iBAAiB,2DAA2C,CAAA;AACzE,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAEjE,oFAAoF;AACpF,eAAO,MAAM,qBAAqB;;IAEhC,mFAAmF;;IAEnF,uEAAuE;;IAEvE;;;;OAIG;;IAEH;;;;;OAKG;;IAEH;;;;;;;;;;;OAWG;;;aAGH,CAAA;AACF,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,qBAAqB,CAAC,CAAA;AAEzE,sFAAsF;AACtF,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,eAAe,EACf,0BAA0B,GAAG,yBAAyB,GAAG,0BAA0B,CACpF,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,eAAO,MAAM,yBAAyB,EAAE,qBAIvC,CAAA;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,wBAAwB;;;;;;;aAOnC,CAAA;AACF,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,WAAW,CAAC,OAAO,wBAAwB,CAAC,CAAA"}
package/dist/tracker.js CHANGED
@@ -18,20 +18,23 @@ export const trackerSettingsSchema = v.object({
18
18
  linearTeamId: v.nullable(v.string()),
19
19
  /**
20
20
  * Writeback: when a task's PR opens, post a comment on the task's linked tracker
21
- * issue(s). Per-task overridable via `Block.trackerCommentOnPrOpen`. Default off.
21
+ * issue(s). Per-task overridable via `Block.trackerCommentOnPrOpen`; the default a
22
+ * workspace that has set nothing runs on is {@link DEFAULT_TRACKER_WRITEBACK}.
22
23
  */
23
24
  writebackCommentOnPrOpen: v.boolean(),
24
25
  /**
25
26
  * Writeback: when a task's PR merges, comment + close the linked tracker issue(s)
26
27
  * as resolved (GitHub closes natively; Jira transitions to its Done category).
27
- * Per-task overridable via `Block.trackerResolveOnMerge`. Default off.
28
+ * Per-task overridable via `Block.trackerResolveOnMerge`; default
29
+ * {@link DEFAULT_TRACKER_WRITEBACK}.
28
30
  */
29
31
  writebackResolveOnMerge: v.boolean(),
30
32
  /**
31
33
  * Writeback: when a HEADLESS run's requirements review parks with open findings, post
32
34
  * them — each with its stable finding id — as a comment on the task's linked tracker
33
35
  * issue(s), so the loop is answerable from where the work was requested. Per-task
34
- * overridable via `Block.trackerQuestionsOnPark`. Default off.
36
+ * overridable via `Block.trackerQuestionsOnPark`; default
37
+ * {@link DEFAULT_TRACKER_WRITEBACK}.
35
38
  *
36
39
  * Deliberately scoped to runs whose `ExecutionInstance.intakeOrigin` is HEADLESS
37
40
  * (`isHeadlessIntake`: a `/api/v1` start or a per-ticket tracker dispatch): a task started
@@ -41,7 +44,52 @@ export const trackerSettingsSchema = v.object({
41
44
  writebackQuestionsOnPark: v.boolean(),
42
45
  updatedAt: v.number(),
43
46
  });
44
- /** Set a workspace's issue-tracker selection. */
47
+ /**
48
+ * What each writeback action does for a workspace that has never set one.
49
+ *
50
+ * **ON, and that is a deliberate change of stance** (it was off for all three). The action only
51
+ * ever touches an issue a task is LINKED to, and nothing links one by accident: a link arrives by
52
+ * an operator importing an issue, by the recurring intake picking one up, or by a headless caller
53
+ * filing a task with `ticket`. Every one of those is a request to work the issue where it was
54
+ * filed, so leaving the loop half-closed by default meant the common outcome was a merged pull
55
+ * request and an issue still sitting open, with nothing on it saying the work had been done. The
56
+ * writeback is what makes the tracker, rather than this platform's own board, the place the
57
+ * reporter can keep watching.
58
+ *
59
+ * ONE constant rather than a literal per reader, because three readers have to agree about it: the
60
+ * settings service (what an absent row reports, and what the row is seeded with on first write),
61
+ * the writeback service (what it does when no row exists), and the SPA's store (what the toggles
62
+ * show before a row does). They disagreed here once already, and the failure is silent both ways
63
+ * round: a reader defaulting off never posts and logs nothing, and one defaulting on closes issues
64
+ * a panel is drawing as off.
65
+ *
66
+ * It is a SEED and never a reset. No write path fills an omitted action in from here: absence means
67
+ * the caller is not moving that action, which is the rule on both the internal PUT and
68
+ * `PATCH /api/v1/tracker/writeback`. Filling one in would make every partial write carry these
69
+ * values into a workspace that had chosen otherwise, and this flip to ON is exactly when that stops
70
+ * being harmless.
71
+ */
72
+ export const DEFAULT_TRACKER_WRITEBACK = {
73
+ writebackCommentOnPrOpen: true,
74
+ writebackResolveOnMerge: true,
75
+ writebackQuestionsOnPark: true,
76
+ };
77
+ /**
78
+ * Set a workspace's issue-tracker FILING selection, and optionally move writeback actions with it.
79
+ *
80
+ * The filing half (`tracker` plus that vendor's target) is a wholesale replace, which is why
81
+ * `tracker` is the one required field: those three are one decision, and a caller editing it has
82
+ * the whole of it in front of them.
83
+ *
84
+ * The writeback half MERGES. An omitted action keeps whatever the row holds, and a caller that
85
+ * names none moves none, which is what lets a dialog about something else (the recurring
86
+ * tech-debt schedule, which persists the filing tracker) touch this row without deciding a
87
+ * workspace's writeback policy as a side effect. A caller that wants
88
+ * {@link DEFAULT_TRACKER_WRITEBACK} sends those values.
89
+ *
90
+ * `PATCH /api/v1/tracker/writeback` is the writeback half on its own, for a caller with no business
91
+ * naming a filing tracker.
92
+ */
45
93
  export const putTrackerSettingsSchema = v.object({
46
94
  tracker: v.nullable(trackerKindSchema),
47
95
  jiraProjectKey: v.optional(v.nullable(v.pipe(v.string(), v.trim()))),
@@ -1 +1 @@
1
- {"version":3,"file":"tracker.js","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,8EAA8E;AAC9E,8EAA8E;AAC9E,gFAAgF;AAChF,yEAAyE;AACzE,kFAAkF;AAClF,0EAA0E;AAC1E,8EAA8E;AAC9E,oEAAoE;AACpE,8EAA8E;AAE9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AAGzE,oFAAoF;AACpF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACtC,mFAAmF;IACnF,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACtC,uEAAuE;IACvE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC;;;OAGG;IACH,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE;IACrC;;;;OAIG;IACH,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE;IACpC;;;;;;;;;;OAUG;IACH,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAA;AAGF,iDAAiD;AACjD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACtC,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAClE,wBAAwB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACjD,uBAAuB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAChD,wBAAwB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;CAClD,CAAC,CAAA"}
1
+ {"version":3,"file":"tracker.js","sourceRoot":"","sources":["../src/tracker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,SAAS,CAAA;AAE5B,8EAA8E;AAC9E,8EAA8E;AAC9E,gFAAgF;AAChF,yEAAyE;AACzE,kFAAkF;AAClF,0EAA0E;AAC1E,8EAA8E;AAC9E,oEAAoE;AACpE,8EAA8E;AAE9E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAA;AAGzE,oFAAoF;AACpF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACtC,mFAAmF;IACnF,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACtC,uEAAuE;IACvE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC;;;;OAIG;IACH,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE;IACrC;;;;;OAKG;IACH,uBAAuB,EAAE,CAAC,CAAC,OAAO,EAAE;IACpC;;;;;;;;;;;OAWG;IACH,wBAAwB,EAAE,CAAC,CAAC,OAAO,EAAE;IACrC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACtB,CAAC,CAAA;AASF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAA0B;IAC9D,wBAAwB,EAAE,IAAI;IAC9B,uBAAuB,EAAE,IAAI;IAC7B,wBAAwB,EAAE,IAAI;CAC/B,CAAA;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACtC,cAAc,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,YAAY,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAClE,wBAAwB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IACjD,uBAAuB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;IAChD,wBAAwB,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;CAClD,CAAC,CAAA"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/contracts",
3
- "version": "0.298.0",
3
+ "version": "0.299.1",
4
4
  "description": "Valibot wire contract shared between the Agent Architecture Board frontend and backend.",
5
5
  "repository": {
6
6
  "type": "git",