-
Notifications
You must be signed in to change notification settings - Fork 0
Development Changes
HelloThisWorld edited this page Aug 6, 2026
·
19 revisions
This ledger maps winTerm source changes to their durable GitHub records and the Wiki pages synchronized with them. Source commits remain authoritative; the Wiki explains their user-visible and engineering effect.
-
Source:
0ccac1d0c(pull request #43) -
Branch:
docs/japanese-readme, based onmainat9dc2c54c2(1.3.0-beta3 release metadata, pull request #42) -
Version intent: none. Documentation only; no application code,
resource, or version file changed, and no release was produced. The
repository changelog records this under
Unreleasedrather than fabricating a version. -
Summary: Added
README.ja.mdas a maintained Japanese counterpart to the English README, plus a language selector at the top of both files (README.mdlinks toREADME.ja.md, and back). The translation mirrors the English original section for section — download channels, distribution formats, core features, portable mode, build and test commands, privacy and security, code signing policy, license and upstream, and support — and links to the Japanese website at https://winterm.dev/ja/. -
Fidelity: Commands, filenames, executable names, JSON setting names,
version strings, keyboard shortcuts, paths, release URLs, and relative
documentation links are preserved verbatim; the single PowerShell code
block is byte-identical to the English one. Facts derive from the current
README: source version
1.3.0-beta3, latest stable1.2.0, thev1.3.0-beta3prerelease,SHA256SUMS.txt, and the pinned upstream baselinerelease-1.25@1cea42d433253d95c4487a3037db48197b5e72f4. -
Disclosures: Nothing was softened for promotion. The unsigned
installer and SmartScreen warning, the checksum verification step, the
"not Authenticode-signed" status, the exact SignPath attribution sentence,
the signing roles and manual-approval requirement, the Microsoft
non-affiliation disclaimer, and the full privacy no-collection list are all
carried over. Links to English-only documentation are labelled (英語), and
the README states that winTerm-specific new features still display some
English text, matching the actual
ja-JPresource coverage (1303 of 1421 keys, with all 25 Command Timeline keys untranslated). -
Validation:
scripts/winterm/verify-version.ps1gained eleven checks covering the two language links, the website link, both version references, the checksum filename, the signing disclosures, the SignPath attribution, the non-affiliation disclaimer, and the upstream baseline; the script passes.scripts/winterm/test-ci-classification.ps1passes. All 21 relative links inREADME.ja.mdresolve, and the file is UTF-8 with LF endings and no BOM. -
Build cost:
README.ja.mdwas added to the documentation allowlist inscripts/winterm/ci/ChangeClassification.psm1. The pull request carries nobuildlabel and classifies asvalidation-only(RunReleaseDelivery: False), so the native build workflow does not run. -
Related website change: the Japanese pages this README links to are
added in
winterm-sitepull request #10. -
Documentation:
README.ja.md,README.md, and repository changelog. -
Follow-up:
776edb633restoredscripts/winterm/verify-version.ps1to ASCII-only literals. The Japanese phrases embedded there made it the only non-ASCII PowerShell file in the repository, andTest-PowerShellSyntaxparses scripts withParser::ParseFile, which decodes a BOM-less file using the host's active code page. That corrupted the literals on the CI runner and failed quick validation, while the file parsed cleanly on a UTF-8 host. The checks now assert the same facts through the ASCII tokens the Japanese prose contains, plus three guards that keep an English or mis-encoded copy from passing: no UTF-8 BOM, strict UTF-8 decoding, and more than 500 kana and kanji characters (currently 2713). -
CI:
Classify exact change set,Quick source and smoke validation, andci-gateall pass; both native build jobs reportskipping. -
Pending: this entry records the branch head
776edb633. It must be updated to the final merge or squash SHA once pull request #43 lands.
-
Source:
feb2687e5(pull request #42) -
Branch:
release/v1.3.0-beta3, carrying the one-shot launch fallback fixbaf6f8a87(pull request #41), based onmainat39193206c(1.3.0-beta2 release metadata, pull request #40) -
Version intent:
1.3.0-beta3/ tagv1.3.0-beta3, channelbeta, package/file version1.3.0.6. -
Summary: Third beta of the Command Timeline release, fixing the beta2
field report that long-running commands (k9s, vim, top, FastAPI/uvicorn,
Spring Boot, Node dev servers,
tail -f,kubectl port-forward) animate the Visual Progress rainbow bar forever. The OSC 133 launch fallback is now a bounded one-shot launch indication scoped by a shell command generation; everything else is identical to beta2. -
Publication boundary:
--prerelease --latest=false, so/releases/latestkeeps resolving to v1.2.0 and WinGet skips the release. The beta is listed onwinterm-sitenext to the stable v1.2.0 download. The Setup EXE is unsigned and says so. Published 2026-08-05 14:01 UTC after all draft gates passed (release). - Documentation: release notes, repository changelog, and current progress.
-
Source:
baf6f8a87(pull request #41) -
Branch:
fix/visual-progress-shell-fallback-one-shot, based onmainat39193206c(1.3.0-beta2 release metadata, pull request #40) - Version intent: fix ahead of the next prerelease; version metadata unchanged.
-
Summary: Long-running commands no longer loop the Visual Progress
rainbow animation forever. The OSC 133
CommandExecutedfallback used to stay Indeterminate/Running untilCommandFinished, so k9s, vim, top, FastAPI/uvicorn, Spring Boot, Node dev servers,tail -f, andkubectl port-forwardanimated for their whole lifetime. The fallback is now a bounded one-shot launch indication scoped by a shell command generation (no command-name or process-name heuristics): the comet makes one 1,800 ms traversal, driven by a one-shot compositor batch rather than a timer or polling loop, and the overlay then hides with a silent Hidden/Running snapshot. Stale completions cannot affect a newer command, alternate-screen churn and pane rehydration cannot replay a consumed launch, and an expired fallback cannot resurrect after a CLI provider or explicit OSC 9;4 owner clears. Explicit progress, recognized providers, short-lived commands, and the success/error/cancelled presentations keep their existing behavior. Four new TAEF tests cover the generation and expiration semantics (48/48 passing), and the smoke fixture gains long-running and alternate-screen cases. - Documentation: repository changelog and the Phase 2 development document ("Bounded shell launch fallback").
-
Source:
39193206c(pull request #40) onmain, carrying the prompt exit code fixa6ec9a415(pull request #39) -
Version:
1.3.0-beta2/ tagv1.3.0-beta2, channelbeta, package/file version1.3.0.5. -
Summary: Second beta of the Command Timeline release. Producing the
website screenshots against the published beta1 build surfaced that every
Timeline entry reported
✓ Succeeded: the prompt wrapper executedGet-Modulebefore reading$?, soGet-WinTermExitCodealways received a success. The wrapper now captures$?as its first statement and passes it intoInvoke-WinTermPrompt -LastSuccess; the shell integration suite gained an installed-wrapper regression test covering the first-prompt, success, cmdlet-failure, native-failure, and recovery sequences (verified red on the unfixed module). -
Publication boundary:
--prerelease --latest=false, so/releases/latestkeeps resolving to v1.2.0 and WinGet skips the release. The beta is listed onwinterm-sitenext to the stable v1.2.0 download. The Setup EXE is unsigned and says so. - Documentation: release notes, repository changelog, and current progress.
-
Source:
2a721715d8c375445221012c3acc384dc2212052 -
Branch:
release/v1.3.0-beta1, based onmainatc089caeb(1.3.0-alpha4 release metadata, pull request #37) -
Version intent:
1.3.0-beta1/ tagv1.3.0-beta1, channelbeta, package/file version1.3.0.4. - Summary: First beta of the Command Timeline. Feature content is identical to 1.3.0-alpha4, which passed local field testing across four alpha rounds. The channel advances alpha → beta (About metadata channel Beta), the README gains the Command Timeline and auto shell integration in its feature list plus a stable/beta download split, and verify-version now checks the README source version against release metadata while separately pinning the stable wording to 1.2.0.
-
Publication boundary:
--prerelease --latest=false, so/releases/latestkeeps resolving to v1.2.0 and WinGet skips the release. Unlike the alphas, the beta will be listed onwinterm-sitenext to the stable v1.2.0 download. The Setup EXE is unsigned and says so. - Documentation: release notes, repository changelog, and current progress.
-
Source:
a98c3e9e2a3aef0bddce6ba4cdc600291b6f82f5 -
Branch:
release/v1.3.0-alpha4, based onmainat49ee5eb3(alpha3 field-report fixes, pull request #36) -
Version intent:
1.3.0-alpha4/ tagv1.3.0-alpha4, channelalpha, package/file version1.3.0.3. -
Summary: Promotes the three alpha3 field-report fixes to a fourth
installable alpha. Metadata only: application version
1.3.0-alpha4, module prerelease suffixalpha4, package version1.3.0.3, and the version literals pinned by the verification scripts. -
Publication boundary: The release workflow marks any non-stable channel
--prerelease --latest=false, so/releases/latestkeeps resolving to v1.2.0. The alpha is deliberately not listed onwinterm-siteand is not submitted to WinGet. The Setup EXE is unsigned and says so in its release notes. - Documentation: release notes, repository changelog, and current progress.
-
Source:
2ecd3bc7d19a7e818dfccb4ee70ecb687de07c87 -
Branch:
fix/alpha3-feedback, based onmainatca371f78(1.3.0-alpha3 release metadata, pull request #35) - Version intent: fixes ahead of the next prerelease; version metadata unchanged.
-
Summary: Fixes the three issues reported from local v1.3.0-alpha3
testing. The antivirus alert on every new PowerShell tab traced to
Compatibility.ps1: bisection showed the rawFile::Openwrite intouchcombined with the native-dispatch blocks read as a write-then-execute shape; file creation now goes throughNew-Itemand the full module imports clean on the engine that previously flagged it. Every completed command displayed? Unknownbecause the Enter keypress heuristic that supplies the command-executed transition never notified the lifecycle, so the capability chain never read Full; the Enter path now reports CommandExecuted for shell-established marks with non-empty input, restoring ✓/✕ results and the Running state, covered by a new end-to-end keypress test. Timeline rows now carry a full-command tooltip, and the Unknown status explains itself on hover. -
Validation: module bisect and clean import verified in both shells,
touchbehavior verified (create, timestamp update, no truncation), and the command-timeline, visual-progress, privacy, version, release-workflow, CI-classification, and Smoke gates all pass. Compiled Control tests, including the newEnterKeypressSuppliesExecutedTransition, run in the pull request validation cycle. - Documentation: repository changelog.
-
Source:
9f8198cf247190903e6a3fdce08d058c8b4b025f -
Branch:
release/v1.3.0-alpha3, based onmainate0fd786c(alpha2 field-report fixes, pull request #34) -
Version intent:
1.3.0-alpha3/ tagv1.3.0-alpha3, channelalpha, package/file version1.3.0.2. -
Summary: Promotes the five alpha2 field-report fixes to a third
installable alpha. Metadata only: application version
1.3.0-alpha3, module prerelease suffixalpha3, package version1.3.0.2, and the version literals pinned by the verification scripts. -
Publication boundary: The release workflow marks any non-stable channel
--prerelease --latest=false, so/releases/latestkeeps resolving to v1.2.0. The alpha is deliberately not listed onwinterm-siteand is not submitted to WinGet. The Setup EXE is unsigned and says so in its release notes. - Documentation: release notes, repository changelog, and current progress.
-
Source:
09bd1b5f19f05a9e5ae8bf41453e25feba62dd98 -
Branch:
fix/alpha2-feedback, based onmainate225933e(1.3.0-alpha2 release metadata, pull request #33) -
Version intent: fixes ahead of
1.3.0-alpha3; version metadata unchanged. -
Summary: Fixes the five issues reported from local v1.3.0-alpha2 testing.
The shell integration module wrote its string terminator as a PowerShell
single-quoted
'\'— two literal characters — leaving one stray backslash on screen per emitted sequence, and wrote its marks as console side effects, which the host prints before a prompt function's returned text, so the command-start mark landed before the visible prompt: the Timeline recorded the whole prompt line and Load inserted the prompt path. The wrapper now returns one string with the marks embedded in FinalTerm order and a single-character terminator. The progress state machine no longer shows a bar for133;B(composing input), so an idle integrated prompt stays quiet; the lifecycle model no longer creates a Timeline entry at133;B, removing the phantomCommand text unavailable / Runningrow; and selection-only Timeline updates reuse the existing rows, removing the arrow-key/hover jitter. A module component blocked by antivirus at parse time is now skipped silently and recorded in diagnostics. -
Validation: SettingsModel winTerm TAEF classes 44/44, Control
CommandTimelineTests43/43 on fresh builds, both test projects x64 Release exit 0, live-session prompt bytes verified in FinalTerm order, and all eight repository gates pass. - Documentation: PowerShell integration and repository changelog.
-
Source:
1202129f6d89627b5ac1bd8baa801dcfe3e81232 -
Branch:
release/v1.3.0-alpha2, based onmainat18310e9f(alpha1 field-report fixes, pull request #32) -
Version intent:
1.3.0-alpha2/ tagv1.3.0-alpha2, channelalpha, package/file version1.3.0.1. -
Summary: Promotes the four alpha1 field-report fixes to a second
installable alpha. This commit only moves release metadata: application
version
1.3.0-alpha2, module prerelease suffixalpha2, package version advanced to1.3.0.1so alpha binaries stay distinguishable, and the version literals pinned by the verification scripts. -
Publication boundary: The release workflow marks any non-stable channel
--prerelease --latest=false, so/releases/latestkeeps resolving to v1.2.0. The alpha is deliberately not listed onwinterm-siteand is not submitted to WinGet. The Setup EXE is unsigned and says so in its release notes. - Documentation: release notes, repository changelog, and current progress.
-
Source:
f3697b8c30776b7eb031b35bd29adac20d43c2a4 -
Branch:
fix/alpha1-feedback, based onmainated70755(pull request #31) -
Version intent: fixes ahead of
1.3.0-beta1; version metadata unchanged. -
Summary: Fixes the four issues reported from local v1.3.0-alpha1 testing.
The Command Timeline handle is now a thin auto-hiding strip flush against the
terminal's left edge that widens on hover, focus, or while the overlay is
open, instead of a floating button that covered terminal content. A pointer
press on the terminal area now light-dismisses an open overlay. The Visual
Progress recognition engine no longer claims ownership from a bare
product-name mention (a
dirlisting containing.gradlepreviously started a bar that never stopped), no longer rematches arbitrary records under an established claim, structurally clears a still-running provider bar after two consecutive ordinary records, and no longer reads slashed dates as completed/total meters. Bare PowerShell profile commandlines are now rewritten at connection creation to import the packagedwinTerm.Shellmodule, so OSC 133 marks and the Command Timeline work out of the box; the rewrite is gated by the new per-profile setting"shellIntegration.autoInject"(defaulttrue) and refuses every customized invocation. -
Validation:
SettingsModelwinTerm TAEF classes 44/44, ControlCommandTimelineTests43/43,TerminalAppLibandControl.UnitTestsx64 Release builds clean, and the command-timeline, visual-progress, privacy, version, release-workflow, CI-classification, and Smoke gates all pass. - Documentation: PowerShell integration, repository changelog, and current progress.
-
Source:
cdfa02be0ac0f9f3c7ba8bd34200854323dbf130 -
Branch:
release/v1.3.0-alpha1, based onmain -
Version intent:
1.3.0-alpha1/ tagv1.3.0-alpha1, channelalpha. -
Summary: Promotes the Command Timeline to a testable alpha. The feature
content was already on
mainas checkpoints v1.2.1–v1.2.4; this moves the release metadata and makes the version gates channel-aware.verify-version.ps1now acceptsstable,alpha, andbetaand enforces that the channel, the module prerelease suffix, and the application-version suffix agree. The WinGet workflow now skips prerelease Releases. -
Publication boundary: The release workflow marks any non-stable channel
--prerelease --latest=false, so/releases/latestkeeps resolving to v1.2.0. The alpha is deliberately not listed onwinterm-siteand is not submitted to WinGet. The Setup EXE is unsigned and says so in its release notes. - Documentation: Wiki changelog, release notes, repository changelog, and current progress.
-
Source:
c1426996372c5af0ba442eebf5603bad15a9135e -
Branch:
feature/command-timeline-v1.3.0-phase4, based onmain(Phase 3 was squash-merged tomainas5fd2172through pull request #29) - Pull request: #30 — feat: complete Command Timeline Phase 4 checkpoint
-
Version intent:
1.2.4/ tagv1.2.4. -
Summary: Completes the in-memory Command Timeline surface. Adds pane-local
literal case-insensitive search over each pane's bounded command-text index
with a 256 UTF-16 surrogate-safe query cap, a filtered projection that keeps
stable
CommandIdidentity,/and Tab focus routing that never reaches the PTY, Escape clear-then-close, thecommandTimeline.enabledandcommandTimeline.historyLimitsettings with a Settings UI section, four distinct shell-degradation states, and bounded per-pane history with oldest-first eviction. - Documentation: Wiki changelog, repository changelog, Phase 4 development notes, Command Timeline user guide, keyboard shortcuts, privacy, and current progress.
- Boundary: No persistent history, output cache, output search, regex or fuzzy matching, telemetry, automatic execution, ConPTY/VT/TextBuffer/renderer change, workspace or shell protocol schema change, installer, Portable packaging, Release asset, Latest update, website change, or screenshot.
-
Source:
08afcea737e21ca2d8b7f83704efe94601215c3f - Pull request: #29 — feat: complete Command Timeline Phase 3 checkpoint
-
Merged source:
5fd217238452b2f9fd4352629f86ffb7befd9b54(squash merge tomain) -
Branch:
feature/command-timeline-v1.3.0 -
Version intent:
1.2.3/ tagv1.2.3. -
Summary: Adds Command Timeline entry actions: load the selected command
onto the focused pane input with Enter or a single click, Space to jump to a
command's output, Ctrl+C to copy the selected command, and a per-entry
context menu with copy command, copy output, and jump to output. Adds a pure
CommandTimelineActionModel, execution-generation tracking that makes a late completion detectable, multi-line and large-load protection, and on-demand output resolution. - Documentation: Wiki changelog, repository changelog, Phase 3 development notes, Command Timeline user guide, and current progress.
- Boundary: A load never executes, never reads the Windows clipboard, and is never forwarded by input broadcast. No output cache, persistence, search, filtering, telemetry, Release asset, installer, website, or screenshot change.
-
Source:
e3033cced4f68ae6e50962b48c91eb432d3d0e17 - Pull request: #28 — feat: add Command Timeline phase 2 checkpoint
-
Merged source:
395f9becd3237bf0d439ba58de50a667a911445d -
Version intent:
1.2.2/ tagv1.2.2. - Summary: Adds the pane-owned, read-only Command Timeline overlay; pure deterministic navigation; incremental Phase 1 index consumption; keyboard, pointer, wheel, accessibility, privacy, warm-access, and cleanup behavior; shortcut remapping; version synchronization; CI badge repair; and permanent changelog/Wiki policy.
- Documentation: Wiki changelog, repository changelog, and current progress.
- Boundary: No command insertion, copy, paste, execution, output jump, search, persistence, Release asset, installer, website, or screenshot change.
-
Merged source:
510c326e474eccfbc40f8f6763b4b9227a2aa6b0 - Pull request: #26 — feat: add Command Timeline Phase 1 checkpoint
-
Version intent:
1.2.1/ tagv1.2.1. -
Summary: Introduced pane-local OSC 133 indexing, stable native mark
identity, bounded command-text caching, no output cache or persistence, warm
markRevisionreads, and lifecycle/reflow/eviction/close coverage. - Documentation: Wiki changelog and repository changelog.
-
Merged source:
abb581a2a661f1d3a1f34b2ac384ce4c7e3c69c9 - Pull request: #27 — fix: prevent hanging tests and optimize CI builds
-
Summary: Added bounded TAEF process-tree cleanup and made native build,
delivery, and
ci:fullvalidation explicit maintainer-selected gates while ordinary pull requests retain quick validation.
Every source commit that changes user-visible behavior, versioning, release
status, or project history must update the root CHANGELOG.md and the matching
Wiki record in the same delivery cycle. A later source correction receives a
new ledger entry; published tags and Releases are never rewritten.