Releases: purinzan/gx3-cli-mcp
Release list
v0.3.0
What's Changed
- Link the Glama listing by @purinzan in #48
- Name the device a rung writes, not one it reads by @purinzan in #52
- Count a device read as part of a run as read by @purinzan in #53
- Read a project's configuration by running it, not by reading a guide by @purinzan in #54
- Draw every rung at one width, and every contact as what it is by @purinzan in #55
- Read 51 real projects two ways, and fix where the two disagreed by @purinzan in #56
- Stop reporting a check that could not run as zero findings by @purinzan in #57
- Record which input an answer came from, and refuse to mix two by @purinzan in #58
- Locate a rung by the number GX Works3 shows, not by a row offset by @purinzan in #59
- Pin the pulse and index-modified cases of the data-flow edges by @purinzan in #60
- Fix: xref検索の件数省略と不確実性を明示する by @purinzan in #51
- Fix: 意味差分で配線・接点属性の変更が隠れる問題 by @purinzan in #50
- Say what a trace and a review are worth, where the answer is by @purinzan in #61
- Give the index and the survey the same input identity the xref has by @purinzan in #62
- Let the communication analysis say which input it came from by @purinzan in #63
- Find the index a command should read, instead of guessing at a path by @purinzan in #64
- Four questions, instead of sixty commands by @purinzan in #65
- A ladder you can open in a browser, offline, and click through by @purinzan in #67
- Stop expanding a condition that is no longer a condition by @purinzan in #68
- Let the database say which of its indexes is worth using by @purinzan in #69
- Tell a transfer from two devices that happen to share a rung by @purinzan in #70
- Follow a value to where it came from, in graph and in lint by @purinzan in #71
- Say what a change reaches, not only that it changed by @purinzan in #72
- Reach every write, and say which stage stopped an answer by @purinzan in #73
- Three ways an answer said more than it knew by @purinzan in #74
- Report a limit only when it hid something by @purinzan in #75
- One walk, shared, instead of one per caller by @purinzan in #77
- A run of unknown length is not a run of one by @purinzan in #78
- Write down which instructions read a run, and follow the whole run by @purinzan in #79
- A state nothing constructs, and a fix that reached two of three walks by @purinzan in #80
- Write down the questions that found the bugs the tests could not by @purinzan in #81
- An empty answer says which kind of empty it is by @purinzan in #82
- Two rungs writing one word, when one of them names a different device by @purinzan in #83
- Make the cross-reference answerable without knowing its rule by @purinzan in #89
- Three ways an answer could have been about something else by @purinzan in #99
- An operand covers the words its type occupies by @purinzan in #100
- Names are not text the redactor can recognise by @purinzan in #102
- Two parallel contacts are an OR, not an AND by @purinzan in #103
- A condition that is right does not mean nothing else decides the rung by @purinzan in #107
- Confine MCP-generated files to one output directory by @purinzan in #108
- Link the ladder practical tips from README by @purinzan in #113
- Seal the remaining project/xref provenance boundaries by @purinzan in #114
- Validate the last raw xref readers against their projects by @purinzan in #115
- Make context and doctor require an explicit project when ambiguous by @purinzan in #110
- Finish root ambiguity handling across folders, indexes, and explicit inputs by @purinzan in #116
- Carry the remaining diagnostics and xref regressions onto current main by @purinzan in #117
- Carry label, stateful, jump, and CALL execution provenance through trace by @purinzan in #118
- Keep edge-triggered value writes semantic in trace by @purinzan in #119
- Make device-map range-aware by @purinzan in #120
- Keep every timing writer and reader path by @purinzan in #121
- The index knew, and the question could not reach it by @purinzan in #123
- Keep named and covered evidence together in index-lite by @purinzan in #124
- Finish alarm-map topology and clearing semantics by @purinzan in #125
- Pin shared reach query scaling for #76 by @purinzan in #126
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's Changed
- Add GX3 failure corpus workflow by @purinzan in #5
- Improve doctor next-step guidance by @purinzan in #27
- Close remaining CLI polish issues by @purinzan in #28
- Run CI on every pull request, not only the ones targeting main by @purinzan in #32
- Read instruction destinations and device types from the manuals by @purinzan in #30
- Give every module the one device table, and take the lint's instruction knowledge from the manuals by @purinzan in #33
- Resolve label references, so a label-based project stops reading as empty by @purinzan in #34
- Expose xref access basis and share bit device types by @purinzan in #37
- Fix the project root, the audit bundle, and how a rung's operands are read by @purinzan in #38
- Find a device that a block instruction writes without naming it by @purinzan in #39
- Add rung-text, metrics and guide; one --format for every command by @purinzan in #40
- Fix counter and retentive timer comment lookup by @purinzan in #42
- Close the remaining ways an answer came back empty or misdirected by @purinzan in #43
- Export coordinate ladder layout as SVG by @purinzan in #44
- Verify reading by rebuilding each rung and comparing it to the original by @purinzan in #46
- Describe what each tool does to the world, not just its name by @purinzan in #45
- Cut the README to what someone needs to start by @purinzan in #41
- Release 0.2.0 by @purinzan in #47
Full Changelog: v0.1.4...v0.2.0
v0.1.4
Failure messages now tell you where to send a support bundle.
Both failure paths told you to build a redacted support bundle and then stopped, without naming a destination. They now end at a prefilled issue form, and the project-input path names the lightweight-saved .gx3 case directly instead of leaving you to guess why the file will not open. (#25)
v0.1.3
v0.1.2
Fixes two bugs that a user hits on their first real project.
- Device names are now spelled the way GX Works3 spells them. X, Y, B and W are numbered in hexadecimal; the index, xref and query paths were reporting them in decimal, so
query-device,query-comment,where-usedandtrace-devicenamed devices that do not exist in the customer's project. Devices whose hex number contains A-F were rejected outright as "invalid device". (#16, #17) trace-device --strict-logicno longer answersFALSEfor a rung with a b-contact on a hex-numbered device — it was claiming an output could never turn on. (#18)
Also adds synthetic-project --profile demo-line: a fictional 14-station transfer line of about 500 rungs, so the tool can be evaluated and bugs reproduced without sharing a real project. (#15)
Existing .gx3_index databases are refused with a message naming the rebuild command, rather than silently missing every lookup.