Chapter 7 — Thesis synthesis and reproducibility archive
Lesson map
Lesson 07 published. Map, example, EX039.
flowchart TD
N0["Learning outcomes"]
N1["7.1 Synthesis"]
N2["7.2 Archive contents"]
N3["7.3 Protecting sensitive material"]
N4["7.4 Contribution statement"]
N5["Synthesis"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5
N5 --> EX["Worked example"]
EX --> Q["Exercise EX039"]
Logical drawing
flowchart LR
N0["Learning outcomes"]
N1["7.1 Synthesis"]
N2["7.2 Archive contents"]
N3["7.3 Protecting sensitive material"]
N4["7.4 Contribution statement"]
N5["Synthesis"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> Q["EX039"]
[Learning outcomes]
|
v
[7.1 Synthesis]
|
v
[7.2 Archive contents]
|
v
[7.3 Protecting sensitive material]
|
v
[7.4 Contribution statement]
|
v
[Synthesis]
|
v
[Worked example] --> [Exercise EX039]
Learning outcomes
You will (1) synthesise findings into a coherent thesis; (2) build a reproducibility archive; (3) protect sensitive material.
7.1 Synthesis
Lucía's thesis argues that the human review process is a security control that can be designed and measured, not merely a matter of individual expertise. The chapters move from the gap in the literature, through measurement and baseline, to the randomised comparison and critique. She links results back to the sources: the checklist operationalises EthTrust requirements and SWC categories, the overlap study echoes Durieux on tool limits, and Perez and Livshits frame why residual issues are discussed as risk rather than as proven losses.
7.2 Archive contents
The reproducibility archive holds the codebook, checklist versions with the deviation log, the registered plan, anonymised and synthetic datasets, analysis scripts with fixed seeds and the outputs they produce. A short README explains how to rerun every figure using only the Python standard library. Lucía tests the archive by asking a colleague to reproduce the main results from scratch on a clean machine; one missing file is found and added. A tested archive is the only kind that reliably reproduces.
7.3 Protecting sensitive material
The archive includes no contract source, addresses or descriptions that could help someone attack a real deployment. Seeded weakness descriptions are reduced to registry identifiers and categories. Partner names are pseudonymised. Lucía's ethics board and partner security leads review the archive before release, and one free-text field that described a reviewer's reasoning in too much detail is removed. Reproducibility and safety are balanced deliberately, with the reasons documented. The review record, with reasons for each removal, is kept with the ethics file. Partners sign off the final archive before it is published on the institute repository.
7.4 Contribution statement
Lucía writes a one-page contribution statement: a validated codebook for review findings; a checklist instrument mapped to public standards; the first randomised, blinded comparison of structured and unstructured contract review in her setting; and an archive that allows replication. She also lists what the thesis does not show. Examiners use this statement to judge originality, so precision about both contributions and limits matters more than ambition. Her supervisor reads the statement against the thesis to confirm that every claim is supported by a named chapter and analysis, and asks her to remove one phrase that implied the result generalised to all blockchains.
Worked example
The archive reproduces every figure on a clean machine after one missing file is added; a security review removes one over-detailed free-text field.
Synthetic case. Archive contents and reviews are synthetic; EEA EthTrust, the SWC registry, Durieux et al. (2020) and Perez and Livshits (2021) are real sources.
Errors and limits
Releasing contract code or detailed weakness descriptions in an archive can help attackers.
Exercises
- EX039 — Thesis argument. What does the thesis argue? Rubric: 3 = review process is a designable, measurable control;; 2 = process control;; 1 = tools suffice;; 0 = none.
- EX040 — Archive test. How was the archive tested? Rubric: 3 = colleague reproduced results on a clean machine;; 2 = reproduction;; 1 = not tested;; 0 = none.
- EX041 — Archive excluded. What does the archive exclude? Rubric: 3 = contract source, addresses, attack-enabling descriptions;; 2 = code;; 1 = seeds;; 0 = none.
- EX042 — Weakness representation. How are seeded weaknesses described? Rubric: 3 = registry identifiers and categories only;; 2 = IDs;; 1 = full detail;; 0 = none.
- EX043 — Removed field. What did the security review remove? Rubric: 3 = an over-detailed free-text reasoning field;; 2 = free text;; 1 = vague;; 0 = none.
- EX044 — Contribution count. Name one listed contribution. Rubric: 3 = validated codebook;; 2 = randomised comparison;; 1 = vague;; 0 = none.
Synthesis
A coherent argument, a tested archive and careful protection of sensitive material complete a reproducible thesis.
Continue studying — chapter 07 of 08
← Chapter 06 (draft) · Course chapter index · Chapter 08 (draft) →