Chat Logs

  1. * nevet joined #nevet
  2. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  3. * nevet joined #nevet
  4. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  5. * NeXeN joined #nevet
  6. * nevet joined #nevet
  7. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  8. dreamrealgithub subscriptions
  9. nevetNo active subscriptions for this channel
  10. dreamrealgithub subscribe jottinger/bytecode.news
  11. dreamrealgithub subscriptions
  12. nevetNo active subscriptions for this channel
  13. dreamrealhmm, okay
  14. dreamrealgithub list
  15. nevetjottinger/bytecode.news
  16. dreamrealokay, so that works
  17. dreamrealgithub subscriptions
  18. nevetNo active subscriptions for this channel
  19. dreamrealgithub subscribe jottinger/bytecode.news
  20. dreamrealhrmm, the worst part is that I get no errors from that command. Working on it.
  21. * nevet joined #nevet
  22. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  23. dreamrealgithub subscribe jottinger/bytecode.news
  24. dreamrealOH
  25. * nevet joined #nevet
  26. * dreamreal!~dreamreal@about/java/dreamreal changed the topic to: This is the channel for the development of the software that runs nevet: https://github.com/jottinger/streampack
  27. dreamrealgithub subscriptions
  28. nevetjottinger/bytecode.news
  29. dreamrealbeauty.
  30. dreamrealokay.
  31. dreamrealI forgot that I'd hardened the user associations :D
  32. blueyou certainly did
  33. bluetell me when it's done. I need it for my stuff (irc/discord)
  34. dreamrealDiscord user association is unworkable, discord doesn't auth well enough
  35. dreamrealbut I'm waiting to see if the polling works for github
  36. blueI don't get it. you neither need a user association nor polling. the interested repo user configures a webhook and you listen at the path, ez bananas
  37. dreamreal... webhook
  38. blueyes, webhook
  39. dreamrealthat's a push mechanism
  40. blueyou know, that thing that's not a dumb polling
  41. dreamrealI'm trying to avoid push mechanisms
  42. bluethat's dumb
  43. * dreamreal eyes the fediverse
  44. blueit's a simple POST event
  45. blueand you can signature verify it
  46. dreamrealI mean, not really, because the bot right now has *no* exposure and no requirement for it: it gets the information it needs, polling is rare just because I usually don't CARE to find out the second something happens
  47. dreamrealand there's NOTHING in the system that prevents an interested party from making a webhook for it
  48. bluewebhooks are the lazily "come to me when you're done approach". polling doesn't scale once you have many configureds. you might even get blacklisted by gh
  49. blueyou're barking up the wrong alley
  50. bluechange course
  51. dreamrealAfter all, the factoid service publishes endpoints, too, and in the same manner: they'd just say "here's the endpoint for this" and someone would configure an endpoint
  52. dreamrealand no, *nevet* is controlled by me, I'm not going to be adding so many repos that it violates GH's terms of service
  53. blueif you ever sold it as a service, it would need to scale
  54. dreamrealif YOU want to run the bot, you're welcome to do so: for YOUR purposes, you might want to disable the github polling service (or just don't add any endpoints) and provide the webhook
  55. dreamrealI'm building a system, not a service
  56. bluethat's semantics!
  57. bluewebhooks are clearly the superior solution here, we did polling like 20 years ago
  58. blueit's also the official path that gh recommends for repo updates
  59. blueplus, you get nice comfy JSON!
  60. blueI don't even *know* what you're polling against now
  61. dreamrealI already get nice comfy JSON. And like I said, feel free to write it; the system's right there.
  62. bluebut github can end up captching you and you'd end up with the xcancel issue
  63. blueyeah uh, I'm gonna leave kotlin for another, preferably rainy day :P
  64. dreamrealI'm using their access points via a library. I mean, a webhook is not conceptually difficult to DO - but deploying a webhook for functionality RIGHT NOW means spinning up endpoints I don't want to spin up yet.
  65. bluewhat's the cost to spinning up endpoints
  66. dreamrealdeployment, exposure of the rest of the API before it's tested, potential multiport access, etc
  67. dreamrealActually, the way I'd LIKE to do the webhooks is via a proxy: set up a different service altogether that has connectivity to nevet directly (AMQP/HTTP/MQ?) and events get into the system like that
  68. dreamrealThere are going to have to be public endpoints with visibility for the content system, factoids, etc, etc., so it'd be conceptually FINE to set up a direct webhook interface... but nevet's still got the shiny wrapper on it in a lot of places and I'm not ready to solidify the endpoints. So that gets to wait.
  69. dreamrealIf that's enough of a burr, well, that's fine! nevet's open source! Fix it! Harden it! Help me get the UI nailed down, even if you're not writing the UI! This is a system in active development and stable APIs aren't.
  70. dreamrealfor that matter, part of what drove the github mechanism was that I wanted a generalization for polling - RSS uses it, and I was thinking there's a model here, as opposed to re-writing RSS "for github." RSS doesn't use the polling system github does here, because I wanted it to work before porting it over.
  71. dreamrealI don't want to support fediverse enablement, but that would *require* webhooks; it's not a foreign concept, it's just a waterfall I'm not quite ready to jump over yet when I don't see the need. (github's TOS, btw, are REALLY generous for polling access - like, you'd have to go NUTS to subscribe enough to make polling a problem.)
  72. dreamrealand since nevet has one and only one admin..
  73. bot[jottinger/bytecode.news] New issue #40: Test issue for subscription. - https://github.com/jottinger/bytecode.news/issues/40
  74. bot[jottinger/bytecode.news] New PR #39: Adding more logging for subscription - https://github.com/jottinger/bytecode.news/pull/39
  75. dreamrealblue: ^^^ it works!
  76. dreamrealmaybe not as nicely as you'd like, it's definitely a poll and not a webhook, but it's functional.
  77. bluethis is where I think stuff gets too verbose. better to create a short url bytenews/gh/1234
  78. dreamrealNothing prevents that kind of mechanism in the system
  79. blueowning the urls also means you could add tracking -- if you're into that, anyway
  80. nevetowning the urls also means you could add tracking now has karma of -1.
  81. dreamrealit just presumes services that may not be present.
  82. dreamrealhaha
  83. dreamrealemdash for the win :D
  84. blueyou really gotta make him less dumb :P
  85. dreamrealanyway, the whole thing is built on a message chaining system: getting a url that has an internal source could indeed get a shortcode. It's just not important TO ME so I haven't written it.
  86. dreamrealAnd that's not "less dumb," that's a length filter on the subject of a karma operation that didn't get tripped.
  87. bluein other words, dumb
  88. dreamrealNot really: it's working as intended. "so-and-so doing the stupid thing despite every warning that it's stupid--" is a legit karma operation.
  89. nevetNot really: it's working as intended. "so-and-so doing the stupid thing despite every warning that it's stupid now has karma of -1.
  90. * dreamreal grins
  91. dreamrealWe're not trying to build semantic reasoning into a KARMA operation. If that's desired and you have the CPU and the models for it, well, cool: nothing precludes yeeting the detection and hooking an LLM or an NER into it. But that's not the way IRC karma normally works because that's expensive and ridiculous.
  92. dreamrealmost of the bot's operations are proofs of concept in any event: they're designed to be functional and useful, eventually, but they're very much "hey, what about this use case, does this make sense?" The 21 matches thing is a good example of that: as a game, hah, it's pointless; the bot always goes second, it always wins. But as a proof of concept, it demonstrates functionality.
  93. dreamrealGithub is the same thing: RSS and the github integration functionally work VERY similarly, but github integration uses a common model that RSS implied; eventually I'll move RSS over to it because it reduces maintenace burdens. Factoids, dictionary... heck, the dictionary thing came straight out of the JSR/JCP/RFC functionality, and so did PEP: "What does it take to expand this?"
  94. blueyou don't need to build semantic reasoning to detect a " -- " and exclude it
  95. nevetyou don't need to build semantic reasoning to detect a " now has karma of -1.
  96. bluejesus
  97. dreamrealOkay, so let's play a game: what rules would YOU use to exclude em-dashes?
  98. blueSPACES AROUND
  99. blueas I just demonstrated
  100. dreamrealBut spaces are legitimate
  101. dreamrealblue: --
  102. nevetblue now has karma of -1.
  103. bluethey shouldn't be: and you're trimming anyway
  104. dreamrealblue:++
  105. nevetblue has neutral karma.
  106. dreamrealSo if I'm TRIMMING how would I detect them?
  107. bluedetect SPACEDASHDASHSPACE and exclude. this isn't hard
  108. bluethat's the in-sentence use of them, rather than a decrement operator
  109. dreamrealIt's also semantically incorrect, and relies STILL on human engineering. It fits YOUR pattern.
  110. blueno, it fits the EXPECTED pattern. the karma operation should not MISDETECT normal conversational patterns
  111. blueask anyone, he'd tell you it's dumb
  112. dreamrealbecause I use completion as well: if you use "name em-dash foo" that's an IRC completion for the name, the em-dash for the op, and foo for the comment
  113. dreamrealOh, I still disagree: karma on irc is usually incredibly dumb, way dumber than I've made nevet, honestly
  114. dreamrealyou're looking at progress and going "OMG it's not enough" :D
  115. blueas soon as a playful operation disrupts a normal conversation, it's a negative sum thing
  116. dreamrealI built nevet's karma evaluation based on how I've actually seen it used and how I've seen it WANTING to be used over decades of infobot execution. Yes, there are false positives. They're endurable, mostly because they're going to generally be VERY unique: nobody's likely to query karma for a long text prefix by accident.
  117. blueyou could literally fix this error by checking for the exact pattern I laid out above
  118. bluethis is a no brainer
  119. dreamrealI hear you, but IRC conversations are async and are ultimately trivially interrupted and disrupted in any event. No, you can't, because that actually KILLS a lot of legit decs
  120. bluethis is NO legitimate use case for karma using SPACEDASHDASHSPACE
  121. blues/this/there/
  122. dreamrealblue ++ you're right
  123. nevetblue now has karma of 1.
  124. dreamrealblue -- you're wrong
  125. nevetblue has neutral karma.
  126. dreamrealblue -- wait which is it
  127. nevetblue now has karma of -1.
  128. blueI don't even know that what means tbh. you write something DASHDASH COMMENT?
  129. dreamrealI just did...
  130. bluethen drop the comment, OR force people to write SOMETHINGDASHASH with no space, by excluding the pattern above
  131. dreamrealno, because that implies arbitrary rules that are SURPRISING. The rules right now aren't surprising. They're vaguely annoying to you, but they're consistent.
  132. bluethe rules are now are TOTALLY surprising. you write a NORMAL CONVERSATIONAL sentence, and the dumb bot repeats it and creates a garbage entry in your db, to boot
  133. bluewith garbage I mean: it will NEVER be updated
  134. blueit will also never be queried
  135. dreamrealOh no, those records are so expensive, oh no. But it's still not surprising, because users learn that the operations are consistent. There's not a difference when an em-dash occurs in this subject vs THAT subject: "why didn't it work?" "Did you use spaces?" The places where it gets rough are when you have legit emdashes in names
  136. dreamrealc--++
  137. nevetc-- now has karma of 1.
  138. dreamrealAnd you're wrong_ teh system actually purges old data.
  139. blueoh man, this is the wrong hill to die on. it's the reason I ended up kicking nevet from the discord server the last time. becuase I wasn't able anyone to use double dash in my sentences without him disrupting the flow. you're hung up a perfect idea of a theory that is nonsense in practice
  140. dreamrealKarma erodes; after about 350 days or so it approaches asymptotic 0.
  141. blues/anyone/anymore/
  142. * dreamreal shrugs. You can ALWAYS run nevet yourself and mutate the operations as you like.
  143. dreamrealC++--
  144. nevetC++ now has karma of -1.
  145. blueyes, no space there
  146. blueI *could*, but this is actually a GOOD suggestion. ask anyone. I doubt you'd find one person in agreement with you on this
  147. blueand the annoying part is that I could massively benefit from nevet, but this is a deal breaker if you want to be able to use em dash in your sentences
  148. * dreamreal sighs. I guess the whole "I designed the function after watching how people use karma on IRC for decades" slipped right under your radar.
  149. dreamrealIf it's that big a deal, TURN OFF KARMA.
  150. blueso I have two choices, *if* I want to keep use it: remember NOT to use em dashes in my sentences, or tolerate the pesky bot interjecting every time I do
  151. dreamrealAlmost everything nevet does is optional.
  152. blueyou can turn off karma per discord server / irc channel?
  153. dreamrealNo. You can turn off karma. You don't need it. It's always been a toy.
  154. bluebut then I need to run the bot myself
  155. dreamrealAnd...
  156. dreamrealI mean, you want YOUR configuration. Why wouldn't you run it yourself?
  157. bluebecause the threshold for a bespoke configuration isn't met. I'd need to run the entire bot myself just to turn off an entire feature because you refuse to create a super meaningful exception
  158. dreamrealthe bytecode.news thing is a... wait for it! It's an option! You don't have to run the content system AT ALL. No front end, none of it.
  159. dreamrealIt's an exception that runs counter to what the author for the plugin wants. And it's not a terrible idea to have karma on or off by channel, actually.
  160. bluewell in the case of discord it'd be the entire server
  161. dreamrealAnd I refuse to create an exception for an operator that runs counter to how the operation was designed yes. "A car with round wheels but with wheels that are square, please" - no.
  162. * dreamreal shrugs. I mean, turning off a feature by provenance wouldn't be a terrible idea, it's just something I'd have to figure out how to map. karma operation syntax is really simple right now and should remain so.
  163. dreamrealIt's a LITTLE complicated because we're programmers and languages like c + + exist.
  164. dreamrealBut the mode is simple: subject, operation, comment. Comment is discarded. operation is the LAST VALID token, so subject is "greedy." Subject is length-constrained: there IS a feasible, rational limit to the length a valid subject can be, but it's generous by design.
  165. dreamrealC+++++++
  166. nevetC+++++ now has karma of 1.
  167. bluethe comparison doesn't hold. this is more like, a car having a mechanism not to run stuff over, can have exceptions for a few things
  168. dreamrealC++++--
  169. nevetC++++ now has karma of -1.
  170. dreamrealC+++++--
  171. nevetC+++++ has neutral karma.
  172. blueand your examples dn't use spaces
  173. bluedon't*
  174. dreamrealRight, and? The completion thing means spaces *are not relevant*
  175. dreamrealWe don't have a completion for language names, but that's not a salient point.
  176. blueso you just exclude spacedashdashspace, this is super easy
  177. dreamrealIt IS super-easy. And wrong. It's a special case that is not obvious to users; there are other exceptions that are not obvious - the 150-char limit on subject, for example - but they're likely to be quite rare, whereas this one is MUCH LESS LIKELY to be rare. And expressing it is nontrivial. Besides, the emdash in conversation blows.
  178. blueyou're LITERALLY avoid using em dash right now to not trigger your bot
  179. blueyou're proving my point for me
  180. dreamrealI LITERALLY rarely use emdashes in regular conversation. :D
  181. bluebut that's the correct way to write. if you use dots at the end of your sentences or capitalise your sentences, then you should use emdashes!
  182. * blue forks nevet and adds the dumb check
  183. bot[jottinger/bytecode.news] New issue #42: Egress transformation pipeline for bot-generated output - https://github.com/jottinger/bytecode.news/issues/42
  184. bot[jottinger/bytecode.news] New issue #41: Per-provenance operation control via JSONB config - https://github.com/jottinger/bytecode.news/issues/41
  185. bluemajor thumps up on #41 dreamreal!
  186. bluethumbs*
  187. bluedreamreal: finally, GH allows you to dedicate PRs on a repo! this has been a long time coming!
  188. * nevet` joined #nevet
  189. Chronosblue: I'd probably use emdashes if I knew how to type them. I used to use -- a lot. :)
  190. nevetblue: I'd probably use emdashes if I knew how to type them. I used to use now has karma of -1.
  191. Chronosdreamreal: Hmmm, I think I might consider the above a bug.
  192. blue^
  193. ChronosAt a guess, ignore the line if it has text that follows the -- or ++ characters.
  194. nevetAt a guess, ignore the line if it has text that follows the -- or now has karma of 1.
  195. ChronosAck. That was unintentional.
  196. ChronosThis — right here — is a test.
  197. ChronosOK, learned how to type emdashes. :)
  198. bluethe problem is dreamreal has insisted on adding comments to the karma feature (the part after the dashes)
  199. blueI personally consider those comments unituitive and stupid, but be it as it may, I told him to exclude spacedashdashspace, which he refuses