Lesson map
Lesson 07. Map, example, EX053.
flowchart TD
E["April sharing export"] --> L["Tuple still says anyone-with-link"]
A["Afternoon staff-only change"] --> D["Decision log"]
L --> Q{"Does the log edit the tuple?"}
D --> Q
Q -->|No| K["The filter still prints the row"]
The export and the afternoon are different records.
Logical drawing
tuple: patient-letters/ , anyone-with-link , True
log prose: staff-only , April afternoon , Leila
filter: the tuple remains a failure line
Learning outcomes
After this chapter, you should be able to:
- Say why
patient-letters/remains on the failure list. - Keep the decision log outside the script.
- Refuse a cleaned print that drops the row.
7.1 The afternoon does not rewrite the triple.
Chapter 1 records an afternoon change: the patient-letters folder became staff-only, with a log line that names the date, the exposure, and Leila. That line lives in the one-page log. The sharing script never reads the log.
The triple still holds anyone-with-link and True. The comprehension therefore still emits the first failure line. Removing it would change both the printed names and the count shared too widely 3. No such removal is in the file. The row is the evidence copy of the export, taken before further setting changes.
invoices/ and old-backup.zip are the other two failure lines. They were not the folder a patient described. Their presence is why the filter was run on every top-level name rather than on the reported folder alone. Those two names also stay, for the same reason: the export was not edited after the invoices were later restricted or after the zip was later removed.
A reader who pastes only the afternoon state over the first triple is reporting a setting this program did not load.
7.2 Worked example
Lesson table; scroll horizontally to read all columns →
| Sentence | Record it belongs to | Decision |
|---|---|---|
The first failure line is patient-letters/: anyone-with-link |
The eight triples | Keep |
| The folder was set staff-only that afternoon | The decision log | Keep as prose |
| "The lab was rerun and the row disappeared." | No second list | Refuse |
| "Invoices were never in the export." | They are the second failure line | Refuse |
Synthetic case. The log does not feed
lab_sharing.py.
Errors and limits
Later restrictions on invoices stay prose as well. The export's three lines stay together.
Apply
- EX053 — Which record. Someone rewrites the first triple as staff-only and says the script now reports two items shared too widely. What still prints, and where does the afternoon change live?
Show marking criteria
Rubric: 3 = the triple staysanyone-with-link; the filter still prints three names; the afternoon change stays in the log; do not edit the script;; 2 = the three lines stay and the log stays separate;; 1 = one line;; 0 = none.