deployangel 0.1.41 → 0.1.43

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: 22f16a902fb53802309105722b669cc0be9e4a31c5938eb4aec2d99b8f0dab08
4
- data.tar.gz: 6cdd96ff12a6e969afd80a23c0992c1a3139242ec3c3e9ec0c69e1b85309510a
3
+ metadata.gz: ce8544c5aa3368fc5df3c437726bcb157edec54cfa43b90814c3ae0b4e5777dc
4
+ data.tar.gz: c2cd5fec697b3fc987043ab6aaaf361d34050cd4979ee397dfcf452b3b94dcf4
5
5
  SHA512:
6
- metadata.gz: c38e4ab182cc8d3c657aeb4f6cb20e418223df54ba1faf515def863f3800035e58ad2a352dc67327f4bdbd6cb05a7a1f37f935669d49835e4fd8a77fa4a8c423
7
- data.tar.gz: 18772b1f3c0f5eb84463fb3191a0509392f6ec5c5503b95aa1409cbc14bfc80ade81db82f7cb4f36fce679293fa591aebb5fed9bf22802e6a0f2e4b0c5913cb3
6
+ metadata.gz: 0ca495f1e92256a66a96e5b020baaeb75680904be1a89407ba9250e1396f64c3d9441b02b6b59968e3c453c827c4cf76f5850ae405a084ed3567c6ce776e9d82
7
+ data.tar.gz: 0e6ff274dbf1cf28bea67fbc6ab46f13009ebeef1b3d9a7967ceaa874363ec195f99ee3e2144423107594f10a256fd6483c916d3ed65155a1e0fee8427928683
data/CHANGELOG.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.1.43 (2026-11-05)
4
+
5
+ - The MCP server's instructions, and the block `deployangel install agents`
6
+ writes, say a failing `p95_latency` finding with an `accept_url` may be an
7
+ intended slowdown, such as a page that now does more work: as with a volume
8
+ or checkpoint drop, a coding agent hands the link to a person with its
9
+ evidence, never accepts it (servers from 2026-11-05).
10
+
11
+ ## 0.1.42 (2026-11-05)
12
+
13
+ - `deployangel verify` marks a late regression that someone dismissed as a
14
+ false alarm, with who and why (servers from 2026-11-05), and the MCP
15
+ server's `list_late_regressions` says that one with `dismissed` set needs
16
+ no action. Only a person can dismiss one, on the release page.
17
+
3
18
  ## 0.1.41 (2026-11-04)
4
19
 
5
20
  - The agent keeps an hour of unsent minutes (60 payloads, up from 10) when
data/README.md CHANGED
@@ -196,7 +196,7 @@ adds, memory with every list at its cap, and the one-time file digest pass
196
196
  (`APP_ROOT=path/to/app` to digest your own app). On an Apple M-series laptop
197
197
  with Ruby 3.4, recording a request adds about 1.6 µs and 6 objects, and with
198
198
  every route, job, checkpoint, and exception list at its cap the agent holds
199
- about 3 MB, including 10 unsent minutes.
199
+ about 4 MB, including an hour (60) of unsent minutes.
200
200
 
201
201
  ## Configuration
202
202
 
@@ -128,7 +128,11 @@ module DeployAngel
128
128
  end ],
129
129
  [ "Changed but not yet exercised", changed.map { |item| item["key"] } ],
130
130
  [ "To clear sooner, exercise (deployangel plan for details)", exercisable_items(document).first(5) ],
131
- [ "Late regressions", Array(document["late_regressions"]).map { |late| late["summary"] } ],
131
+ # Servers from 2026-11-05 say when a person dismissed one as a false alarm.
132
+ [ "Late regressions", Array(document["late_regressions"]).map do |late|
133
+ dismissed = late["dismissed"]
134
+ dismissed ? "#{late["summary"]} (dismissed as a false alarm by #{dismissed["by"]}: #{dismissed["note"]})" : late["summary"]
135
+ end ],
132
136
  # A failed release's rollback target and where to look first
133
137
  # (servers from 2026-11-01 send them).
134
138
  [ "Next steps", Array(document["next_steps"]).map { |step| step["text"] } ]
@@ -112,10 +112,11 @@ module DeployAngel
112
112
  investigate the likely cause, and propose a fix. `next_steps` names the last
113
113
  cleared release a rollback would go to. Do not roll back or change
114
114
  production without explicit approval.
115
- - A failed release whose failing finding is a volume or checkpoint drop you
116
- made on purpose (a route or job you removed): you can't accept it. Tell the
117
- user why you think it was intended, with your evidence, and give them the
118
- finding's `accept_url` so a person decides. It stays failed until then.
115
+ - A failed release whose failing finding is a volume or checkpoint drop or a
116
+ slowdown you made on purpose (a route or job you removed, a page that now
117
+ does more work): you can't accept it. Tell the user why you think it was
118
+ intended, with your evidence, and give them the finding's `accept_url` so a
119
+ person decides. It stays failed until then.
119
120
  - Exit 3: still verifying; run the command again.
120
121
  - Not cleared yet: call `get_exercise_plan` (or `bundle exec deployangel plan`).
121
122
  If its status is "exercisable" or "waiting_for_activity", run
@@ -31,10 +31,11 @@ module DeployAngel
31
31
  Only act on status "exercisable" or "waiting_for_activity"; for "warm_up" or
32
32
  "no_baseline" nothing you run can clear it. Exercise routes marked mutating only with a test account
33
33
  or after asking. Report what you ran with the plan's report_with command (deployangel check).
34
- A failing volume_drop or checkpoint_rate finding with an accept_url may be an intended change, such as
35
- a route or job you removed on purpose. You cannot accept it, and must not try: tell the user why you
36
- think it was intended, with your evidence, and give them the accept_url so a person decides. Until
37
- someone accepts it, the release is failed: never report it as success. A finding with status
34
+ A failing volume_drop, checkpoint_rate, or p95_latency finding with an accept_url may be an intended
35
+ change, such as a route or job you removed on purpose, or a page that now does more work.
36
+ You cannot accept it, and must not try: tell the user why you think it was intended, with your
37
+ evidence, and give them the accept_url so a person decides. Until someone accepts it, the release
38
+ is failed: never report it as success. A finding with status
38
39
  accepted was accepted as intended by the person in accepted_as_intended.
39
40
  TEXT
40
41
 
@@ -124,7 +125,8 @@ module DeployAngel
124
125
  { "limit" => { "type" => "integer", "minimum" => 1, "maximum" => 50, "default" => 10 } }),
125
126
  tool("get_exception", "Sanitized details and a representative stack trace (application frames, or library frames when there are none) for an exception fingerprint.",
126
127
  { "fingerprint" => { "type" => "string" } }, required: %w[fingerprint]),
127
- tool("list_late_regressions", "Failures found after a release was cleared, on paths the clearance did not cover.",
128
+ tool("list_late_regressions", "Failures found after a release was cleared, on paths the clearance did not cover. " \
129
+ "One with dismissed set was dismissed by a person as a false alarm, with their reason: it needs no action.",
128
130
  { "since" => { "type" => "string", "description" => "ISO 8601 time" },
129
131
  "limit" => { "type" => "integer", "minimum" => 1, "maximum" => 50, "default" => 10 } })
130
132
  ]
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module DeployAngel
4
- VERSION = "0.1.41"
4
+ VERSION = "0.1.43"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: deployangel
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.41
4
+ version: 0.1.43
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jordan Owens