You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
senzapaura_es/drizzle/0012_prompts_de_una_cancion...

25 lines
1.2 KiB

«Cupido sin flechas»: diez canciones de verdad, con sus prompts El primer disco real del catálogo. Hasta ahora todo era inventado salvo «Dorina». `npm run album:importar -- "<carpeta>"` lee la carpeta y dice lo que haría; solo escribe con `--escribir`, y hay que pedirlo. Es idempotente por slug, así que corregir un `.txt` y volver a lanzarlo actualiza en vez de duplicar. El desmontaje de los `.txt` está en `scripts/album/carpeta.mjs`, compartido con el lector: si Suno vuelve a cambiar lo que pone al copiar, se arregla en un sitio. De cada archivo salen tres cosas —el prompt de estilo, la letra con etiquetas y la letra limpia de detrás de la raya— y la que se publica es la limpia; la de las etiquetas es lo que se le pega a Suno, y va en el prompt. Los títulos salen del nombre del máster porque las carpetas están sin acentuar —«Quèdate», «Pague»—, y `--titulo` corrige lo que ni siquiera eso acierta: el archivo francés pone «libére» donde va «libère». El idioma se deduce contando palabras frecuentes: nueve en español y una en francés. La fecha sale del máster más reciente, que es lo más cerca que hay de «cuándo quedó terminado». Y el prompt de cada canción, que es lo que obligó a la migración 0012: `prompt` ataba a un género y estos son de canciones concretas. No sustituye a `genero_id`, se suma, y es coherente con lo que el modelo ya preveía — `ejemplo_id` apunta al audio que salió del prompt—. ## El hueco de la portada Diez fichas publicadas sin imagen destaparon algo que llevaba ahí desde siempre: un `<img>` sin `src` es el icono de imagen rota del navegador, y eso salía en siete sitios —la ficha del disco, la del tema, las dos tarjetas, el carrito, la cuenta y la barra del reproductor—. Nunca se había visto porque todo el catálogo tenía imagen. `SinPortada` ocupa el hueco con la inicial del título. No dice «falta la portada»: eso es un problema nuestro, no de quien mira. Y va a hacer falta más, porque el texto de un disco entra por un lado y sus archivos por otro. El botón de reproducir ya se apagaba solo sin audio; eso estaba bien hecho. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
4 weeks ago
-- Un prompt puede ser de una canción, no solo de un género.
--
-- El modelo ataba `prompt` a `genero`: prompts de referencia para escribir en
-- un estilo. Pero los que existen de verdad son otra cosa —el prompt exacto con
-- el que salió una canción concreta—, y eso no tenía dónde ir. Colgarlos de su
-- género sería mentir: no son la referencia del bolero, son lo que produjo
-- «Ámame esta noche».
--
-- No sustituye a `genero_id`, se suma. Los dos son opcionales y los dos tienen
-- sentido a la vez: el prompt de una canción también dice en qué género se
-- escribió.
--
-- Es coherente con lo que el modelo ya preveía: `ejemplo_id` apunta al audio
-- que salió del prompt, así que un prompt ya sabía de su resultado. Esto es lo
-- mismo mirado desde el otro lado.
--
-- Se borra con la canción. Un prompt sin la canción que produjo no es un dato,
-- es un texto suelto.
ALTER TABLE "prompt" ADD COLUMN "cancion_id" text;--> statement-breakpoint
ALTER TABLE "prompt" ADD CONSTRAINT "prompt_cancion_id_cancion_id_fk"
FOREIGN KEY ("cancion_id") REFERENCES "public"."cancion"("id")
ON DELETE cascade ON UPDATE no action;--> statement-breakpoint
CREATE INDEX "prompt_cancion" ON "prompt" ("cancion_id");

Powered by TurnKey Linux.