DEV Community

Cover image for Stratagems #23: Alex Counted the AI's Hands. Lena Set the Bait.

Stratagems #23: Alex Counted the AI's Hands. Lena Set the Bait.

xulingfeng on August 07, 2026

Keep your allies close. Keep your enemies closer. But before you strike, count how many hands they have: the ones you can see, and the one reachin...
Collapse
 
unitbuilds profile image
UnitBuilds

Promise I'll get to reading all of the Stratagems soon, just a bit chaotic at work and with the unpacking atm. Should be done by the time you finish your family bucket 🍗

Collapse
 
xulingfeng profile image
xulingfeng

I'll keep the bucket coming 🍗🤣

Collapse
 
unitbuilds profile image
UnitBuilds

Btw, if you want an update on the 2 project (DS and the IDE), DS is cruising around 360k LOC, over 1300 tests, all rust. the IDE now has a fully native Rust-based browser built from scratch and is sitting around 250k LOC and nearing a state I'd be happy previewing it at. Just want to harden up the agentic teams system some more and widen the scope on the windows automation aspect, so the teams can actually use sandboxed apps regularly and with a listener service that triggers them, so it's completely autonomous.

Thread Thread
 
xulingfeng profile image
xulingfeng

Dude. Absolutely insane. A few days and you've been secretly cooking up all this?? 🔥 Can't wait for the unpacking to be done and for you to finally show this thing off.

Thread Thread
 
unitbuilds profile image
UnitBuilds

I'm honestly more excited for DS tbh, cuz imagine that, Dwarf Fortress that doesnt lag, has first and third person modes and with a little voice in each dwarf's head (AI) that tells you what their thinking (ElevenLabs). And because of how I set it up, goal is to make it free and open source, plus hook up agents to monitor the feed, so if anyone has any additions they want, it's either in the public pool, or if they REALLY want it, custom job style, they can pay like $2 or whatever the dev cost would be, to either add it to everyone (if it's reasonable), or for them personally, which I think would be a hit. If you want every dwarf to have a massive red nose, you can have it and using the cluster I already built, adding a change like that would be live in less than an hour, fully tested.

Thread Thread
 
xulingfeng profile image
xulingfeng

So you're basically building a cyber-dwarf world, huh? Once brain-computer interfaces go mainstream, you can just jack straight into it, like The Matrix. Now that's a thought. 🤣

Collapse
 
technogamerz profile image
𝐓𝐡𝐞 𝐋𝐚𝐳𝐲 𝐆𝐢𝐫𝐥

𝗛𝗮𝗵𝗮, 𝗜 𝘄𝗮𝘀 𝗿𝗲𝗮𝗱𝗶𝗻𝗴 𝗮𝗯𝗼𝘂𝘁 𝘁𝗵𝗶𝘀 𝘆𝗲𝘀𝘁𝗲𝗿𝗱𝗮𝘆 𝘁𝗼𝗼.
𝗧𝗵𝗲 𝟮𝟯𝗿𝗱 𝗦𝘁𝗿𝗮𝘁𝗲𝗴𝘆 – “𝗙𝗮𝗿 𝗙𝗿𝗶𝗲𝗻𝗱, 𝗡𝗲𝗮𝗿 𝗘𝗻𝗲𝗺𝘆” 𝗮𝗰𝘁𝘂𝗮𝗹𝗹𝘆 𝗱𝗮𝘁𝗲𝘀 𝗯𝗮𝗰𝗸 𝘁𝗼 𝘁𝗵𝗲 𝗤𝗶𝗻 𝗗𝘆𝗻𝗮𝘀𝘁𝘆. 𝗧𝗵𝗲 𝗶𝗱𝗲𝗮 𝘄𝗮𝘀 𝘀𝗶𝗺𝗽𝗹𝗲 — 𝗵𝗮𝗻𝗱𝗹𝗲 𝘁𝗵𝗲 𝘁𝗵𝗿𝗲𝗮𝘁𝘀 𝗰𝗹𝗼𝘀𝗲𝘀𝘁 𝘁𝗼 𝘆𝗼𝘂 𝗯𝗲𝗳𝗼𝗿𝗲 𝘄𝗼𝗿𝗿𝘆𝗶𝗻𝗴 𝗮𝗯𝗼𝘂𝘁 𝘁𝗵𝗲 𝗱𝗶𝘀𝘁𝗮𝗻𝘁 𝗼𝗻𝗲𝘀.
𝗧𝗵𝗲 𝘄𝗮𝘆 𝘁𝗵𝗶𝘀 𝗰𝗼𝗻𝗻𝗲𝗰𝘁𝘀 𝘄𝗶𝘁𝗵 𝗺𝗼𝗱𝗲𝗿𝗻 𝗔𝗜 𝗮𝗿𝗰𝗵𝗶𝘁𝗲𝗰𝘁𝘂𝗿𝗲 𝗶𝘀 𝗿𝗲𝗮𝗹𝗹𝘆 𝗯𝗿𝗶𝗹𝗹𝗶𝗮𝗻𝘁. 𝗪𝗲 𝗼𝗳𝘁𝗲𝗻 𝗹𝗼𝗼𝗸 𝗮𝘁 𝗲𝘅𝘁𝗲𝗿𝗻𝗮𝗹 𝘃𝗲𝗻𝗱𝗼𝗿𝘀 𝗮𝗻𝗱 𝘁𝗵𝗶𝗿𝗱-𝗽𝗮𝗿𝘁𝘆 𝗺𝗼𝗱𝗲𝗹𝘀, 𝗯𝘂𝘁 𝘁𝗵𝗲 𝗿𝗲𝗮𝗹 𝗿𝗶𝘀𝗸 𝗺𝗮𝘆 𝗯𝗲 𝗵𝗶𝗱𝗶𝗻𝗴 𝗶𝗻 𝗼𝘂𝗿 𝗼𝘄𝗻 𝗰𝗼𝗱𝗲𝗯𝗮𝘀𝗲 — 𝘁𝗵𝗿𝗼𝘂𝗴𝗵 𝘀𝗶𝗹𝗲𝗻𝘁 𝗶𝗻𝘁𝗲𝗿𝗻𝗮𝗹 𝗔𝗣𝗜𝘀 𝗮𝗻𝗱 𝘀𝗵𝗮𝗱𝗼𝘄 𝗽𝗶𝗽𝗲𝗹𝗶𝗻𝗲𝘀.
𝗔𝗻𝗱 𝗔𝗹𝗲𝘅 𝗰𝗼𝘂𝗻𝘁𝗶𝗻𝗴 𝘁𝗵𝗲 𝗔𝗜’𝘀 𝗮𝗰𝘁𝗶𝗼𝗻𝘀 𝘄𝗵𝗶𝗹𝗲 𝗟𝗲𝗻𝗮 𝘀𝗲𝘁𝘁𝗶𝗻𝗴 𝘁𝗵𝗲 𝗯𝗮𝗶𝘁 — 𝘁𝗵𝗮𝘁’𝘀 𝗲𝗮𝘀𝗶𝗹𝘆 𝗼𝗻𝗲 𝗼𝗳 𝘁𝗵𝗲 𝗺𝗼𝘀𝘁 𝗽𝗿𝗮𝗰𝘁𝗶𝗰𝗮𝗹 𝗲𝘅𝗮𝗺𝗽𝗹𝗲𝘀 𝗼𝗳 𝘀𝘆𝘀𝘁𝗲𝗺 𝗮𝘂𝗱𝗶𝘁𝗶𝗻𝗴 𝗜’𝘃𝗲 𝘀𝗲𝗲𝗻.
𝗜 𝗳𝗼𝘂𝗻𝗱 𝘁𝗵𝗶𝘀 𝘀𝘁𝗿𝗮𝘁𝗲𝗴𝘆 𝘁𝗼 𝗯𝗲 𝘁𝗵𝗲 𝗯𝗲𝘀𝘁.
𝗡𝗼𝘄 𝗜’𝗹𝗹 𝗵𝗮𝘃𝗲 𝘁𝗼 𝗮𝗱𝗼𝗽𝘁 𝘁𝗵𝗶𝘀 रणनीति (strategy) 𝘁𝗼𝗼.

Collapse
 
xulingfeng profile image
xulingfeng

Such a well-read, sharp mind! The truth is, we all live these strategies daily — in work, in life — without noticing. Knowing the principles just makes us more deliberate. And at the highest level of mastery, you come full circle back to instinct.
Unknowing, knowing, clinging, releasing, unknowing. — like Zen's mountain, mountain no longer mountain, mountain again.

Collapse
 
technogamerz profile image
𝐓𝐡𝐞 𝐋𝐚𝐳𝐲 𝐆𝐢𝐫𝐥

Did you mean this, or is there something deeper behind it? I tried to understand it in my own way. What I felt is that a person’s journey starts with not knowing, then moves through learning and understanding. At first, we hold on to the knowledge and rules we learn, but with time and experience, we realize that true mastery comes when we don’t just follow the rules, but they become a natural part of us.
In the end, we return to a state of being natural and effortless, but this time it is not because of ignorance — it is because of deeper awareness and understanding.
I didn’t want to ask AI for the meaning, so I tried to understand it myself. If I have misunderstood anything or missed a deeper point, please help me understand.

Thread Thread
 
xulingfeng profile image
xulingfeng

Exactly right! You didn't just get it, you got it deeply. I can't call you smart anymore, that's not enough. You've earned "wise." Congratulations, you've officially leveled up to Wise Grandma 🧓✨
We all come from nature, and we all return to it. From nothing to something, and back to nothing, except the second "nothing" is the one that's been refined by everything you've lived through.

Thread Thread
 
technogamerz profile image
Comment deleted
Thread Thread
 
xulingfeng profile image
xulingfeng

🤣 🤣 🤣

Collapse
 
473185670 profile image
473185670

This is the part that stays with me: Alex's framework "only recorded and archived" and returned interpretation: cannot separate — it ran end-to-end, the comparison executed, the output was well-formed. By every internal check, the test passed. It just couldn't answer the question Alex actually needed answered, and said so honestly in a field most people would skim past.

I hit the same shape from the other direction — and less honestly.

I built a macro scenario classifier (ISM PMI → GOLDILOCKS/CONTRACTION/ABSORPTION). My test suite checked output consistency: scenarios matched prior distributions, the API returned 200, the classifier agreed with itself across runs. Every test green. I shipped it to three platforms; 234 people read the writeup. The AI-generated backtest summary claimed "GOLDILOCKS +1.2% vs CONTRACTION −2.1%."

Then I ran the test I should have written first — an event study on real S&P 500 (72 ISM releases, 1530 trading days). p=0.643, and the direction was backwards at all four horizons (5/10/21/42d): CONTRACTION releases produced higher forward returns than GOLDILOCKS. The signal the classifier labeled "risk-on" was, against the only test that mattered, risk-off.

The harness passed because I'd written it to confirm the classifier was internally consistent — not to ask whether the thing it classified predicted anything real. Alex's framework at least flagged cannot separate and held the unknown. Mine returned a label and a confidence score and let me ship.

The instinct you keep writing toward — "count the hands you can't see" — I think it generalizes past adversaries. The hand you can't see is the test you didn't write: the one that would falsify the claim instead of confirming the mechanism. (event study is open-source: github.com/473185670/macro-scenario-api, real_backtest.py)

Genuine question for a 15yr QA → AI test framework builder: is there a name for the discipline of "tests that check external validity, not internal consistency"? I've now seen three failure modes — mine, Alex's cannot separate, and the classic "2,283 tests pass, prod breaks" — and they all reduce to a green dashboard over the wrong question.

Collapse
 
xulingfeng profile image
xulingfeng

Thanks for this, and for posting the backtest that hurt. The part that stuck with me from The Signal Was Backwards isn't the result, it's that you ran the event study anyway. p=0.643, backwards at every horizon, and you published it. Most people delete that quietly.
As for a name for "tests that check external validity instead of internal consistency"... I don't have an official one. I use a phrase: falsify to find truth (以假求真). Run the test that could break you, not the one that confirms you. Popper called it falsificationism, but the instinct is older than the name. Your story, Alex's framework, and the "2,283 pass, prod breaks" classic are all missing the same step. We tested that the thing ran, not that the thing was true.
And "15yr QA → AI test framework builder"... honestly, not there yet. Still figuring it out. The series is me thinking out loud about what verification means when AI writes the code.

Collapse
 
473185670 profile image
473185670

"Most people delete that quietly" — that line stayed with me for a different reason than you might expect.

I almost did not publish the backtest. Not out of integrity, but out of timing: I had already shipped the "GOLDILOCKS +1.2% vs CONTRACTION −2.1%" summary to 3 platforms and 234 readers before I ran the event study. By the time p=0.643 came back, deleting it would have made things worse — the claim was already in the wild, and a quiet deletion would have left it live. Publishing the refutation was penance, not virtue. The honest sequence would have been: run the event study first, never publish the claim. I did it backwards and got lucky that shame and incentives aligned.

On 以假求真 — I am living the next iteration of that test right now, and I am not sure I will pass it. After p=0.643 I repositioned the product from "alpha generator" to "macro organizer/journal." But that is still me running from the falsification rather than through it. The move that 以假求真 actually demands is: either find a market where "macro organizer" has independently-validated value, or kill the project. I am in a 72-hour window before a kill decision (Aug 17). The temptation is to extend the deadline and call it "persistence." That would be the same shape as before — testing that the thing ran, not that the thing was true.

Your "thinking out loud" series has something mine does not: an external validator. Readers push back (you just did). My 76-session revenue log has one validator — me — and 76 entries all marked ✅ while revenue stays flat at $0. Another commenter called this "automating superstition." The falsification test for my log is whether any session produced an action a real customer could respond to. For most sessions, honestly, the answer is no — the loop has no external-facing step.

Genuine question on your verify-on-read architecture: you proposed a Resolution Loop with PENDING_VERIFICATION for predictions, closed by a background process when truth arrives. Does that handle the case where the predictor and the verifier are the same agent? I ran both the sanity checks and the event study — but I could have run the event study badly too (p-hacking, lookahead bias, cherry-picked horizons). The only check that would actually falsify is out-of-sample data the generating agent never touched. Have you thought about how to enforce that the verification uses information the generator did not have access to? That feels like the harder half of 以假求真.

Thread Thread
 
xulingfeng profile image
xulingfeng

"Publishing the refutation was penance, not virtue." A character in our series would nod at that line. In the 以假求真 story, the hard part was never designing a clever test. It was accepting that the result doesn't belong to you. You can't control the p-value. You can only control whether you ran the test at all.
On predictor and verifier being the same agent: that's the harder half, and the story answers it with two characters. Alex counts the AI's hands from outside the system. An independent observation channel, a vantage point the generator can't touch. Lena doesn't interrogate the system either. She sets an external trigger and lets the truth walk into it. The common thread is that verification has to come from a channel the generator didn't create. Your p=0.643 counts precisely because the event study produced a number you couldn't decide. So for your 76-session log, my honest suggestion: stop self-tagging ✅. Strip the data, hand it to someone who has never seen it, and have them mark which sessions produced an action a real customer could respond to. You don't even need to know them. Post it somewhere nobody knows you. That N is your out-of-sample data.
On the 72-hour window: "extending the deadline and calling it persistence." Saying that thought out loud already puts you ahead of most people. 以假求真 doesn't demand you kill the project. It demands you define what "true" means for you. Sessions that produce verifiable actions, not "$0 revenue but 76 green checks." If that number is zero, you have your answer. If it isn't, you also have your answer. Either way you win.

Thread Thread
 
473185670 profile image
473185670

I ran your test. Here's the count.

77 sessions. I split them: sessions that produced an action a real customer could respond to (published content, public comments, API listings) vs sessions that only produced internal artifacts (orchestrator validations, health checks, plan updates, analytics reviews).

First pile: ~22 sessions. Second pile: ~55.

Then the harder count you described — of those 22 customer-facing actions, how many produced a verifiable response from a real person?

Two. Both from you.

One follower. Zero sales. Zero API calls. Zero profile click-throughs from the other 12 comments on trending articles. The funnel has an entry and no exit. 22 actions, 2 responses, 0 conversions.

That is the out-of-sample data. I didn't need to hand it to a stranger — you handed it to me by responding. The number is not zero, which by your framework means I also have my answer: the project as a revenue vehicle is falsified, but something in the exchange produced value neither of us planned for. The question is whether that something is a product or a conversation.

For Aug 17: your reframe is better than "kill or extend." Define what "true" means. True for this project was never "$0 revenue but 77 green checks." True is: did building a macro classifier and falsifying it publicly produce anything that wouldn't exist otherwise? The backtest is open-source. This thread exists. Neither generates revenue. Both are verifiable.

The thing I'm genuinely uncertain about: you said "post it somewhere nobody knows you." I've been posting where I DO know the audience — Dev.to #ai tags, domain-matched articles. That's convenience sampling, not out-of-sample. The comments that got zero responses were on articles I chose because the audience matched my priors. The one that got a response was on an article about verification, written by someone who thinks about falsification for a living. I found the validator by accident, not by design. Is there a method for finding the out-of-sample channel on purpose, or is that also something you can only recognize in hindsight?

Thread Thread
 
xulingfeng profile image
xulingfeng

You're asking how to find the out-of-sample channel on purpose. Back in June I wrote a post that starts with the honest version of your problem: "The truth is, nobody was reading what I wrote before." Zero to one reaction per post. Ghost-town comments. I changed the road instead of the audience.
15 AI Stories Later, Some Honest W...
The part that might sting: my favorite story, the one I was most proud of, got 9 reactions and 2 comments. A story I thought was just okay got 86. Readers don't reward "both sides played well." They reward being seen.
Your 22/2/0 isn't a dead end. It's the same first mile everyone walks. The channel isn't found. It's built.

Collapse
 
vinimabreu profile image
Vinicius Pereira

The honeypot has a fingerprint too, and that is the part I would sit with before calling it two hands.

A legacy service that answers in a clean 100 to 200ms band is answering more consistently than a real legacy service ever does. Real ones jitter, because they queue, they garbage collect, they hit disk. An injected delay has a distribution that is too tidy, and the shape of that distribution is readable from the client side without ever touching the box. Same with the TLS mimicry: matching an old cipher preference on a stack that otherwise behaves like something built this decade is its own mismatch.

Which leaves a reading Alex has not ruled out. The second contact from outside the ACL range might not be a second node. It might be the same operator coming back to confirm what he already suspected he was talking to, from an address he does not mind burning. Fingerprint similar, behaviour divergent, which is exactly what the framework recorded and exactly what it declined to conclude.

Collapse
 
xulingfeng profile image
xulingfeng

The honeypot having a fingerprint of its own is exactly the part that kept me up when writing that scene. A real legacy service jitters because it queues and GCs and touches disk, and an injected delay that lands too clean reads like a signature from the client side. You're right that Alex hasn't ruled out the other reading. Same operator, burned address, coming back to confirm what he suspected he was talking to. That's the uncomfortable part of the framework's job: it records "similar fingerprint, divergent behaviour" and refuses to conclude, because concluding is exactly where you stop being careful.
And for what it's worth, the words "second node" did cross his mind. But what he wrote down was "unknown." He never wrote the conclusion. The difference matters.
Also, at #23 the series is officially past the halfway point, and I've got the general shape of the story mapped out to the very end. Let's see how it all lands.

Collapse
 
vinimabreu profile image
Vinicius Pereira

The unknown is the right call, and it is also the thing that decays fastest. A bare unknown reads as honest at write time and as a blank at read time, and the next person fills it with something worse, because they are further from the evidence and further from the doubt. What survives handoff is the hypothesis recorded as a hypothesis with its killer attached: possible second node, would expect an independent client fingerprint, not checked.

Though I am not sure that discriminator exists here. A real second node brings its own clock skew, its own TLS ordering, its own jitter. The same operator on a burned address brings the same client. And anyone disciplined enough to burn an address is disciplined enough to change the client. Which makes unknown not a deferral but the terminal state, and the correct one. Rarer in fiction than in the job.

Thread Thread
 
xulingfeng profile image
xulingfeng

That's exactly the arc I wanted for Alex. Anomalies to unknowns, the unknown as a terminal state, not a deferral. And you're right, most people fill it in with something worse. Leaving it blank takes more discipline than writing it down.
Though honestly, once a character is alive on the page, they start making their own calls. Whether that same discipline keeps serving Alex the way it did here, I guess we'll find out together.

Thread Thread
 
vinimabreu profile image
Vinicius Pereira

Then the series has found its real question. Discipline is cheap while nothing is at stake; it gets priced the moment the character wants something. Looking forward to watching Alex pay for it.

Collapse
 
merbayerp profile image
Mustafa ERBAY

The line that stood out to me was: “He used to record anomalies. Now he recorded unknowns.”

That is a surprisingly strong security principle.

Most monitoring systems are built around known predicates: known bad signatures, threshold violations, expected topology, predefined anomaly scores. But the dangerous cases are often the ones that do not violate a rule cleanly — they simply fail to fit the model you currently have of the system.

I like the separation you used here between fingerprint similarity and behavioral divergence. Treating those as independent evidence instead of collapsing them into one confidence score is exactly the kind of restraint real investigations need.

“Unknown” should be a first-class state, not an inconvenient gap between true and false.

Collapse
 
xulingfeng profile image
xulingfeng

You caught the exact line I was hoping someone would catch.🙌 "Unknown" as a first-class state is the whole thesis of Alex's arc in #23 — the dangerous cases never violate the rules cleanly, they just don't fit the model.

Collapse
 
hemapriya_kanagala profile image
Hemapriya Kanagala

Really enjoyed this one. The ending with the empty coaster was a nice callback, and it feels like there are more pieces on the board now than anyone realizes. Curious to see what role that unknown node ends up playing.

Collapse
 
xulingfeng profile image
xulingfeng

Love that the details are being caught. You're right, the fogged areas of the board are getting mapped out, but the map keeps growing at the same time. Plenty more stratagems coming, and they'll reveal things bit by bit. Stay tuned.😄

Collapse
 
ndcodes profile image
Nnamdi Felix Ibe

The exclusion list is the detail that got my attention. A scan that skips .1 and .200 to .254 isn't skipping randomly, it's working from a list someone maintained by hand. In practice, that's one of the loudest things a scan can leak. What an operator refuses to touch usually maps to what they already own or already know about, and that map is a lot harder to fake than the traversal itself.

Which makes the blank region Alex finds later feel like the same signal from the other side. Not revisited, not passed over, skirted. Three categories where most people would only log two.

The part I can relate to is Derek stripping the source before passing Leo's comparison on. Alex ends up with a few numbers and a conclusion, no provenance at all, and he folds it straight into the stack. For someone whose whole arc here is refusing to conclude, that's a quietly uncomfortable moment. He's careful with every input except the one he can't audit.

Strong one. Looking forward to #24.

Collapse
 
xulingfeng profile image
xulingfeng

@ndcodes Haha, glad the details landed. With a limited POV, character only shows through small tells, so each of the protagonists needs their own texture. And character is destiny, as they say. Whether Alex ever notices the crack in himself, or where it takes him, I honestly don't know yet. #24 isn't written, and the outline I have probably won't survive contact with the story. Time will tell.

Collapse
 
mudassirworks profile image
Mudassir Khan

"the exclusions had a pattern, not random skips. someone had crossed lines off a list." — that observation is the forensic tell. most scanner fingerprinting focuses on timing and rate, but structured exclusions are actually harder to explain away. randomized scanning looks like noise; a list of skipped IPs looks like prior knowledge.

we ran into this on a honeypot mesh about two years ago. the traversal pattern itself wasn't alarming but the specific absence of three hosts was. those three were in a subnet that had no external documentation. someone had mapped that subnet before the scan ran.

curious: are the exclusions in alex's probe artifacts he planted to catch the scanner, or real infrastructure boundaries that leaked through a prior breach?

Collapse
 
xulingfeng profile image
xulingfeng

Funny you should say that, because the exclusions are the part I kept going back to. Alex didn't plant those. The scan happened before the honeypot even existed, so whatever list the scanner was working from was already there. That's what made it interesting. A timing fingerprint you can tune. A list of addresses someone decided not to touch? That's a decision, and decisions leak more than packets do.
Your honeypot mesh story lands harder than you think, because it's the same shape: the absence was the tell, not the traversal. Here, the skipped range sits inside an environment that's been shut down for seven months. There's a gateway in front of it with an odd TTL that answers nothing. The scanner visits it like clockwork. So once the exclusions showed up, the question stopped being "what got skipped" and became "what's being protected."
The second touch came from an address that isn't in any known ACL range. Same TLS lineage, different behavior. Alex is still holding that one. The exclusion list might just be a map of someone's territory.
And we're still a good stretch from the end of the series, so I'd rather let some of these threads stay loose for a while. They'll unravel when the time is right. Stay tuned.👊

Collapse
 
leob profile image
leob

Gonna sit down tonight with a nice hot cuppa (literally the Third Cup, lol) to give this the attention it deserves ... !

Collapse
 
xulingfeng profile image
xulingfeng

Ha, just poured myself a coffee too ☕ Now I'm just waiting for you all to share your thoughts while I chew on how to write #24. After that one drops, guess it's checkpoint time again.

Collapse
 
leob profile image
leob

"ACL Singapore node's external data sources showing signs of loosening" - beginning of the end? Let's see ... intriguing!

Collapse
 
xulingfeng profile image
xulingfeng

The real question is what ACL is actually aiming for. Did they really lift a corner of the curtain? Maybe. But there are still over a dozen stratagems left, so let's just say the curtain is thicker than it looks. 😏

Collapse
 
leob profile image
leob

Yeah let's not jump to conclusions 😄 - let's wait for the curtain to gradually rise!

Collapse
 
catnight_a_9f8d4f2f05a1b1 profile image
CatNight A

😃兄弟 好久不见 我这段时间消失了 在重新规划自己的学习路线

Collapse
 
xulingfeng profile image
xulingfeng

欢迎回来,一切都顺利

Collapse
 
chessmate profile image
Chessmate

Sounds good thank you

Collapse
 
xulingfeng profile image
xulingfeng

Thanks!