fix: the format picker shows the format's name only — the slide count is the one length control
The picker labels carried each format's typical length ('15–25 cases, three
or four slides each, 60–90 minutes'), which sat under a slide-count field and
read as a second, contradicting number. The label is the name, the hint says
who the format is for, and the brief tells the model that the slide count
asked for is the length and the parts fit into it.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016fZGJNyDvERbMgS2Uc2msP
This commit is contained in:
parent
6ca278c0e6
commit
57ba2a268c
3 changed files with 7 additions and 3 deletions
|
|
@ -219,7 +219,8 @@ the material needs (one case-question-answer run per topic, one timeline
|
|||
segment per event) and may leave out when the material has none.
|
||||
|
||||
The author picks the format beside the theme; "Free" is the default and is
|
||||
what every deck was before. The choice is stored on the deck (`deck.format`,
|
||||
what every deck was before. The slide count stays the one length control —
|
||||
a format's typical length is not shown or sent, so the two never disagree. The choice is stored on the deck (`deck.format`,
|
||||
validated against the catalogue the same way `deck.theme` is) so a later
|
||||
modification keeps the shape it was written in — the revision prompt carries
|
||||
the same brief.
|
||||
|
|
|
|||
|
|
@ -184,7 +184,7 @@
|
|||
formats.forEach(function (f) {
|
||||
var option = document.createElement('option');
|
||||
option.value = f.id;
|
||||
option.textContent = f.name + (f.length ? ' · ' + f.length : '');
|
||||
option.textContent = f.name;
|
||||
formatSelect.appendChild(option);
|
||||
});
|
||||
if (chosenFormat && formats.some(function (f) { return f.id === chosenFormat; })) {
|
||||
|
|
@ -271,6 +271,9 @@
|
|||
var hint = document.getElementById('mr-format-hint');
|
||||
if (!select || !hint) return;
|
||||
var chosen = formats.filter(function (f) { return f.id === select.value; })[0];
|
||||
// Audience and shape only: how long the session runs is the slide count
|
||||
// above, which guides rather than dictates, and a second number here
|
||||
// read as a contradiction of it.
|
||||
hint.textContent = chosen
|
||||
? [chosen.audience ? 'For ' + chosen.audience : '', chosen.description || ''].filter(Boolean).join('. ')
|
||||
: 'The layouts are chosen slide by slide with no fixed order of parts.';
|
||||
|
|
|
|||
|
|
@ -51,7 +51,7 @@ function instructions(id) {
|
|||
if (!format) return '';
|
||||
var lines = [
|
||||
'FORMAT: this is a ' + format.name + (format.audience ? ' for ' + format.audience : '') + '.',
|
||||
format.length ? 'Typical length: ' + format.length + '.' : '',
|
||||
'The slide count asked for above is the length; fit the parts into it.',
|
||||
'Its parts, in this order:'
|
||||
];
|
||||
(format.sequence || []).forEach(function (part, i) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue