@guiho/runx 0.2.2 → 0.2.4
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.
- package/CHANGELOG.md +23 -0
- package/DOCS.md +16 -2
- package/README.md +6 -0
- package/docs/architecture/architecture.xdocs.md +3 -2
- package/docs/architecture/cli-architecture.md +15 -7
- package/docs/decisions/citty-cli-migration.md +139 -0
- package/docs/decisions/decisions.xdocs.md +2 -0
- package/docs/plans/citty-cli-migration.md +169 -0
- package/docs/plans/plans.xdocs.md +3 -0
- package/docs/reviews/implementation/citty-cli-migration-review.md +85 -0
- package/docs/reviews/implementation/implementation.xdocs.md +22 -0
- package/docs/reviews/plans/citty-cli-migration-review.md +80 -0
- package/docs/reviews/plans/plans.xdocs.md +3 -0
- package/docs/reviews/reviews.xdocs.md +1 -0
- package/docs/validation/citty-cli-migration.md +95 -0
- package/docs/validation/npm-trusted-publishing-0.2.2.md +54 -0
- package/docs/validation/validation.xdocs.md +4 -0
- package/library/cli.d.ts +8 -2
- package/library/cli.d.ts.map +1 -1
- package/library/cli.js +357 -103
- package/library/help.d.ts +0 -1
- package/library/help.d.ts.map +1 -1
- package/library/help.js +0 -4
- package/library/self-management.d.ts +2 -5
- package/library/self-management.d.ts.map +1 -1
- package/library/self-management.js +6 -5
- package/library/types.d.ts +5 -5
- package/library/types.d.ts.map +1 -1
- package/package.json +3 -2
- package/skills/guiho-s-runx/SKILL.md +16 -0
- package/skills/guiho-s-runx/guiho-s-runx.xdocs.md +4 -3
- package/library/flags.d.ts +0 -5
- package/library/flags.d.ts.map +0 -1
- package/library/flags.js +0 -32
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: RunX Citty CLI Migration Plan Review
|
|
3
|
+
purpose: Verify that the full Citty migration plan is safe, complete, testable, and ready for execution.
|
|
4
|
+
description: Reviews command compatibility, safety invariants, native packaging, protected delivery, documentation, and Mirror release sequencing.
|
|
5
|
+
created: 2026-07-14
|
|
6
|
+
flags:
|
|
7
|
+
- approved
|
|
8
|
+
tags:
|
|
9
|
+
- reviews
|
|
10
|
+
- plans
|
|
11
|
+
- cli
|
|
12
|
+
keywords:
|
|
13
|
+
- runx
|
|
14
|
+
- citty
|
|
15
|
+
- plan review
|
|
16
|
+
- native executable
|
|
17
|
+
owner: runx-plan-reviews
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# RunX Citty CLI Migration Plan Review
|
|
21
|
+
|
|
22
|
+
## Verdict
|
|
23
|
+
|
|
24
|
+
Ready for execution.
|
|
25
|
+
|
|
26
|
+
## Findings
|
|
27
|
+
|
|
28
|
+
- No blocker or high-severity findings remain.
|
|
29
|
+
- The plan explicitly removes both handwritten parsing and manual top-level
|
|
30
|
+
routing, so the result cannot quietly retain a second parser behind Citty.
|
|
31
|
+
- The root-selector shorthand is treated as a compatibility path with known
|
|
32
|
+
Citty commands taking precedence, preventing command names from being
|
|
33
|
+
reinterpreted as manifest selectors.
|
|
34
|
+
- `-h` and `-v` are tested outside a configured project, directly covering the
|
|
35
|
+
failure that motivated the migration.
|
|
36
|
+
- Manifest parsing, selectors, subprocess execution, upgrades, installers, and
|
|
37
|
+
JSON payloads stay within their current domain modules; the migration is
|
|
38
|
+
bounded to CLI ownership.
|
|
39
|
+
- No data, authentication, authorization, or cache migrations are involved.
|
|
40
|
+
|
|
41
|
+
## Safety and Compatibility Review
|
|
42
|
+
|
|
43
|
+
- The no-spawn invariant covers listing, describing, checking, help, version,
|
|
44
|
+
and dry runs.
|
|
45
|
+
- Missing arguments and unknown options are usage failures, while RunX domain
|
|
46
|
+
failures preserve their existing error contract.
|
|
47
|
+
- Every public command, nested route, alias, positional selector, and applicable
|
|
48
|
+
option has an explicit test requirement.
|
|
49
|
+
- Citty must bundle into both npm output and Bun native executables without a
|
|
50
|
+
Node.js runtime dependency.
|
|
51
|
+
|
|
52
|
+
## Delivery and Release Review
|
|
53
|
+
|
|
54
|
+
- Complete Bun and native validation precedes protected-branch delivery.
|
|
55
|
+
- The implementation reaches `main` before Mirror plans and applies patch
|
|
56
|
+
`0.2.4`.
|
|
57
|
+
- The Mirror-managed release commit reaches protected `main` before its tag is
|
|
58
|
+
pushed.
|
|
59
|
+
- The plan preserves the `production` environment's manual approval gate and
|
|
60
|
+
observes npm and GitHub distribution after approval.
|
|
61
|
+
|
|
62
|
+
## Documentation and TODO Review
|
|
63
|
+
|
|
64
|
+
- README, detailed docs, the bundled RunX skill, and affected XDocs descriptors
|
|
65
|
+
are named explicitly.
|
|
66
|
+
- The work is authorized for continuous execution in this session, so a second
|
|
67
|
+
TODO artifact would duplicate the decision, plan, and review without adding a
|
|
68
|
+
durable scheduling boundary.
|
|
69
|
+
|
|
70
|
+
## First Executable Unit
|
|
71
|
+
|
|
72
|
+
Execute Unit 1 in
|
|
73
|
+
[RunX Citty CLI Migration Plan](../../plans/citty-cli-migration.md): add Citty
|
|
74
|
+
with Bun and verify its installed command API before replacing production
|
|
75
|
+
routing.
|
|
76
|
+
|
|
77
|
+
## References
|
|
78
|
+
|
|
79
|
+
- [RunX Citty CLI Migration Plan](../../plans/citty-cli-migration.md)
|
|
80
|
+
- [Full Citty CLI Migration](../../decisions/citty-cli-migration.md)
|
|
@@ -4,8 +4,10 @@ description: Execution-readiness reviews for RunX implementation and release pla
|
|
|
4
4
|
parent: runx-reviews
|
|
5
5
|
children: []
|
|
6
6
|
files:
|
|
7
|
+
citty-cli-migration-review.md: Reviews completeness, compatibility, safety invariants, native packaging, and release sequencing for the Citty migration.
|
|
7
8
|
npm-trusted-publishing-release-review.md: Reviews sequencing, acceptance criteria, safety gates, and validation for the RunX 0.2.1 trusted-publishing plan.
|
|
8
9
|
documents:
|
|
10
|
+
citty-cli-migration-review.md: Ready-for-execution review of the full Citty CLI migration plan.
|
|
9
11
|
npm-trusted-publishing-release-review.md: Ready-for-execution review of the npm trusted-publishing release plan.
|
|
10
12
|
tags:
|
|
11
13
|
- reviews
|
|
@@ -13,6 +15,7 @@ tags:
|
|
|
13
15
|
keywords:
|
|
14
16
|
- runx
|
|
15
17
|
- plan review
|
|
18
|
+
- citty
|
|
16
19
|
- trusted publishing
|
|
17
20
|
flags: []
|
|
18
21
|
status: stable
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: RunX Citty CLI Migration Validation
|
|
3
|
+
purpose: Preserve verification evidence for the full Citty CLI migration before protected delivery and release.
|
|
4
|
+
description: Records TypeScript, tests, library, native binaries, npm packaging, CLI behavior, XDocs, failures, and residual distribution risk.
|
|
5
|
+
created: 2026-07-14
|
|
6
|
+
flags:
|
|
7
|
+
- validated
|
|
8
|
+
tags:
|
|
9
|
+
- validation
|
|
10
|
+
- cli
|
|
11
|
+
- release
|
|
12
|
+
keywords:
|
|
13
|
+
- runx
|
|
14
|
+
- citty
|
|
15
|
+
- native matrix
|
|
16
|
+
- npm pack
|
|
17
|
+
owner: runx-validation
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
# RunX Citty CLI Migration Validation
|
|
21
|
+
|
|
22
|
+
## Summary
|
|
23
|
+
|
|
24
|
+
The complete Citty migration passes the local merge and release gate. Source,
|
|
25
|
+
package, and native executable behavior agree on version `0.2.3` before the
|
|
26
|
+
planned Mirror patch to `0.2.4`.
|
|
27
|
+
|
|
28
|
+
## Scope
|
|
29
|
+
|
|
30
|
+
- Citty dependency and command definitions.
|
|
31
|
+
- Root, catalog, agent, upgrade, and uninstall routing.
|
|
32
|
+
- Help, version, errors, aliases, selector shorthand, options, output formats,
|
|
33
|
+
confirmation, and dry-run safety.
|
|
34
|
+
- TypeScript library, local native executable, twelve release assets, npm
|
|
35
|
+
tarball, packed launcher, bundled skill, and XDocs metadata.
|
|
36
|
+
|
|
37
|
+
## Commands Run
|
|
38
|
+
|
|
39
|
+
| Check | Result | Evidence |
|
|
40
|
+
| --- | --- | --- |
|
|
41
|
+
| `bun run typecheck` | passed | TypeScript emitted no diagnostics. |
|
|
42
|
+
| `bun test` | passed | 13 tests, 0 failures, 125 assertions. |
|
|
43
|
+
| `bun run build` | passed | TypeScript library output completed. |
|
|
44
|
+
| `bun run binary` | passed | Local Windows executable compiled with Citty bundled. |
|
|
45
|
+
| `bin/runx.exe -v` | passed | Printed `0.2.3` without manifest discovery. |
|
|
46
|
+
| `bin/runx.exe --help` | passed | Printed the Citty root command tree and options. |
|
|
47
|
+
| `bun run binaries` | passed | All 12 configured native assets compiled and were non-empty. |
|
|
48
|
+
| `npm pack --dry-run --json` | passed | Reported 78 package files. |
|
|
49
|
+
| `npm pack --json` | passed | Produced a 39,749-byte validation tarball with 78 files. |
|
|
50
|
+
| packed `scripts/runx-bin.ts -v` | passed | Printed `0.2.3` outside a manifest. |
|
|
51
|
+
| packed `scripts/runx-bin.ts --help` | passed | Printed Citty usage outside a manifest. |
|
|
52
|
+
| `xdocs tree` | passed | Included the complete RunX documentation tree. |
|
|
53
|
+
| `xdocs scan` | passed | Found 16 valid descriptors before adding this validation/review scope. |
|
|
54
|
+
| `xdocs doctor .` | passed | 0 errors and 0 warnings. |
|
|
55
|
+
|
|
56
|
+
## Package Checks
|
|
57
|
+
|
|
58
|
+
- Packed `package.json` declares `citty: ^0.2.2` under runtime dependencies.
|
|
59
|
+
- Packed `package.json` has no `postinstall` script.
|
|
60
|
+
- The launcher selected the compiled `library/guiho-runx-bin.js` path and
|
|
61
|
+
returned successful version/help output.
|
|
62
|
+
|
|
63
|
+
## Manual Behavior Checks
|
|
64
|
+
|
|
65
|
+
- Source and native `-v`/help worked outside a configured project.
|
|
66
|
+
- Citty usage displayed command-specific arguments and only applicable flags.
|
|
67
|
+
- Unknown options and missing selectors returned usage errors rather than a
|
|
68
|
+
missing-manifest error.
|
|
69
|
+
- A valid manifest selector named `constructor` executed through the root
|
|
70
|
+
shorthand, proving the compatibility map is prototype-safe.
|
|
71
|
+
|
|
72
|
+
## Failures Or Blockers
|
|
73
|
+
|
|
74
|
+
No implementation blocker remains. Two environment-only validation attempts
|
|
75
|
+
failed before the successful package check: the sandbox denied `C:\tmp`, and
|
|
76
|
+
npm's default user cache was not writable. Re-running with repository-local
|
|
77
|
+
ignored `.temp` paths and npm cache completed successfully without changing the
|
|
78
|
+
artifact.
|
|
79
|
+
|
|
80
|
+
## Skipped Checks
|
|
81
|
+
|
|
82
|
+
No plan-required local check was skipped. Public CI, protected merge, Mirror
|
|
83
|
+
patch application, protected tag push, manual environment approval, GitHub
|
|
84
|
+
Release assets, and npm provenance are pending Unit 5.
|
|
85
|
+
|
|
86
|
+
## Readiness
|
|
87
|
+
|
|
88
|
+
Ready for protected implementation delivery and the Mirror-managed `0.2.4`
|
|
89
|
+
patch release.
|
|
90
|
+
|
|
91
|
+
## References
|
|
92
|
+
|
|
93
|
+
- [Citty CLI Migration Decision](../decisions/citty-cli-migration.md)
|
|
94
|
+
- [Citty CLI Migration Plan](../plans/citty-cli-migration.md)
|
|
95
|
+
- [Citty CLI Migration Implementation Review](../reviews/implementation/citty-cli-migration-review.md)
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: RunX npm Trusted Publishing 0.2.2 Validation
|
|
3
|
+
purpose: Record the release checks and GitHub result for the 0.2.2 trusted-publishing retry.
|
|
4
|
+
description: Documents successful build validation and the tag-ruleset rejection that prevented the Publish workflow from starting.
|
|
5
|
+
created: 2026-07-14
|
|
6
|
+
flags: []
|
|
7
|
+
tags:
|
|
8
|
+
- validation
|
|
9
|
+
- release
|
|
10
|
+
keywords:
|
|
11
|
+
- runx
|
|
12
|
+
- npm
|
|
13
|
+
- trusted publishing
|
|
14
|
+
owner: runx-validation
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
# npm Trusted Publishing 0.2.2 Validation
|
|
18
|
+
|
|
19
|
+
## Result
|
|
20
|
+
|
|
21
|
+
The `0.2.2` package bump was merged to protected `main`, but GitHub rejected
|
|
22
|
+
creation of the `@guiho/runx@0.2.2` tag. Because the tag was not created, the
|
|
23
|
+
Publish workflow did not run and npm remained on `0.2.0`.
|
|
24
|
+
|
|
25
|
+
## Passed checks
|
|
26
|
+
|
|
27
|
+
- `bun run typecheck`
|
|
28
|
+
- `bun test`: 4 passed, 0 failed
|
|
29
|
+
- `bun run build`
|
|
30
|
+
- `bun run binary`
|
|
31
|
+
- `bun run binaries`: 12 native assets built and verified
|
|
32
|
+
- `mirror version plan patch`: planned `0.2.1` to `0.2.2`
|
|
33
|
+
- `xdocs meta . --documents --strict --owner runx --format json`
|
|
34
|
+
- Pull request `#4` CI: passed
|
|
35
|
+
|
|
36
|
+
## Release evidence
|
|
37
|
+
|
|
38
|
+
- Protected-main merge: `57c7d81`
|
|
39
|
+
- Mirror release commit: `6c67be5`
|
|
40
|
+
- Local annotated tag: `@guiho/runx@0.2.2`
|
|
41
|
+
- Remote tag: not created
|
|
42
|
+
- Publish workflow run: not started
|
|
43
|
+
- npm latest version after the attempt: `0.2.0`
|
|
44
|
+
|
|
45
|
+
## Blocking rules
|
|
46
|
+
|
|
47
|
+
GitHub rejected the tag with `GH013` because the active tag ruleset both
|
|
48
|
+
requires linear history and restricts tag creation. The reported merge-commit
|
|
49
|
+
violation was `f445631`. The ruleset had no bypass actors, and the authenticated
|
|
50
|
+
repository owner could not bypass it.
|
|
51
|
+
|
|
52
|
+
Trusted publishing itself was not exercised by this attempt. The tag ruleset
|
|
53
|
+
must permit the release actor to create the version tag before npm OIDC can be
|
|
54
|
+
validated.
|
|
@@ -5,12 +5,16 @@ parent: runx-docs
|
|
|
5
5
|
children: []
|
|
6
6
|
files:
|
|
7
7
|
alpha-implementation-summary.md: Records the completed alpha implementation, checks, and release boundaries.
|
|
8
|
+
citty-cli-migration.md: Records the complete local validation gate for the Citty command-tree migration.
|
|
8
9
|
documents:
|
|
9
10
|
alpha-implementation-summary.md: Validation summary for the first RunX implementation.
|
|
11
|
+
citty-cli-migration.md: Validation evidence for TypeScript, tests, native assets, npm packaging, CLI behavior, and XDocs.
|
|
12
|
+
npm-trusted-publishing-0.2.2.md: Validation evidence for the blocked 0.2.2 npm trusted-publishing retry.
|
|
10
13
|
tags:
|
|
11
14
|
- validation
|
|
12
15
|
keywords:
|
|
13
16
|
- runx
|
|
17
|
+
- citty
|
|
14
18
|
- tests
|
|
15
19
|
- summary
|
|
16
20
|
flags: []
|
package/library/cli.d.ts
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* @copyright Copyright © 2026 GUIHO Technologies as represented by Cristóvão GUIHO. All Rights Reserved.
|
|
3
|
+
*/
|
|
4
|
+
import type { CommandDef } from 'citty';
|
|
5
|
+
export { runCli, runCliWithErrorHandling, runxCommand, };
|
|
6
|
+
declare const runxCommand: CommandDef<any>;
|
|
7
|
+
declare function runCli(rawArgs?: string[]): Promise<void>;
|
|
8
|
+
declare function runCliWithErrorHandling(rawArgs?: string[]): Promise<void>;
|
|
3
9
|
//# sourceMappingURL=cli.d.ts.map
|
package/library/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../source/cli.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../source/cli.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,OAAO,KAAK,EAAkB,UAAU,EAAkB,MAAM,OAAO,CAAA;AAGvE,OAAO,EACL,MAAM,EACN,uBAAuB,EACvB,WAAW,GACZ,CAAA;AAqPD,QAAA,MAAiB,WAAW,iBAAwB,CAAA;AAEpD,iBAAe,MAAM,CAAC,OAAO,GAAE,MAAM,EAA0B,GAAG,OAAO,CAAC,IAAI,CAAC,CAY9E;AAED,iBAAe,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBxE"}
|