Sign in

Chris K Wensel

@chris.wensel.net
1.7K followers 219 following 372 posts

Developer of: - retrofit.sh - chris.wensel.net/project Co-Organizer of lu.ma/sf-distsys

PostsRepliesMedia
Chris K Wensel @chris.wensel.net · 30/09/2026
A downgrade will just remove the record(s). If a column or table is renamed that holds the reference data you don’t need to capture it again, the renames will be applied when the snapshot or migration script is rendered.
000
Chris K Wensel @chris.wensel.net · 30/09/2026
Additions (or updates) to the reference table are captured in a new file and pinned against the current DDL version. So a migration between the two points in the schema history will result in a script that only applies the changes (adding the new currency to the currency table).
101
Chris K Wensel @chris.wensel.net · 30/09/2026
Retrofit can capture reference data and pin it to a specific version of your schema. By default, it is included when rendering a snapshot or migration script. If witnessed and sealed, the data cannot ship if changed underneath, retrofit will detect the edit and refuse.
100
Chris K Wensel @chris.wensel.net · 30/09/2026
Reference data is the data that apps only read, and never write, like zip codes and states. This includes data that might change slowly over time, like an order status label, or even currencies. There are a lot of different strategies to manage this data in migration scripts and data files.
100
Chris K Wensel @chris.wensel.net · 30/09/2026
Hey all Finally, I think we landed on a great design with handling both reference (and seed) data in retrofit. This week we demo managing reference data as part of the schema. retrofit.sh/demos/refere... #postgreSQL #SQL
retrofit.sh
Manage PostgreSQL reference data with the schema · retrofit
Capture a PostgreSQL lookup table's rows from pg_dump into a data file pinned to the operation log, retire the .sql side file that held them, rename the table and its column, and see a hand edit to th...
100
Chris K Wensel @chris.wensel.net · 28/09/2026
if we remove toil from work, what's left. pride in our art and craft?
200
Reposted by Chris K Wensel
Gergely Orosz @gergely.pragmaticengineer.com · 27/09/2026
Very much enjoying this “GPU glossary” mini-book by Modal I got from Can Duruk when stopping by at Modal’s NYC office. I don’t know if the physical books can be purchased, but the book has an online version, as I learned; with the same contents: modal.com/gpu-glossary
3635
Reposted by Chris K Wensel
Brian Sletten @bsletten.bsky.social · 28/09/2026
Ahhhhh!!! Sorry, this is for the music geeks. HT @mrbirchtoo.bsky.social #music #morphine #sandman pitchfork.com/story/morphi...
pitchfork.com
Morphine Unveil Lost Album Cocoon
The album, led by the title track, was completed from recordings shelved soon before the death of frontman Mark Sandman
011
Reposted by Chris K Wensel
JD Long @jdlong.cerebralmastication.com · 26/09/2026
I’ve literally seen this in the wild. Had exec say they needed “real time data” … I knew they didn’t. Tech team was architecting Kafka bullshit so I asked in a meeting “how many times a day do you need this refreshed?” Answer: “once is fine. Twice if you can”
2261
Reposted by Chris K Wensel
Qian Li @qianli.dev · 26/09/2026
Be aware of Postgres SELECT DISTINCT.
095
Chris K Wensel @chris.wensel.net · 26/09/2026
took my this many days to realize jev was named after William Stanley Jevons of Jevons Paradox fame. I guess I'm laxing on my vitamins.
020
Reposted by Chris K Wensel
Dmitriy Ryaboy @squarecog.bsky.social · 21/09/2026
Kind of embarrassing how many ML people are reacting to Jev with "lol, LLM noobs discovered classifiers / BERT".
001
Reposted by Chris K Wensel
Julien Le Dem @julien.ledem.net · 23/09/2026
Fresh off the press: ALP: Adaptive Lossless Floating-Point Encoding in Apache Parquet parquet.apache.org/blog/2026/09... Thank you Kosta Tarasov, @andrewlamb1111.bsky.social, Prateek Gaur
parquet.apache.org
ALP: Adaptive Lossless Floating-Point Encoding in Apache Parquet
A technical overview of ALP's design, performance, and adoption across the Apache Parquet ecosystem.
064
Reposted by Chris K Wensel
Murat (Distributolog) @muratdemirbas.bsky.social · 24/09/2026
[new blog post] What Happens When the Model Eats the Stack? Rethinking the Research Agenda for Data Agents to Withstand the Bitter Lesson muratbuffalo.blogspot.com/2026/09/what...
muratbuffalo.blogspot.com
051
Reposted by Chris K Wensel
acmqueue.bsky.social @acmqueue.bsky.social · 24/09/2026
CAFE(S): Your Agent Is Only As Good As Its Context Even the latest models degrade when operating on unclear inputs. We present CAFE(S), a framework that evaluates context across five dimensions: clarity, actionability, fidelity, efficiency, and security queue.acm.org/doi/10.1145/...
001
Chris K Wensel @chris.wensel.net · 23/09/2026
As always, we welcome your feedback and requests. The repo is available for early access users.
000
Chris K Wensel @chris.wensel.net · 23/09/2026
Check out our extended homepage content to learn how retrofit can help you and your team especially with managing risk where other tools leave gaps. Plus, even stronger support for migration reversal in the coming weeks.
100
Chris K Wensel @chris.wensel.net · 23/09/2026
The win is when you broker all your changes through retrofit, it will render the forward and reverse migration scripts for you that Ruby can run like it always has. One less thing to worry about since Ruby handles so much already but punted the risky stuff back to the developer.
100
Chris K Wensel @chris.wensel.net · 23/09/2026
Hey all It’s Wednesday and we have a new retrofit demo to share: retrofit.sh/demos/rails-... This is similar to the Liquibase and Flyway demos. We inject retrofit into the Ruby/Rails developer workflow. Bootstrapping an existing Ruby project into retrofit is quite trivial.
retrofit.sh
Add foreign keys to a Rails polymorphic association with Retrofit · retrofit
See strong_migrations stop a one-migration refactor of a Rails polymorphic association, Retrofit render the five-migration recipe forward and in reverse from one operation log, and Rails run both dire...
100
Chris K Wensel @chris.wensel.net · 18/09/2026
Maybe code was never a craft. That was just something we told ourselves.
010
Chris K Wensel @chris.wensel.net · 18/09/2026
I’ve had two things double delivered from Amazon this week. Looks like vibe coding is working out great for me.
010
Chris K Wensel @chris.wensel.net · 17/09/2026
Also, I’m not sure what we can pull off, but making reference data (data in tables your application only reads) first class and versioned with the schema is one of the harder problems we are currently designing and testing. Hope to have a demo of that soon.
000
Chris K Wensel @chris.wensel.net · 17/09/2026
Finally we merge (rebase!) all the branches, confirm there were no structural conflicts during the merges, and again test the combined up and down migrations. If you or anyone on your team would be interested in getting early access, have them sign up on our website. Please share!
100
Chris K Wensel @chris.wensel.net · 17/09/2026
In this demo, we show a user manually testing both the up and down migrations against a production shaped snapshot before merging them locally. In one of the branches, retrofit stops a migration because one of the schema changes would result in a dropped column, so it’s skipped.
100
Chris K Wensel @chris.wensel.net · 17/09/2026
Hey all We have a new retrofit demo to share: retrofit.sh/demos/manual... Imagine your team has been using retrofit for the past couple weeks and now every branch to be reviewed has a schema change that will require a migration in production. grin #sql #db #postgreSQL
retrofit.sh
Review schema-change branches against a production snapshot without reloading it · retrofit
Three branches, one snapshot of a production PostgreSQL database. See make db-up put each branch's schema change on the snapshot from its own dump, make db-down take it back off, a branch that drops a...
110
Chris K Wensel @chris.wensel.net · 16/09/2026
Current status
Stage view of Davies Symphony Hall
000
Reposted by Chris K Wensel
Onyx @advantage87.bsky.social · 16/09/2026
state changes are only as good as the markdown they're written in
001
Chris K Wensel @chris.wensel.net · 15/09/2026
Pushed up some new examples on how to use intrastate for declaring/managing state transitions github.com/cwensel/intr... Of specific interest is using it to read and update "state" in a markdown document. For example, flipping a document from "draft" to "final". github.com/cwensel/intr...
github.com
intrastate/docs/examples.md at main · cwensel/intrastate
A Go CLI for explicit, reviewable, deterministic workflow state transitions. - cwensel/intrastate
100
Reposted by Chris K Wensel
Kalli @karltryggvason.bsky.social · 31/08/2026
Wrote about the etto principle, the Efficiency-Thoroughness Trade-Off, in the age of ai. tl;dr: I think ai tools lower the cost of both, but the focus in the tooling is all on efficiency. And the costs and benefits are not paying out to the same people. dev.karltryggvason.com/the-etto-pri...
dev.karltryggvason.com
The ETTO Principle - Efficiency-Thoroughness Trade-Off - in the age of AI
The ETTO principle refers to the fact that people (and organisations) as part of their activities frequently – or always – have to make a trade-off between the resources (primarily time and effort) th...
143
Reposted by Chris K Wensel
Laurie Voss @seldo.com · 13/09/2026
I have been writing this post about the economics of open source, on and off, for 13 years. I wasn't expecting to end up at "Microsoft should send corporations a huge bill" but nothing else we've tried has worked. seldo.com/posts/nobody-pays-for-ope…
seldo.com
Nobody pays for open source. We can force them to. | Seldo.com
Thirty years of voluntary funding schemes haven't paid open source maintainers because asking doesn't scale. The real money already flows — to JFrog, Docker, Sonatype — at the registry layer. The fix: registries charge companies for supply (they already do), then route a slice automatically to the maintainers who make that supply worth having.
2016757
Chris K Wensel @chris.wensel.net · 09/09/2026
DM me if you have feedback, would like to request a demo topic, or are interested in early access to the git repo.
000
Chris K Wensel @chris.wensel.net · 09/09/2026
Of note in this demo, our rollback is actually a no-op since we authored a foreign key relationship but in a way that doesn’t scan and lock the database on deployment. A naive rollback could result in data integrity and locking issues.
100
Chris K Wensel @chris.wensel.net · 09/09/2026
Check out our latest retrofit demo: retrofit.sh/demos/liquib... This week we inject retrofit into a Liquibase user flow. Retrofit captures the current schema rendered by Liquibase and then authors forward and rollback migration scripts to be run by Liquibase.
retrofit.sh
Use Retrofit with an existing Liquibase project · retrofit
See Retrofit import Metabase's Liquibase-built PostgreSQL schema, identify which version it is at, render a staged foreign key's forward and rollback SQL from one operation log, and have Liquibase dep...
100
Chris K Wensel @chris.wensel.net · 09/09/2026
Arcaneum 0.10.0 is out github.com/cwensel/arca...
github.com
Release v0.10.0 · cwensel/arcaneum
Features verification: report PDF quality by default (cb8eef3) indexing: reindex stale policy manifests (fd64b18) search: exclude PDF references by default (8bfbadd) cli: show arc and its options ...
000
Reposted by Chris K Wensel
qntm @qntm.org · 01/09/2026
THERE IS NO ANTIMEMETICS DIVISION is Waterstones' Science Fiction & Fantasy Book of the Month for September 2026!! Paperback goes on sale Thursday! Preorders are open now! Plus, it's 15% off right now! All the exclamation marks 🐋😎❗
waterstones.com
There Is No Antimemetics Division by qntm | Waterstones
Buy There Is No Antimemetics Division by qntm from Waterstones today! Click and Collect from your local Waterstones or get FREE UK delivery on orders over £25.
1429262
Reposted by Chris K Wensel
Techmeme @techmeme.com · 03/09/2026
Uber is aligning with drivers' unions in a bid to slow the rollout of robotaxis across the US, as it faces a technological disruption to its core business (Rafe Rosner-Uddin/Financial Times) Main Link | Techmeme Permalink
241
Chris K Wensel @chris.wensel.net · 03/09/2026
If only they showed so much concern for the taxi drivers they displaced unlawfully.
Across the country, Uber has argued for a slower deployment of autonomous vehicles to ease the transition for drivers - and pushed for rules requiring ride-hailing platforms to have "hybrid networks" that combine self-driving cars with human drivers.
000
Chris K Wensel @chris.wensel.net · 03/09/2026
By relying on a log of operations, instead of a git history of sql dumps and migration scripts, I believe, unlocks a lot of safety and productivity features in a developer workflow. If you think of a scenario this might solve, let’s test it out. Drop me a note and I’ll see if we can support it.
010
Chris K Wensel @chris.wensel.net · 03/09/2026
The demo shows how a new command in the makefile can quickly determine if the local db is stale (or conversely, if the oplog is stale), and then remediate the situation by providing a migration script the user can apply (or capturing the drift from a sql dump into the oplog).
100
Chris K Wensel @chris.wensel.net · 03/09/2026
Here we simulate a standard developer flow. git pull grabs upstream changes to both the project code and the database schema. But the local developer database is stale in relation to the new schema in git, which is captured in a retrofit operations log (oplog).
100
Chris K Wensel @chris.wensel.net · 03/09/2026
It’s Wednesday, and we’ve got a new demo. retrofit.sh/demos/pull-a...
retrofit.sh
Keep a local PostgreSQL database in sync with the operation log · retrofit
See Retrofit identify which cut a local PostgreSQL database is at from a pg_dump, gate make run on the head of the operation log, migrate the database forward after a git pull, and capture a change ma...
120
Chris K Wensel @chris.wensel.net · 01/09/2026
Determinism Injection for large prompts. chris.wensel.net/post/determi...
chris.wensel.net
Determinism Injection | Chris K Wensel
Large prompts drift when they do deterministic work themselves. Determinism Injection hands that work to tools instead so that the prompt stays the orchestrator, and binaries handle the lookups, state...
000
Chris K Wensel @chris.wensel.net · 31/08/2026
For me this paper is confirmation bias. All the tools I’ve been building are for within a prompt, not to manage prompts.
010
Reposted by Chris K Wensel
Mark (reluctant scrivener) @markmadsen.bsky.social · 31/08/2026
Interesting. I need to read some of the citations and understand what they are doing better. I would like to see more efforts in alternative architectures. Different ways of organizing symbolic and NN for different tasks. I don’t believe in the one big model to solve all problems.
101
Chris K Wensel @chris.wensel.net · 30/08/2026
The Deterministic Horizon Don't make the model track state. Make it call something that does. arxiv.org/abs/2606.00376
arxiv.org
The Deterministic Horizon: When Extended Reasoning Fails and Tool Delegation Becomes Necessary
Extended chain-of-thought reasoning can degrade performance on deterministic state-tracking tasks, not solely because of preference biases but, on the evidence we present, because of information-theor...
100
Chris K Wensel @chris.wensel.net · 27/08/2026
finally making some progress on intrastate, my stateless state machine github.com/cwensel/intr...
github.com
GitHub - cwensel/intrastate: A Go CLI for explicit, reviewable, deterministic workflow state transitions.
A Go CLI for explicit, reviewable, deterministic workflow state transitions. - cwensel/intrastate
030
Chris K Wensel @chris.wensel.net · 26/08/2026
for those interested in such things, Arcaneum now has an install subcommand that will add a watcher to a directory and reindex any changed files once committed. you can keep a markdown knowledge base up-to-date async behind the scenes in the repo, but not released github.com/cwensel/arca...
github.com
GitHub - cwensel/arcaneum: CLI tools and Claude Code plugins for semantic and full-text search across code, docs, and technical references.
CLI tools and Claude Code plugins for semantic and full-text search across code, docs, and technical references. - cwensel/arcaneum
010
Chris K Wensel @chris.wensel.net · 26/08/2026
The gap with Flyway is that it doesn’t write your migration scripts. Retrofit can write migration scripts for you, and it can also write the downgrade (undo) scripts, in many cases. If it can’t, it will let you know.
000
Chris K Wensel @chris.wensel.net · 26/08/2026
In short, we import a well established SQL schema from a sql_dump, make a change, generate a migration script, and then plug it into the existing Flyway migration tooling. We used the Marquez project as a base for the demo because it’s a real application with a rich history using PostgreSQL.
100
Chris K Wensel @chris.wensel.net · 26/08/2026
Progress on my new open source project retrofit continues. As we work to getting a stable release I’d be happy for others to kick around, we’ve decided to make Wednesdays demo day. So do please check out our new demo: retrofit.sh/demos/flyway...
retrofit.sh
Use Retrofit with new or existing Flyway projects · retrofit
See Retrofit import Marquez's mature PostgreSQL schema, add and validate a foreign key between existing tables, and register the generated SQL with Flyway.
100