mcptask-rails-runner 0.3.20 → 0.3.22

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: 49c22bb6614a5230f35bffc56475baae278dfe014d123608339d9d64605e23e3
4
- data.tar.gz: c57fb535d1e21a9ef10009f52231540912784fa1fe5c8011a44ae4d058649618
3
+ metadata.gz: 17952c83fadf385cdd9425762619050d2a287af1ddea4f678ea75f6ebfd1d385
4
+ data.tar.gz: fa664976f9e79876db7e87083f8cedff01f42cef9e2c161bb997fd8fa459a47b
5
5
  SHA512:
6
- metadata.gz: e17a375731c475d4acf9b38c3892d92fba6caaa7e225f89be19421537aa78d0d33b03a356fe2f6d80dd1ba549323c39092090626d5b2d2d10ddbeb5db4a0903a
7
- data.tar.gz: 5ac712a382f98e78dc0ba1b2befb3c2751158b35fdc471faefe422126f3cd745ecc7062c4cb7617530559c179545d83cf0f19564b68f202edb6c2b04e898eb6e
6
+ metadata.gz: 503bceb521790003682c224959f958aab8eae986c8207f31b90636eda9353f4be3e951161d22e4c16a6d2fe9aa0963506d5621879bdaec61160bb59f5f4e1117
7
+ data.tar.gz: 235729f6fe98e5b68daa6b122deb89077baf085301cf7e6be23284bbff5ad230e01bfb81d30c623fb614b77e4390db01a2cf10521936d6d9b62d44cfdb43bd94
data/CHANGELOG.md CHANGED
@@ -5,7 +5,105 @@ entries below describe wrapper changes only. Binary changes are listed in the
5
5
  [mcptask-releases](https://github.com/jchsoft/mcptask-releases/releases)
6
6
  release notes for the same tag.
7
7
 
8
- ## Unreleased
8
+ ## 0.3.22
9
+
10
+ No wrapper changes. Full notes in
11
+ [mcptask-releases v0.3.22](https://github.com/jchsoft/mcptask-releases/releases/tag/v0.3.22).
12
+
13
+ **Upgrading takes two commands this time, not one.** The usual
14
+ `mcptask_runner update --self` replaces the binary, and that is enough for the
15
+ loop changes below. It is *not* enough for the skills and helpers: those are a
16
+ data pack the binary carries, and they are only written into a project by
17
+
18
+ ```
19
+ mcptask_runner update
20
+ ```
21
+
22
+ Run it in each host project after updating the binary. Skipping it leaves the
23
+ old `/test-runner` and `/ci-runner` in place, and on a project that is not
24
+ Rails those name commands it cannot run — which is the very thing this version
25
+ fixes. A host that has locally edited a skill keeps its edit; `FORCE=1` takes
26
+ the new one and leaves a `.bak`.
27
+
28
+ Binary changes carried by this version:
29
+
30
+ - **The bundled CI and test skills stop naming a framework.** `/test-runner`
31
+ and `/ci-runner` used to spell out `bin/rails test`, `test:system` and
32
+ RuboCop, and `check_test_lock` recognised a running suite by six regexes,
33
+ five of which were Ruby. On a Django, Node or Swift host the commands did
34
+ not run and the concurrency guard waved every real test command through —
35
+ blind on exactly the projects a universal runner exists for. Both now read
36
+ what the project declares in `.claude/test-commands.json`, which
37
+ `mcptask_runner init` writes and `update` backfills; when the file is absent
38
+ the toolchain is detected from `go.mod`, `Gemfile`, `package.json`,
39
+ `manage.py`, `pyproject.toml` or `Package.swift`, and when nothing is
40
+ recognised the runner says so instead of guessing a command.
41
+
42
+ - **Two more places the prompt spoke Rails to everyone.** The auto-squash
43
+ workflow told every project to run `bin/rails assets:precompile
44
+ RAILS_ENV=test` between its unit and system suites, and the manual
45
+ screenshot step named a Rails class. Neither is measured by what it breaks —
46
+ the first costs a turn or invites a plausible substitute, the second is
47
+ silently ignored — but both contradict the claim the product makes.
48
+
49
+ - **A failed task now waits an hour, not the rest of the day.** A task that
50
+ fails is set aside and the runner moves on; the day no longer ends over one
51
+ piece.
52
+
53
+ - **The dashboard can take a piece off the skip list.** A piece set aside
54
+ earlier in the day can be released from the card, and the runner picks it up
55
+ again without a restart.
56
+
57
+ - **A closed socket is described by whoever actually saw it close.** Two paths
58
+ reported a dropped dashboard connection — the read loop, which knows the
59
+ close code the server sent, and a failed write, which knows only that the
60
+ socket was gone. Whichever finished first wrote the notice, so a close with
61
+ a code could be reported as a bare transport error. The reader's account now
62
+ wins, which is what makes "the server closed it, code 1001" trustworthy when
63
+ you are deciding whether to go and look at the server.
64
+
65
+ ## 0.3.21
66
+
67
+ No wrapper changes. Full notes in
68
+ [mcptask-releases v0.3.21](https://github.com/jchsoft/mcptask-releases/releases/tag/v0.3.21).
69
+
70
+ **Upgrading:** run `mcptask_runner update --self` on each host. Both changes are
71
+ binary behaviour, and the first of them only stops costing you a working day
72
+ once the host is actually running the new binary.
73
+
74
+ Binary changes carried by this version:
75
+
76
+ - A deploy of mcptask.online now costs one attempt instead of the working day.
77
+ While the site is being deployed the MCP server is unreachable for minutes and
78
+ then comes back by itself. The runner used to spend its entire recovery budget
79
+ inside about forty seconds — a child dies in ten, five seconds between
80
+ restarts, two restarts — so all three attempts lost the same race before the
81
+ server could possibly be back, and the run ended with `error`. That status is
82
+ what ends the day, so one deploy could end a day that had already completed
83
+ eighteen tasks.
84
+
85
+ The two situations that reach that path are now told apart where they are
86
+ detected, rather than by reading the message afterwards. A deferred tool that
87
+ never loaded is the child's own miss: it keeps its two fast restarts and still
88
+ ends in an error, because it is not going to fix itself. An outage gets six
89
+ restarts at twelve times the wait — about six minutes, which spans a deploy —
90
+ and when that runs out it ends the way a stall does: a verdict the loop
91
+ carries on from, the task left `in_progress` for the next triage, and no bug
92
+ piece, because a deploy is not a defect anybody can fix. The wait keeps the
93
+ heartbeat going, so a card watched through a deploy says the runner is waiting
94
+ rather than falling silent.
95
+
96
+ Like every binary fix, it reaches a host only once that host runs the new
97
+ binary — `mcptask_runner update --self` — and until then a deploy goes on
98
+ costing the day.
99
+
100
+ - Today's skip list is visible. A task the runner has set aside — out of scope,
101
+ failed, already taken by somebody else, a merge it cannot finish — is skipped
102
+ by every later triage that day, and until now the only trace of that decision
103
+ was one line in the log at the moment it was made. It now shows on the startup
104
+ banner, in every wait, and on the dashboard card, so an operator looking at a
105
+ quiet runner can see what it has already declined rather than wondering why a
106
+ piece keeps not being picked up.
9
107
 
10
108
  ## 0.3.20
11
109
 
@@ -10,5 +10,5 @@ module McptaskRailsRunner
10
10
  # Binary::INSTALL_DIR. So the pin is per project and per foreground rake
11
11
  # invocation; the installed copy is per machine, and the newest binary any of
12
12
  # those projects offers is the one that stays.
13
- VERSION = "0.3.20"
13
+ VERSION = "0.3.22"
14
14
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mcptask-rails-runner
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.20
4
+ version: 0.3.22
5
5
  platform: ruby
6
6
  authors:
7
7
  - Josef Chmel