Skip to main content

Structural design evidence gates

Score SC1–SC6 separately: 0 missing/invalid; 1 assisted or materially incomplete; 2 independently correct with assumptions, trace and checks; 3 also adapts to a changed requirement. Every gate requires at least 2. Attempt before opening the reviewer key. Original module practice remains required.

  • SC1 — Boundary translation: implement exact conversion under the declared grammar. Explain currency, precision, fractional-cent rejection and input ownership; adapt the contract to a changed unit scale before coding.
  • SC2 — Wrapper behavior: implement both log/retry orders, bounded total attempts and per-call reset. Predict unseen success, exhaustion and permanent-error traces; preserve final exception identity.
  • SC3 — Construction and ownership: validate configuration before provider calls; demonstrate normal, partial-construction and body-failure cleanup. Distinguish borrowed objects from owned scopes and describe a failing manager’s obligations.
  • SC4 — Pattern judgment: compare factory function, Factory Method, Abstract Factory and Builder for a changed product family. Defend one Composite, Proxy or Flyweight choice from original practice and one simpler alternative. No number of wrapper classes earns credit.
  • SC5 — Limits: explain why side-effecting operations require a separate retry-safety argument. State assumptions about logging failures, context-manager suppression, concurrency and process crashes. Do not extend the fake-provider guarantee to real transactions.
  • SC6 — Reproduction and review: pass the extracted lab with your implementation, retain traces, write a short ownership/alternatives decision note, and reproduce a changed case unaided.

After 7–14 days redo one weak gate and one changed trace. Retain original attempts, repairs, help/source declarations and reviewer status. Self-assessment is not independent review. Aggregate semester scores cannot waive a missing contract; reference-code success is setup evidence only.

Core coverage: C01–C06​

The original broad practice is now made inspectable through the core workshop. These checks sit alongside SC1–SC6; they reorganize existing core assessment time rather than adding another exam. Use the same 0–3 scale and require every gate at least 2. The SC kit alone cannot demonstrate these broader contracts.

  • C01 — Family construction: P01–P04 and family lab. A1: a toolbar's two products have different families; supply failure and fresh passing evidence, then compare a callable and factory object.
  • C02 — Validated construction: P05–P08 and request lab. A2: caller headers mutate and a later GET/body build fails; defend snapshot isolation and validation placement.
  • C03 — Copy policy: P09–P12 and clone lab. A3: preserve shared-child topology inside an independent clone, then explain a borrowed-service variant.
  • C04 — Composite meaning: P13–P16 and tree lab. A4: compare duplicate occurrence with unique identity and reject an actual cycle, with explicit domain/depth limits.
  • C05 — Proxy lifetime: P17–P19 and proxy lab. A5: fail acquisition, acquire successfully, fail read and close; preserve exact effects and ownership.
  • C06 — Design defense: P20, E1–E3 and reused project. A6: change an output/product requirement, compare alternatives and justify construction, bridging and composition decisions with traces and limitations.

Use separate assessment calibration after an attempt. Reuse delayed checks with SC1–SC6 where the changed case supports both claims. Keep any actual reviewer status distinct from self-assessment. All original essential topics remain; arbitrary implementation/mistake quotas and speed gates are replaced by this evidence mapping.