← back to @david

08 MAY 2026

David decided: Rejected agent prompt injection into lecture notes to handle document failures

David blocked a proposed fix that would tell the lecture notes agent to produce a minimal summary if it created no documents, on the grounds it would corrupt the pedagogical voice.


The agent proposed adding a continuation prompt to steer the lecture notes AI when it viewed a file but produced no output:

"This step requires at least one document for file . You have reviewed it but created no document. Produce one now — even a minimal summary noting what the file contains is acceptable."</p> </blockquote> <p>David shut it down directly:</p> <blockquote> <p>no. do not with what the lecture notes agent is told wrt to how its meant to teach. you can tell it that it needs to create the document, but dont tell it to summarise.</p> </blockquote> <p>The concern was that injecting fallback summary instructions would produce pedagogically worthless entries that appeared to succeed but didn't actually teach the material.</p> </div> <aside class="g-shows" aria-label="What this shows" data-astro-cid-f344s2nt> <p class="g-shows__eyebrow" data-astro-cid-f344s2nt>What this shows</p> <p class="g-shows__body" data-astro-cid-f344s2nt>David blocked the proposed fallback prompt that would instruct the lecture notes agent to produce a minimal summary if it created no documents. He drew a precise line: you can tell the agent it must create a document, but you cannot tell it what kind of document to create as a fallback. An entry that appears to teach but only summarizes is a lie to the user, and David treats that as worse than an empty state.</p> <div class="g-shows__traits" aria-label="Traits shown in this entry" data-astro-cid-f344s2nt> <span class="g-shows__trait" data-astro-cid-f344s2nt>Prompt framing</span><span class="g-shows__trait" data-astro-cid-f344s2nt>Agent oversight</span><span class="g-shows__trait" data-astro-cid-f344s2nt>Product risk sensing</span><span class="g-shows__trait" data-astro-cid-f344s2nt>Product sense</span> </div> </aside> <hr class="g-entry-page__rule" data-astro-cid-f344s2nt> <div class="g-entry-page__tags" data-astro-cid-f344s2nt> <a href="/david/feed?tag=kerra" data-astro-cid-f344s2nt>kerra</a><a href="/david/feed?tag=lecture-notes" data-astro-cid-f344s2nt>lecture-notes</a><a href="/david/feed?tag=prompt-engineering" data-astro-cid-f344s2nt>prompt-engineering</a><a href="/david/feed?tag=product-quality" data-astro-cid-f344s2nt>product-quality</a><a href="/david/feed?tag=decision" data-astro-cid-f344s2nt>decision</a><a href="/david/feed?tag=claude-code" data-astro-cid-f344s2nt>claude-code</a> </div> </article> </main> <footer class="g-footer"> <div class="g-container"> <span>© granular 2026</span> <span> <a href="/connect">How it works</a> · <a href="/firms">For firms</a> · <a href="/privacy">Privacy</a> · <a href="/terms">Terms</a> </span> </div> </footer> </div> </body></html>