likecatalog

command
v0.8.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 27, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Overview

Measurement probe for the catalog-path `like` refusal (specs/CONTRACT-LIKE-CATALOGO.md). Not part of the build; run with

$env:COMPAT_POSTGRES_DSN='postgres://postgres:***@host:5467/postgres?sslmode=disable'
go run ./experiments/likecatalog apply    # BEFORE the refusal lands
go run ./experiments/likecatalog read     # AFTER the refusal lands

The two phases exist because the question the contract calls the important one cannot be answered in a single build: it asks what happens to a database whose schema was ALREADY APPLIED by an older version of this layer — one whose `__compat_schema` metadata therefore carries a `like` node. `apply` materializes exactly that database (it only succeeds while `like` still compiles); `read` then asks the post-refusal build whether that database can still be READ (`InspectSchema`, snapshot export) and copied. Breaking the compilation of a new schema is the intended cost; breaking the READ of an existing database would be a far worse regression, so it is measured rather than assumed.

The SQLite file and the PostgreSQL objects are left in place between phases on purpose. The DSN password is never printed.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL