docs: give slide 14 concrete workflow and skill metrics
Build and publish Eldorado documentation / build (pull_request) Successful in 46s
Build and publish Eldorado documentation / build (pull_request) Successful in 46s
This commit is contained in:
1 parent
accca0cb1f
commit
946b6f1cbb
5 files changed
+49
-6
No files matched your search
@@ -33,6 +33,17 @@ test('capacity visibly frames the days as an example weekly allocation',()=>{
|
||||
assert(slide.body.startsWith('<p>Example weekly allocation for the AI architect</p><div class="capacity"'));
|
||||
for(const text of ['2 days','Pair + build','Evaluate','Relationships','Decisions + buffer','Proposed capacity envelope—not known company availability.']) assert(slide.body.includes(text));
|
||||
});
|
||||
test('measurement names five numerical candidates and separates populations',()=>{
|
||||
const s=slides.find(s=>s.id==='measures');
|
||||
assert.equal(s.minutes,2);
|
||||
assert.equal(s.title,'Measure better work—and skill health');
|
||||
for(const label of ['Validated task success (%)','Changes with escaped quality issues (%)','Cost per accepted outcome','currency/outcome','Skill selection precision (%)','Skills within substantive review window (%)','Baseline → pilot','Independent quality qualification still required','Choose relevant measures','Unknown is not zero','Skill health is not productivity proof']) assert(s.body.includes(label),label);
|
||||
assert.equal((s.body.match(/class="metric"/g)||[]).length,5);
|
||||
for(const text of ['matured eligible starts','completed follow-up','labeled evaluation','active approved revisions'])assert(s.body.includes(text),text);
|
||||
for(const name of ['validated-task-success','changes-with-escaped-quality-issues','cost-per-accepted-outcome','skill-selection-precision','skills-within-substantive-review-window'])assert(s.sources.includes('measurement/'+name));
|
||||
for(const term of ['N/A','unknown','unimplemented','partial','review/rework','like-for-like','zero accepted'])assert(s.notes.includes(term),term);
|
||||
assert.doesNotMatch(s.body,/Accepted work<|\d+%/);
|
||||
});
|
||||
test('learning loop staircase preserves the original semantic sequence',()=>{
|
||||
const body=slides.find(s=>s.id==='learning-loop').body;
|
||||
const loop=body.split('</div>')[0];
|
||||
|
||||
Reference in new issue
Block a user