Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
20e57ce
Search: send soju's one parameter to nefarious2 too
rdrake Nov 6, 2026
5813ac5
Channel bans: ban from a nick or a user@host, and a Bans window
rubinlinux Nov 7, 2026
0eddb73
IRCv3: CAP continuations, exact batch types, tags only with message-t…
rdrake Nov 7, 2026
12d0d98
Tear down at once when a connect follows disconnect() before its close
rdrake Nov 7, 2026
eceb414
IRCv3 round 2: STS from CAP NEW, private REDACT, redaction needs mess…
rdrake Nov 7, 2026
c073b70
IRCv3 round 3: multiline, webpush, metadata and chathistory fixes
rdrake Nov 7, 2026
f7aca51
SASL: a server timeout reconnects instead of turning autoconnect off
rdrake Nov 7, 2026
7b0a25c
Formal: a TLA+ model of CAP, SASL and registration, tied to the code
rdrake Nov 7, 2026
cc4a0c0
SASL: a 904 after 908 is a refusal, however early it comes
rdrake Nov 7, 2026
9a6c683
SASL: retry only on a named outage; the model checks how Seance leaves
rdrake Nov 7, 2026
096be37
Translation: a deploy's pair may be a multilingual Marian model
rdrake Nov 7, 2026
69e688d
Translation: a token pair per repo, and stricter pair parsing
rdrake Nov 7, 2026
455137c
Translation tests: an NLLB fallback gets no token; pair parsing edge …
rdrake Nov 7, 2026
2f00d2d
SASL: wait for the sasl ACK before AUTHENTICATE
rdrake Nov 7, 2026
e2bbea4
Merge branch 'pr210' into claude/phone-test-build
rdrake Nov 7, 2026
3dd5ef7
Merge branch 'pr211' into claude/phone-test-build
rdrake Nov 7, 2026
bbf87ce
Merge branch 'pr212' into claude/phone-test-build
rdrake Nov 7, 2026
dca7a94
Merge branch 'pr213' into claude/phone-test-build
rdrake Nov 7, 2026
b00ab51
Merge branch 'pr203' into claude/phone-test-build
rdrake Nov 7, 2026
f6757d1
Formal: say CapEndOnce is not a spec rule
rdrake Nov 7, 2026
2c48474
SASL: a deadline for the sasl ACK
rdrake Nov 7, 2026
6c4bbb1
Translation: a deploy's pair model names itself, and pairs on one rep…
rdrake Nov 7, 2026
e69f114
SASL: the server's own timeout, unreachable services and a trusted lo…
PseudoSean Nov 7, 2026
81dd73a
SASL: the review's follow-ups — a trusted login keeps its autoconnect…
PseudoSean Nov 7, 2026
4c840ea
Translation: review fixes for shared pair downloads
rdrake Nov 7, 2026
852e467
Formal: model #180's retry rules for a trusted login
rdrake Nov 7, 2026
41f7f21
Translation panel: a header popover like the mentions, opened from th…
rdrake Nov 7, 2026
9131a15
SASL: the ACK deadline keeps a known NAK, and stops on disconnect
rdrake Nov 7, 2026
8355ecf
Translation panel: review fixes
rdrake Nov 7, 2026
c0563f2
Merge branch 'pr210' into phone
rdrake Nov 7, 2026
d81923f
Merge branch 'pr211' into phone
rdrake Nov 7, 2026
9f75a4d
Merge branch 'pr212' into phone
rdrake Nov 7, 2026
9285a46
Merge branch 'pr213' into phone
rdrake Nov 7, 2026
2e1ab38
Merge branch 'pr214' into phone
rdrake Nov 7, 2026
0974a01
Merge branch 'pr203' into phone
rdrake Nov 7, 2026
226c0bd
Merge branch 'claude/project-thread-f2nesd' into phone
rdrake Nov 7, 2026
d49ed74
Rebuild the phone test build on the latest develop
rdrake Nov 7, 2026
a212d64
Offer one Apple language sheet at a time, and none once declined or s…
rdrake Nov 7, 2026
bba4bcf
Merge branch 'pr215' into phone
rdrake Nov 7, 2026
b564921
Merge branch 'pr208' into phone
rdrake Nov 7, 2026
4fc949a
Composer translation: live preview, one-step send, the language you p…
rdrake Nov 7, 2026
740e1e0
Composer translation: review fixes
rdrake Nov 7, 2026
36d0f60
Composer translation: language sheet and suggestion card
rdrake Nov 7, 2026
1b2ba6a
Composer translation: a tidier language sheet
rdrake Nov 7, 2026
856350f
Composer translation: a quieter preview; a send language turns readin…
rdrake Nov 7, 2026
3a1d6bc
Translation: no mark on a line already in the reading language
rdrake Nov 7, 2026
5bd7772
Translation: tighter rows; nothing under an own line handed back as is
rdrake Nov 7, 2026
66452af
Translation: no "=" or "?" tags in the chat
rdrake Nov 7, 2026
90cb4c6
Translation: leave unplaced and guessed-at lines alone
rdrake Nov 7, 2026
b1fe6de
Translation: stop an English channel drifting to Polish
rdrake Nov 8, 2026
97bbeba
Translation: show a translation in the original's place
rdrake Nov 8, 2026
7fa0f7f
Translation: identify languages with fastText and ELD
rdrake Nov 8, 2026
70edc28
Translation: a tap on a translated line's text flips it
rdrake Nov 8, 2026
20bd582
Translation: reading never asks before a download
rdrake Nov 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -76,3 +76,5 @@ tools/i18n/fixtures/

# Generated measurement tables (tools/translate-eval/roundtrip.ts); column padding would multiply their size.
tools/translate-eval/results/
# generated by test/formal/handshake/gen.sh
test/formal/handshake/handshake.traces.json
8 changes: 4 additions & 4 deletions CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,12 +133,12 @@ A channel's outgoing language, set from the panel and persisted alongside the re
_Avoid_: send language, outgoing switch

**the strip**:
The `.translate-bar` above the input (`ChatInput.vue`) that shows a draft's outgoing translation: the chip, the streaming text, Check/Send/Edit, and the read-back row underneath. A different draft, a channel switch, Escape or the strip's own Edit takes it down.
The `.translate-bar` above the input (`ChatInput.vue`) that shows a draft's outgoing translation while it is typed (the live preview): the "Will send in …" label, the streaming text, Copy, and the read-back row underneath. A changed draft dims it until the next preview; a send, a channel switch or Escape takes it down.
_Avoid_: translation bar, preview box

**the first Enter / the second Enter**:
The first Enter on a draft with a write target starts its translation (`translateOutgoing`) instead of sending; the second Enter, once the strip shows a result (or a failure), sends what the strip holds.
_Avoid_: initial submit, confirm submit
**the one-step send**:
Return on a draft with a write target sends what the strip holds; before the preview is done it waits for it and sends then (`sendQueued` in `ChatInput.vue`). After a failure the next Return sends the draft as written. (It replaced the first Enter / second Enter pair.)
_Avoid_: initial submit, confirm submit, second Enter

**read back**:
The round trip: a done translation translated once more, back toward the user's reading language, shown under the strip so a failed or a subtly wrong translation can be caught before sending. `"auto"` runs it as soon as the translation ends; `"button"` waits for Check.
Expand Down
3 changes: 3 additions & 0 deletions client/components/App.vue
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
<InvestigateCard />
<AlertBuilder />
<OperActionDialog />
<BanDialog />
<PushPrompt />
<InstallGuide />
<div id="upload-overlay" class="screen-overlay"></div>
Expand All @@ -47,6 +48,7 @@ import ImageViewer from "./ImageViewer.vue";
import ContextMenu from "./ContextMenu.vue";
import ConfirmDialog from "./ConfirmDialog.vue";
import UploadPreview from "./UploadPreview.vue";
import BanDialog from "./BanDialog.vue";
import OperActionDialog from "./Oper/ActionDialog.vue";
import InvestigateCard from "./Oper/InvestigateCard.vue";
import AlertBuilder from "./Oper/AlertBuilder.vue";
Expand Down Expand Up @@ -81,6 +83,7 @@ export default defineComponent({
ConfirmDialog,
UploadPreview,
OperActionDialog,
BanDialog,
InvestigateCard,
AlertBuilder,
Mentions,
Expand Down
Loading
Loading