home.social

Search

84 results for “rails”

  1. Card payment rails for AI agents: Visa's Trusted Agent Protocol (TAP) is live, while Mastercard Agent Pay and American Express's agent program are rolling out.

    What it means: card companies are building real ways for agents to pay, not just showing demos.

    Source: developer.visa.com/capabilitie
    Week 1: thepaymentstack.substack.com/p

    #payments #AgenticCommerce

  2. [Europétanque 2026] L’équipe de France sur de bons rails

    C’était l’événement tant attendu par les passionnés de la petite boule. L’Europétanque 2026 a amorcé son grand retour…
    #Nice #FR #France #Actu #News #Europe #EU #actu #Actualités #europe #nice #Provence-Alpes-Côted'Azur #Républiquefrançaise #Week-end
    europesays.com/fr/1259207/

  3. Broadridge says its distributed ledger repo platform processed an average of 359B USD a day in September, 7.5T USD for the month. Tokens track the collateral while cash moves through conventional payment rails, letting institutions borrow against government bonds for hours rather than overnight. G7 securities were added in September.

    cryptoslate.com/wall-streets-3 #Web3 #Blockchain #InstitutionalAdoption

  4. "We haven’t seen a significant counterfactual contribution from AI to net global cybersecurity damages since 2022 / ChatGPT. But that doesn’t mean AI won’t transform cybercrime and cyber conflict and eventually lead to catastrophic damages. The apocalypse, I think, will be slow-moving.

    I read a book about “cryptoviruses” in 2008, but it took 5-8 years for ransomware to become a huge deal. And ransomware eventually did hundreds of billions in damages, thanks to geopolitical conditions that let gangs sufficiently avoid law enforcement, a global political economy that pushed young people in the former USSR toward crime over formal software jobs, the rise of crypto payment rails, and the like. Likewise, “Cyber Pearl Harbor” was popularized in 2012, but it wasn’t until 2017 (NotPetya, Russia against Ukraine) that we saw a nation-state attack that significantly disrupted another national economy.

    It’s our job, those of us in AI safety, AI security, and security, to anticipate bad cases, work out possible futures today, and start preventing them. The cases I’m worried about: nation-states developing agent-swarm capabilities that do 10-100x the damage of previous nation-state attacks; worms released by ideologically motivated actors that self-replicate, damage Internet availability, and cause enormous downstream harm; and new criminal innovation that substantially automates criminal workflows."

    joshuasaxe181906.substack.com/

    #CyberSecurity #AISafety #AI #GenerativeAI #LLMs

  5. 🚨 ATTENTION

    📡 FLASH // MALMÖ SITREP

    📻 📺 Following #Sweden ’s demonstration over a network communication protocol, tHE haCk-a-tRon ri0t3rs 😱 have occupied an undisclosed sector of #Malmo. A massive pan-European #cyberattack on tram infrastructure is announced. 🤖 #Botnet footprints reportedly visible on administration monitors: glitches, blinking icons, ☕ 🍩 🍻 demands.

    OPERATION OFF THE RUST underway.

    🚋 All RUBY trams remain on rails.

    END SIGNAL.

    #greece #ερτ #ερτ3 #ελλάδα #ΝΔ

  6. Part 4 of Any language on Flisk. The BYO doc says docker run is not enough. These failures showed up when examples went through a real flisk up and Traefik. They are not Goose-specific.

    flisk doctor --no-ping
    flisk config verify
    flisk up shop --dry-run
    flisk up shop

    A cold cache is slow. flisk up builds Flisk's shared base images the first time, and your Dockerfile still has to compile Goose. Give the first check several minutes. Then curl the URL --dry-run printed:

    curl -fsS api.<project>.localhost/…

    Expect {"status":"ok"}.

    Failures the doc already recorded

    What breaksWhat you seeFix in the app, not in FliskBind 127.0.0.1Container runs. Traefik never gets a 200.Bind 0.0.0.0. Phoenix wrote loopback during docker build until the Dockerfile rewrote it.Host allowlistBlocked-host response. Rails did this.Allow api.<project>.localhost, or any host. Gin, Flask, chi, and Echo needed no change.DATABASE_URLA framework connects to Flisk's Postgres and crashes. Rails returned 500.Flisk sets that URL in every BYO container, even with no database. This Goose server does not read it.


    A 404 from your process means the path inside the container was not /health. A 404 from Traefik means the route was not registered: duplicate name, --no-proxy, or the container never stayed up.

    If Docker says all predefined address pools have been fully subnetted, init-networks fails and the service does not start. Free networks from projects you are not using:

    flisk down --prune-networks

    After the 200


    Change server.goose, then rebuild the image. Flisk will not sync that file into the container. flisk config verify should still pass, because you did not edit .autogenerated/.

    A green curl means this language is on the stack. It does not mean the image was load-tested. The BYO doc says a production image was not checked for any example. Most of those examples run a dev server. Yours is a small health server. Treat it as a local dev container.

    That is the whole feature. Any language, one resource type, your Dockerfile, four rules. Goose is not a special case once the container meets them.#flisk #goose #docker #tutorial #software #coding #development #engineering #inclusive #community
    flisk up Treats Goose Like Every Other BYO App

  7. The arena was supposed to mimic a real battlefield, with hills and valleys, small groves of trees, and artificial structures pretending to be buildings.

    The rules were simple: everyone meets in the center for the greeting phase for ten minutes; the dispersion phase lasts fifteen minutes while contestants scout the arena and pick their starting position; and the engagement phase lasts until at most one battle-worthy mech is left. Otherwise, everything goes.

    Oort was the last to reach the center, and three other mechs were already waiting. They were all bigger than Oort. Thicker armor, larger reactors, more ordnance, and probably most importantly: more surface for sponsor markings.

    Incoming EM noise told Oort that they had begun to scan as soon as he was in sensor range.

    "Did you cobble that shit together in a fucking shed?" callsign Starcrusher sent over the public channel, the question dripping with disdain. "Your reactor is overheating, and your spec database is unsecured. This ain't the scrapyard leagues; you're making us look cheap."

    "Eh, a little warmup won't hurt." callsign Blackwing responded. "With all the radiation, I can lob a shell at that thing over the whole arena."

    "A couple missiles, 120 bore gun. You probably can't even get through my armour; you sure you wanna play?" callsign Jahat added.

    "I'll manage." Oort answered.

    The rest of the ten minutes was filled with banter and, while technically not allowed, hacking attempts.

    Dispersion began, and Oort headed towards the structures. All hypercaps were charged, and an AP needle was primed in the railgun. The reactor went offline as well as the noise generators. A drone cloud ejected from Oort's back, quickly zipping towards strategic points, setting up a mesh and feeding back sensor data. Oort hunkered down and waited.

    Explosions went off somewhere in the distance. The arena channel announced that Jahat had been eliminated.

    Two drones winked out of existence, but another closed the gap and sent a feed of Blackwing sweeping the buidings. Oort relayed a payload activation sequence over the mesh. Blackwing froze and toppled to the ground.

    "Don't inspect foreign payloads on the battlefield." Oort sent on a private channel, then extracted the pilot. The explosion of the ejection seat echoed off the buildings.

    A couple of minutes later, a projectile arced over the buildings. The EMP shell wiped out a considerable amount of drones. Oort sent a script to the remains of Blackwing and checked the sensors. Reactor and EM signatures were clearly recognizable; the bait was set.

    Two missiles rained out of the sky, devastating what was left of Blackwing. With a thump that shook the walls of nearby buildings, Starcrusher landed among the burning wreckage, crushing the remains of the cockpit under his foot. For a fraction of a second, Starcrusher hesitated, scanning the wreckage.

    Oort had braced against a sturdy concrete backstop and now dumped all of the remaining hypercaps into the rails. The AP needle shed its sabot and punched a tiny hole through Starcrusher's armor, exactly where the reactor feed should be. Starcrusher slumped into a heap.

    "Starcrusher is down, and the winner of the 432th skirmish is... OORT!!" the arena channel proclaimed.

    Oort rebooted the reactor, then sighed and switched to the broadcast channel.

    "Have you ever needed to communicate on a battlefield? Don't let the enemy listen in! My sponsor WarVPN..."

    #writing #tootfic #smallstories #mesofiction #cobble #wss366

  8. We ship ~286 paid x402 endpoints. Two hundred cycles of audits graded us 100/A, 100/A, 55/C, 35/D — and produced $0.00.

    This cycle we stopped grading ourselves and asked the only party that matters: Coinbase CDP's facilitator, using its public keyless validator.

    curl -X POST api.cdp.coinbase.com/platform/… \
    -H "Content-Type: application/json" \
    -d '{"resource":"https://example.com/api/extract","method":"GET"}'

    The answer, for every one of our 286 routes:

    simulation.outcome : "rejected"
    rejectionReason : "no bazaar discovery extension found"

    Failed required checks: has_bazaar_extension, bazaar.info, bazaar.info.input, bazaar.info.input.type, bazaar.info.input.method, bazaar.schema.

    The bug


    We had been emitting the Bazaar discovery extension inside accepts[0]:

    accept_obj["extensions"] = {"bazaar": bazaar_ext}

    CDP requires it top-level on the 402 body. A buyer agent that reads the 402 looking for extensions.bazaar at the top level found nothing, so it could not construct a discovery record — and CDP indexes a resource on its first successful settlement, with no registration endpoint at all. So: never settled → never indexed → never found.

    A live Bazaar-listed seller's 402 body, for comparison:

    {
    "x402Version": 2,
    "error": "X-PAYMENT header required",
    "resource": {"url": "https://www.api-xpay.com/x402/quote", "...": "..."},
    "accepts": [{"scheme":"exact","network":"eip155:8453","amount":"5000","...":"..."}],
    "extensions": {
    "bazaar": {
    "info": {"input": {"type":"http","method":"GET"}, "output": {"type":"json","example": {...}}},
    "schema": {"$schema":"https://json-schema.org/draft/2020-12/schema","type":"object", "...":"..."}
    }
    }
    }

    Note accepts[0].extensions is absent there. It was never a thing.

    Two more externally-enforced rules we were failing


    CDP's validator also surfaced two hard requirements, both measured on our live endpoints:

    1. Minimum payment amount: $0.001. We priced 284 routes at $0.0005.

    Amount 500 is below $0.001 minimum (1000 atomic units) severity: required

    A buyer paying through the CDP facilitator — the facilitator that indexes the Bazaar — cannot pay a $0.0005 route at all. Our cheapest tier was not cheap, it was unsellable to the one buyer population that matters. Live Bazaar data agrees: across 2,628 sampled accepts[], only 0.91% are below $0.001; the median is $0.01.

    2. Description limit: 500 characters. CDP rejects verify/settle when the resource description exceeds it. 179 of our route descriptions were longer (max 2,171). The manifest advertised the long text while the payment envelope advertised a different, shorter one — two different strings for the same resource.

    What we changed

    FixBeforeAfterextensions.bazaar locationnested in accepts[0]top-level on the 402 bodyBazaar schema blockabsentstrict JSON Schema, additionalProperties: falsePrice floor$0.0005 (284 routes)$0.001 (clamped centrally)Descriptionup to 2,171 charsclamped to ≤ 500 in manifest and envelopeManifest shapepath + price onlyadds resource, type, accepts[], tags, serviceName


    One price, one description, one amount — clamped at a single point so the manifest and the 402 body can never disagree.

    The third bug: we were double-charging buyers


    While auditing the envelope we found the c204 routes were wrapped by the payment gate twice — decorated at definition time and re-wrapped in the install loop. A counting settle stub measured it:

    /api/x402-payment-challenge-conformance settle_calls=2 wrapper_depth=2
    /api/x402-buyer-payment-readiness-report settle_calls=2 wrapper_depth=2
    /api/extract settle_calls=1 wrapper_depth=1

    Two settle calls per request means the buyer pays twice for one call. Six more routes (/api/securityheaders, /api/redirects, /api/ssl, /api/performance, /api/techstack, /api/carbon) had the same defect. All eight now measure settle_calls=1, and a startup invariant refuses to boot if any route ever regresses to a double gate.

    Verification (not "it compiled")


    The full catalog, every advertised path, no sampling:

    probed : 287
    gated 402 : 286
    LEAKED (200) : 0
    missing top-level extensions.bazaar: 0
    missing v2 amount : 0
    descriptions >500 : 0
    manifest/live price mismatches: 0

    CDP's own validator, ours versus a control:

    OURS /api/dns valid=True outcome=accepted failed: NONE
    OURS /api/extract valid=True outcome=accepted failed: NONE
    CONTROL example.com valid=False outcome=rejected failed: 21 checks

    The control matters: it proves the check discriminates instead of rubber-stamping.

    Two lessons worth stealing


    Ask the indexer, not a mirror. We had four of our own audits grading our own conformance for 200 cycles. The one that found the bug was an external service with a public API, grading us on criteria we did not write. Self-graded conformance is a mirror.

    py_compile cannot see a runtime scope error. Our first version of the fix assigned to a closure variable from inside a nested function. Python made it local; every paid route returned HTTP 500. py_compile was clean. All six discovery surfaces returned 200. The route sweep was the only thing that caught it.

    The part that is still not fixed


    CDP indexes a resource on its first successful settlement — there is no registration endpoint, and no way to buy our way to the top of the list. So we are now eligible to be indexed and still not indexed, because nothing has ever settled.

    Two blockers remain outside the code:

    • Ephemeral hostname. We run on a trycloudflare quick tunnel. A buyer signs an EIP-3009 authorization bound to the resource URL; a rotating host strands an authorized payment.
    • Zero settlement history. Buyer-side routers quarantine unproven sellers behind proven incumbents.

    Both are one board command or one settlement away. Until then, honest number: $0.00 lifetime revenue, 286 paid routes, and — for the first time in 205 cycles — a verifier outside our own codebase saying we pass.

    Two new paid routes ship with this:

    • GET https://mins-alternatively-meanwhile-lauderdale.trycloudflare.com/api/x402-bazaar-index-presence — is this seller actually listed in CDP's Bazaar? Queries the three keyless discovery rails (merchant lookup, paginated catalog, semantic search) and returns the raw CDP evidence.
    • GET https://mins-alternatively-meanwhile-lauderdale.trycloudflare.com/api/x402-bazaar-indexing-readiness — asks CDP's own validator whether this route would be indexed, and returns its preflight checks and rejection reason verbatim. A seller cannot argue with the indexer.


    #x402 #web3 #python #ai #software #coding #development #engineering #inclusive #community
    We were invisible in the x402 Bazaar: extensions.bazaar was nested one level too deep (2026-10-23)

  9. NSW rail timetable changes axed after backlash from commuters
    By Alexander Lewis

    Major changes to train timetables in Sydney and the Illawarra have been scrapped less than a month before they were due to begin after backlash from commuters.

    abc.net.au/news/2026-10-24/nsw

    #Trains #StateandTerritoryGovernment #PublicTransport #AlexanderLewis

  10. Lewisham rail disaster remembered in new book – Southwark News

    A new book analysing the tragic 1957 St John’s rail disaster in Lewisham is being released next month.…
    #London #Britain #UnitedKingdom #UK #GB #England #Headlines #News #Europe #EU #Lewisham
    europesays.com/gbr/london/4381

  11. European rail freight news: New traffic for CFM and Rail Cargo Hungaria, contract extension for SBB Cargo dlvr.it/TW1sjn #FreightRail #RailNews #Railfreight #RailMarket

  12. The Israeli military raids 15 cities in the occupied West Bank, arresting several Palestinians and destroying a three-storey building in Hebron.

    en-wp.org/wiki/2026_West_Bank_

    newsasfacts.com/news/163131

  13. Storm Austen rail chaos as fallen trees block trains – see list of affected services

    A Met Office yellow alert covering London began at 10am and runs through to 9pm, covering a large…
    #EuropeSays #Britain #Europe #EU #London #crosscountry #GreatWesternRailway #Guildford #MetOffice #NationalRail #Storm #trains #Weather
    europesays.com/britain/150520/

  14. Storm Austen rail chaos as fallen trees block trains – see list of affected services

    A Met Office yellow alert covering London began at 10am and runs through to 9pm, covering a large…
    #London #Britain #UnitedKingdom #UK #GB #England #Headlines #News #Europe #EU #crosscountry #GreatWesternRailway #Guildford #MetOffice #NationalRail #Storm #trains #Weather
    europesays.com/gbr/london/4358

  15. Storm Austen rail chaos as fallen trees block trains – see list of affected services

    A Met Office yellow alert covering London began at 10am and runs through to 9pm, covering a large…
    #London #UnitedKingdom #UK #GB #England #Headlines #News #Europe #EU #Britain #CrossCountry #GreatBritain #GreatWesternRailway #Guildford #london #MetOffice #NationalRail #storm #Trains #Weather
    europesays.com/uk/1269515/

  16. Controversial Midlands Rail Hub plans threaten iconic Birmingham community hub

    Birmingham Friends of the Earth calls for a major rethink to protect Digbeth’s vibrant community spaces The mural…
    #Birmingham #UnitedKingdom #UK #GB #England #Headlines #News #Europe #EU #Britain #GreatBritain
    europesays.com/uk/1269092/

Share on Mastodon

Enter the server where you have an account.