chore(release): prepare public source release
This commit is contained in:
+83
@@ -0,0 +1,83 @@
|
||||
# Mercury Toolbox Daily Maintenance Template
|
||||
|
||||
Use this template for small, behavior-preserving maintenance passes. Start from the durable backlog, choose a narrow scope, and stop with evidence instead of broad cleanup drift.
|
||||
|
||||
## Header
|
||||
|
||||
- Date:
|
||||
- Worker or scope:
|
||||
- Starting branch:
|
||||
- Initial worktree status:
|
||||
- Backlog source: `.codex-progress\quality-security-backlog.md`
|
||||
- Candidate review quota:
|
||||
- Actual candidate slots reviewed:
|
||||
- Existing unrelated changes to avoid:
|
||||
|
||||
## Scope
|
||||
|
||||
- Owned files or surfaces:
|
||||
- Explicitly out of scope:
|
||||
- Other workers expected nearby:
|
||||
- Conflict-avoidance note:
|
||||
|
||||
## Candidate Scan
|
||||
|
||||
List only concrete, evidence-backed candidates. Prefer stale references, duplicated docs snippets, recipe naming consistency, metadata drift, and tiny verification hygiene.
|
||||
|
||||
| # | Candidate | Evidence | Risk | Decision |
|
||||
| --- | --- | --- | --- | --- |
|
||||
| 1 | | | low \| medium \| high | land \| skip |
|
||||
|
||||
When a worker receives a numbered quota, keep this table countable even if most entries are skipped. Use one row per backlog item or directly evidenced follow-up.
|
||||
Group obvious no-edit candidates by range only when the reason is identical, for example generated assets that must be regenerated by script or code-owner items outside the worker's surface.
|
||||
|
||||
## Landed Changes
|
||||
|
||||
- [ ] Tiny change:
|
||||
- [ ] Tiny change:
|
||||
- [ ] Tiny change:
|
||||
|
||||
## Skipped Candidates
|
||||
|
||||
- Candidate:
|
||||
Reason:
|
||||
- Candidate:
|
||||
Reason:
|
||||
|
||||
## CI And Runner Notes
|
||||
|
||||
- Runner or CI files inspected:
|
||||
- Toolchain snapshot expectations changed: yes | no
|
||||
- Release or publish path touched: yes | no
|
||||
- Runner credential or token surfaces checked: yes | no | not applicable
|
||||
- Secret-residue checks:
|
||||
- `git remote -v`:
|
||||
- `.git\config`:
|
||||
- Targeted `rg` scan:
|
||||
|
||||
## Verification
|
||||
|
||||
Choose the smallest proof that covers the touched surface.
|
||||
|
||||
```powershell
|
||||
just --summary
|
||||
just ai-check
|
||||
just periphery-check
|
||||
cargo fmt --all --check
|
||||
just --fmt --check
|
||||
pwsh -NoProfile -File .\scripts\check-powershell.ps1
|
||||
pwsh -NoProfile -File .\scripts\check-ai-prompt.ps1 -Configuration ReleaseFast -SkipBuild
|
||||
pwsh -NoProfile -File .\scripts\check-ai-skill.ps1 -Configuration ReleaseFast -SkipBuild
|
||||
```
|
||||
|
||||
- Commands run:
|
||||
- Outcomes:
|
||||
- Commands intentionally not run:
|
||||
|
||||
## Handoff
|
||||
|
||||
- Changed files:
|
||||
- Micro-optimizations landed:
|
||||
- Follow-up backlog items:
|
||||
- Commit:
|
||||
- Push: not run unless explicitly requested
|
||||
+133
@@ -0,0 +1,133 @@
|
||||
# Jade Feature Template
|
||||
|
||||
Use this template for any new Mercury Toolbox feature, command, subcommand, output mode, parser path, generated asset, or cross-tool behavior change. Keep the filled copy close to the work item, then remove sections that truly do not apply before merging.
|
||||
|
||||
## Header
|
||||
|
||||
- Feature:
|
||||
- Owner:
|
||||
- Date:
|
||||
- Status: draft | implementing | verifying | ready
|
||||
- Tracking issue or branch:
|
||||
- Affected crates, scripts, and docs:
|
||||
|
||||
## Intent
|
||||
|
||||
- User problem:
|
||||
- Primary workflow:
|
||||
- Non-goals:
|
||||
- Compatibility promise:
|
||||
- Rollback or fallback plan:
|
||||
|
||||
## User-Facing Contract
|
||||
|
||||
Write the exact CLI shape before coding.
|
||||
|
||||
```powershell
|
||||
<command> --help
|
||||
<command> <subcommand> --help
|
||||
<command> --json <example-input>
|
||||
<command> --toon <example-input>
|
||||
```
|
||||
|
||||
- Text output:
|
||||
- JSON schema or fields:
|
||||
- TOON shape:
|
||||
- Exit codes:
|
||||
- Stdin behavior:
|
||||
- Path, glob, and missing-root behavior:
|
||||
- Windows-specific behavior:
|
||||
- Cross-platform behavior:
|
||||
|
||||
## Codebase Fit
|
||||
|
||||
- Existing command or helper to mirror:
|
||||
- Shared helper APIs to reuse:
|
||||
- New dependencies: none | list with reason
|
||||
- Feature flags or platform cfgs:
|
||||
- Generated files that must be regenerated:
|
||||
- Packaging or install changes:
|
||||
|
||||
## Test Plan First
|
||||
|
||||
Write the first failing test before implementation.
|
||||
|
||||
- Red test command:
|
||||
|
||||
```powershell
|
||||
cargo nextest run -p <crate> --test <test-name> <filter>
|
||||
```
|
||||
|
||||
- Expected failing assertion:
|
||||
- Green command after implementation:
|
||||
- Regression cases:
|
||||
- Parser/help contract cases:
|
||||
- Error-path cases:
|
||||
- Platform-specific cases:
|
||||
|
||||
## Implementation Checklist
|
||||
|
||||
- [ ] Add or update failing tests first.
|
||||
- [ ] Reuse `common` helpers for shared CLI, path, stdin, format, color, and error behavior.
|
||||
- [ ] Keep public Rust APIs documented, including `# Errors` and `# Panics` where applicable.
|
||||
- [ ] Avoid `.unwrap()`, `.expect()`, and `panic!` in production paths unless a narrow `// jade: allow-panic because: <reason>` comment is justified beside the call site.
|
||||
- [ ] Keep subcommand `--help` aligned with parser-supported flags.
|
||||
- [ ] Preserve literal paths unless a documented glob mode is explicitly requested.
|
||||
- [ ] Keep `--json`, `--toon`, and `--format text|json|toon` behavior consistent with the toolbox contract.
|
||||
- [ ] Update README or command docs when user-facing behavior changes.
|
||||
- [ ] Update `docs/ai/toolbox-ai-prompt-notes.json` when AI routing, examples, caveats, or command coverage changes.
|
||||
- [ ] Regenerate generated AI assets instead of hand-editing them.
|
||||
- [ ] Update package/install scripts only when the shipped artifact surface changes.
|
||||
|
||||
## Jade Verification
|
||||
|
||||
Focused loop:
|
||||
|
||||
```powershell
|
||||
cargo fmt --all --check
|
||||
cargo nextest run -p <crate> --all-targets --all-features
|
||||
cargo clippy -p <crate> --all-targets --all-features -- -D warnings -W clippy::pedantic -W clippy::nursery
|
||||
```
|
||||
|
||||
Docs or generated AI asset loop:
|
||||
|
||||
```powershell
|
||||
just --summary
|
||||
pwsh -NoProfile -File .\scripts\check-powershell.ps1
|
||||
pwsh -NoProfile -File .\scripts\check-ai-prompt.ps1 -Configuration ReleaseFast -SkipBuild
|
||||
pwsh -NoProfile -File .\scripts\check-ai-skill.ps1 -Configuration ReleaseFast -SkipBuild
|
||||
```
|
||||
|
||||
Shared behavior or broad refactor loop:
|
||||
|
||||
```powershell
|
||||
$env:CARGO_INCREMENTAL = '0'
|
||||
cargo nextest run --workspace --all-targets --all-features --no-fail-fast
|
||||
Remove-Item Env:\CARGO_INCREMENTAL
|
||||
```
|
||||
|
||||
Full Jade gate before claiming repository-clean status:
|
||||
|
||||
```powershell
|
||||
pwsh -NoProfile -File .\scripts\check-jade.ps1
|
||||
```
|
||||
|
||||
If a hardening gate cannot run on the current machine, use only the specific `-Exempt*` flag with a non-empty reason. Do not add a CI skip, broad allow, or permanent template bypass.
|
||||
|
||||
## Review Checklist
|
||||
|
||||
- [ ] The diff is scoped to the feature and does not include unrelated cleanup.
|
||||
- [ ] Existing behavior is either preserved or deliberately documented as changed.
|
||||
- [ ] Help text, parser support, README/docs, generated AI prompt, and skill catalog agree.
|
||||
- [ ] Tests cover success, failure, and format-specific output where relevant.
|
||||
- [ ] `cargo nextest` is the test signal; plain `cargo test` is not used as the main proof.
|
||||
- [ ] Verification commands and outcomes are recorded in the final handoff.
|
||||
- [ ] Worktree is clean after commit or intentionally lists follow-up files.
|
||||
|
||||
## Handoff Notes
|
||||
|
||||
- What changed:
|
||||
- Tradeoffs:
|
||||
- Verification run:
|
||||
- Known follow-ups:
|
||||
- Commit:
|
||||
+71
@@ -0,0 +1,71 @@
|
||||
# Mercury Toolbox Release Notes Template
|
||||
|
||||
Use this template when publishing a release on Gitea. Keep it short, concrete, and oriented around what changed for someone installing or upgrading the toolbox.
|
||||
|
||||
## Title
|
||||
|
||||
`Mercury Toolbox vX.Y.Z`
|
||||
|
||||
## Summary
|
||||
|
||||
One short paragraph:
|
||||
|
||||
- What kind of release this is.
|
||||
- Who should care.
|
||||
- Whether there are any rename, install, or compatibility notes.
|
||||
|
||||
Example:
|
||||
|
||||
> Mercury Toolbox vX.Y.Z focuses on local inspection and packaging polish. This release updates the hashing command surface to `mhash`, refreshes the packaged Codex skill and AI prompt assets, and keeps the Windows + PowerShell install path aligned with the current release bundle.
|
||||
|
||||
## Highlights
|
||||
|
||||
- `Command / feature:` what changed and why it matters.
|
||||
- `Command / feature:` what changed and why it matters.
|
||||
- `Packaging / docs / skills:` what changed and why it matters.
|
||||
|
||||
## Breaking Changes
|
||||
|
||||
- `Old name or behavior -> new name or behavior`
|
||||
- `Migration note`
|
||||
|
||||
If none:
|
||||
|
||||
- None.
|
||||
|
||||
## Install Or Upgrade
|
||||
|
||||
Fresh install:
|
||||
|
||||
```powershell
|
||||
pwsh -NoProfile -File .\scripts\install-toolbox.ps1
|
||||
```
|
||||
|
||||
Portable package install:
|
||||
|
||||
```powershell
|
||||
pwsh -NoProfile -File .\dist\MercuryToolbox-<host-target>-ReleaseFast\scripts\install-package-toolbox.ps1
|
||||
```
|
||||
|
||||
## Verification
|
||||
|
||||
- Built with: `ReleaseFast | ReleaseSize | Debug`
|
||||
- Key verification commands:
|
||||
- `cargo nextest run -p <crate> --all-features`
|
||||
- `pwsh -NoProfile -File .\scripts\check-powershell.ps1`
|
||||
- `pwsh -NoProfile -File .\scripts\generate-ai-prompt.ps1`
|
||||
- `pwsh -NoProfile -File .\scripts\generate-ai-skill.ps1`
|
||||
- `pwsh -NoProfile -File .\scripts\check-ai-prompt.ps1 -Configuration ReleaseFast -SkipBuild`
|
||||
- `pwsh -NoProfile -File .\scripts\check-ai-skill.ps1 -Configuration ReleaseFast -SkipBuild`
|
||||
- `pwsh -NoProfile -File .\scripts\package-toolbox.ps1`
|
||||
|
||||
## Assets
|
||||
|
||||
- `MercuryToolbox-<host-target>-ReleaseFast.zip`
|
||||
- Optional extra artifacts
|
||||
|
||||
## Notes For Upgraders
|
||||
|
||||
- PATH reload or shell restart note if relevant.
|
||||
- Config, skill, or naming migration note if relevant.
|
||||
- Any intentionally removed compatibility surface.
|
||||
Reference in New Issue
Block a user