One last thing before we move on. pass this to mark the lesson done, or skip and keep moving.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write summary_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.
Checkpoint — the lab end-to-end. Write feature_table(db, cutoff) returning (user, n_valid, total) per user (every user, cutoff-respecting, NULL-safe, ?-parameterized, sorted by user) AND gate(rows) returning False if any total is negative or the table is empty. Print the rows, then the gate verdict.