@ankhorage/renovate 0.2.13 → 0.2.15

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/CHANGELOG.md CHANGED
@@ -1,5 +1,18 @@
1
1
  # @ankhorage/renovate
2
2
 
3
+ ## 0.2.15
4
+
5
+ ### Patch Changes
6
+
7
+ - bbdb683: Isolate Devtools release rollouts per consumer so a slow protocol migration cannot block every repository or exhaust the shared GitHub App rate limit.
8
+
9
+ ## 0.2.14
10
+
11
+ ### Patch Changes
12
+
13
+ - 1a607b4: Document selected-repository Renovate Sync App bootstrap policy and fail Devtools rollouts when the
14
+ consumer registry contains repositories outside the App installation.
15
+
3
16
  ## 0.2.13
4
17
 
5
18
  ### Patch Changes
@@ -47,6 +47,10 @@ describe('Devtools release rollout workflow', () => {
47
47
  expect(workflow).toContain("fs.readFileSync('devtools-consumers.json', 'utf8')");
48
48
  expect(workflow).toContain('The Devtools consumer registry must not contain duplicates.');
49
49
  expect(workflow).toContain("github.event.pull_request.user.login == 'ankhorage-renovate-sync[bot]'");
50
+ expect(workflow).toContain('github.rest.apps.listReposAccessibleToInstallation');
51
+ expect(workflow).toContain('The ankhorage-renovate-sync GitHub App installation does not include registered Devtools consumers');
52
+ expect(workflow).toContain('selected-repository App installation');
53
+ expect(workflow).toContain('https://github.com/ankhorage/renovate/issues/115');
50
54
  expect(workflow).toContain('awaiting the one-time workflow bootstrap');
51
55
  expect(workflow).toContain('has-repositories: ${{ steps.registry.outputs.has-repositories }}');
52
56
  expect(workflow).toContain("if: needs.validate.outputs.has-repositories == 'true'");
@@ -68,6 +72,21 @@ describe('Devtools release rollout workflow', () => {
68
72
  expect(workflow).not.toContain('pulls.create');
69
73
  });
70
74
  });
75
+ describe('Devtools release rollout protocol isolation', () => {
76
+ test('keeps each consumer independent while waiting for protocol compatibility', () => {
77
+ expect(workflow).toContain(' rollout:');
78
+ expect(workflow).toContain('fail-fast: false');
79
+ expect(workflow).toContain('TARGET_REPOSITORY: ${{ matrix.repository }}');
80
+ expect(workflow).toContain('const repository = process.env.TARGET_REPOSITORY;');
81
+ expect(workflow).toContain("Wait for this repository's compatible immutable Renovate workflow");
82
+ expect(workflow).toContain('const timeoutAt = Date.now() + 20 * 60 * 1000;');
83
+ expect(workflow).toContain('setTimeout(resolve, 30000)');
84
+ expect(workflow).toContain('if (pin !== lastPin)');
85
+ expect(workflow).not.toContain(' protocol-barrier:');
86
+ expect(workflow).not.toContain('REPOSITORIES: ${{ needs.validate.outputs.repositories }}');
87
+ expect(workflow).not.toContain('for (const repository of repositories)');
88
+ });
89
+ });
71
90
  /*** Parse the Devtools release rule from its final protocol-gated rollout step. */
72
91
  function readReleasePackageRule(version) {
73
92
  const stepMarker = '- name: Run Renovate immediately for the released Devtools version';
@@ -1 +1 @@
1
- {"version":3,"file":"devtools-release-rollout.test.js","sourceRoot":"","sources":["../src/devtools-release-rollout.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAElD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CACzB,YAAY,CAAC,IAAI,GAAG,CAAC,4BAA4B,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CAC7B,CAAC;AAClD,MAAM,QAAQ,GAAG,YAAY,CAC3B,IAAI,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAC7E,MAAM,CACP,CAAC;AAEF,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,IAAI,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACrE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QAC/C,MAAM,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAC/E,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC9D,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC1D,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAClE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC;QACrE,KAAK,MAAM,UAAU,IAAI,QAAQ,CAAC,YAAY,EAAE,CAAC;YAC/C,MAAM,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;QACxD,CAAC;QACD,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QAChE,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/D,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC5D,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,wCAAwC,EAAE,GAAG,EAAE;IACtD,IAAI,CAAC,qEAAqE,EAAE,GAAG,EAAE;QAC/E,MAAM,IAAI,GAAG,sBAAsB,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,YAAY,GAAG,SAAS,CAAC;QAC/B,MAAM,gBAAgB,GACpB,IAAI,CAAC,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,YAAY,CAAC;QAE5E,MAAM,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;YACnB,iBAAiB,EAAE,CAAC,qBAAqB,CAAC;YAC1C,OAAO,EAAE,IAAI;YACb,aAAa,EAAE,MAAM;YACrB,eAAe,EAAE,QAAQ;YACzB,YAAY,EAAE,QAAQ;SACvB,CAAC,CAAC;QACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,mCAAmC,EAAE,GAAG,EAAE;IACjD,IAAI,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC7E,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,kBAAkB,CAAC,CAAC;QAC/C,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACjD,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,+DAA+D,CAAC,CAAC;QAC5F,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,4CAA4C,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+EAA+E,EAAE,GAAG,EAAE;QACzF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,oDAAoD,CAAC,CAAC;QACjF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,6DAA6D,CAAC,CAAC;QAC1F,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CACxB,wEAAwE,CACzE,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,0CAA0C,CAAC,CAAC;QACvE,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,kEAAkE,CAAC,CAAC;QAC/F,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,uDAAuD,CAAC,CAAC;QACpF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,iDAAiD,CAAC,CAAC;QAC9E,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;QAChE,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,+BAA+B,CAAC,CAAC;QAC5D,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CACxB,0EAA0E,CAC3E,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,mCAAmC,CAAC,CAAC;QAChE,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,qCAAqC,CAAC,CAAC;QAClE,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,0BAA0B,CAAC,CAAC;QACvD,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC;IAChE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iFAAiF,EAAE,GAAG,EAAE;QAC3F,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,iCAAiC,CAAC,CAAC;QAC9D,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QACxD,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACjD,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;QAC7C,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;IACjD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAUH,mFAAmF;AACnF,SAAS,sBAAsB,CAAC,OAAe;IAC7C,MAAM,UAAU,GAAG,oEAAoE,CAAC;IACxF,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAC/C,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,4EAA4E,CAAC,CAAC;IAChG,CAAC;IACD,MAAM,MAAM,GAAG,0CAA0C,CAAC;IAC1D,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAClD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,QAAQ,GAAG,QAAQ;SACtB,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;SAC5B,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAClB,EAAE,OAAO,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAC;IAC9D,IAAI,CAAC,QAAQ;QAAE,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAC;IAC1E,MAAM,MAAM,GAAY,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CAAC,yEAAyE,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,MAAM,CAAC,CAAC,CAAuB,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"devtools-release-rollout.test.js","sourceRoot":"","sources":["../src/devtools-release-rollout.test.ts"],"names":[],"mappings":"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"}
@@ -19,37 +19,35 @@ describe('Devtools sync protocol release contract', () => {
19
19
  expect(workflow).toContain("path: 'sync-protocol.json'");
20
20
  expect(workflow).toContain('ref: pin');
21
21
  expect(workflow).toContain('let protocol = 0;');
22
- expect(workflow).toContain('if (error.status === 404) return 0;');
22
+ expect(workflow).toContain('if (error.status !== 404) throw error;');
23
23
  });
24
24
  });
25
25
  describe('Devtools sync protocol rollout orchestration', () => {
26
- test('prepares digest updates without holding matrix runners while PR CI executes', () => {
27
- const prepareStart = workflow.indexOf('\n prepare-protocol:');
28
- const barrierStart = workflow.indexOf('\n protocol-barrier:');
29
- const devtoolsStart = workflow.indexOf('\n renovate:', barrierStart);
30
- const prepare = workflow.slice(prepareStart, barrierStart);
31
- const barrier = workflow.slice(barrierStart, devtoolsStart);
32
- expect(prepareStart).toBeGreaterThan(0);
33
- expect(barrierStart).toBeGreaterThan(prepareStart);
34
- expect(devtoolsStart).toBeGreaterThan(barrierStart);
35
- expect(prepare).toContain('- name: Update the immutable Renovate workflow first');
36
- expect(prepare).toContain('bun x renovate --enabled-managers=custom.regex');
37
- expect(prepare).not.toContain('while (Date.now() < timeoutAt)');
38
- expect(barrier).toContain('- name: Wait for compatible immutable Renovate workflows');
39
- expect(barrier).toContain('while (Date.now() < timeoutAt)');
40
- expect(barrier).toContain('Every Devtools consumer now pins a compatible Renovate sync protocol.');
26
+ test('updates, waits, and propagates inside each consumer matrix entry', () => {
27
+ const rolloutStart = workflow.indexOf('\n rollout:');
28
+ const rollout = workflow.slice(rolloutStart);
29
+ const updateStart = rollout.indexOf('- name: Update the immutable Renovate workflow first');
30
+ const waitStart = rollout.indexOf("- name: Wait for this repository's compatible immutable Renovate workflow");
31
+ const devtoolsStart = rollout.indexOf('- name: Run Renovate immediately for the released Devtools version');
32
+ expect(rolloutStart).toBeGreaterThan(0);
33
+ expect(rollout).toContain('repository: ${{ fromJSON(needs.validate.outputs.repositories) }}');
34
+ expect(updateStart).toBeGreaterThan(0);
35
+ expect(waitStart).toBeGreaterThan(updateStart);
36
+ expect(devtoolsStart).toBeGreaterThan(waitStart);
37
+ expect(rollout).toContain('bun x renovate --enabled-managers=custom.regex');
38
+ expect(rollout).toContain('TARGET_REPOSITORY: ${{ matrix.repository }}');
39
+ expect(rollout).toContain('while (Date.now() < timeoutAt)');
41
40
  expect(workflow.match(/while \(Date\.now\(\) < timeoutAt\)/gu)).toHaveLength(1);
42
41
  });
43
- test('gates the Devtools matrix on the single protocol barrier', () => {
44
- const barrierStart = workflow.indexOf('\n protocol-barrier:');
45
- const devtoolsStart = workflow.indexOf('\n renovate:', barrierStart);
46
- const devtools = workflow.slice(devtoolsStart);
47
- expect(workflow).toContain(' protocol-barrier:\n needs:\n - validate\n - prepare-protocol');
48
- expect(devtools).toContain('needs:\n - validate\n - protocol-barrier');
49
- expect(devtools).toContain('- name: Run Renovate immediately for the released Devtools version');
50
- expect(devtools).toContain('"matchPackageNames":["@ankhorage/devtools"]');
51
- expect(workflow.indexOf('- name: Update the immutable Renovate workflow first')).toBeLessThan(devtools.indexOf('- name: Run Renovate immediately for the released Devtools version') +
52
- devtoolsStart);
42
+ test('isolates consumer failures instead of gating one global barrier', () => {
43
+ const rolloutStart = workflow.indexOf('\n rollout:');
44
+ const rollout = workflow.slice(rolloutStart);
45
+ expect(workflow).not.toContain('\n protocol-barrier:');
46
+ expect(workflow).not.toContain('\n prepare-protocol:');
47
+ expect(rollout).toContain('fail-fast: false');
48
+ expect(rollout).toContain('RENOVATE_REPOSITORIES: ${{ matrix.repository }}');
49
+ expect(rollout).toContain('"matchPackageNames":["@ankhorage/devtools"]');
50
+ expect(workflow).not.toContain('for (const repository of repositories)');
53
51
  });
54
52
  test('keeps direct consumer writes out of the rollout', () => {
55
53
  expect(workflow).not.toContain('git push');
@@ -1 +1 @@
1
- {"version":3,"file":"devtools-sync-protocol.test.js","sourceRoot":"","sources":["../src/devtools-sync-protocol.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAC;AAElD,MAAM,gBAAgB,GAAG,IAAI,CAAC,KAAK,CACjC,YAAY,CAAC,IAAI,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,CACtC,CAAC;AACpC,MAAM,QAAQ,GAAG,YAAY,CAC3B,IAAI,GAAG,CAAC,mDAAmD,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAC7E,MAAM,CACP,CAAC;AAEF,QAAQ,CAAC,yCAAyC,EAAE,GAAG,EAAE;IACvD,IAAI,CAAC,0CAA0C,EAAE,GAAG,EAAE;QACpD,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/C,MAAM,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,uEAAuE,EAAE,GAAG,EAAE;QACjF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,6CAA6C,CAAC,CAAC;QAC1E,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,kDAAkD,CAAC,CAAC;QAC/E,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CACxB,mGAAmG,CACpG,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,sCAAsC,CAAC,CAAC;QACnE,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CACxB,oEAAoE,CACrE,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,+DAA+D,EAAE,GAAG,EAAE;QACzE,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,8CAA8C,CAAC,CAAC;QAC3E,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,4BAA4B,CAAC,CAAC;QACzD,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACvC,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,mBAAmB,CAAC,CAAC;QAChD,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,qCAAqC,CAAC,CAAC;IACpE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;IAC5D,IAAI,CAAC,6EAA6E,EAAE,GAAG,EAAE;QACvF,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC/D,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QACtE,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QAE5D,MAAM,CAAC,YAAY,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,CAAC,YAAY,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QACnD,MAAM,CAAC,aAAa,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC;QACpD,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,sDAAsD,CAAC,CAAC;QAClF,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gDAAgD,CAAC,CAAC;QAC5E,MAAM,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC;QAChE,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,0DAA0D,CAAC,CAAC;QACtF,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,gCAAgC,CAAC,CAAC;QAC5D,MAAM,CAAC,OAAO,CAAC,CAAC,SAAS,CACvB,uEAAuE,CACxE,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAClF,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,0DAA0D,EAAE,GAAG,EAAE;QACpE,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC;QACtE,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;QAE/C,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CACxB,6EAA6E,CAC9E,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,oDAAoD,CAAC,CAAC;QACjF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CACxB,oEAAoE,CACrE,CAAC;QACF,MAAM,CAAC,QAAQ,CAAC,CAAC,SAAS,CAAC,6CAA6C,CAAC,CAAC;QAC1E,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,sDAAsD,CAAC,CAAC,CAAC,YAAY,CAC3F,QAAQ,CAAC,OAAO,CAAC,oEAAoE,CAAC;YACpF,aAAa,CAChB,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,iDAAiD,EAAE,GAAG,EAAE;QAC3D,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QAC3C,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAC/C,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"devtools-sync-protocol.test.js","sourceRoot":"","sources":["../src/devtools-sync-protocol.test.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,8 +1,17 @@
1
- /**
1
+ /***
2
2
  * Canonical Renovate policy and future automation provider for Ankhorage repositories.
3
3
  *
4
4
  * The shared preset is published as `default.json` and consumed from GitHub. The TypeScript
5
5
  * public API is intentionally reserved for the future `ankh renovate` provider.
6
+ *
7
+ * The `ankhorage-renovate-sync` GitHub App intentionally uses **selected repositories**, not
8
+ * organization-wide access. Before a repository is added to `devtools-consumers.json` or treated
9
+ * as managed-release ready, an organization owner must first add that repository to the existing
10
+ * App installation. The rollout workflow validates the installation's accessible repository set
11
+ * against the registry and fails with the missing repository names when this bootstrap step is
12
+ * incomplete.
13
+ *
14
+ * @readme
6
15
  */
7
16
  export {};
8
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -1,8 +1,17 @@
1
- /**
1
+ /***
2
2
  * Canonical Renovate policy and future automation provider for Ankhorage repositories.
3
3
  *
4
4
  * The shared preset is published as `default.json` and consumed from GitHub. The TypeScript
5
5
  * public API is intentionally reserved for the future `ankh renovate` provider.
6
+ *
7
+ * The `ankhorage-renovate-sync` GitHub App intentionally uses **selected repositories**, not
8
+ * organization-wide access. Before a repository is added to `devtools-consumers.json` or treated
9
+ * as managed-release ready, an organization owner must first add that repository to the existing
10
+ * App installation. The rollout workflow validates the installation's accessible repository set
11
+ * against the registry and fails with the missing repository names when this bootstrap step is
12
+ * incomplete.
13
+ *
14
+ * @readme
6
15
  */
7
16
  export {};
8
17
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AACH,OAAO,EAAE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ankhorage/renovate",
3
- "version": "0.2.13",
3
+ "version": "0.2.15",
4
4
  "description": "Ankhorage dependency update policy and automation powered by Renovate.",
5
5
  "type": "module",
6
6
  "license": "MIT",