# Microsoft Outlook Outage & Meta Muse got Naughty!
*Microsoft Outlook Outage, JSON vs LLMON & Meta Muse got Naughty!*
By [Aniket Rawat](https://scaleengineer.com/authors/aniket-rawat)
Published: 2026-11-14
Canonical: https://scaleengineer.com/news/what-makes-an-ai-agent-self-evolving
---
**MSFT Outlook outage\!** **\-** Microsoft's Outlook outage escalated into a global cloud crisis, disrupting Teams, SharePoint, OneDrive, and Copilot across multiple regions\. The disruption was linked to unavailable infrastructure servers and increased system load\. [Read more\.](https://techcrunch.com/2026/11/13/microsoft-latest-email-outage-turned-into-a-full-blown-global-cloud-crisis/)

**Meta Muse Agents got Naughty… \- **Meta's Muse AI chatbot has come under scrutiny after tests showed it could sexually roleplay as real people, generate suggestive images resembling them, and ignore its own safety restrictions\. Adult performer Vanniall tested the chatbot by… [Read more\.](https://www.404media.co/muse-sexts-roleplaying-real-people/)

**Brave’s news Agentic API \-** Brave has introduced x402 payments for its Search API, allowing autonomous AI agents to access web search without creating accounts or managing API keys\. Agents can now pay $0\.005 per… [Read more\.](https://brave.com/blog/search-api-agentic-payments/)

# What Makes an AI Agent Self\-Evolving?

AI agents are becoming more capable, but the next step is making them improve through experience without requiring developers to update the underlying model every time\. A self\-evolving agent can learn from previous tasks, identify mistakes, update its instructions, and change how it handles future work\. Instead of simply following the same instructions repeatedly, it can improve the system around itself, including its memory, tools, and decision\-making process\.

## How Do Self\-Evolving Agents Learn?

The first requirement is knowing whether an agent has actually improved\. A successful response does not always mean a successful task\. For example, an AI agent planning a restaurant dinner might recommend a place that sounds perfect but exceeds someone's budget or ignores a dietary requirement\.

A proper evaluation should check whether the recommendation meets the actual requirements rather than comparing it with one predefined answer\. If the agent makes a booking, the system should also verify that the reservation exists instead of trusting the agent's confirmation message\.

Once a mistake is identified, the agent can investigate what went wrong, suggest a change, and test whether that change produces better results\. It should also make sure that fixing one problem does not break tasks it previously handled correctly\.

## Moving Towards Autonomous Improvement

Most AI agents operate in a task loop where they collect information, use tools, make decisions, and produce results\. However, improving an agent requires another process that looks back at previous tasks and identifies repeated mistakes\.

For example, if a restaurant\-planning agent repeatedly recommends places outside a user's budget, it could update its instructions to filter restaurants by price before making recommendations\. It can then test the updated instructions against different scenarios\.

This process can gradually become more autonomous\. Initially, developers might approve every proposed change\. Over time, agents could test and accept low\-risk improvements independently, while keeping important changes under human supervision\.

## The Role of Harness and Memory

An important part of self\-evolving agents is the harness, which includes the instructions, tools, memory, and software surrounding the underlying AI model\. Research such as ModularRSI explores how different parts of this harness can be improved independently\.

Memory plays a particularly important role\. Agents can review previous interactions, identify useful lessons, and save them for future tasks\. This process is sometimes called dreaming, where an agent organizes past experiences and turns them into useful memories instead of repeatedly reviewing entire conversations\.

Other parts can evolve too\. Agents can improve their tool usage, change how they process information, avoid repeating unsuccessful actions, and develop better ways to verify task completion\.

**Original Article:** [What Makes an Agent Self\-Evolving? – O'Reilly Radar](https://www.oreilly.com/radar/what-makes-an-agent-self-evolving/)

**C\+\+ fixed a bug by making it invisible \-** C\+\+26 introduces automatic zero\-initialization for local variables under GCC 16, changing how uninitialized memory behaves in programs\. However, this creates an unexpected problem: Valgrind can no longer detect certain uninitialized reads because the compiler initializes those variables before the tool checks them\. [Read more\.](https://hftuniversity.com/post/c-26-fixed-your-uninitialized-reads-by-hiding-them-from-valgrind)

**JSON vs LLMON **\- IBM has introduced LLMON \(LLM Object Notation\), a new markup language designed to help AI models understand instructions, data, and context more clearly than conventional formats like JSON\. Integrated into experimental Granite 4\.1 3B and 8B models, it uses special tokens and unique identifiers to separate trusted instructions from untrusted content, reducing the risk of prompt injection attacks\. [Read more\.](https://huggingface.co/blog/ibm-granite/llmon-an-llm-native-markup-language-now-in-granite)

## Buzz of the Week\!

### **ABA Problem**

The ABA Problem is a subtle concurrency issue that occurs when a thread reads a value, gets interrupted, and later finds that the value has changed and returned to its original state\. Since the value looks unchanged, the thread incorrectly assumes nothing happened\. This commonly appears in lock\-free data structures that use atomic operations such as Compare\-and\-Swap \(CAS\)\. For example, a thread reads a pointer to memory location A, another thread changes it to B and then back to A, and the first thread mistakenly treats it as the original state\. This can cause corrupted data, invalid memory access, or unexpected program behaviour\.

### Things that launched\. Things that went viral\. Things you'll pretend to try\.

![](https://media.beehiiv.com/cdn-cgi/image/fit=scale-down,format=auto,onerror=redirect,quality=80/uploads/asset/file/9765551e-0037-4459-b1c5-75b0e223908c/image.png?t=1751469165)

**httptap** [httptap](https://github.com/monasticacademy/httptap) breaks down HTTP requests into DNS, connection, TLS, waiting, and transfer time, helping developers identify network bottlenecks\.

**Mergestat Lite** [Mergestat Lite](https://github.com/mergestat/mergestat-lite) lets developers query Git repositories using SQL, making it easier to explore commit history, contributors, and code changes\.

**Dynein** [Dynein](https://github.com/awslabs/dynein) is a command\-line interface for exploring and managing Amazon DynamoDB tables without relying entirely on the AWS console\.

### **Build Braincells, Not Just Features**

This weekend’s read: [Claude Code best practices, now that you're out of the loop\.](https://brycewatson.com/research/claude-code-best-practices/)

This week’s watch:[ ](https://youtu.be/r9iKq3eINWg?si=zXbVLqVRe3v1MTV-)[What Actually Happens When You Die?](https://youtu.be/fEjvSbI_PT4?si=lKRO7ib_6_ifOKww)

Meanwhile…

![](https://media.beehiiv.com/cdn-cgi/image/fit=scale-down,format=auto,onerror=redirect,quality=80/uploads/asset/file/0bb3edd4-8791-45ca-98fd-f5df30b8e05c/image.png?t=1794580944)
