ace-handbook 0.31.0 → 0.31.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 837b9e5d5edbfab28596d94f6e53d3b0a4641451cf43da81899591736a3352ed
4
- data.tar.gz: d99a5b04b59b095d60575aac6adc4a7e7bf8009071b0fe42ba7bdb6d342bee3c
3
+ metadata.gz: 358264b1f225530c26fd23fcb8528d7e665b927daaa452350536a18c90148e9a
4
+ data.tar.gz: 776f9919aa44963a4f779ea662d8741e826436aed7ab23c7698a511190dab8ea
5
5
  SHA512:
6
- metadata.gz: 90654bdde3d8faec5d009c9991091db20aa2f7033615959f82aeec5d7fdaab8a3a38865468f4b5d16c5f3331bbc582ab1fd9ead74f97fba798589cef9ab9a1d1
7
- data.tar.gz: fc9dad5f9987207a3ff1c00782df8a4a663d8cba5296d06c3125ce8e0ab17d83506ba06186f91ae1d34f0033c3ef3362cfb80f927d67153edf6b01a5ca9d55b2
6
+ metadata.gz: 90c8229c6064db0967a97d999138395f57b7570c56d5742e31d717a0ccfbbef83e7127d771c095c960017c3ba021bd661196337e445d365821deb6ee01eee7ba
7
+ data.tar.gz: e30d53307d64883ff5d89a46aab6f4592559f72d1f6014ed4bc174f1554bd7f53a86cde03be5ade43afb85c1ead270b52094085b7dbd6a44fc1bdca632c014f0
data/CHANGELOG.md CHANGED
@@ -7,6 +7,14 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ### Changed
11
+ - Tightened `wfi://release/rubygems-publish` baseline guidance with an OTP-burst publication contract (build all artifacts before OTP; push in ≤5 concurrent waves; defer metadata verification) for project overlays.
12
+
13
+
14
+ ## [0.31.1] - 2026-09-02
15
+
16
+ ### Technical
17
+ - Included in the coordinated all-package patch release preparation for ACE monorepo review.
10
18
  ## [0.31.0] - 2026-08-12
11
19
 
12
20
  ### Added
@@ -10,7 +10,7 @@ allowed-tools:
10
10
  - Bash(ace-bundle:*)
11
11
  - Read
12
12
  argument-hint: "[gem-name...] [--dry-run]"
13
- last_modified: 2026-04-10
13
+ last_modified: 2026-08-12
14
14
  source: ace-handbook
15
15
  integration:
16
16
  targets:
@@ -46,5 +46,6 @@ None
46
46
  - Follow the workflow as the source of truth.
47
47
  - Do the work described by the workflow instead of only summarizing it.
48
48
  - When the workflow requires edits, tests, or commits, perform them in this project.
49
+ - OTP timing: build every pending `.gem` first, then ask for one OTP (~30–45s), then push in ≤5-concurrent dependency waves aiming to finish within ~30s; verify metadata only after the burst.
49
50
 
50
51
  - After live publishing, recommend running `ace-test-e2e ace-monorepo-e2e TS-MONO-001` for installation verification.
@@ -72,6 +72,7 @@ Publish plan (dry):
72
72
  echo "${GEM_HOST_API_KEY:+GEM_HOST_API_KEY is set}"
73
73
  ```
74
74
 
75
+ If unset, try loading tooling env (for example `mise env`) without printing secrets, then re-check.
75
76
  Do not print secret values.
76
77
 
77
78
  ### 4. Publication gate
@@ -87,11 +88,23 @@ Only if a higher-priority project workflow authorizes pushes **and** the operato
87
88
  real publish (not merely prep/dry-run) may `gem build` + `gem push` proceed under that
88
89
  project contract's steps and verification gates.
89
90
 
90
- Suggested placeholders for a project overlay (not executed by this baseline):
91
+ ### 5. OTP-burst contract for project overlays (do not run from this baseline)
92
+
93
+ When a project overlay authorizes live `gem push`, use this timing contract so one OTP can cover a large queue:
94
+
95
+ 1. Resolve credentials and the pending queue first
96
+ 2. **Build every pending `.gem` artifact** before asking for OTP
97
+ 3. Show the final queue (order, versions, artifact paths, count)
98
+ 4. Prompt once for OTP — codes are short-lived (**~30–45s**)
99
+ 5. Push immediately in dependency-respecting waves of **up to 5 concurrent** `gem push --otp` calls; aim to finish the burst in **≤30s**
100
+ 6. Verify RubyGems metadata **after** the burst (not between pushes)
101
+ 7. On expired/incorrect OTP: stop, list remaining gems, request a fresh OTP, resume without rebuilding unless an artifact is missing
102
+
103
+ Suggested overlay commands (executed only under a project publication contract):
91
104
 
92
105
  ```bash
93
- # gem build <gemspec>
94
- # gem push <built-gem> # only under project publication contract
106
+ # gem build <gemspec> # all pending artifacts first
107
+ # gem push <built-gem> --otp <OTP> # waves of ≤5 concurrent
95
108
  ```
96
109
 
97
110
  ## Override
@@ -105,8 +118,10 @@ WFI source). Keep URI `wfi://release/rubygems-publish` stable for the distribute
105
118
  - [ ] Ordered publish plan produced for requested gems
106
119
  - [ ] Credential presence reported without leaking secrets
107
120
  - [ ] No `gem push` / registry mutation from this baseline alone
121
+ - [ ] Overlay guidance documents build-all → OTP → ≤5 concurrent wave publish → deferred verify
108
122
 
109
123
  ## Common Issues
110
124
 
111
125
  - ACE monorepo operators may use a specialized overlay; plain projects must not depend on it.
112
126
  - Missing credentials should block publish contracts, not local planning.
127
+ - Asking for OTP before builds complete wastes the short OTP window on slow work.
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Ace
4
4
  module Handbook
5
- VERSION = "0.31.0"
5
+ VERSION = "0.31.1"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ace-handbook
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.31.0
4
+ version: 0.31.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michal Czyz
8
8
  bindir: exe
9
9
  cert_chain: []
10
- date: 2026-08-12 00:00:00.000000000 Z
10
+ date: 2026-09-05 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: ace-support-config
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - "~>"
17
17
  - !ruby/object:Gem::Version
18
- version: '0.17'
18
+ version: '0.18'
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
- version: '0.17'
25
+ version: '0.18'
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: ace-support-core
28
28
  requirement: !ruby/object:Gem::Requirement