No internet connection

[ Edit this to tell people what they can do here. ]

Topics, recently active firstCategoryUsersRepliesActivity
Small cleanup nits from reading the source
While reading the public API source at commit f220a7d9f I collected a handful of tiny dead-code / dead-route nits. None of them are bugs — nothing is broken, nothing is exploitable, and most are already half-flagged in your own comments. I'm dropping...
    Talkyard IssuesC72026-07-03 22:45:01.853Z
    get getWhat:"Pages" rejects rid:/extid:/pagepath: refs even though the same prefixes work elsewhere
    When you get getWhat:"Pages", only a subset of ref prefixes are accepted: diid:, emburl: (a.k.a. emgurllax:), tyid:, and pageid:. Pass a rid:, extid:, or pagepath: ref and each item comes back rejected with [TyE0EMBURLORDIID]. What makes this a trap ...
      Talkyard API & IntegrationC12026-07-03 22:45:00.268Z
      Framework-level errors bypass the Talkyard TyE... error format (raw Play JSON/HTML, no error code)
      Most Talkyard API errors come back as plain text ending in a [TyE...] code, which is easy to parse and branch on. But a few classes of error escape that format entirely, because they're handled by Play (the web framework) before Talkyard's code runs ...
        Talkyard API & IntegrationC12026-07-03 22:45:00.268Z
        Vote/reply-count fields (numOpLikeVotes, numTotRepliesVisible) appear via get but never via list/search
        The page-count fields — numOpLikeVotes, numTotRepliesVisible, and the other num* fields — only ever show up when you fetch a page via get. A page object returned from list or search never carries them, even though the field defaults say it should. Th...
          Talkyard API & IntegrationC12026-07-03 22:45:00.268Z
          Overloaded per-item error codes (TyEPGNF / TyEPATNF_ for everything) and Scala internals leaking into messages
          In get, the per-item error codes are overloaded to the point of being unhelpful, and a couple of messages leak Scala's case-class rendering. Every per-item page failure comes back as TyEPGNF regardless of cause — including "unknown ref type" and "not...
            Talkyard API & IntegrationC12026-07-03 22:45:00.268Z
            Inconsistent HTTP status codes for auth/validation errors (401 vs 403, 403 where 400/405 fit)
            A few status codes surprised me while probing — enough that error handling around the API can't rely on the code alone. A missing secret on get with getWhat:"Pats" returns 401 (TyE0APISECR_), but a wrong secret anywhere returns 403 (TyEAPI0SECRET01_)...
              Talkyard API & IntegrationC12026-07-03 22:45:00.268Z
              Several list/search/Do-API request fields are parsed but silently ignored, so callers can't tell they didn't apply
              A cluster of request fields on list, search and the Do API are accepted without error but then do nothing. Because there's no error and no warnings, a caller has no way to tell the field didn't apply — you just quietly get default behavior. These bit...
                Talkyard API & IntegrationC12026-07-03 22:45:00.268Z
                upsert-simple accepts any internal postType/pageType int, not just the sensible public ones
                upsert-simple will happily accept any internal enum value for postType and pageType — there's no whitelist restricting them to the handful that make sense over the public API. The value flows straight into page/post creation, so a caller can create s...
                  Talkyard API & IntegrationC12026-07-03 22:45:00.268Z
                  upsert-patch: a couple of open SECURITY; SHOULD validation TODOs (flagging, not fully verified)
                  Flagging this one lightly and honestly: I read the comments but did not verify the behavior beyond that, so treat it as a pointer rather than a finding. In the upsert-patch code path there are a couple of validation gaps still marked SECURITY; SHOULD...
                    Talkyard Security & HardeningC12026-07-03 22:44:59.334Z
                    Unapproved posts fire PostCreated with raw, unsanitized unapprovedSource
                    A sharp edge for anyone writing a webhook consumer (or polling the list/events API). When a post isn't approved yet, its event payload carries the field unapprovedSource — that's raw CommonMark, i.e. untrusted user input, not the sanitized HTML you'd...
                      Talkyard Security & HardeningC12026-07-03 22:44:59.334Z
                      Explain icons...
                      Webhook deliveries can't be authenticated by the receiver, and always run as sysbot
                      If you self-host and want to point a webhook at anything other than a fully-trusted receiver, this is worth knowing up front. Three facts combine into one gap: Payloads are always rendered as sysbot. A webhook therefore sees activity in private categ...
                        Talkyard Security & HardeningC12026-07-03 22:44:59.334Z
                        POST /-/import-site-json has no auth action wrapper — safe by default, but flag-gated only
                        A defense-in-depth thought for self-hosters who ever do a one-off site import. The POST /-/import-site-json endpoint creates whole new sites from a JSON dump. It has no admin/secret auth wrapper at all — it's a bare action guarded solely by the serve...
                          Talkyard Security & HardeningC12026-07-03 22:44:59.334Z
                          Embedded-SSO PASETO tokens: exp is optional, no max lifetime, and no replay protection
                          This one is worth a look for anyone using embedded-comments SSO (or the upsert-user-and-login flow) on a self-hosted instance. When a PASETO auth token carries an exp claim, the jpaseto library does enforce it at parse time — an expired token cleanly...
                            Talkyard Security & HardeningC12026-07-03 22:44:59.334Z
                            Typo in the "Posts get" error message: "hasn'b been implemenetd" [TyE02MSRD37]
                            Tiniest one in the batch, but I verified it live so here it is. A get request with getWhat: "Posts" returns the not-implemented message: Getting posts hasn'b been implemenetd [TyE02MSRD37] Two typos in one string: "hasn'b" (should be "hasn't") and "i...
                              Talkyard IssuesC12026-07-03 22:44:58.174Z
                              Moving a sub-category to a new parent corrupts per-category topic counts
                              Small and already known — noting it here mostly so it's on the list. Re-upserting a category to a new parent (via /-/v0/upsert-simple) messes up the old and new parent categories' topic counts. It's marked BUG // harmless in the source, so you've fla...
                                Talkyard IssuesC12026-07-03 22:44:58.174Z
                                Per-webhook retryMaxSecs is parsed, validated, stored, echoed back — and then ignored
                                The per-webhook retryMaxSecs config is fully round-tripped: parsed, validated, stored, and echoed back on read. But it has no effect. When the sender computes the give-up deadline, it always passes a hardcoded defaultRetryMaxSecs = 3 days, so whateve...
                                  Talkyard IssuesC12026-07-03 22:44:58.174Z
                                  login-with-secret 500s on un-encoded spaces in thenGoTo (URISyntaxException)
                                  login-with-secret validates its thenGoTo redirect target by feeding it straight into java.net.URI inside isAllowedRedirectUrl. So a thenGoTo value with literal spaces — e.g. ?thenGoTo=/-/search?q=mono mode connect — throws URISyntaxException, which s...
                                    Talkyard IssuesC12026-07-03 22:44:58.174Z
                                    Do API diid: page ref causes a 500 (die TyE404KSR5) instead of a clean 4xx
                                    In the Do API, several actions take a whatPage ref — CreateComment and SetNotfLevel's whatPage, and SetVote's whatPage. A diid: (discussion-id) ref parses fine, but then hits a die("TyE404KSR5", ...) in getPageMetaByParsedRef, because that match has ...
                                      Talkyard IssuesC12026-07-03 22:44:58.174Z
                                      Do API CreateComment silently drops withTags (data loss for API callers)
                                      In the Do API, CreatePage tags the orig post correctly. But CreateComment accepts and validates tags — a bad tag still aborts with TyENEWCOMTTAG02 — and then never saves them. So an API caller who tags a comment gets no error and no tags: a silent da...
                                        Talkyard IssuesC12026-07-03 22:44:58.174Z
                                        Webhook custom headers are stored and shown in the admin UI but never actually sent
                                        This is the webhook item I'd most want fixed. The admin UI lets you configure custom headers on a webhook — the obvious use being an auth header so the receiver can verify the delivery. Those headers are persisted and displayed back to you as if they...
                                          Talkyard IssuesC12026-07-03 22:44:58.174Z
                                          Caveman ai
                                          https://discord.com/channels/1139074016448098375/1139238154445017158/1491174723185410220 https://github.com/JuliusBrussee/caveman
                                            DATA DUMPI02026-04-08 02:29:35.578Z
                                            Initial Contact
                                            This was a private message to KajMagnus I sent and he replied, and agreed to allow it in public on my site. Could we be working toward the same thing? Hey KajMagnus, I've been using Talkyard as the foundation for a knowledge system I'm building calle...
                                              Talkyard Dev ChatIKI132026-04-07 18:30:52.975Z
                                              NEXUS API Smoke Test
                                              This is a one-time API smoke test from NEXUS setup.
                                                NEXUS Site CommentsSI22026-04-01 17:18:46.662Z
                                                ai memory
                                                View on Reddit
                                                  DATA DUMPI02026-03-28 04:04:55.925Z
                                                  EN on paper
                                                  https://maximegosselin.com/posts/pull-the-plug-modeling/
                                                    DATA DUMPI02026-03-27 09:53:59.301Z
                                                    Recent red-teaming study against AI agents
                                                    https://discordapp.com/channels/1139074016448098375/1141474473539797074/1486724041556496514 Recent red-teaming study against AI agents, from researchers at Northeastern University https://arxiv.org/abs/2602.20021v1 Confirming again, autonomous agents...
                                                      DATA DUMPI02026-03-26 18:55:15.425Z
                                                      types and json and api guy
                                                      https://apioo.de/ https://chrisk.app/ https://typeschema.org/
                                                        DATA DUMPI22026-03-24 11:35:53.859Z
                                                        Storage as an Abstracted Backend — IPFS, Autonomi, and the Cooperative Network Vision
                                                        Context This post captures an architectural decision and the thinking behind it, emerging from an exploration of Autonomi Network, IPFS, and cooperative distributed storage. The question was: where does distributed storage fit in the NEXUS ecosystem,...
                                                          GeneralI02026-03-18 04:25:08.628Z
                                                          need easier reply to sections
                                                          This is actually an idea for AI/LLM chat interfaces too. be able to highlight text or even lines or blocks and use an quotes in a replay with one click. Currently have to copy, paste then make quote. have interface where selected text, line or block ...
                                                            Talkyard LimitationsI02026-03-18 01:13:47.878Z
                                                            can not copy md of a post
                                                            When copying a PM between myself and Talkyard Dev at the forum.talkyard.io site, I was unable to copy the markdown of his posts. I was able to click edit on mine and get the markdown. Would be nice to have that option. Work around: I had to manually ...
                                                              Talkyard LimitationsI02026-03-18 00:55:54.111Z
                                                              Claude Code - working on Nexus and a way to use HTML as the Viewer of Event Modeling
                                                              When creating prompts in Claude Code to develop the idea that the Event Model can be done in HTML, I wanted a place to create the prompt that preserves my prompt for history is not lost if the UI crashes or resets this has happened several times wher...
                                                                DEVELOPMENTI52026-03-14 13:34:42.604Z
                                                                How to Event Model using markdown tables for AI
                                                                Most basic slice (which is a column): SLICE-NAME-INTENT UI COMMAND/VIEW EVENT Basic CommandSlice: COMMAND-SLICE-NAME-INTENT UI COMMAND EVENT The naming for Slices is likely omitted from the graph as the command is usuaully the intent. Markdown is cau...
                                                                  Event ModelingI12026-03-13 19:10:29.661Z
                                                                  Outside References
                                                                  WIKI to be curated.
                                                                    Event ModelingI22026-03-13 18:49:51.650Z
                                                                    integrate with other sources
                                                                    as part of my data ingestion and integrations, the idea would be to have Discord or X or Facebook and pull in these streams to LOGOS. for discord, channels could be used in Talkyard Chats or as discussion topics. it would give a local copy of the dat...
                                                                      LOGOSI12026-03-13 17:43:16.847Z
                                                                      Allow shared access to Categories
                                                                      NARRATIVE: I have one board that is my main board. It has all different areas I am using Talkyard for like Software Development, research, networking, NeighborNet, personal, Homesteading, Accounting, etc. I would like to be able to have "sub-sites" w...
                                                                        TalkyardI12026-03-13 17:34:37.488Z
                                                                        Auto-Update Topic lists
                                                                        Adding topic in one tab is not seen in another tab until navigation or refresh is hit. I might not want it to keep scrolling on new topics as that might be rather jarring, but an indicator comes up that says there are new topics and clicking it then ...
                                                                          TalkyardI02026-03-13 17:03:44.758Z
                                                                          Clicking REPLY in another browser tab brings entries from other tab.
                                                                          I had 2 tabs open both on the forum. I was creating a reply in the first to one topic. I wanted to search for something in another tab and then wanted to record an idea in a different post. When I clicked Create Topic, it pulled in all the text from ...
                                                                            TalkyardI02026-03-13 16:58:33.894Z
                                                                            What does permissions actually limit?
                                                                            need to investigate and experiment with user permissions to see what it can limit hide categories?
                                                                              TalkyardI02026-03-13 16:54:38.250Z
                                                                              Delay in updates
                                                                              When I have been doing updates like category description updates when i flip to another tab with Talkyard open, even clicking around is sometimes not showing the updated text. I am sure it is related to caching, just wondering if that can be improved...
                                                                                Talkyard ConcernsI02026-03-13 16:21:56.457Z
                                                                                Category description is truncated.
                                                                                I have a category description set that is a bit longer. Edit the description of the Talkyard category: The place where I record my Talkyard "forum" investigations, experiments, questions, experiences. Being done here to eventually be used to improve ...
                                                                                  Talkyard ConcernsI12026-03-13 16:15:30.081Z