feat(aws-transform): publish mainframe-reimagine suite, .NET NextSteps ingestion, and continuous-modernization updates#231
Conversation
…s ingestion, and continuous-modernization updates - mainframe-reimagine: publish the full capability (6 references + routing) — previously unpublished to agent-plugins - .NET: auto-download artifacts and ingest NextSteps.md at completion - continuous-modernization: 250-repo cap with splitting, version-agnostic pagination, background logs to /tmp, blocking --wait + nextToken pagination, remediation-cap wording - Bump plugin version to 1.3.0 (.claude-plugin, .codex-plugin, marketplace entry)
Code reviewRepo tooling is green ( Found 4 issues:
Additional notes (lower confidence, not blocking):
🤖 Generated with Claude Code - If this code review was useful, please react with 👍. Otherwise, react with 👎. |
scottschreckengaust
left a comment
There was a problem hiding this comment.
recommendations added in PR comment
…reimagine Phase 4 Phase 4 (mainframe-reimagine-verify.md) invokes verify-traceability.py, but the script was never published to this repo. Ship it under skills/aws-transform/scripts/ (mirrors the internal source and the Kiro Power layout). Addresses review issue awslabs#1.
…eview (issues 2-4) Sync Ashe Li's content fixes (ATXKiroPower CR-288126613) into the plugin: - specgen: remove stray code fences that swallowed Step 6/7 headings (issue 2) - verify: correct --inputs-dir default from inputs/spec to spec (issue 3) - modern-traceability: clarify Source Functions parsing; writer/reader confirmed in sync (issue 4) - specgen: promote exposed **MANDATORY** emphasis line to an h4 heading (MD036, exposed by the fence removal)
|
@scottschreckengaust I included the review comments by pulling in Ashe's fixes from internal repo. |
scottschreckengaust
left a comment
There was a problem hiding this comment.
Follow-up review — verified against e5e336c
Re-checked all six items from my earlier review against the current head, and ran a second pass over the new verify-traceability.py. Repo tooling and CI are green; version bump 1.3.0 is consistent across .claude-plugin/plugin.json, .codex-plugin/plugin.json, and the aws-transform entry in .claude-plugin/marketplace.json (catalog metadata.version correctly untouched). Cross-reference links and TOC anchors resolve.
Thanks for pulling in Ashe's fixes — 3 of the 4 blocking items are genuinely resolved. Requesting changes on the two that aren't.
✅ Resolved
verify-traceability.pynow exists atplugins/aws-transform/skills/aws-transform/scripts/verify-traceability.py, self-identifies as the Phase 4 tool, and producestraceability-dashboard.html(--outputdefault at:647) — the router's dependency is now satisfiable.- Code-fence nesting in specgen.md — fixed by switching the outer example blocks to 4-backtick fences (247→264, 300→319).
### Step 6(:282) and### Step 7(:323) now render as real headings, outside all fences. --inputs-dirdocumented default inmainframe-reimagine-verify.md:97is nowspec, matching thespec/layout the router unzips into. (See residual note below.)
❌ Still open — blocking
Item 4 — writer/reader spec-header key mismatch is NOT resolved.
- Writer (Phase 3),
mainframe-reimagine-specgen.md:477:
> **Source**: <BC-N Context Name> | **Mapping**: <1:1 or 1:N> | **Source Function**: <FunctionName>— singularSource Function. - Reader (Phase 5),
mainframe-reimagine-modern-traceability.md:86(also:271-272,:391):
> **Source Functions**: ...— pluralSource Functions.
The pipe-delimited-vs-standalone-line concern is now aligned, but the key name still differs (singular vs plural), so Phase 5's match on **Source Functions** won't find the header Phase 3 wrote, and the legacy_rule_ids back-fill silently fails. Pick one key name and use it in both files.
Items 5 & 6 — remediation create --wait guidance is still self-contradictory.
continuous-modernization-remediation.md:69now says--waitis supported and preferred, but three unchanged sibling files still assert it does not exist:continuous-modernization-batch-execution.md:782— "atx ct remediation createdoes NOT support--wait, so we poll…"continuous-modernization-ec2-execution.md:458— "# Poll until terminal (atx ct remediation create has no --wait flag)"continuous-modernization-schedule.md:821— "# Poll every 30s until terminal status (atx ct remediation create does not support --wait)"
An agent gets opposite instructions depending on which file it reads. (analysis run --waitis fine — no sibling contradicts it.)
- The broad-fallback wording (
remediation.md:71) is unchanged: "If a run fails with an unknown-option error for--wait, re-run without it" still (a) triggers on any unknown-option error, not one that names--wait, and (b) blindly re-runs a side-effectingcreatewithout checking the first attempt returned no ID — a double-submit risk.
🔧 New findings from re-review (non-blocking)
verify-traceability.py:636still defaults--inputs-dirtoinputs/spec— the exact wrong path item 3 was about. It only works because the documented commands always pass--inputs-dir specexplicitly; running the bare command finds nothing. Suggest changing the script default tospecfor consistency.- No doc tells the agent the script lives under
scripts/.mainframe-reimagine-verify.mdinvokespython3 verify-traceability.pyas if from cwd, but the file is inscripts/. Add the path (e.g.scripts/verify-traceability.py) so Phase 4 can actually locate it. - Malformed
traceability.yamlaborts the whole Phase 4 run.verify-traceability.py:56-57callsyaml.safe_loadwith no error handling; one bad file raises an unhandledScannerError, exits 1, and writes no dashboard. Atry/exceptthat skips-and-warns would make the mechanical check robust. rule_text_summary(:70) isn't in the documented rule schema (mainframe-reimagine-analysis.md:113listsrule_id, program, req_ids, traceability_lines). If the generated YAML lacks that key, the dashboard "Rule Name" column silently renders blank. Reconcile the field name.
nit
mainframe-reimagine.md:10TOC text "Download and Create Workspace" vs heading "Download & Create Workspace" (:43). The anchor still resolves; only the visible text differs.
Happy to re-approve once item 4 and the --wait contradiction are addressed — the rest are polish.
…es 5-6) - Remove stale 'remediation create does not support --wait' claims in the ec2/batch/schedule execution files (--wait is supported on newer CLIs); keep the polling loops, described neutrally (note 5) - Constrain the --wait retry fallback in remediation.md: only re-run without --wait on an error that explicitly names --wait as unrecognized and that returned no remediation ID, to avoid masking other failures / double-submit (note 6)
Head branch was pushed to by a user without write access
|
@scottschreckengaust please feel free to merge the PR, Issue 4 SME said its not a problem. Issues 5/6 have been addressed. Further comments we can address as followups. |
Summary
Publishes the AWS Transform Agent Plugin release v1.3.0 (from internal
ATXKiroPower, tagskill-1.3.0).mainframe-reimagine — first-time publish
Adds the full mainframe-reimagine capability that was previously present in the Kiro Power (
kirodotdev/powers) but never published here:mainframe-reimagine.md+mainframe-reimagine-{modern-traceability,analysis,ddd,specgen,verify}.md, plusmainframe.mdrouting so references resolve..NET
NextSteps.mdat completion (mirrorskirodotdev/powers#162, which shipped this to the Power only).continuous-modernization
nextTokenhandling/tmp--waitsemanticsVersion
Bumped to
1.3.0in.claude-plugin/plugin.json,.codex-plugin/plugin.json, and theaws-transformentry in.claude-plugin/marketplace.json(catalogmetadata.versionuntouched).Validation
dprint checkandmarkdownlint-cli2both clean against the repo's pinned configs.By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the project license.
cc @alkrok @scoschre