Support closing-note rank fallback
This commit is contained in:
@@ -270,6 +270,37 @@ try {
|
||||
assert.equal(threadGuardrail.buildOrder.doFirst[0], 'build-order-2', 'thread-level guardrail should demote a labelled Build first dashboard and promote the first eligible manual move');
|
||||
assert.match(threadGuardrail.brief.decisionReceipt.sourceAnchor, /concept-map\.lenses\.channel/);
|
||||
|
||||
const closingNoteFallbackResponse = await fetch(`${base}/api/rank-feedback`, {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify({
|
||||
sourceName: 'Scattermind',
|
||||
artifactId: 'concept_map_closing_note_only',
|
||||
originalPrompt: 'Clarify a rough service idea where the paid output has questions but no labelled Build Order text.',
|
||||
conceptMap: {
|
||||
working_name: 'Service proof without labels',
|
||||
opening_reflection: 'The Concept Map says to prove a manual package teardown before building a product surface.',
|
||||
lenses: {
|
||||
shape: { title: 'Recommended Direction', content: 'Start as a manual service proof before adding software.' },
|
||||
question: { title: 'Proof Steps', content: 'Ask two freelancers to send one messy offer page and record whether the teardown helps.' },
|
||||
},
|
||||
questions_to_sit_with: [
|
||||
'Will one freelancer act on a manual package teardown within 48 hours?',
|
||||
'What would make the teardown feel worth paying for?',
|
||||
],
|
||||
closing_note: 'Spend the next 48 hours running one manual package teardown for a real freelancer before designing any dashboard.',
|
||||
reference_code: 'SM-CLOSE',
|
||||
},
|
||||
}),
|
||||
});
|
||||
assert.equal(closingNoteFallbackResponse.status, 200);
|
||||
const closingNoteFallback = await closingNoteFallbackResponse.json();
|
||||
assert.equal(closingNoteFallback.buildOrder.doFirst[0], 'closing-note-next-move');
|
||||
assert.match(closingNoteFallback.brief.decisionReceipt.firstProofStep, /running one manual package teardown/i);
|
||||
assert.match(closingNoteFallback.brief.decisionReceipt.sourceAnchor, /concept-map\.closingNote/);
|
||||
assert.equal(closingNoteFallback.buildOrderDetails.validateNext[0].sourceSection, 'concept-map.questionsToSitWith');
|
||||
assert.equal(closingNoteFallback.handoff.readiness.status, 'ready');
|
||||
|
||||
const softDashLabelResponse = await fetch(`${base}/api/rank-feedback`, {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
|
||||
Reference in New Issue
Block a user