@mattstack/rt-client 0.11.1 → 0.12.0
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/README.md +4 -0
- package/dist/index.js +66 -9
- package/package.json +1 -1
- package/src/settings/registry-defs.ts +73 -9
package/README.md
CHANGED
|
@@ -111,6 +111,10 @@ socket. The verbs and their payloads are specified in repo-tools
|
|
|
111
111
|
`docs/superpowers/specs/2026-08-28-rt-chat-delivery-v2-design.md`; the
|
|
112
112
|
agent-facing rules are `skills/rt-chat/SKILL.md`.
|
|
113
113
|
|
|
114
|
+
## Runs
|
|
115
|
+
|
|
116
|
+
`RunStageRow.status` is one of `running | done | failed | redirected`; `rt runs stage-redirect` writes the fourth when the work engine leaves a stage for another one, so a reader that maps statuses to icons or filters must handle all four.
|
|
117
|
+
|
|
114
118
|
## License
|
|
115
119
|
|
|
116
120
|
MIT
|
package/dist/index.js
CHANGED
|
@@ -816,6 +816,13 @@ var REGISTRY = [
|
|
|
816
816
|
migrated: true,
|
|
817
817
|
description: "User-confirmed integration hosts (forgeHost, switchboardUrl), written only by an explicit `rt setup <id> connect --host` after that host validates a real credential. The one trusted source a credential is ever sent to — mattstack.integrations' team-declared host is shown to the user but never auto-used for a fetch."
|
|
818
818
|
},
|
|
819
|
+
{
|
|
820
|
+
key: "mattstack.roster",
|
|
821
|
+
type: "array",
|
|
822
|
+
scopes: ["team"],
|
|
823
|
+
merge: "replace",
|
|
824
|
+
description: "The suite-wide team roster: [{username, name?}] GitLab usernames with optional display names. Any suite app that lists people reads this; hiding someone is the app's own overlay (e.g. boxscore.hiddenMembers)."
|
|
825
|
+
},
|
|
819
826
|
{
|
|
820
827
|
key: "claude.marketplaces",
|
|
821
828
|
type: "array",
|
|
@@ -870,7 +877,7 @@ var REGISTRY = [
|
|
|
870
877
|
type: "array",
|
|
871
878
|
scopes: ["team"],
|
|
872
879
|
merge: "replace",
|
|
873
|
-
description: "The authors tab's roster: whose MRs the classic board lists, including hidden-by-default entries. Codeowners tabs list MRs from anyone."
|
|
880
|
+
description: "The authors tab's roster: whose MRs the classic board lists, including hidden-by-default entries. Codeowners tabs list MRs from anyone. The cross-app roster successor is mattstack.roster; this key remains the board's own list until the board adopts it."
|
|
874
881
|
},
|
|
875
882
|
{
|
|
876
883
|
key: "board.title",
|
|
@@ -970,13 +977,6 @@ var REGISTRY = [
|
|
|
970
977
|
merge: "deep",
|
|
971
978
|
description: "Local working directories the board's review/respond/doctor panes launch from."
|
|
972
979
|
},
|
|
973
|
-
{
|
|
974
|
-
key: "board.rtRepos",
|
|
975
|
-
type: "array",
|
|
976
|
-
scopes: ["machine"],
|
|
977
|
-
merge: "replace",
|
|
978
|
-
description: "rt-registered repo names the board resolves MRs against on this machine."
|
|
979
|
-
},
|
|
980
980
|
{
|
|
981
981
|
key: "board.triageMaxConcurrent",
|
|
982
982
|
type: "number",
|
|
@@ -991,6 +991,62 @@ var REGISTRY = [
|
|
|
991
991
|
merge: "replace",
|
|
992
992
|
description: "Local switchboard URL the board's POST /peer/join writer targets."
|
|
993
993
|
},
|
|
994
|
+
{
|
|
995
|
+
key: "boxscore.projects",
|
|
996
|
+
type: "array",
|
|
997
|
+
scopes: ["team"],
|
|
998
|
+
merge: "replace",
|
|
999
|
+
description: 'GitLab projects boxscore scores, as full paths ("group/project").'
|
|
1000
|
+
},
|
|
1001
|
+
{
|
|
1002
|
+
key: "boxscore.linearDoneStates",
|
|
1003
|
+
type: "array",
|
|
1004
|
+
scopes: ["team"],
|
|
1005
|
+
merge: "replace",
|
|
1006
|
+
description: "Linear workflow state names that count as done. Empty means the completed and canceled state types."
|
|
1007
|
+
},
|
|
1008
|
+
{
|
|
1009
|
+
key: "boxscore.sizeBand",
|
|
1010
|
+
type: "object",
|
|
1011
|
+
scopes: ["team"],
|
|
1012
|
+
merge: "deep",
|
|
1013
|
+
description: "MR size health band in changed lines: {tooSmall, tooLarge}. At or below tooSmall, or above tooLarge, is outside the healthy band."
|
|
1014
|
+
},
|
|
1015
|
+
{
|
|
1016
|
+
key: "boxscore.excludeFilePatterns",
|
|
1017
|
+
type: "array",
|
|
1018
|
+
scopes: ["team"],
|
|
1019
|
+
merge: "replace",
|
|
1020
|
+
description: 'Glob patterns for files excluded from addition/deletion counts (e.g. "**/*.json").'
|
|
1021
|
+
},
|
|
1022
|
+
{
|
|
1023
|
+
key: "boxscore.ignoredMrs",
|
|
1024
|
+
type: "array",
|
|
1025
|
+
scopes: ["team"],
|
|
1026
|
+
merge: "replace",
|
|
1027
|
+
description: 'MRs excluded from all metrics: "!123" or "group/project!123".'
|
|
1028
|
+
},
|
|
1029
|
+
{
|
|
1030
|
+
key: "boxscore.botPatterns",
|
|
1031
|
+
type: "array",
|
|
1032
|
+
scopes: ["team"],
|
|
1033
|
+
merge: "replace",
|
|
1034
|
+
description: "Extra regex sources treated as bot accounts, beyond boxscore's built-in detection."
|
|
1035
|
+
},
|
|
1036
|
+
{
|
|
1037
|
+
key: "boxscore.hiddenMembers",
|
|
1038
|
+
type: "array",
|
|
1039
|
+
scopes: ["user"],
|
|
1040
|
+
merge: "replace",
|
|
1041
|
+
description: "Usernames from mattstack.roster hidden from this developer's leaderboard."
|
|
1042
|
+
},
|
|
1043
|
+
{
|
|
1044
|
+
key: "boxscore.defaultRange",
|
|
1045
|
+
type: "string",
|
|
1046
|
+
scopes: ["user"],
|
|
1047
|
+
merge: "replace",
|
|
1048
|
+
description: 'Default comparison window for the API and CLI when none is given: "7d", "30d", or "90d".'
|
|
1049
|
+
},
|
|
994
1050
|
{
|
|
995
1051
|
key: "gitq.workSlots",
|
|
996
1052
|
type: "object",
|
|
@@ -1032,7 +1088,8 @@ var REGISTRY = [
|
|
|
1032
1088
|
type: "string",
|
|
1033
1089
|
scopes: ["user"],
|
|
1034
1090
|
merge: "replace",
|
|
1035
|
-
|
|
1091
|
+
default: "https://chat.mattstack",
|
|
1092
|
+
description: "Base URL of the chat viewer, no trailing slash; rt chat post and the tail's wake lines end with a link to the room or message. Defaults to the viewer deck serves on the mattstack TLD."
|
|
1036
1093
|
},
|
|
1037
1094
|
{
|
|
1038
1095
|
key: "chat.herdrWorkspace",
|
package/package.json
CHANGED
|
@@ -288,6 +288,16 @@ export const REGISTRY: readonly SettingDef[] = [
|
|
|
288
288
|
"User-confirmed integration hosts (forgeHost, switchboardUrl), written only by an explicit `rt setup <id> connect --host` after that host validates a real credential. The one trusted source a credential is ever sent to — mattstack.integrations' team-declared host is shown to the user but never auto-used for a fetch.",
|
|
289
289
|
},
|
|
290
290
|
|
|
291
|
+
// --- mattstack (shared team truth) ---------------------------------------
|
|
292
|
+
{
|
|
293
|
+
key: "mattstack.roster",
|
|
294
|
+
type: "array",
|
|
295
|
+
scopes: ["team"],
|
|
296
|
+
merge: "replace",
|
|
297
|
+
description:
|
|
298
|
+
"The suite-wide team roster: [{username, name?}] GitLab usernames with optional display names. Any suite app that lists people reads this; hiding someone is the app's own overlay (e.g. boxscore.hiddenMembers).",
|
|
299
|
+
},
|
|
300
|
+
|
|
291
301
|
// --- claude (installer-lane) --------------------------------------------
|
|
292
302
|
{
|
|
293
303
|
key: "claude.marketplaces",
|
|
@@ -351,7 +361,7 @@ export const REGISTRY: readonly SettingDef[] = [
|
|
|
351
361
|
type: "array",
|
|
352
362
|
scopes: ["team"],
|
|
353
363
|
merge: "replace",
|
|
354
|
-
description: "The authors tab's roster: whose MRs the classic board lists, including hidden-by-default entries. Codeowners tabs list MRs from anyone.",
|
|
364
|
+
description: "The authors tab's roster: whose MRs the classic board lists, including hidden-by-default entries. Codeowners tabs list MRs from anyone. The cross-app roster successor is mattstack.roster; this key remains the board's own list until the board adopts it.",
|
|
355
365
|
},
|
|
356
366
|
{
|
|
357
367
|
key: "board.title",
|
|
@@ -455,13 +465,6 @@ export const REGISTRY: readonly SettingDef[] = [
|
|
|
455
465
|
merge: "deep",
|
|
456
466
|
description: "Local working directories the board's review/respond/doctor panes launch from.",
|
|
457
467
|
},
|
|
458
|
-
{
|
|
459
|
-
key: "board.rtRepos",
|
|
460
|
-
type: "array",
|
|
461
|
-
scopes: ["machine"],
|
|
462
|
-
merge: "replace",
|
|
463
|
-
description: "rt-registered repo names the board resolves MRs against on this machine.",
|
|
464
|
-
},
|
|
465
468
|
{
|
|
466
469
|
key: "board.triageMaxConcurrent",
|
|
467
470
|
type: "number",
|
|
@@ -477,6 +480,66 @@ export const REGISTRY: readonly SettingDef[] = [
|
|
|
477
480
|
description: "Local switchboard URL the board's POST /peer/join writer targets.",
|
|
478
481
|
},
|
|
479
482
|
|
|
483
|
+
// --- boxscore -------------------------------------------------------------
|
|
484
|
+
// No `default` on any boxscore row: fallbacks live in boxscore's app-side
|
|
485
|
+
// read (server/config), so an unset key resolves as absent here.
|
|
486
|
+
{
|
|
487
|
+
key: "boxscore.projects",
|
|
488
|
+
type: "array",
|
|
489
|
+
scopes: ["team"],
|
|
490
|
+
merge: "replace",
|
|
491
|
+
description: "GitLab projects boxscore scores, as full paths (\"group/project\").",
|
|
492
|
+
},
|
|
493
|
+
{
|
|
494
|
+
key: "boxscore.linearDoneStates",
|
|
495
|
+
type: "array",
|
|
496
|
+
scopes: ["team"],
|
|
497
|
+
merge: "replace",
|
|
498
|
+
description: "Linear workflow state names that count as done. Empty means the completed and canceled state types.",
|
|
499
|
+
},
|
|
500
|
+
{
|
|
501
|
+
key: "boxscore.sizeBand",
|
|
502
|
+
type: "object",
|
|
503
|
+
scopes: ["team"],
|
|
504
|
+
merge: "deep",
|
|
505
|
+
description: "MR size health band in changed lines: {tooSmall, tooLarge}. At or below tooSmall, or above tooLarge, is outside the healthy band.",
|
|
506
|
+
},
|
|
507
|
+
{
|
|
508
|
+
key: "boxscore.excludeFilePatterns",
|
|
509
|
+
type: "array",
|
|
510
|
+
scopes: ["team"],
|
|
511
|
+
merge: "replace",
|
|
512
|
+
description: "Glob patterns for files excluded from addition/deletion counts (e.g. \"**/*.json\").",
|
|
513
|
+
},
|
|
514
|
+
{
|
|
515
|
+
key: "boxscore.ignoredMrs",
|
|
516
|
+
type: "array",
|
|
517
|
+
scopes: ["team"],
|
|
518
|
+
merge: "replace",
|
|
519
|
+
description: "MRs excluded from all metrics: \"!123\" or \"group/project!123\".",
|
|
520
|
+
},
|
|
521
|
+
{
|
|
522
|
+
key: "boxscore.botPatterns",
|
|
523
|
+
type: "array",
|
|
524
|
+
scopes: ["team"],
|
|
525
|
+
merge: "replace",
|
|
526
|
+
description: "Extra regex sources treated as bot accounts, beyond boxscore's built-in detection.",
|
|
527
|
+
},
|
|
528
|
+
{
|
|
529
|
+
key: "boxscore.hiddenMembers",
|
|
530
|
+
type: "array",
|
|
531
|
+
scopes: ["user"],
|
|
532
|
+
merge: "replace",
|
|
533
|
+
description: "Usernames from mattstack.roster hidden from this developer's leaderboard.",
|
|
534
|
+
},
|
|
535
|
+
{
|
|
536
|
+
key: "boxscore.defaultRange",
|
|
537
|
+
type: "string",
|
|
538
|
+
scopes: ["user"],
|
|
539
|
+
merge: "replace",
|
|
540
|
+
description: "Default comparison window for the API and CLI when none is given: \"7d\", \"30d\", or \"90d\".",
|
|
541
|
+
},
|
|
542
|
+
|
|
480
543
|
// --- gitq ------------------------------------------------------------------
|
|
481
544
|
{
|
|
482
545
|
key: "gitq.workSlots",
|
|
@@ -521,7 +584,8 @@ export const REGISTRY: readonly SettingDef[] = [
|
|
|
521
584
|
type: "string",
|
|
522
585
|
scopes: ["user"],
|
|
523
586
|
merge: "replace",
|
|
524
|
-
|
|
587
|
+
default: "https://chat.mattstack",
|
|
588
|
+
description: "Base URL of the chat viewer, no trailing slash; rt chat post and the tail's wake lines end with a link to the room or message. Defaults to the viewer deck serves on the mattstack TLD.",
|
|
525
589
|
},
|
|
526
590
|
{
|
|
527
591
|
key: "chat.herdrWorkspace",
|