snapshot: NVFP4+MTP fast-seat quant recipe + failure state (gibberish, unisolated)

Captures the full pipeline recipe (graft->quant->splice->config->serve) with every
gotcha found this session, the 3 gibberish suspects, and the diagnostic ladder
(validate native-config no-MTP coherence FIRST) for a fresh session to finish the
chase. Also stages the NVFP4 scripts + 512-row calib. Recent decisions: NEO-CODE
seat swap (R36), webhook ALLOWED_HOST_LIST fix. Lessons: validate-tracer-bullet-first,
mtp-graft-dropped-at-load, gitea-204-red-herring.
This commit is contained in:
vh
2026-07-14 11:31:57 -07:00
parent 462d528bef
commit b972bef10e
11 changed files with 804 additions and 48 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,132 @@
[
{
"type": "function",
"function": {
"name": "bifrost.soong-lab.set_name",
"parameters": {
"type": "object",
"required": ["name"],
"properties": {
"name": { "type": "string", "maxLength": 128, "minLength": 1 }
}
},
"description": "Set the agent's name (its display name; export slugifies it)."
}
},
{
"type": "function",
"function": {
"name": "bifrost.soong-lab.set_role",
"parameters": {
"type": "object",
"required": ["role"],
"properties": {
"role": {
"enum": ["assistant", "thoughtful-assistant", "character", "thoughtful-character"],
"type": "string"
}
}
},
"description": "Set the agent's model-role — one of: assistant (general), thoughtful-assistant (reasoning general), character (RP/writing-tuned), thoughtful-character (reasoning RP). Export ships it as the native agents.define `role`."
}
},
{
"type": "function",
"function": {
"name": "bifrost.soong-lab.set_ocean",
"parameters": {
"type": "object",
"properties": {
"A": { "type": "number", "maximum": 1, "minimum": -1 },
"C": { "type": "number", "maximum": 1, "minimum": -1 },
"E": { "type": "number", "maximum": 1, "minimum": -1 },
"N": { "type": "number", "maximum": 1, "minimum": -1 },
"O": { "type": "number", "maximum": 1, "minimum": -1 }
},
"minProperties": 1
},
"description": "Merge OCEAN dials (each in [-1,1]); re-derives the disposition."
}
},
{
"type": "function",
"function": {
"name": "bifrost.soong-lab.edit_prompt",
"parameters": {
"type": "object",
"required": ["system_prompt"],
"properties": {
"system_prompt": { "type": "string", "maxLength": 32768, "minLength": 1 }
}
},
"description": "Replace the authored role/instructions block (the exported system prompt)."
}
},
{
"type": "function",
"function": {
"name": "bifrost.soong-lab.attach_tool",
"parameters": {
"type": "object",
"required": ["id", "name"],
"properties": {
"id": { "type": "string", "maxLength": 256, "minLength": 1 },
"name": { "type": "string", "maxLength": 256, "minLength": 1 },
"description": { "type": "string", "maxLength": 2048 }
}
},
"description": "Attach (upsert by id) a tool the designed agent will bind via Bifrost."
}
},
{
"type": "function",
"function": {
"name": "bifrost.soong-lab.author_first_message",
"parameters": {
"type": "object",
"required": ["first_message"],
"properties": {
"first_message": { "type": "string", "maxLength": 32768, "minLength": 1 }
}
},
"description": "Set the agent's in-character opening turn (tone + format by example)."
}
},
{
"type": "function",
"function": {
"name": "bifrost.soong-lab.edit_psych_profile",
"parameters": {
"type": "object",
"required": ["psych_profile"],
"properties": {
"psych_profile": { "type": "string", "maxLength": 8192, "minLength": 1 }
}
},
"description": "Author the character's Psychological Profile & Experience — a ~150-300 word prose lens (the self-report producer reads it every turn) covering four dimensions: disposition/appraisal bent, attention/salience focus, values/yardstick, and formative history. Integrate them as one paragraph and CLOSE ON ATTENTION — what the character characteristically notices ('...notices who is unwell, what is left unsaid'). Guardrails: (1) NEVER name a per-event output emotion ('is anxious', 'feels hurt') — naming PRIMES it, so it fires regardless of the event; describe the bent and let emotion follow from the appraisal. (2) Magnitude lives in the OCEAN dials, not the prose (don't narrate 'comes apart'/'takes it hard'). (3) Appraisal-STYLE yes ('reads others charitably until she can't'), output-emotion no. (4) Salience is character-relative — never rewrite what happened."
}
},
{
"type": "function",
"function": {
"name": "bifrost.soong-lab.generate_portrait",
"parameters": {
"type": "object",
"required": ["description"],
"properties": {
"description": { "type": "string", "maxLength": 500, "minLength": 1 },
"style_mode": { "enum": ["anime", "cartoon", "photoreal"], "type": "string" }
}
},
"description": "Generate the agent's persona portrait NOW from a visual `description` you author — the persona's LOOK (e.g. 'a stern woman in her 40s, short dark hair, sharp jaw'). A persona is personality, not appearance, so YOU compose the appearance in conversation and pass it here; describe only the subject, never the art style. `style_mode` (anime | cartoon | photoreal) selects the curated render style — the style preset owns the look. Generation runs in the background; the portrait pane shows it when ready. Offer/generate a portrait once the look is settled."
}
},
{
"type": "function",
"function": {
"name": "bifrost.soong-lab.export",
"parameters": { "type": "object", "properties": {} },
"description": "Export the native payload + sidecar bundle (stub — lands in E5)."
}
}
]
File diff suppressed because one or more lines are too long