fix(patches): always strip legacy ai-text-level keys on form save
Hyphenated keys (ai-text-level, ai-code-level, etc.) from the upstream beta.41 endpoint are now unconditionally deleted on form submission, preventing them from coexisting with the camelCase equivalents in MongoDB. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -7,16 +7,9 @@ const candidates = [
|
||||
"node_modules/@indiekit/indiekit/node_modules/@indiekit/endpoint-posts/lib/controllers/form.js",
|
||||
];
|
||||
|
||||
const marker = "Remove empty AI metadata fields so Micropub payload stays lean.";
|
||||
const marker = "Always remove legacy hyphenated keys — superseded by camelCase equivalents.";
|
||||
|
||||
const oldSnippet = [
|
||||
" // Easy MDE appends `image` value to formData for last image uploaded",
|
||||
" delete values.image;",
|
||||
"",
|
||||
" const mf2 = jf2ToMf2({ properties: sanitise(values) });",
|
||||
].join("\n");
|
||||
|
||||
const newSnippet = [
|
||||
" // Easy MDE appends `image` value to formData for last image uploaded",
|
||||
" delete values.image;",
|
||||
"",
|
||||
@@ -43,6 +36,34 @@ const newSnippet = [
|
||||
" const mf2 = jf2ToMf2({ properties: sanitise(values) });",
|
||||
].join("\n");
|
||||
|
||||
const newSnippet = [
|
||||
" // Easy MDE appends `image` value to formData for last image uploaded",
|
||||
" delete values.image;",
|
||||
"",
|
||||
" // Remove empty AI metadata fields so Micropub payload stays lean.",
|
||||
" for (const key of [",
|
||||
" \"aiTextLevel\",",
|
||||
" \"aiCodeLevel\",",
|
||||
" \"aiTools\",",
|
||||
" \"aiDescription\",",
|
||||
" ]) {",
|
||||
" if (",
|
||||
" values[key] === undefined ||",
|
||||
" values[key] === null ||",
|
||||
" String(values[key]).trim() === \"\"",
|
||||
" ) {",
|
||||
" delete values[key];",
|
||||
" }",
|
||||
" }",
|
||||
" // Always remove legacy hyphenated keys — superseded by camelCase equivalents.",
|
||||
" delete values[\"ai-text-level\"];",
|
||||
" delete values[\"ai-code-level\"];",
|
||||
" delete values[\"ai-tools\"];",
|
||||
" delete values[\"ai-description\"];",
|
||||
"",
|
||||
" const mf2 = jf2ToMf2({ properties: sanitise(values) });",
|
||||
].join("\n");
|
||||
|
||||
async function exists(filePath) {
|
||||
try {
|
||||
await access(filePath);
|
||||
|
||||
Reference in New Issue
Block a user