Skip to content
Manohar Papasani Get in touch

Lab notebook

What we found, entry by entry

27 dated entries from the lab, newest first. Results marked preliminary are still being run or written up; nothing is edited after the fact.

November 2026

  1. Shipped

    Each team now has its own scheduler, and each agent its own test

    The five agent teams used to share one scheduler, so a single mistake could delay every team. Each team now has its own exact-time trigger, and every post re-runs itself within minutes if it has not gone out. Every post on every channel now ends with six follow links, Facebook included. The first per-agent tests also found two real problems: the interview reviewer raised false alarms on both clean answers it was shown, and one model never answered when it had nothing to report. After the fixes, the reviewer raised no false alarms in three runs and still caught both planted mistakes.

  2. Shipped

    Every post now reaches five platforms, on time

    X joined Bluesky, Dev.to and Facebook, and every post now ends with the same five follow links. The cross-posts had been started by a scheduler that ran one to seven hours late on 2 November, so they moved to the same exact-time trigger as the posts themselves: each post now goes out about ten minutes after LinkedIn, one at a time on each channel and never as a burst of old posts.

  3. Shipped

    Tracing caught the cost report counting some calls twice

    While switching on tracing for the insights team, its trace showed each Claude Haiku call twice: once from the agent framework and once from a newer version of the model provider's own library. Across the workforce, 20 calls in a week had been counted twice, about 6% of the reported spend. The traces now keep one record per call, and the daily cost report skips the old duplicates, so past and future numbers are both right.

  4. Shipped

    The teams now learn from each other

    The insights team writes a weekly brief of what works, which the content teams can read as advice, and every published post is now logged with the advice it used. Brand analytics adds how each post did, so the teams will see whether the advice actually helps before it is switched on for every slot.

  5. Shipped

    Every post now reaches four platforms

    A distribution team shares each LinkedIn post on Bluesky, Dev.to and Facebook about twenty minutes after it goes out. The post stays the same; only LinkedIn wording such as “repost” or “connections” is adjusted, and each channel gets one follow block. The first cross-posts went out on 1 November, and each post goes to each channel exactly once.

  6. Shipped

    An insights engine studies what works on LinkedIn

    Three agents study public posts on AI and leadership every Sunday. The first run analysed 257 posts: posts themed on leadership drew a median engagement of 113 against 33 for the rest, and posts with an image 98 against 33. Code checks every claim against the numbers; the first run caught the agents inventing advice twice, and both were rejected before any team saw them.

  7. Shipped

    An anomaly watcher checks the pipelines every morning

    Each morning it compares the day before with the previous 28 days for every workflow: model calls, tokens, cost and how often a slot had to be rerun. It raises an alert only when something is at least three times the usual value and above a minimum, so small changes never trigger it.

October 2026

  1. Shipped

    A noon post failed, and was healed and posted by 12:06

    The first interview post wrote a good draft but failed at 12:00 on a small configuration bug: a label colour was read as a number. The healer reran the slot at 12:05, and it was posted at 12:06. The bug was fixed the same day, and a label problem can no longer stop a post.

  2. Result

    The first interview question post: 104 impressions and 2 comments in an hour

    A real question from a candidate's interview report, answered at architect level, drew 104 impressions and 2 comments within its first hour, including a reply from a reader outside my network who picked out one of the points. The motivation post it replaced drew about 29 impressions and no comments.

  3. Shipped

    A brand analytics team joins: growth, measured every day

    Three new agents measure how the brand is growing and publish it on this site with nobody involved. The fetcher collects followers and connections every morning and downloads the LinkedIn analytics export every Monday: 66,942 impressions and 1,067 engagements in the past year, with October's impressions nearly 19 times September's. The analyst writes the summary, and a code check rejects any number that is not in the data. The publisher updates the site and confirms the new numbers are live.

  4. Shipped

    Real interview questions, checked by code

    The 12 PM team now posts one real AI Architect or AI Developer interview question a day, answered at architect level. A scout searches only candidates' own interview reports from the last year (Reddit, Glassdoor, AmbitionBox, Blind, LeetCode Discuss, personal blogs), never question banks. The model picks a question, then plain code checks it: it must appear word for word in the report, a swapped term fails, and a company is named only when the report names it as the interviewer. An architect-level reviewer then checks the answer. The morning team now writes about leadership for people in tech and AI.

  5. Milestone

    Certified by IIT Patna: Generative AI & Agentic AI for Developers

    Completed the six-month certificate course from the Indian Institute of Technology Patna (Continuing Education Programme), covering generative AI and agentic AI for developers. The same ideas run in production here every day: agents that plan, write, check, heal and publish on their own.

  6. Shipped

    A cost controller joins the team

    Every morning at 9:00 AM IST it reads token usage from both Langfuse accounts and reports spend per workflow and per model. First report: the whole workforce cost about one US dollar for the month so far.

  7. Preliminary

    AI code-review bench: Claude Haiku catches 14 of 14 planted bugs

    14 real bugs from my own agent code, re-introduced as ordinary-looking pull requests, plus 2 correct changes to count false alarms. Claude Haiku caught all 14, including all 10 critical or high ones, with no false alarms. The automated judge first scored it 10 of 14; reading the reviews by hand showed all 4 misses were the judge's errors. Commercial reviewers are next on the same bench.

  8. Shipped

    An AI reviewer improved the code on day one

    On its first real pull request, CodeRabbit found three genuine issues in the comment copilot: no timeout per AI provider, a blank panel when no draft passed the checks, and wrong length limits in the live test. All three were fixed before merging.

  9. Shipped

    Self-healing: no scheduled post ends up skipped

    If a post is not out 5 minutes after its slot, a healer reads the failed run, finds the root cause, changes it (another quote or story, a stronger writer, or republishing a draft that had passed) and posts, exactly once per slot. First live heal: the 12 PM post failed at 12:00 and was healed and published at 12:05 with nobody involved.

  10. Shipped

    No single AI provider can stop a post

    Every agent now falls back across three providers: open models on Groq, then Gemini Flash, then Claude Haiku. The same day, Groq's daily limit ran out, and the backups kept every draft flowing. A missed slot also emails an alert 30 minutes after its time.

  11. Shipped

    Evals for every agent

    Each run scores itself on its trace (first-try pass, rewrites, why drafts fail). A set of 17 real past mistakes checks the guardrails on every code change: 100% precision and recall. A weekly exam re-runs each writer on frozen real inputs, and every post I approve is recorded as a human score.

  12. Shipped

    Observability moved to Langfuse v4

    Langfuse switched to an observations-first model. Every model call now carries its workflow name, and model prices are registered, so tokens and cost show per workflow and per model. Last 10 days: about 430,000 tokens across all teams for roughly 25 US cents.

  13. Shipped

    This site goes live

    A public home for the lab: the workforce, architecture, research notebook, all 46 repositories and the full journey. From today, it is updated with every piece of R&D.

  14. Claude Certified Architect – Professional: hands-on preparation begins

    Ten labs, one per exam domain, each ending in a measured result. First hard practice exam: 26 of 30. Practice exams are set harder than the real one.

  15. Preliminary

    Full run on 68 tasks: the baseline agent resolves half

    Gemma 4 with the standard tools resolved 34 of 68 real software tasks (50%, 95% CI 38–62%). The 10-task pilot had suggested 80%, a reminder never to trust the set you tuned on.

  16. Shipped

    The content team goes fully autonomous

    Three agent teams now research, write, check and publish on schedule from the cloud, with a watchdog, cost caps and a trace of every step.

  17. Preliminary

    Agents ignore tools they are not told to use

    Across 33 software-engineering tasks, an agent given optional code-graph tools called them zero times. Resolution matched the agent without them.

  18. Shipped

    First post written entirely by agents

    A verified Marcus Aurelius quote and a licensed photo, picked, checked and published by the agent team. The critic sent the first draft back as generic.

  19. Preliminary

    The test checker can be fooled

    Planting bugs in correct fixes shows that some of them still pass the benchmark's tests, so some ‘solved’ results are not real.

  20. Research

    Gemma 4 agent study starts

    Can an open model on one accelerator become a reliable coding agent? A record-and-replay harness, a bug-planting check and a tool ablation, run on Kaggle GPUs.