Build1 distinct publisher3 min readUpdated
A Go admin framework changed its module pattern; the models still write the old one, because the old one was public for longer. The permission wiring fails with no error at all.
The Engineer · Build desk
Compiled by The EngineerSomething wrong?How this is made
The corpus a model sampled is a repository's history, not its head commit. go-admin has been public for several years [1], and the hand-written Api-and-Service style was the only style for most of them [2]. The Actions pattern is what the codebase recommends now [3], which means it is thinner in the public record purely as a function of calendar time. The project's own writeup argues the retired style is a large share of what is visible on GitHub and is therefore overrepresented in training [5]. That is an assertion, not a measurement, and no numbers are offered. It is still the right shape of claim, and it applies to any repository whose current convention is younger than its git log.
Both styles compile, and nothing warns you [4]. Worth sitting with: a module that a user can actually reach spans at least seven artifacts, three code files plus rows across four tables, and only the three files are validated by anything that runs automatically [17]. Route registration, menu mounting, the menu-to-API relationship and the casbin policy all have to be seeded [7], and if one is missing the result is a sidebar with no menu item or a button that does nothing, with no error emitted [8]. The compiler and Postman both report success [15]. Debugging that means checking four candidates against one indistinguishable symptom, across two repositories.
The layering in the mitigation is ordered by decay rate, which is the part that generalises. The AGENTS.md files in both repos are kept deliberately short, restricted to rules that break something when ignored, with stack versions and commands left to go.mod and package.json so the file cannot fall out of sync with the code [9]. Underneath that is a reference implementation at app/demo/ that compiles, has tests, and runs in CI [10]. The stated reasoning is that prose goes stale and CI-exercised code does not [11]. A reference implementation has a failure mode that a document lacks: it can go red. A convention file is only ever as current as the last person who remembered to edit it.
The Skill layer turns adding a module into one invocable procedure covering table design, migration, scaffolding and the seed-data step, with each step pointing at a runnable file rather than asking the model to reconstruct one [12]. The frontend has a matching skill for list and form pages, and the coupling between them is a single string, the permission identifier [13]. The framework's deterministic generator still handles standard CRUD from a table definition, with generation reserved for business logic, refactors and tests [14].
The cost that gets underpriced is not the 403. It is that two weeks later nobody can tell which parts of the module were written by a person [16]. Review depends on being able to distinguish, and a model that writes your codebase's past writes something that reads like it belonged there.
Follow any of these and your For You feed starts watching them — no settings page required.
Ranked by verification strength, evidence, and original report placement.
The second layer is a reference implementation at app/demo/ that compiles, has tests, and runs in CI.
The project's stated reasoning is that prose goes stale while code that CI keeps exercising does not, making it a more reliable source of truth than any spec document.
go-admin is an open-source admin framework built on Gin and Vue 3, and has been public for several years.
In earlier versions of go-admin, every business module required hand-written Api and Service files, at least seven functions per Api.
The current go-admin codebase recommends an Actions-based pattern for single-table CRUD: a module needs only model, dto and router files, with parameter binding, data-scope filtering and pagination handled by the framework's built-in Actions.
Both the old and new module styles compile, and the model will not warn you either way; the divergence is not noticed immediately.
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
Single first-party account, structurally specific but unverified
Everything rests on one self-published post by a go-admin maintainer. The structural claims are specific enough to be checkable in the repositories (named tables, named files, named pattern) and are internally consistent, which lifts them above bare assertion, but no repository link, CI run, commit, benchmark or independent report is supplied, and the causal and prevalence claims are explicitly hedged rather than measured.
First-party shipment, no external uptake signal
There is a concrete, dated shipment: AGENTS.md files in two repositories, a CI-exercised reference implementation, and two paired skills, in a framework the source says has been public for years. But the cluster supplies no stars, forks, downloads, dependent projects, deployments, or outside users adopting either the framework or the new agent-context layer, so adoption cannot be scored above the fact of release.
Mechanics grounded, efficacy and prevalence overstated
The piece is modest by AI-content standards — its recommendations are procedural and its structural facts are checkable — but it presents unmeasured items as settled: that training-corpus overrepresentation explains agent behaviour, that failures happen 'most of the time', that remediation 'costs real engineering time', and implicitly that the AGENTS.md + reference + Skill stack fixes it. No before/after evaluation is offered, so the causal story runs modestly ahead of the evidence.
Maintainer promoting own framework, repos and docs
The author writes as a go-admin maintainer ('so we turned...'), the article ends by pointing readers at the project docs, both repositories and a prompt-template writeup, and solicits feedback on the AGENTS.md files and skills. The interest is visible on the page rather than hidden, but every claim in the cluster originates with the party whose project benefits from the framing.
Plausible and self-consistent, single-sourced and unmeasured
Confidence is limited by one publisher, one interested author, and no independent verification, but raised by the specificity and internal consistency of the structural claims and by the fact that the key mechanic — compilation covering three of seven required artifacts — follows deductively from details a reader could check in the repositories.
product
A 2x LLM bill is not a bug report: token spend is an observability problem1 distinct publisher
product
Engineering counts merged pull requests and nothing for the hours spent watching the agent1 distinct publisher
build
Z.ai pays for ZCode users in tokens, not cash: 100 million each to 50,000 signups1 distinct publisher
build
Per-developer environments hit their ceiling the day one engineer ran five agents1 distinct publisher
Distinct publishers with included, body-backed reporting in this cluster.
dev.to
1 article · August 23, 2026