AI-generated image purge

Vault-wide scan for AI-image-generation artifacts. Tells used to identify them: banner-styled title text, stylized 3D icon graphics with depth/gradients, faux decorative backgrounds, garbled or invented placeholder labels, any rendering that isn’t a flat technical diagram or a real plot.

The vault is public and auto-deploys, so AI-generated decorative images get deleted rather than left in place.

Scope of the scan

  • All 476 images in attachments/ were either visually inspected (suspicious-named or large outliers) or known by provenance (Wikimedia downloads with API-verified license, matplotlib renders from _audit/, textbook PDFs and course slides with characteristic page numbers / Queen’s slide branding, hand-authored whiteboard photos).
  • Special attention to filenames containing overview, concept, flow, process, core, architecture, hierarchy, system — the most likely AI-gen naming patterns.
  • All 21 ELEC 274 attachments (the course where the user flagged the example) were individually inspected.

Removed (4 files, all ELEC 274)

FileNoteWhy flagged
elec274-cache-overview.pngCache memory.mdThe reference example. Banner title “CACHE CORE CONCEPTS”; stylized 3D circuit-board / memory-module renderings; gradient backgrounds; tries to combine “Temporal Cache” / “Spatial Cache” / “MEMORY ADDRESS DECOMPOSITION” / “CACHE MEMORY STRUCTURE & BLOCK ENTRY” into one busy concept-art panel; garbled micro-labels in the address-decomposition bar.
elec274-two-pass-assembly.pngAssembler.mdBanner title “TWO-PASS ASSEMBLY PROCESS”; stylized 3D file-icon graphics with gradient depth; document icons containing fake squiggly placeholder text; decorative coloured boxes labelled “FIRST PASS / SECOND PASS” with cartoony shadowing.
elec274-memory-cell-array.pngMemory cell.mdBanner-style “ADDRESS INPUT ARRAY” / “MEMORY CELL ARRAY” titles; stylised 3D depth on the cell-array stack; faux decorative gradients on the address-bus arrow; inconsistent label formatting and decorative annotation styling.
elec274-separate-processing-linker.pngLinker.mdBanner title “SEPARATE PROCESSING (ASSEMBLER)”; stylised file-folder 3D icons; gradient backgrounds on every box; “Matched Names” / “Unresolved” labels in decorative-but-garbled styling typical of AI image generation.

All four were dated May 9 19:11 — same batch upload. All four share the same visual signature (banner title + 3D icons + gradient + decorative coloring + slightly-off micro-text), which is what triggered the systematic per-file inspection of the rest of that batch.

Inspected and kept (representative)

The remaining 17 May-9 ELEC 274 images are legitimate:

  • 12 are clean textbook figures (visible page numbers from the Hamacher/Vranesic/Zaky text — big-vs-little-endian, compiler-assembler-linker, datapath-stages, instruction-address-generator, instruction-fetch-hardware, io-interface-registers, memory-program-layout, memory-program-layout-2, processor-internals, functional-units-block, subroutine-call-graph, stack-push-pop-with-sp).
  • 3 are hand-drawn whiteboard photos in .jpeg (datapath-whiteboard, instruction-address-generator-whiteboard, instruction-fetch-whiteboard).
  • 1 is a clear slide-style figure (stack-push-pop-conceptual — spring + plate stack illustration).
  • 1 is a Queen’s-branded course slide (cache-mapping-example — text snippet showing the bit split for the worked example).

Spot-checked other courses for similar AI-gen patterns and found none:

  • ELEC 252 outliers (transistor-family-tree, mosfet-model-hierarchy, semiconductor-colossus-vs-silicon-chip, bridge-rectifier-cvd-worked) — all genuine Queen’s course slides with the standard yellow/blue ribbon at the top.
  • ELEC 271 outliers (fpga-general-structure, cost-calculation-result) — clean slide-style.
  • ELEC 278 ”*-overview.png” files (avl-tree-overview, binary-tree-traversal-overview, queue-deque-overview, selection-bubble-heap-sort-overview, shell-sort-overview) — all hand-drawn whiteboard study cards (consistent handwriting, structured content, no AI tells).
  • MTHE 237 large files (phase-portrait-case1, lyapunov-method-overview, impulse-vs-time) — same hand-drawn whiteboard study-card style.
  • Non-course-prefixed files (c-cpp-compilation-process, area-chart-example, bode-plot-lowpass, decision-tree-elements, call-stack-frame-layout) — already attributed Commons sources or screenshots from tools.

Replacements (3 self-rendered, 1 left text-only)

After the embed was removed, each spot was reassessed:

NoteDecisionReplacement
Cache memory.mdRe-illustratedelec274-cache-address-decomp.png — self-rendered matplotlib bar showing the 32-bit address split into 14-bit tag / 13-bit index / 5-bit offset for the worked direct-mapped example. Flat, labelled, no decoration.
Assembler.mdRe-illustratedelec274-two-pass-assembly-flow.png — self-rendered matplotlib flowchart: source → Pass 1 builds symbol table → Pass 2 emits machine code → object file. Five rounded boxes, plain arrows, no styling.
Memory cell.mdRe-illustratedelec274-memory-cell-array-clean.png — self-rendered matplotlib block diagram showing a 4×4 cell grid, row decoder driving word lines, sense amplifiers on the bit lines, column decoder/mux below, data-out arrow.
Linker.mdLeft text-onlyThe note already contains a working ASCII flow under “In the full toolchain” (source → compiler/assembler → object files → linker → executable) plus a 5-step numbered enumeration of what the linker does. Adding a redundant rendered diagram would not earn its space. Spot deliberately left image-free.

All three replacements are matplotlib-generated at 170 DPI; attribution rows appended to attachments/attributions.md marked “self-generated.” Captions in the notes use the standard *Self-generated illustrative figure — ...* form.

Summary

  • Purged: 4 files, all from one same-day batch in ELEC 274.
  • Replaced: 3 with self-rendered diagrams (Cache memory, Assembler, Memory cell).
  • 1 spot deliberately left image-free (Linker — text already covers the picture).
  • 0 broken embeds vault-wide after the pass.
  • No image was sourced from an unverified or “trusted” website at any point. Replacements are matplotlib renders only.