Repository navigation
Conversation
Signed-off-by: Ahimsa Jenar Bramsaifstyo Kusuma <tio.rmx@gmail.com> (cherry picked from commit a30c62f49ae8f64c20f1d15254fe10cd0b1ed0ad)
Validate input history, hook epoch, program identity and observed readiness while queueing paste and delayed Enter. Keep interrupted attempts in the delivery ledger so retries cannot repaste. Preserve done state across multiline bracketed paste. The terminal screen sample and Send still use separate MyGo operations. This fixes the reproduced hook race, but atomic exclusion of raw terminal redraws remains a release gate. Signed-off-by: Ahimsa Jenar Bramsaifstyo Kusuma <tio.rmx@gmail.com> (cherry picked from commit d815ff770d5a0733940bc3eaf0c172fdeebaa009)
Add a 22-line terminal-owner SendChecked operation that holds the terminal and input queue locks through the pure readiness predicate and FIFO insertion. Keep the session cancellation epoch and delivery ledger from d815ff7. Apply the version- and source-hash-checked dependency addition from repository-owned source through a private modfile, without changing cached MyGo files or checking in a fork. Route build entry points through preparation and add a deterministic redraw-boundary regression. Signed-off-by: Ahimsa Jenar Bramsaifstyo Kusuma <tio.rmx@gmail.com> (cherry picked from commit 32a72e3ddb79a510d650fda047d30e1fb0c4bb4d)
Build the preparer for GOHOSTOS/GOHOSTARCH while preserving the child target and selected Go executable. Generate quoted modfile flags from native paths so spaced homes and Git Bash paths remain valid for Go. Signed-off-by: Ahimsa Jenar Bramsaifstyo Kusuma <tio.rmx@gmail.com> (cherry picked from commit 0788997ec2f57291092d94df466a25ea664e4d59)
A delayed input writer can drain paste and Enter back to back even though the enqueue timer expired 300ms apart. Wait for the FIFO write callback before starting that same interval, while retaining the final readiness guard and delivery ledger. Bound missing completion by program lifetime and a five-second write wait, and anchor delayed paste echo to its still-current input sequence. Signed-off-by: Ahimsa Jenar Bramsaifstyo Kusuma <tio.rmx@gmail.com> (cherry picked from commit 9009d02e17a54ffd3f2677551f3a51fc6196fe63)
A timed-out paste can remain ahead of later messages in the terminal FIFO. Retain run-level uncertainty after any interrupted delivery that queued its paste, so a different key cannot send Enter behind those bytes. Preserve the original same-key result and bounded write wait; only a replacement program gets a fresh gate. Signed-off-by: Ahimsa Jenar Bramsaifstyo Kusuma <tio.rmx@gmail.com> (cherry picked from commit a3c4a57e7ce44cb55cd3590481ba8e2d47f7d131)
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs #41.
A lost response or a state change during Chat's paste delay can leave terminal input uncertain. Route ordinary Chat messages through a per-program
session.deliverledger so retries retain one key and cannot repeat paste or Enter. Start the existing 300ms settle interval after successful paste PTY write, then validate input/state/history/readiness atomically with final enqueue. An interrupted accepted paste blocks new automatic deliveries until program replacement.Chat queues behind busy/waiting or unconfirmed messages and acknowledges only a newly recorded full user entry, including attachment paths. The protocol addition refuses unsafe fallback on older daemons. Existing slash-command/settings input, upstream restart behavior and host permissions are preserved.
Pinned MyGo v0.6.2 lacks atomic screen-check/enqueue. A version/hash-checked preparer copies it privately and adds guarded-input methods; build entry points bootstrap for the host and quote native modfile flags. Repository go.mod/go.sum and cached source stay unchanged.
Validation on Windows, count=1, private pinned MyGo:
go test ./ui -run '^$'compile/link without UI test cases or GUI execution. Initial offline setup failures were resolved by staging the exact pinned SDK and 17 transitives privately, verifying module/go.mod checksums against committed go.sum, then compiling offline.No full suite/lint, actual Make, platform packaging, native reliability or authenticated fresh/resume/fork/clear/account lifecycle certification is claimed. Earlier intermittent native consumption remains unexplained; enqueue and PTY write do not prove recorded UserMessage. Prior scoped build-portability reviews remain evidence; their suites and native experiments were not repeated on this base. Keeping this PR in Draft pending standalone CI/review.
Reviewed branch base: cd071c6
Head: 1255f94
Tree: a7ff36e1d2bdbf7ddfcbcce4a2c06c55bc3b1ea3
Six DCO commits preserve original authors, sign-offs and cherry-pick provenance. The first adapts the reviewed delivery function to upstream's newer pane/daemon body and preserves inputThroughDaemon; the other five have identical added/removed lines to their originals. This delta excludes account-sharing, conflict polling, conversation-binding and watcher/icon/report work.
Target main advanced to e306b3b before publication. Restricted comparison found separate hunks in shared paths; a clean merge-tree preserves the reviewed delta exactly. Local checks above cover the branch head, not the merged tree; standalone CI remains pending.