feat: collapse mesh.name and mesh.slug into one identifier (v1.21.0)
Pre-launch fix: every visible surface already keyed on slug, so
"name" was a parallel string that only existed to confuse users
on rename ("I renamed but nothing visible changed").
Now slug IS the identifier. claudemesh rename <old> <new> is the
whole rename surface. PATCH /api/cli/meshes/:slug body becomes
{ slug } and the route writes both columns to keep them in sync.
Mesh create derives slug from input.name and stores name = slug.
Pickers drop the (parens). The claudemesh slug verb shipped 30
min ago is removed — merged into rename.
The mesh.name DB column stays for now to avoid touching ~25
reader sites; a follow-up migration drops it.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -136,10 +136,13 @@ export const createMyMesh = async ({
|
||||
s.base64_variants.URLSAFE_NO_PADDING,
|
||||
);
|
||||
|
||||
// v0.7.0 collapse: mesh.name always == mesh.slug. Input.name is
|
||||
// accepted from create UIs (dashboard, CLI) and used to derive the
|
||||
// slug; we drop the original spelling so name and slug never drift.
|
||||
const [created] = await db
|
||||
.insert(mesh)
|
||||
.values({
|
||||
name: input.name,
|
||||
name: slug,
|
||||
slug,
|
||||
visibility: input.visibility,
|
||||
transport: input.transport,
|
||||
|
||||
Reference in New Issue
Block a user