@mmnto/cli 2.0.0 → 2.2.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.
Files changed (71) hide show
  1. package/dist/commands/describe.d.ts +13 -1
  2. package/dist/commands/describe.d.ts.map +1 -1
  3. package/dist/commands/describe.js +29 -1
  4. package/dist/commands/describe.js.map +1 -1
  5. package/dist/commands/describe.test.js +86 -3
  6. package/dist/commands/describe.test.js.map +1 -1
  7. package/dist/commands/doctor-parity-fetch.d.ts +93 -2
  8. package/dist/commands/doctor-parity-fetch.d.ts.map +1 -1
  9. package/dist/commands/doctor-parity-fetch.js +332 -11
  10. package/dist/commands/doctor-parity-fetch.js.map +1 -1
  11. package/dist/commands/doctor-parity-fetch.test.d.ts +6 -0
  12. package/dist/commands/doctor-parity-fetch.test.d.ts.map +1 -1
  13. package/dist/commands/doctor-parity-fetch.test.js +405 -1
  14. package/dist/commands/doctor-parity-fetch.test.js.map +1 -1
  15. package/dist/commands/doctor-parity.d.ts.map +1 -1
  16. package/dist/commands/doctor-parity.js +27 -1
  17. package/dist/commands/doctor-parity.js.map +1 -1
  18. package/dist/commands/doctor-parity.test.js +67 -0
  19. package/dist/commands/doctor-parity.test.js.map +1 -1
  20. package/dist/commands/eject-gate-needle.test.d.ts +2 -0
  21. package/dist/commands/eject-gate-needle.test.d.ts.map +1 -0
  22. package/dist/commands/eject-gate-needle.test.js +48 -0
  23. package/dist/commands/eject-gate-needle.test.js.map +1 -0
  24. package/dist/commands/eject.d.ts +10 -0
  25. package/dist/commands/eject.d.ts.map +1 -1
  26. package/dist/commands/eject.js +67 -12
  27. package/dist/commands/eject.js.map +1 -1
  28. package/dist/commands/eject.test.js +113 -0
  29. package/dist/commands/eject.test.js.map +1 -1
  30. package/dist/commands/gate-install.d.ts +37 -5
  31. package/dist/commands/gate-install.d.ts.map +1 -1
  32. package/dist/commands/gate-install.js +26 -38
  33. package/dist/commands/gate-install.js.map +1 -1
  34. package/dist/commands/gate-install.test.js +294 -48
  35. package/dist/commands/gate-install.test.js.map +1 -1
  36. package/dist/commands/gate.d.ts +24 -9
  37. package/dist/commands/gate.d.ts.map +1 -1
  38. package/dist/commands/gate.js +36 -17
  39. package/dist/commands/gate.js.map +1 -1
  40. package/dist/commands/gate.test.js +74 -3
  41. package/dist/commands/gate.test.js.map +1 -1
  42. package/dist/commands/host-hooks.d.ts +8 -2
  43. package/dist/commands/host-hooks.d.ts.map +1 -1
  44. package/dist/commands/host-hooks.js.map +1 -1
  45. package/dist/commands/init-templates.d.ts +3 -3
  46. package/dist/commands/init-templates.d.ts.map +1 -1
  47. package/dist/commands/init-templates.js +107 -48
  48. package/dist/commands/init-templates.js.map +1 -1
  49. package/dist/commands/init.d.ts.map +1 -1
  50. package/dist/commands/init.js +20 -16
  51. package/dist/commands/init.js.map +1 -1
  52. package/dist/commands/install-hooks.d.ts.map +1 -1
  53. package/dist/commands/install-hooks.js +159 -27
  54. package/dist/commands/install-hooks.js.map +1 -1
  55. package/dist/commands/install-hooks.test.js +460 -12
  56. package/dist/commands/install-hooks.test.js.map +1 -1
  57. package/dist/commands/legs.d.ts +35 -7
  58. package/dist/commands/legs.d.ts.map +1 -1
  59. package/dist/commands/legs.js +26 -7
  60. package/dist/commands/legs.js.map +1 -1
  61. package/dist/commands/legs.test.js +87 -0
  62. package/dist/commands/legs.test.js.map +1 -1
  63. package/dist/commands/release-train-shape.test.d.ts +2 -0
  64. package/dist/commands/release-train-shape.test.d.ts.map +1 -0
  65. package/dist/commands/release-train-shape.test.js +226 -0
  66. package/dist/commands/release-train-shape.test.js.map +1 -0
  67. package/dist/commands/tools-hook-parity.test.js +200 -0
  68. package/dist/commands/tools-hook-parity.test.js.map +1 -1
  69. package/dist/index.js +2 -2
  70. package/dist/index.js.map +1 -1
  71. package/package.json +2 -2
@@ -8,9 +8,15 @@
8
8
  * opt-in cross-repo, dedup), per-repo surface selection under consumers scoping,
9
9
  * the rulesets list→detail assembly, branch-protection default-branch resolution,
10
10
  * and the no-remote / no-transport degradations.
11
+ *
12
+ * The two 472-charter orientation rows (mmnto-ai/totem#2791) are covered on the
13
+ * same terms: the label pagination walk, the project BINDING (bound / unbound /
14
+ * sibling) and its GraphQL read behind an injected {@link GhGraphql}, the
15
+ * roster-wide canon resolution (local read vs the canonical contents fetch), and
16
+ * the GraphQL body classifier. No test spawns `gh` for these either.
11
17
  */
12
18
  import { describe, expect, it } from 'vitest';
13
- import { networkPostureRowFor, resolveNetworkSnapshots, slugFromRemoteUrl, } from './doctor-parity-fetch.js';
19
+ import { classifyGraphqlBody, labelCanonNeeded, networkPostureRowFor, resolveLabelCanon, resolveNetworkSnapshots, slugFromRemoteUrl, } from './doctor-parity-fetch.js';
14
20
  /** Build a canned transport keyed by exact API path, recording each call. */
15
21
  function cannedFetch(routes) {
16
22
  const calls = [];
@@ -20,6 +26,23 @@ function cannedFetch(routes) {
20
26
  };
21
27
  return { ghFetch, calls };
22
28
  }
29
+ /** Build a canned GraphQL transport returning one result, recording each call. */
30
+ function cannedGraphql(result) {
31
+ const calls = [];
32
+ const ghGraphql = (query, variables) => {
33
+ calls.push({ query, variables });
34
+ return result;
35
+ };
36
+ return { ghGraphql, calls };
37
+ }
38
+ /** The labels page path for one page number (mirrors the walk's exact query string). */
39
+ function labelsPath(page) {
40
+ return `/repos/mmnto-ai/totem/labels?per_page=100&page=${page}`;
41
+ }
42
+ /** `count` distinct canned label objects. */
43
+ function labelPage(count, prefix) {
44
+ return Array.from({ length: count }, (_, i) => ({ name: `${prefix}-${i}` }));
45
+ }
23
46
  const remoteOrigin = () => 'git@github.com:mmnto-ai/totem.git';
24
47
  describe('slugFromRemoteUrl', () => {
25
48
  it('parses ssh, https, .git-suffixed and trailing-slash forms', () => {
@@ -27,6 +50,8 @@ describe('slugFromRemoteUrl', () => {
27
50
  expect(slugFromRemoteUrl('https://github.com/mmnto-ai/totem.git')).toBe('mmnto-ai/totem');
28
51
  expect(slugFromRemoteUrl('https://github.com/mmnto-ai/totem')).toBe('mmnto-ai/totem');
29
52
  expect(slugFromRemoteUrl('https://github.com/mmnto-ai/totem/')).toBe('mmnto-ai/totem');
53
+ // `.git` then a trailing slash, in that order (pass 5, p5-F5).
54
+ expect(slugFromRemoteUrl('https://github.com/mmnto-ai/totem.git/')).toBe('mmnto-ai/totem');
30
55
  });
31
56
  it('returns undefined on an unparseable / empty remote', () => {
32
57
  expect(slugFromRemoteUrl(undefined)).toBeUndefined();
@@ -266,4 +291,383 @@ describe('resolveNetworkSnapshots', () => {
266
291
  expect(snaps.map((s) => s.repoId).sort()).toEqual(['totem', 'totem-status']);
267
292
  });
268
293
  });
294
+ // === The two 472-charter orientation rows (mmnto-ai/totem#2791) ===
295
+ describe('networkPostureRowFor — orientation rows', () => {
296
+ it('maps the label-canon and project-vocabulary ids to their row kinds', () => {
297
+ expect(networkPostureRowFor('gh-issue-label-canon')).toBe('gh-issue-label-canon');
298
+ expect(networkPostureRowFor('gh-project-vocabulary')).toBe('gh-project-vocabulary');
299
+ });
300
+ });
301
+ describe('resolveNetworkSnapshots — the labels surface', () => {
302
+ it('concatenates every page and stops on the first short page', async () => {
303
+ const { ghFetch, calls } = cannedFetch({
304
+ [labelsPath(1)]: { outcome: 'ok', data: labelPage(100, 'p1') },
305
+ [labelsPath(2)]: { outcome: 'ok', data: labelPage(12, 'p2') },
306
+ });
307
+ const snaps = await resolveNetworkSnapshots({
308
+ rows: [{ row: 'gh-issue-label-canon' }],
309
+ repoId: 'totem',
310
+ gitRoot: '/repo',
311
+ ghFetch,
312
+ readRemote: remoteOrigin,
313
+ });
314
+ const labels = snaps[0]?.surfaces.labels;
315
+ expect(labels?.outcome).toBe('ok');
316
+ expect(Array.isArray(labels?.data)).toBe(true);
317
+ expect(labels?.data).toHaveLength(112);
318
+ // Both pages were read, in order, and the walk stopped at the short page.
319
+ expect(calls).toEqual([labelsPath(1), labelsPath(2)]);
320
+ });
321
+ it('degrades the WHOLE surface at the page cap — never a partial list', async () => {
322
+ const routes = {};
323
+ for (let page = 1; page <= 11; page += 1) {
324
+ routes[labelsPath(page)] = { outcome: 'ok', data: labelPage(100, `p${page}`) };
325
+ }
326
+ const { ghFetch, calls } = cannedFetch(routes);
327
+ const snaps = await resolveNetworkSnapshots({
328
+ rows: [{ row: 'gh-issue-label-canon' }],
329
+ repoId: 'totem',
330
+ gitRoot: '/repo',
331
+ ghFetch,
332
+ readRemote: remoteOrigin,
333
+ });
334
+ expect(snaps[0]?.surfaces.labels?.outcome).toBe('error');
335
+ expect(snaps[0]?.surfaces.labels?.detail).toContain('cannot certify');
336
+ // The cap bounds the walk: the 11th page is never requested.
337
+ expect(calls).toHaveLength(10);
338
+ expect(calls).not.toContain(labelsPath(11));
339
+ });
340
+ it('propagates a non-ok page outcome (auth is never a drift verdict)', async () => {
341
+ const { ghFetch } = cannedFetch({
342
+ [labelsPath(1)]: { outcome: 'ok', data: labelPage(100, 'p1') },
343
+ [labelsPath(2)]: { outcome: 'auth', detail: 'HTTP 403 — under-privileged token' },
344
+ });
345
+ const snaps = await resolveNetworkSnapshots({
346
+ rows: [{ row: 'gh-issue-label-canon' }],
347
+ repoId: 'totem',
348
+ gitRoot: '/repo',
349
+ ghFetch,
350
+ readRemote: remoteOrigin,
351
+ });
352
+ expect(snaps[0]?.surfaces.labels?.outcome).toBe('auth');
353
+ expect(snaps[0]?.surfaces.labels?.data).toBeUndefined();
354
+ });
355
+ it('degrades a NON-ARRAY labels page to error', async () => {
356
+ const { ghFetch } = cannedFetch({
357
+ [labelsPath(1)]: { outcome: 'ok', data: { message: 'not a list' } },
358
+ });
359
+ const snaps = await resolveNetworkSnapshots({
360
+ rows: [{ row: 'gh-issue-label-canon' }],
361
+ repoId: 'totem',
362
+ gitRoot: '/repo',
363
+ ghFetch,
364
+ readRemote: remoteOrigin,
365
+ });
366
+ expect(snaps[0]?.surfaces.labels?.outcome).toBe('error');
367
+ expect(snaps[0]?.surfaces.labels?.detail).toContain('unparseable labels page');
368
+ });
369
+ });
370
+ describe('resolveNetworkSnapshots — the project binding', () => {
371
+ const projectBody = {
372
+ data: {
373
+ organization: {
374
+ projectV2: {
375
+ title: 'Convergent Spine',
376
+ fields: { pageInfo: { hasNextPage: false }, nodes: [{ name: 'Status', options: [] }] },
377
+ },
378
+ },
379
+ },
380
+ };
381
+ it('binds the CURRENT repo to orient.projectNumber and reads its fields once', async () => {
382
+ const { ghFetch } = cannedFetch({});
383
+ const { ghGraphql, calls } = cannedGraphql({ outcome: 'ok', data: projectBody });
384
+ const snaps = await resolveNetworkSnapshots({
385
+ rows: [{ row: 'gh-project-vocabulary' }],
386
+ repoId: 'totem',
387
+ gitRoot: '/repo',
388
+ projectNumber: 1,
389
+ ghFetch,
390
+ ghGraphql,
391
+ readRemote: remoteOrigin,
392
+ });
393
+ expect(snaps[0]?.project).toEqual({ kind: 'bound', owner: 'mmnto-ai', number: 1 });
394
+ expect(calls).toHaveLength(1);
395
+ expect(calls[0]?.variables).toEqual({ org: 'mmnto-ai', number: 1 });
396
+ expect(calls[0]?.query).toContain('ProjectV2SingleSelectField');
397
+ expect(snaps[0]?.surfaces.projectFields?.outcome).toBe('ok');
398
+ expect(snaps[0]?.surfaces.projectFields?.data).toEqual(projectBody);
399
+ });
400
+ it('renders an UNBOUND current repo without reading anything', async () => {
401
+ const { ghFetch, calls } = cannedFetch({});
402
+ const { ghGraphql, calls: gqlCalls } = cannedGraphql({ outcome: 'ok', data: projectBody });
403
+ const snaps = await resolveNetworkSnapshots({
404
+ rows: [{ row: 'gh-project-vocabulary' }],
405
+ repoId: 'totem',
406
+ gitRoot: '/repo',
407
+ ghFetch,
408
+ ghGraphql,
409
+ readRemote: remoteOrigin,
410
+ });
411
+ expect(snaps).toHaveLength(1);
412
+ expect(snaps[0]?.project).toEqual({ kind: 'unbound' });
413
+ expect(snaps[0]?.surfaces.projectFields).toBeUndefined();
414
+ expect(gqlCalls).toEqual([]);
415
+ expect(calls).toEqual([]);
416
+ });
417
+ it('marks a cross-repo probe a SIBLING and never reads a project for it', async () => {
418
+ const { ghGraphql, calls } = cannedGraphql({ outcome: 'ok', data: projectBody });
419
+ const snaps = await resolveNetworkSnapshots({
420
+ rows: [{ row: 'gh-project-vocabulary' }],
421
+ repoId: 'totem',
422
+ gitRoot: '/repo',
423
+ probeRepos: ['other-org/widget'],
424
+ projectNumber: 1,
425
+ ghFetch: cannedFetch({}).ghFetch,
426
+ ghGraphql,
427
+ readRemote: remoteOrigin,
428
+ });
429
+ const widget = snaps.find((s) => s.repoId === 'widget');
430
+ expect(widget?.project).toEqual({ kind: 'sibling' });
431
+ expect(widget?.surfaces.projectFields).toBeUndefined();
432
+ // Only the current repo's bound project is read.
433
+ expect(calls).toHaveLength(1);
434
+ expect(calls[0]?.variables).toEqual({ org: 'mmnto-ai', number: 1 });
435
+ });
436
+ it('omits `project` entirely when the vocabulary row is not in scope for the repo', async () => {
437
+ const { ghGraphql, calls } = cannedGraphql({ outcome: 'ok', data: projectBody });
438
+ const { ghFetch } = cannedFetch({
439
+ '/repos/mmnto-ai/totem': { outcome: 'ok', data: { allow_squash_merge: true } },
440
+ });
441
+ const snaps = await resolveNetworkSnapshots({
442
+ rows: [
443
+ { row: 'repo-merge-posture' },
444
+ { row: 'gh-project-vocabulary', consumers: ['some-other-repo'] },
445
+ ],
446
+ repoId: 'totem',
447
+ gitRoot: '/repo',
448
+ projectNumber: 1,
449
+ ghFetch,
450
+ ghGraphql,
451
+ readRemote: remoteOrigin,
452
+ });
453
+ expect(snaps).toHaveLength(1);
454
+ expect(snaps[0]?.project).toBeUndefined();
455
+ expect(Object.hasOwn(snaps[0] ?? {}, 'project')).toBe(false);
456
+ expect(calls).toEqual([]);
457
+ });
458
+ });
459
+ describe('resolveLabelCanon', () => {
460
+ const script = 'gh label edit "tier-1" --color "0e8a16" --description "First tier"\r\n';
461
+ it('reads the canon from the local checkout when origin is the canon repository', () => {
462
+ const reads = [];
463
+ const canon = resolveLabelCanon({
464
+ gitRoot: '/repo',
465
+ currentSlug: 'mmnto-ai/totem',
466
+ readFile: (absPath) => {
467
+ reads.push(absPath);
468
+ return script;
469
+ },
470
+ });
471
+ expect(canon.outcome).toBe('ok');
472
+ expect(canon.data).toBe(script);
473
+ expect(canon.detail).toBe('local checkout scripts/sync-labels.ps1');
474
+ expect(reads[0]).toContain('sync-labels.ps1');
475
+ });
476
+ it('degrades to error when the local canon is unreadable', () => {
477
+ const canon = resolveLabelCanon({
478
+ gitRoot: '/repo',
479
+ currentSlug: 'mmnto-ai/totem',
480
+ readFile: () => {
481
+ throw new Error('ENOENT');
482
+ },
483
+ });
484
+ expect(canon.outcome).toBe('error');
485
+ expect(canon.detail).toContain('unreadable');
486
+ expect(canon.data).toBeUndefined();
487
+ });
488
+ it('never reads the local script for a fork, a differently owned checkout, or an unresolved remote — the canonical fetch is the source (Greptile P1, mmnto-ai/totem#2797)', () => {
489
+ // A checkout whose cohort id derives to `totem` (package name, directory)
490
+ // is not thereby the canon: only origin === mmnto-ai/totem selects the
491
+ // local read. The owner compare is exact, so an odd-cased remote also takes
492
+ // the fetch — the safe direction (never a local read that is not the canon).
493
+ const reads = [];
494
+ const { ghFetch, calls } = cannedFetch({
495
+ '/repos/mmnto-ai/totem/contents/scripts/sync-labels.ps1': {
496
+ outcome: 'ok',
497
+ data: {
498
+ content: Buffer.from(script, 'utf8').toString('base64'),
499
+ encoding: 'base64',
500
+ sha: '0123456789abcdef',
501
+ },
502
+ },
503
+ });
504
+ const slugs = [
505
+ 'someone/totem',
506
+ 'mmnto-ai/totem-fork',
507
+ 'MMNTO-AI/totem',
508
+ undefined,
509
+ ];
510
+ for (const slug of slugs) {
511
+ const canon = resolveLabelCanon({
512
+ gitRoot: '/repo',
513
+ ...(slug !== undefined ? { currentSlug: slug } : {}),
514
+ ghFetch,
515
+ readFile: (absPath) => {
516
+ reads.push(absPath);
517
+ return script;
518
+ },
519
+ });
520
+ expect(canon.outcome, String(slug)).toBe('ok');
521
+ expect(canon.detail, String(slug)).toBe('mmnto-ai/totem:scripts/sync-labels.ps1@0123456');
522
+ }
523
+ expect(reads).toEqual([]);
524
+ expect(calls).toHaveLength(slugs.length);
525
+ });
526
+ it('decodes the canonical contents payload and discloses the blob sha', () => {
527
+ // GitHub wraps the base64 payload in newlines and the script itself is CRLF
528
+ // — both must survive the decode.
529
+ const wrapped = (Buffer.from(script, 'utf8')
530
+ .toString('base64')
531
+ .match(/.{1,4}/g) ?? []).join('\n');
532
+ const { ghFetch, calls } = cannedFetch({
533
+ '/repos/mmnto-ai/totem/contents/scripts/sync-labels.ps1': {
534
+ outcome: 'ok',
535
+ data: { content: `${wrapped}\n`, encoding: 'base64', sha: 'abcdef1234567890' },
536
+ },
537
+ });
538
+ const canon = resolveLabelCanon({
539
+ gitRoot: '/repo',
540
+ currentSlug: 'mmnto-ai/liquid-city',
541
+ ghFetch,
542
+ });
543
+ expect(canon.outcome).toBe('ok');
544
+ expect(canon.data).toBe(script);
545
+ expect(canon.detail).toBe('mmnto-ai/totem:scripts/sync-labels.ps1@abcdef1');
546
+ expect(calls).toEqual(['/repos/mmnto-ai/totem/contents/scripts/sync-labels.ps1']);
547
+ });
548
+ it('propagates a non-ok canonical fetch with a provenance-prefixed detail', () => {
549
+ const { ghFetch } = cannedFetch({
550
+ '/repos/mmnto-ai/totem/contents/scripts/sync-labels.ps1': {
551
+ outcome: 'auth',
552
+ detail: 'HTTP 403 — under-privileged token',
553
+ },
554
+ });
555
+ const canon = resolveLabelCanon({
556
+ gitRoot: '/repo',
557
+ currentSlug: 'mmnto-ai/liquid-city',
558
+ ghFetch,
559
+ });
560
+ expect(canon.outcome).toBe('auth');
561
+ expect(canon.detail).toBe('canonical fetch mmnto-ai/totem:scripts/sync-labels.ps1: HTTP 403 — under-privileged token');
562
+ expect(canon.data).toBeUndefined();
563
+ });
564
+ it('degrades an unshaped contents 200 to error (never a decoded garbage canon)', () => {
565
+ const { ghFetch } = cannedFetch({
566
+ '/repos/mmnto-ai/totem/contents/scripts/sync-labels.ps1': {
567
+ outcome: 'ok',
568
+ data: { content: 'aGk=', encoding: 'none' },
569
+ },
570
+ });
571
+ const canon = resolveLabelCanon({
572
+ gitRoot: '/repo',
573
+ currentSlug: 'mmnto-ai/liquid-city',
574
+ ghFetch,
575
+ });
576
+ expect(canon.outcome).toBe('error');
577
+ expect(canon.detail).toBe('unparseable contents response');
578
+ });
579
+ it('reports no-transport when a non-canon repo has no transport to fetch with', () => {
580
+ const canon = resolveLabelCanon({ gitRoot: '/repo', currentSlug: 'mmnto-ai/liquid-city' });
581
+ expect(canon.outcome).toBe('no-transport');
582
+ expect(canon.detail).toContain('no transport');
583
+ });
584
+ });
585
+ describe('classifyGraphqlBody', () => {
586
+ it('classifies a permission / scope error as auth', () => {
587
+ const result = classifyGraphqlBody({
588
+ data: { organization: null },
589
+ errors: [{ type: 'FORBIDDEN', message: 'Resource not accessible by integration' }],
590
+ });
591
+ expect(result.outcome).toBe('auth');
592
+ expect(result.detail).toContain('not accessible');
593
+ });
594
+ it('classifies a NOT_FOUND error as not-found', () => {
595
+ const result = classifyGraphqlBody({
596
+ data: { organization: { projectV2: null } },
597
+ errors: [
598
+ { type: 'NOT_FOUND', message: 'Could not resolve to a ProjectV2 with the number 9' },
599
+ ],
600
+ });
601
+ expect(result.outcome).toBe('not-found');
602
+ });
603
+ it('classifies any other error as error, carrying the first message', () => {
604
+ const result = classifyGraphqlBody({
605
+ errors: [{ message: 'Something went wrong while executing your query' }],
606
+ });
607
+ expect(result.outcome).toBe('error');
608
+ expect(result.detail).toBe('Something went wrong while executing your query');
609
+ });
610
+ it('treats a body WITHOUT errors as ok, carrying the body verbatim', () => {
611
+ const body = { data: { organization: { projectV2: { title: 'Convergent Spine' } } } };
612
+ const result = classifyGraphqlBody(body);
613
+ expect(result.outcome).toBe('ok');
614
+ expect(result.data).toEqual(body);
615
+ });
616
+ it('never classifies an errors-bearing body as ok, even when it also resolved the project (partial data)', () => {
617
+ // GraphQL returns partial data beside its errors. A half-read field list
618
+ // verdicted as complete would be a drift verdict on a cannot-verify read
619
+ // (falsification pass 1, F1) — so the presence of ANY error is decisive.
620
+ const partial = {
621
+ data: {
622
+ organization: {
623
+ projectV2: {
624
+ title: 'Convergent Spine',
625
+ fields: {
626
+ pageInfo: { hasNextPage: false },
627
+ nodes: [{ name: 'Status', options: [] }, null],
628
+ },
629
+ },
630
+ },
631
+ },
632
+ errors: [{ type: 'FORBIDDEN', message: 'Resource not accessible by integration' }],
633
+ };
634
+ expect(classifyGraphqlBody(partial).outcome).toBe('auth');
635
+ const transient = { ...partial, errors: [{ type: 'SERVICE_UNAVAILABLE', message: 'timeout' }] };
636
+ expect(classifyGraphqlBody(transient).outcome).toBe('error');
637
+ });
638
+ it('is decisive on the PRESENCE of errors whatever their shape (a string, a null entry, a bare object), never ok', () => {
639
+ // A conforming server sends a non-empty list of maps; a non-conforming one
640
+ // must not read as "no errors" (falsification pass 2, p2-F3).
641
+ const data = { organization: { projectV2: { title: 'x' } } };
642
+ expect(classifyGraphqlBody({ data, errors: ['Resource not accessible by integration'] }).outcome).toBe('auth');
643
+ expect(classifyGraphqlBody({ data, errors: [null] }).outcome).toBe('error');
644
+ expect(classifyGraphqlBody({ data, errors: 'FORBIDDEN' }).outcome).toBe('auth');
645
+ expect(classifyGraphqlBody({ data, errors: { message: 'boom' } }).outcome).toBe('error');
646
+ // An EMPTY list is the one shape that means no errors.
647
+ expect(classifyGraphqlBody({ data, errors: [] }).outcome).toBe('ok');
648
+ });
649
+ it('never lets an empty string be the detail when a readable message follows it (pass 3 p3-F6, pinned pass 4 p4-F3)', () => {
650
+ const result = classifyGraphqlBody({
651
+ data: { organization: { projectV2: { title: 'x' } } },
652
+ errors: ['', { message: 'Resource not accessible by integration' }],
653
+ });
654
+ expect(result.outcome).toBe('auth');
655
+ expect(result.detail).toBe('Resource not accessible by integration');
656
+ });
657
+ });
658
+ describe('labelCanonNeeded', () => {
659
+ const snap = (repoId) => ({ repoSlug: `mmnto-ai/${repoId}`, repoId, surfaces: {} });
660
+ it('is false without the label row, or with an empty roster', () => {
661
+ expect(labelCanonNeeded([{ row: 'repo-merge-posture' }], [snap('totem')])).toBe(false);
662
+ expect(labelCanonNeeded([{ row: 'gh-issue-label-canon' }], [])).toBe(false);
663
+ });
664
+ it('is true when the row applies to every repo (consumers undefined) and a snapshot exists', () => {
665
+ expect(labelCanonNeeded([{ row: 'gh-issue-label-canon' }], [snap('liquid-city')])).toBe(true);
666
+ });
667
+ it('follows the row`s consumers scope exactly — the canon is read only when some line will use it', () => {
668
+ const scoped = [{ row: 'gh-issue-label-canon', consumers: ['totem'] }];
669
+ expect(labelCanonNeeded(scoped, [snap('liquid-city')])).toBe(false);
670
+ expect(labelCanonNeeded(scoped, [snap('liquid-city'), snap('totem')])).toBe(true);
671
+ });
672
+ });
269
673
  //# sourceMappingURL=doctor-parity-fetch.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"doctor-parity-fetch.test.js","sourceRoot":"","sources":["../../src/commands/doctor-parity-fetch.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor-parity-fetch.test.js","sourceRoot":"","sources":["../../src/commands/doctor-parity-fetch.test.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"doctor-parity.d.ts","sourceRoot":"","sources":["../../src/commands/doctor-parity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor-parity.d.ts","sourceRoot":"","sources":["../../src/commands/doctor-parity.ts"],"names":[],"mappings":"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"}
@@ -388,6 +388,10 @@ export async function checkParity(cwd) {
388
388
  // is always probed; this only widens the roster). Captured from the SAME
389
389
  // repo-local config load — never leaked from the global profile.
390
390
  let probeRepos;
391
+ // The CURRENT repo's bound GH Project number — the one binding the
392
+ // `gh-project-vocabulary` row can derive locally (mmnto-ai/totem#2791).
393
+ // Captured from the SAME repo-local config load as `probeRepos`.
394
+ let projectNumber;
391
395
  try {
392
396
  const configPath = resolveConfigPath(cwd);
393
397
  // Repo-scoped by design: the manifest location is per-repo, so a config-less
@@ -412,6 +416,7 @@ export async function checkParity(cwd) {
412
416
  hookTotemDir =
413
417
  hookTotemDirProblem(configuredTotemDir) === null ? configuredTotemDir : '.totem';
414
418
  probeRepos = config.orient?.parityProbeRepos;
419
+ projectNumber = config.orient?.projectNumber;
415
420
  }
416
421
  // totem-context: a missing/corrupt totem config is the honest-absent path (treated as "no parity manifest configured"), not a sensor failure — the doctor runs against config-less repos by design.
417
422
  }
@@ -557,7 +562,7 @@ export async function checkParity(cwd) {
557
562
  // the manifest ONCE, up front, so the pure detector only verdicts. An empty
558
563
  // roster / absent rows → no fetch. The default transport spawns `gh api`;
559
564
  // gh-absent degrades every surface to a skip (§14 clause 4). NEVER throws.
560
- const { networkPostureRowFor, resolveNetworkSnapshots } = await import('./doctor-parity-fetch.js');
565
+ const { defaultCurrentSlug, defaultGhFetch, labelCanonNeeded, networkPostureRowFor, resolveLabelCanon, resolveNetworkSnapshots, } = await import('./doctor-parity-fetch.js');
561
566
  const networkRowSpecs = contracts.flatMap((c) => {
562
567
  if (c.manifestation !== 'capability-probe')
563
568
  return [];
@@ -572,8 +577,26 @@ export async function checkParity(cwd) {
572
577
  gitRoot,
573
578
  ...(repoId !== undefined ? { repoId } : {}),
574
579
  ...(probeRepos !== undefined ? { probeRepos } : {}),
580
+ ...(projectNumber !== undefined ? { projectNumber } : {}),
575
581
  })
576
582
  : [];
583
+ // The label canon is ROSTER-WIDE (one canon, many repos), so it resolves
584
+ // once here — and ONLY when the label row is present AND some roster repo
585
+ // is inside ITS consumers scope, so an empty roster, or a row scoped away
586
+ // from every roster repo, reads nothing (no `gh`; falsification pass 1, F7).
587
+ // The local read is keyed to the current ORIGIN slug being the canon's
588
+ // own repository, never to the cohort id (a fork whose id derives to
589
+ // `totem` from its package name or directory must take the fetch —
590
+ // Greptile P1 on mmnto-ai/totem#2797).
591
+ let labelCanon;
592
+ if (labelCanonNeeded(networkRowSpecs, networkSnapshots)) {
593
+ const currentSlug = await defaultCurrentSlug(gitRoot);
594
+ labelCanon = resolveLabelCanon({
595
+ gitRoot,
596
+ ...(currentSlug !== undefined ? { currentSlug } : {}),
597
+ ghFetch: await defaultGhFetch(),
598
+ });
599
+ }
577
600
  // flatMap, not map: a mechanical contract (claude-skills) expands to one
578
601
  // line PER distributed skill, so the per-contract count can exceed the
579
602
  // contract count.
@@ -604,6 +627,9 @@ export async function checkParity(cwd) {
604
627
  ...(networkRow === 'repo-required-checks-posture'
605
628
  ? { declarationPath: path.join(gitRoot, '.totem', 'rulesets', 'main.json') }
606
629
  : {}),
630
+ ...(networkRow === 'gh-issue-label-canon' && labelCanon !== undefined
631
+ ? { labelCanon }
632
+ : {}),
607
633
  }).map((l) => {
608
634
  if (l.verdict.status === 'warn' && c.blocking === true)
609
635
  blockingDrift = true;