Alex66
I ran Symphony through Giulia, here’s the AST analysis.
Yesterday, OpenAI open-sourced Symphony — an autonomous agent orchestration framework. It monitors Linear issues in real time, dispatches Codex agents, handles CI testing, code review, and merges PRs. Without humans supervising every step.
They built it in Elixir/OTP.
Not Python. Not Go. Not Node. Elixir.
Trending in Blog Posts
Hey folks,
I just published a post about Hologram’s funding and where the project goes next - the short version:
Curiosum as Main Spons...
New
Hey everyone! :waving_hand:
I’ve published Part 7 of the Building Distributed Systems in Elixir series, where we build core distributed ...
New
An educational side project in Elixir, Phoenix, and Tauri. I share what I learned while wiring Automerge into the BEAM, including how I s...
New
So, instead of wasting my afternoon arguing with anonymous handles on X, I turned to my trusty, soulless assistant and said: “Listen, ple...
New
Process labels are useful for visualization and debugging. Here’s why you should use them.
New
New article: Elixir Project Structure — From mix new to a Growing Codebase
I’ve published a new article in my Elixir learning series on d...
New
What happens if you design tools for LLMs instead of letting LLM use human tools ?
Wrote a blog on why and what that enables.
As I see ...
New
Other Trending Topics
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
Hi there! We created Gust: A task orchestrator inspired by Airflow.
For those who have never heard about Aiflow, it’s a Python-based wor...
New
Hi everyone!
The first release candidate for the Expert language server project is now available!
We’ve published a press release detai...
New
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself.
My main conc...
New
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #library
- #deployment
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #elixirconf
- #channels
- #exunit
- #discussion
- #code-sync
- #podcasts
- #javascript
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixirconf-us
- #ai
- #blog-post
- #elixir-ls
- #phoenix_html
- #iex
- #graphql
- #genstage
- #websockets
- #supervisor
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #elixirconf-eu
- #metaprogramming
- #hex











Showing Posts 1 to 8- Show Best Posts
- Show All (oldest first)
- Show All (newest first)
DaAnalyst
A link to Giulia so I can bookmark it?
al2o3cr
FWIW, a bunch of code in the
HttpServermodule disappeared when it was replaced with Phoenix in a followup commit.Alex66
*Report generated by Giulia Code Intelligence v0.1.0.127 (Build 127)*
*Analyzed via AST parsing + Knowledge Graph (628 vertices, 668 edges)*
*Previous report: 2026-03-05, Giulia v0.1.0.100 (Build 91)*
FlyingNoodle
Since when do we write accessor functions in elixir?
I think your LLM is leaking Java.
Alex66
Good catch @FlyingNoodle — you’re absolutely right.
That paragraph was poorly framed. Pattern matching on struct fields is idiomatic Elixir, not a “leak.”
The underlying metric the analysis was trying to surface is coupling: if a struct’s shape changes, how many modules break? For app-internal structs the compiler has your back, so it’s a non-issue.
The concern only applies at library/context boundaries, where @opaque or a module API can help — but that’s a design choice, not a rule. I’ve updated the report.
The old text:
All structs that are shared across modules have 100% logic leak rate. Every consumer directly pattern-matches or manipulates struct fields instead of using accessor functions. This creates tight coupling — any field rename or restructuring breaks all consumers.
Need to be replaced with:
All structs shared across modules are accessed by direct field matching in every consumer. This is idiomatic Elixir — structs are transparent data and pattern matching on them is expected. However, it does mean that any field rename or restructuring will break all consumers
simultaneously. For application-internal structs this is acceptable (the compiler catches it). For structs that cross library/context boundaries, consider defining a public API in the owning module (e.g. Issue.title(issue)) or using @opaque typespecs to signal that callers
should not depend on the internal shape.
Thanks for the feedback
egeersoz
Even the original AST appears to be written by LLM. The “Not Python. Not Go. Not Node. Elixir.” is a dead giveaway.
Do we need some policies regarding posting LLM content?
Dmk
Is Giulia opensource/you have a link to it? I’ve searched for it but can’t find it… so I presume its not?
Alex66
Not open source yet, still in active development.