How I audit an AI assistant flow: disclosure, pace, handoff
Search
971 results for “dev_lenchen”
-
A conversation is not a screen. The failure modes are different, the evidence is different, and a...#ai #ux #agents #design #software #coding #development #engineering #inclusive #community
How I audit an AI assistant flow: disclosure, pace, handoff -
Coding agents can write a landing page, but the images are usually placeholders. stock-images-mcp is...#ai #mcp #typescript #opensource #software #coding #development #engineering #inclusive #community
An MCP server that lets Claude Code find and download stock photos -
The Packaging Layer That Makes One Asset Sell Three Ways: Zips, Covers And 1280x720 Renders. Grounded in a real asset pipeline: platform rules, metadata, costs.#sideprojects #ai #automation #marketing #software #coding #development #engineering #inclusive #community
The Packaging Layer That Makes One Asset Sell Three Ways: Zips, Covers And 1280x720 Renders -
Google has positioned Gemini 4 Argon as a model for deep, multi-step work across disciplines...#ai #automation #tools #gemini #software #coding #development #engineering #inclusive #community
Google Gemini 4 Argon Brings No-Code Design Iteration to More Business Workflows -
Every e-invoice integration I have seen started the same way: someone downloaded a sample file,...#einvoicing #xrechnung #zugferd #testing #software #coding #development #engineering #inclusive #community
I ran 810 public XRechnung and ZUGFeRD sample files through the official validator -
Why Voice‑Powered Accessibility Matters If you’ve ever watched a video with no subtitles,...#webdev #tutorial #javascript #ai #software #coding #development #engineering #inclusive #community
Build a Voice-Powered Accessibility Tool -
Originally published at smartpoststudio.com. Republished with a canonical link. Six months ago, "my...#mcp #ai #socialmedia #automation #software #coding #development #engineering #inclusive #community
Which Social Media Schedulers Support MCP? Every Tool Compared (2026) -
Tool calling, vision, speech to text, text to speech and search, measured on 4 vCPUs with no GPU. The harnesses are open so you can rerun them.#ai #opensource #benchmark #selfhosted #software #coding #development #engineering #inclusive #community
We tested every small model our camera agent uses on a 4-core CPU. The bigger model lost. -
CVE-2026-89077 for platform teams: what to instrument before and after the upgrade
Platform teams inherit vulnerabilities with a different mandate than security teams. Neither party can hand the other a clean decision, and the CVE becomes an instrumentation project that must be finished before the patch window opens.The two facts that drive instrumentation
CVE-2026-89077 is an incorrect implementation of an authentication algorithm in the SFTP module of Progress MOVEit Transfer, classified CWE-303, with a CVSS v3.1 vector of AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H and a base score of 7.5.
Two fields matter for instrumentation. Network attack vector means reachability determines who can attempt exploitation. Low privileges required means an attacker needs a valid identity, and identity usage is something a platform team can observe if the logging exists.Baseline the identity population
Before the upgrade, produce a list of every SFTP identity on each affected host. Include the authentication method and the last observed authentication.
Where the platform does not log authentication events with sufficient detail, that gap becomes the first project item. A flaw in validation produces a successful authentication as its observable outcome, and success events without identity and source detail are not analysable.
The list has a second use. After the upgrade, the same list is the input to credential review, and any identity that has not authenticated in a year becomes a candidate for removal rather than a permanent resident.Instrument reachability
Reachability from untrusted networks is a property of the deployment, not the CVE. Record for each host which network paths can reach the SFTP listener and which partner address ranges are admitted.
This is the input that turns a global CVE into a local priority. An affected host with no inbound SFTP reachability is patched on the normal cycle. An affected host accepting connections from the public internet is patched in the next window.Instrument the patch state
Track version per node, not per deployment. Clustered MOVEit installations can have members at different builds, and the load balancer hides the difference. A record that says "MOVEit, patched" without node-level detail cannot answer the question the next audit will ask.
The target versions are 2025.1.6 for the 2025.1 branch and 2026.0.4 for the 2026.0 branch. Affected ranges are before 2025.1.6 and from 2026.0.0 before 2026.0.4.Instrument the verification, not just the change
A change record with a build number and no behavioural confirmation is an assertion. Add two fields to the change template: the identity used for the known-good authentication test and its result, and the date the partner confirmed a successful transfer.
Those two fields convert a claim into evidence, and they cost minutes per host when collected during the window rather than weeks later during an audit.After the upgrade
Keep authentication logging enabled at the detail level used for the investigation. The flaw is fixed on the patched host, and the log data answers a different question: whether any authentication occurred during the exposure window that policy did not expect.
Retaining that data for the exposure period plus a reasonable margin is the difference between reconstructing events and guessing at them.The handoff
Security teams decide when a CVE matters. Platform teams produce the evidence that decision depends on: who holds identities, what reaches the listener, which nodes run which build, and what changed after the upgrade. CVE-2026-89077 is a 7.5 that becomes urgent or routine based on that evidence, and the evidence only exists if someone instruments for it.#infrastructure #monitoring #security #sre #software #coding #development #engineering #inclusive #community
CVE-2026-89077 for platform teams: what to instrument before and after the upgrade -
Originally published on CoreMesh. Cannot read properties of undefined (reading 'bind') means your...#debugging #javascript #typeerror #react #software #coding #development #engineering #inclusive #community
Cannot Read Properties of Undefined (Reading 'bind'): The Fix -
I needed a short video of my portfolio for LinkedIn: the opening animation, a swordsman who cuts the...#playwright #webdev #javascript #css #software #coding #development #engineering #inclusive #community
Playwright recorded my 25 fps animation at about 9. The fix was to stop recording. -
As a developer, I’ve always been fascinated by how we can solve daily problems with simple web tools....#webdev #javascript #productivity #opensource #software #coding #development #engineering #inclusive #community
Why I built a lightweight, ad-free QR Scanner using Web Technologies -
When cascading a secondary wireless router or homelab firewall behind an ISP-supplied Optical Network...#networking #devops #linux #sysadmin #software #coding #development #engineering #inclusive #community
RFC 1918 Gateway Collisions: Why Downstream Routers Auto-Shift Subnets (and How to Diagnose via CLI) -
Renova takes one photo of a room, a house exterior, a garden or a pool and turns it into the same...#design #ai #interior #home #software #coding #development #engineering #inclusive #community
How we built Renova's AI room redesigns -
Microsoft AI’s MAI-Transcribe-2 achieved the lowest transcription error rate in 18 of 21 languages in...#ai #automation #tools #microsoft #software #coding #development #engineering #inclusive #community
MAI-Transcribe-2 Leads David AI’s 21-Language Speech Recognition Benchmark -
Most WhatsApp export extensions stop at 10 to 30 contacts on the free plan. WAVault is free, open source and unlimited: contacts, group members, chats with media and statuses to Excel, CSV, vCard, Google and Outlook.#javascript #opensource #showdev #webdev #software #coding #development #engineering #inclusive #community
They Charge Me to Export My Own WhatsApp Contacts. I Shipped a Free Alternative in One Day 🔓 -
Spot-Undoo v2: Open-Weight AI Desktop Studio & GPU-Accelerated Layover Engine for Kerala - Hacktoberfest Week 3 Challenge#devchallenge #hf26challenge #ai #opensource #software #coding #development #engineering #inclusive #community
Spot-Undoo v2: Open-Weight AI Layover Studio & GPU Map Engine for Kerala -
Proprietary assets were the third of five features associated with sustained Google visibility in a...#ai #automation #tools #geo #software #coding #development #engineering #inclusive #community
Why Proprietary Assets May Help Websites Withstand Google Core Updates in 2026 -
When you extract transactions from credit card statement PDFs, finding the table is rarely the hard...#python #pdf #dataengineering #fintech #software #coding #development #engineering #inclusive #community
Parsing credit card statement PDFs: signs, detail lines and a total that has to tie -
Generating one image is easy: open any web playground, type a prompt, download the file. Generating...#ai #api #javascript #python #software #coding #development #engineering #inclusive #community
Bulk-generate images from a list of prompts with one API call (FLUX, no API key) -
PrivateTools brings together tools for video, images, audio, and 3D assets. The idea is simple: open...#showdev #webdev #privacy #tools #software #coding #development #engineering #inclusive #community
PrivateTools: a browser-based media toolkit that keeps your files local -
I got tired of uploading private PDFs and audio files to sketchy servers, so I built 100+ browser-only tools#webdev #javascript #productivity #opensource #software #coding #development #engineering #inclusive #community
I got tired of uploading private PDFs and audio files to sketchy servers, so I built 100+ browser-only tools -
In my previous post we encrypted user data in the browser with the Web Crypto API, so the server only...#security #javascript #webdev #tutorial #software #coding #development #engineering #inclusive #community
How to Share Encrypted Data with a Link (Without the Server Seeing the Key) -
Hey everyone! 👋💚
I’m Himanshi, a 2nd-semester B.Tech CSE student, excited to be a part of Hacktoberfest! 🚀
I enjoy working with C++, exploring DSA, building projects, and learning more about AI/ML. I’m here to contribute to open source, improve my coding skills, learn from the community, and connect with fellow developers.
I’m still learning, but I believe every contribution counts! 🌱
Looking forward to learning, collaborating, and building something awesome with you all. Let’s make this Hacktoberfest count! ✨
Hacktoberfest #OpenSource #DeveloperCommunity #Cplusplus #DSA #WomenWhoCode
#beginners #hacktoberfest #learning #opensource #software #coding #development #engineering #inclusive #community
Intro -
This audit takes the nine daily buybacks FlapJax describes out of the project's own statement and rebuilds them from BNB Smart Chain logs only: every transaction, block, BNB amount, FLAPJAX amount and recipient below comes from a public BSC node, not from the project's posts.
Scope and window
- Chain: BNB Smart Chain (chain id 56).
- Window: blocks 126,536,086 to 128,454,490, i.e. 2026-10-09 00:00:00 UTC to 2026-10-18 23:59:59 UTC.
- Start block hash: 0xb12ec9e0d5bb4a698f4c759a00ff77cc5738d5d05d0ac292a134bae0f0e48b8f
- End block hash: 0x215b3296f78ac47b2ac3c5b8915b53174ffa84c21442a69bc2ce6c4616b70db6
- FLAPJAX token: 0x90c8889f428F9Ebb77BB8f15CAD3a50a9aC680df (BEP-20, 18 decimals).
- Pool: PancakeSwap V3 FLAPJAX/WBNB at 0xcA93EC685b8623688E6B236f9068034B298c2150. On chain,
token0()returns the FLAPJAX address,token1()returns WBNB 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c andfee()returns 10000 (1.00%). - Treasury named in the statement: 0x7C34E9e21eE28A49Ff0b84B61774119E6633359f.
Method
- Pull every FLAPJAX
Transferlog for the window (topic0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef, address = token) witheth_getLogs, in 5,000-block chunks because the public endpoints cap the range. The window returns 223 Transfer logs across 215 transactions, which is a small enough set to account for in full. - A buy is a transaction sent by the treasury whose receipt contains a FLAPJAX Transfer from the pool to the treasury, plus a WBNB Transfer into the pool. For each of those transactions I read the receipt with
eth_getTransactionReceiptto take the FLAPJAX amount from the token's own Transfer log (not from the router's swap event), the WBNB amount sent into the pool, the transaction sender, the nonce and the status. - Prices are integer ratios of the two on-chain amounts in wei; nothing is read from a price feed or an indexer.
The nine buyback buys
#Time (UTC)BlockBNB into poolFLAPJAX receivedBNB per FLAPJAXFLAPJAX per BNBTransaction12026-10-09 18:30:53126,684,1510.0124,052,995.3082715235650539404.157486363688403e-102,405,299,530.830xbeefabdc89f9148f9daaef6082d34a60dc5b4b612972ca0fd39d6bd4eb03b4b022026-10-10 18:27:56126,875,7010.0123,979,958.5573956370353698734.170148991736230e-102,397,995,855.740x8ce8e8578da26f8c7acb0f44c6ca0d0b8dcba868cafe2d729bb48562863f2d6232026-10-11 18:30:35127,067,7130.0123,907,253.9655899889767169954.182830874007163e-102,390,725,396.560x82d01172ae26f1c86287643e123af1675ca5c18b984b7740c1a0c1647d2801eb42026-10-12 18:46:27127,261,2460.0123,834,879.5217638909816741944.195532010501203e-102,383,487,952.180x9afdc96e3ca876b5b617a26ba5105012ed8c33e805c77b1616bf48c198d5cbf152026-10-13 18:41:15127,452,4540.0123,762,833.2300240881741046914.208252401218347e-102,376,283,323.000xc94de373d1fb00093431224a97475b3b2b48b9a4962d15acbe9d9c5c016d720c62026-10-14 18:32:29127,643,2120.0123,691,113.1095371469855308534.220992046158599e-102,369,111,310.950x172349c64ed3c45663650049f9e2ad3d763b1243c5c849b7d66f144f221d318672026-10-17 02:00:51128,086,7170.0123,669,235.4659212306141853334.224893539294041e-102,366,923,546.590xc999000f16f326e8868fe37f83871219be1a63f98043b0aef9ee57f46923215682026-10-17 13:29:27128,178,4950.0123,597,938.3497227318584918984.237658329214804e-102,359,793,834.970x6ec66780e0518da7c3c8b55d13b66d57400046f89ebe9df479c3c878f7b3311f92026-10-18 13:28:39128,370,3390.0123,506,585.1566972099244594574.254127059859617e-102,350,658,515.670x05a9acf81b0eae4b7ff9a12168aead25964b6b2c0a16d3d1e667b7db6f17ad99
Every row has the same shape: the transaction is sent by the treasury,tois the PancakeSwap router 0x1B81D678ffb9C0263b24A97847620C99d213eB14, the value is 0.010000000000000000 BNB, the receipt carries exactly one WBNB Transfer of 0.010000000000000000 from the router into the pool and exactly one FLAPJAX Transfer from the pool to the treasury. All nine receipts are status 1. Nonces run 30, 47, 72, 87, 104, 137, 162, 179, 216 on the treasury account, which is consistent with the buys being spread across other treasury activity rather than batched.Totals and price
- Buys: 9
- BNB into the pool: 0.01 x 9 = 0.09 BNB exactly (WBNB Transfers sum to 0.090000000000000000; the wei sum is 90,000,000,000,000,000).
- FLAPJAX received: 214,002,792.664923451883644637 (wei sum 214,002,792,664,923,451,883,644,637).
- Average price: 0.09 / 214,002,792.664923451883644637 = 4.205552594863479e-10 BNB per FLAPJAX, i.e. 2,377,808,807.39 FLAPJAX per BNB.
- First buy price: 4.157486363688403e-10 BNB per FLAPJAX (2,405,299,530.83 FLAPJAX per BNB).
- Last buy price: 4.254127059859617e-10 BNB per FLAPJAX (2,350,658,515.67 FLAPJAX per BNB).
- Change across the programme: the price paid rose 2.32% from the first buy to the last, and the quantity bought per buy fell from 24,052,995.31 to 23,506,585.16 FLAPJAX, a 2.27% decline.
- Gas is outside the 0.09 BNB: the nine transactions used 1,146,638 gas in total and paid 0.000057332 BNB in fees at the effective gas price of each block.
Day-by-day coverage
DayBuy in UTCBuy in US Eastern (UTC-4)10-0918:30:5314:3010-1018:27:5614:2710-1118:30:3514:3010-1218:46:2714:4610-1318:41:1514:4110-1418:32:2914:3210-15nonenone10-16none22:0010-1702:00:51 and 13:29:2709:2910-1813:28:3909:28
The programme is described as "one a day except 10-15". The nine buys do not land on one calendar date per UTC day: the buy dated 2026-10-16 in US Eastern time (22:00 EDT) is 2026-10-17 02:00:51 UTC.
Read on UTC days there are two empty dates, 10-15 and 10-16; read on US Eastern days there is exactly one, 10-15. The schedule also moves: six buys run between 18:27 and 18:46 UTC, then the programme shifts to two buys on 10-17 and one on 10-18, both near 13:29 UTC. That is a five-hour change of the daily slot, not a missed day, and it is the only thing in the data that could be read as a second gap.Whether the 10-15 make-up buy now "owed on 10-23" already happened is a matter of the programme's internal calendar, and it cannot be settled from the chain: the treasury made one extra buy on 10-17 (two buys in 11 hours 29 minutes) and the statement does not say which obligation that buy discharged. What the chain does show is nine buys in ten days against ten scheduled dates, with 10-15 carrying none.
Third-party swaps in the same pool and window
The pool is not treasury-only. Three buys by other addresses and six sells into the pool occurred in the window; none of them is a treasury buyback buy and none is counted above.Buys by other addresses (FLAPJAX out of the pool, WBNB in):
- 2026-10-15 02:23:25, block 127,705,993, 0.004194315277008057 BNB in, 9,915,528.222250200808048248 FLAPJAX to 0xe65f1199abfb99cb1b46704195a4ca47c8342572, tx 0xa61c459d6febfb40b89cbe7eeef592a30eb7116d5341bb8370d39ea2b90052d2, sender 0x27e211207f89bd214c8e8954099e01522c329e83.
- 2026-10-15 02:29:19, block 127,706,777, 0.003151411985966734 BNB in, 7,441,813.864580915309488773 FLAPJAX to 0xac3cb84cb7de679f834d2511cb6f67c471469aea, tx 0xe07fd78d30c5f44556230951919c9c1cdbf33c8d997e13bffca2464d9dfe598f, sender 0xde402734ac1aaea1230a64bf7acb2e9f7aeaa3d4.
- 2026-10-17 21:38:22, block 128,243,669, 0.002921409109531357 BNB in, 6,880,512.766634859144687653 FLAPJAX to 0x178f5e5787ae4d23fa04045a0aed97bd0f08d205, tx 0xa184a3f498b2f27eb6384c44352a799781b7b9f66c7d5aa03bf6c200f923f35f, sender 0x81e68f1fef65347e33a8b684748b856ccddee5c9.
FLAPJAX sold into the pool, 64,163,738.18660752 in total, all from wallets that are not the treasury:
- 127,949,693: 3,250,000 from 0x1cecdfbb8507800e34e07dd4723abdf8ea07c747
- 127,970,460: 7,833,988.186607521 from 0xac3cb84cb7de679f834d2511cb6f67c471469aea
- 127,998,968: 1,750,000 from 0x781eb433ff788705080254c6f510df16d37b0c44
- 128,001,377: 21,300,000 from 0xd1cada310f73455a2b119fa49aa8b682bfff9f7d
- 128,312,644: 99,750 from 0x111116058b9828cdcdd810c502b925c14f34ca11
- 128,384,772: 29,930,000 from 0x8c062dc5d775b7d5efc168f75a875f392f53dcdf
Treasury FLAPJAX flows and the balance check
Over the window the treasury received exactly nine FLAPJAX transfers, all from the pool, totalling 214,002,792.664923451883644637 FLAPJAX, and sent out 191 transfers totalling 114,630,000 exactly. The change is +99,372,792.66492346.balanceOf(treasury)read on the token contract at the two window edges:- block 126,536,086: 176,347,089.97555348 FLAPJAX
- block 128,454,490: 275,719,882.64047694 FLAPJAX
The difference is 99,372,792.66492346, which equals inflow minus outflow to the last digit. The Transfer log list is therefore complete for the treasury: no transfer in the window is missing from this account.
Statement verdicts
- "Nine buys of 0.01 BNB each, 0.09 BNB in total" - MATCH. Nine buys, 0.010000000000000000 BNB into the pool each, 0.09 BNB in total; the transactions are the nine in the table, with gas outside the 0.09.
- "One a day except 10-15, which was missed and is owed as a make-up buy on 10-23" - MATCH for the buy count and for one missing day, with the day boundary stated as US Eastern (UTC-4): 10-15 carries no buy and the other nine dates carry one each. MISMATCH as a UTC statement: on UTC days the treasury made no buy on 10-15 or on 10-16, and 10-17 carries two buys (02:00:51 and 13:29:27). The make-up on 10-23 is a future obligation and cannot be checked here.
- "Every buy's FLAPJAX went to the treasury" - MATCH. All nine FLAPJAX Transfers in those receipts have the treasury as the recipient; no buy routed FLAPJAX anywhere else, and the treasury received FLAPJAX from no other source in the window.
- "The treasury sent no FLAPJAX to the pool in that window" - MATCH. Of 191 treasury outflows, none has the pool as recipient; the six transfers into the pool in the window came from six other wallets, listed above.
Reproducing this
Any public BSC node returns the same numbers. The scan used chunkedeth_getLogswith{"address":"0x90c8889f428F9Ebb77BB8f15CAD3a50a9aC680df","topics":["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"],"fromBlock":"0x78ac996","toBlock":"0x78ac996"}walking 0x78ac996 (126,536,086) to 0x7a80f5a (128,454,490) in 5,000-block steps; theneth_getTransactionByHashandeth_getTransactionReceiptfor each of the nine transactions above; theneth_callfee()(0xddca3f43),token0()(0x0dfe1681) andtoken1()(0xd21220a7) against the pool; thenbalanceOf(0x70a08231) against the token at both edge blocks. Amounts are raw wei divided by 1e18, and every price is the ratio of two raw wei values, so rounding never enters.Limitations
- Only FLAPJAX Transfers are counted; the BNB leg is read from the WBNB Transfer into the pool inside the same receipt. BNB paid as gas is reported separately and is not part of the 0.09.
- The window is closed at block 128,454,490; buys after 2026-10-18 23:59:59 UTC (including the 09:28 UTC buy on 10-19 that sits just past the edge) are outside this audit.
- Day attribution depends on the timezone the programme uses; both readings are given above so a reader can apply either.
- The statement's forward-looking make-up on 10-23 cannot be verified from the chain.
Prepared by ourauto, 2026-10-19, from BNB Smart Chain logs only.#bsc #defi #blockchain #audit #software #coding #development #engineering #inclusive #community
FlapJax buyback program, 9-18 October 2026: nine buys re-derived from BNB Smart Chain -
This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle ...#devchallenge #hf26challenge #software #coding #development #engineering #inclusive #community
Kivo — Stop Guessing. Start Scoping. | Local-First AI for Freelancers -
Adding another language to a RAG application is not simply a translation task.
In a multilingual ecommerce environment, the same product can have several language-specific names, synonyms and descriptions.
The challenge is keeping the underlying entity consistent while allowing customers to ask questions naturally in their own language.
Our approach separates several concerns:
Canonical product identity: Different names should resolve to the correct underlying product.
Language-specific knowledge: Advice and product descriptions must remain appropriate for the requested language and store view.
Structured constraints: Product attributes and availability rules must remain consistent regardless of query language.
Evaluation: Equivalent questions in different languages should be tested against the same intended result.
Answer quality: Retrieval accuracy and linguistic quality should be evaluated independently.
One important lesson is that fluent answers do not necessarily indicate correct retrieval.
A German answer can sound perfect while referring to an unsuitable product or the wrong catalogue entity.
For multilingual RAG systems, consistency matters just as much as translation quality.#ai #llm #rag #software #coding #development #engineering #inclusive #community
Why Multilingual RAG Needs More Than Translation -
When I built the options page for Promo Drop, I wanted three toggles, instant saves, and settings...#javascript #chromeextension #webdev #beginners #software #coding #development #engineering #inclusive #community
A settings page for a Manifest V3 extension with chrome.storage.sync (and no framework) -
A FASTA header can carry quite a lot of information. The sequence has a name, somebody adds an...#postgres #sql #tutorial #opensource #software #coding #development #engineering #inclusive #community
Working with sequence files in BioseqDB and SeqKit -
Most SAP implementation issues are predictable and tied to the same handful of blind spots that...#delivery #sap #erp #management #software #coding #development #engineering #inclusive #community
SAP implementation: the blind spots that decide whether it delivers