64e0fdcSimplify code and improve type safety: declare handler result sum types, replace -1 sentinel with Maybe, combine double case match, move dedup inside guardiko
41f34f7Simplify code and improve type safety: eliminate MessageDto, move ChatMessage to Store, single JSON parse, remove type aliases, make TextEnvelope privateiko
7683837Simplify code and improve type safety: replace -1 sentinel with Maybe, flatten pr nesting, extract guard conditions, simplify forward removaliko
84ef369Simplify code and improve type safety: use sum types for poll/verify/send/ack/lookup handlers, eliminate dummy values and pr duplication, flatten guard conditioniko
6bfbd45Simplify code and improve type safety: combine auth flow, make response types private, normalize TextEnvelope naming, remove no-op messageiko
13e9b38Simplify server code and improve type safety: use sum types for auth/result handlers, nest prune results, eliminate dummy values and shouldInsert flagiko
61c0ab0Simplify code and improve type safety: replace manual JSON parsing with typed deserialization, use JsonPropertyNameiko
f11ecd2Simplify client code and improve type safety: remove unused AuthResult, eliminate dead getJson, replace LoadedState with discriminated unioniko
7816ce8Simplify code and improve type safety: eliminate IncomingMessage, type-safe Connecting state, reuse postJson in polliko
79a607dSimplify code and improve type safety: sum type AuthResult, validate gossip once, consolidate over-capacity logic, extract forEachBatchiko
e6337c8Simplify code and reduce redundant computation: remove empty-string validations, compute values once, replace fold with mergeByPubkeyServer, consistent filteringiko
3dd6eedSimplify code and improve type safety: replace manual JSON with JsonSerializer, type EventPayload, remove Identity from Connectingiko
b86f18aSimplify code and improve type safety: add eventType to ValidGossipEntry, eliminate redundant filtering and scansiko
ab639f4Simplify code and improve type safety: remove ForwardInfo, inline computed properties, add ValidGossipEntry, short-circuit validGossipEventsiko
ecdd432Improve type safety and simplify code: named API types, filter events at boundary, record types for Msg cases, eliminate redundant encrypt parameteriko
53111fdSimplify code and improve type safety: introduce ForwardInfo type, optimize any helper, remove no-ops, merge conditionsiko
f880fd2Simplify code and improve type safety: remove no-op fetch matches, merge checks, simplify boolean logic, narrow PollEventTypeiko
573acd2Improve client type safety: move Identity to Crypto, introduce PollEvent, eliminate tuple passing and fragile key slicingiko
06f6fccSimplify code and improve type safety: introduce AuthResult/PruneResult types, replace helper functions with cleaner patternsiko
82cb0cdSimplify server code and improve type safety: introduce named types for persisted state, recursive genToken, remove dead code; add client persistence layeriko
064c373Introduce derived relations &pendingAcks and &knownMessageKeys for cleaner federation and dedup logiciko
4e71ddeSimplify code and improve type safety: embed Session in ConnState, fix message ID consistency, replace mutable arrays with foldiko
9520409Simplify code and improve type safety: extract mergeByKey helper, eliminate post-hoc status corrections, and inline redundant validAck aliasiko
de34c51Introduce Identity and Session types to reduce duplication and improve type safety in clientiko
3964fd8Extract helpers (firstOf, sessionPubkey, forkBroadcastOffline, removeForward) and add MessageStatus type for improved clarity and type safetyiko
6f5e820Extract helpers and refine type safety in server handlersiko
82fcdc7Extract helper functions to reduce code duplication in state management and gossip handlingiko
77e2bb1Simplify code and improve type safety with helper functions and refined typesiko
4c8ee60Extract helpers and refine types to reduce code duplication and improve type safetyiko
c040476Simplify code and improve type safety with helper functions and refined typesiko
9d5373aFix timeout handling with custom task awaiter and standardize timestamps to millisecondsiko
ac8c87fBatch federation ack message IDs to respect maxMessageIds limitiko
d7ac423Move validation into refined types to simplify handlersiko
b018bb7Fix poll request: change from GET with query params to POST with JSON body, fix timeout from 30ms to 30000msiko
a2e3a5eFix gossip event suppression: restrict offline suppression to authoritative serveriko
cba8c2eFix formatting in sendAcksAndClean (move closing paren to new line)iko
55073b2Fix 4 bugs: remove dead code, handle long strings in safeCompare, parallelize federation I/O, prevent overlapping prune cyclesiko
40ea04cFix 3 bugs: ack cleanup should match toKey, add warning for lost acks under capacity, restrict offline gossip to authoritative server onlyiko
478c21aFix 3 bugs: block bare local/internal in SSRF checks, correct sendBatchedGossip effect type, cap forwards storageiko
e5192b2Fix 4 bugs: prevent forward leaks when federation disabled, bind fetch results, continue gossip batches on error, fork network I/O to avoid blocking responsesiko
93a36beHandle federation fetch errors and simplify presence checking logiciko
87be4d9Fix traverse bug in retryPendingForwards and block numeric IP addresses in SSRF checksiko
3d339cbFix three SSRF bypasses in isBadServerName IP prefix checksiko
2cefad7Fix sendToEach missing recursion and safeCompareLoop timing leakiko
2f6cb27Fix three security bugs: safeCompare, VerifyAuth gossip filtering, and lookupSession collision handlingiko
35cfa8dFix session token timing side channel and ackedIds capacity violation in server.knotiko
46543dbAdd missing `in` keywords to let-bindings and parenthesize negative literals in server.knotiko
a263102Fix four security and correctness bugs in server.knot: safeCompareLoop constant-time comparison for strings >256 chars, server name normalization before length validation DoS, backgroundPrune recursion stack growth, and cloud metadata/mDNS hostname SSRFiko
013d6d4Fix five security and correctness bugs in server.knot: AckMessages eviction gated on auth, safeCompareLoop constant-time for secrets >256 chars, broadcastOfflineGossip TTL floor for short-lived entries, verifyFederationAuth constant-time when disabled, evictOldestAckedIds/pollOnce union dedup handlingiko
918fbd2Fix four bugs: AckMessages federation ack deduplication, VerifyAuth challenge clearing, session cap global eviction, and offline timestamp clampingiko
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list