Operator Guide
Run the Compliance Console.
Day-to-day guide for the eight sections inside Teacher Admin → Compliance Console. Pair this with Texas Compliance for the legal-language version and Google Apps Script setup for first-time installation.
Before you open the Console
- Set
ADMIN_PASSCODEin your Apps Script project's Project Settings → Script Properties. Use 16+ random characters. - Open Teacher Admin, unlock with the admin gate password, paste the Web App URL into Google Drive + Sheets, click Save URL.
- Click Test Connection. You want a green success message.
- Scroll to Compliance Console. First time you click into a section, the browser will ask for your
ADMIN_PASSCODE— it's cached inlocalStorageafter that.
Safety Review
What it does
Server-enforces the text keyword filter and link allowlist on every board save. Frozen boards reject all writes.
Daily use
- Filter configuration — toggles for text filter, blockOnMatch (otherwise log-only), link allowlist, blockUnapproved. Click Load Config, edit, Save Filter Settings.
- Board / room freeze — Load Boards & Rooms shows a sortable table. Click Freeze, type a reason; the board's saves are rejected until you Unfreeze it.
- View Safety Events — jumps to Activity Records with a pre-applied filter for safety-related actions.
Edge cases
The default block-list catches a small set of obvious harm keywords. Add your own in compliance.config.json under safety.text.patterns (regex strings) or safety.text.words. Use the Open Raw Config Editor button in Privacy Settings for live editing.
Family Access Tools
What it does
Parents submit requests at /parents/. Verified requests appear in the Console; you Approve, Deny, or mark Done.
Verification workflow
- In Student Age Band Lock, click Issue Parent Code next to a student. The browser shows the 8-character code once.
- Share the code with the parent through your existing parent-communications channel (email, paper note, SIS message, etc.). The server stores only a SHA-256 hash.
- Parent enters the code on
/parents/. The ticket arrives in the Console asverifiedinstead ofpending_verification. - Approve, Deny, or Done; the disposition is audit-logged.
Codes are 14-day single-use. Generate a new one if the parent didn't act in time.
Export & deletion
For verified export requests, click Export on that student's row in Age Lock. The browser downloads a ZIP with every board and turn-in plus a manifest. Email it to the verified parent through your normal channel.
For verified delete requests, click Delete. Two confirmations required. Drive files go to trash; sheet rows are removed; DATA_DELETED event is logged.
Student Age Band Lock
What it does
Assigns each student record one of under_13, 13_to_17, 18_plus, or unknown_minor. Server-locked.
Populating the roster
- Click Load Students — rows auto-populate from turn-ins. If you haven't run any turn-ins yet, the table is empty.
- Add Student — manual entry for one student at a time.
- Import Roster CSV — upload a CSV with header
studentName, className, email, ageBand, ageSource, notes. Idempotent — re-uploading the same file updates rather than duplicates. Useful for first-day-of-school setup.
Changing a band
Use the dropdown next to the student. The browser prompts for a reason — required, logged in Activity Records as AGE_BAND_CHANGED with the old value, new value, and your reason.
Use Limits
What it does
Caps daily and per-session minutes for students. Enforces allowed-hours-of-day and weekend restrictions. Browser locks the workspace; server rejects saves outside the window so a reload can't bypass the lock.
Setup
- Toggle Enforce daily / session limits on.
- Set Daily seconds (e.g. 1800 = 30 min). Set Session seconds to 0 for "no per-session limit".
- Set Allowed hours start and end. Toggle Allow weekend access.
- Save Use Limits.
Affects students only; teachers bypass the cap when they're in teacher mode. A remaining-time chip appears at the bottom-right of the whiteboard for affected students.
Retention Policy & Cleanup
What it does
Archives or deletes boards based on age; prunes old audit rows. Available manually or on a nightly Apps Script trigger.
Setup
- Click Load Current to see the active thresholds.
- Set Archive boards after (e.g. 90 days) — older boards move to an
ArchiveDrive subfolder. - Set Delete boards after (e.g. 365 days) — older boards are trashed and the sheet row removed.
- Set Keep Activity Records (e.g. 365 days) — older audit rows are pruned.
- Save Settings.
- Click Install Daily Trigger once. From then on the cleanup runs nightly at 02:00 server time.
Manual Run Cleanup Now available any time. Each run writes a RETENTION_ACTION audit event with counts.
Privacy Settings
What it does
Read-only declarations the District Privacy Packet reports: storage location, encryption, third-party services, AI-training=NO, advertising=NO, data-sold=NO. Plus the Open Raw Config Editor dialog for advanced edits.
When to use it
Before a DPA review or compliance audit. Open the section, confirm everything looks accurate, then click Download District Privacy Packet at the bottom of the Console — that ZIP plus the policy pages is the artifact you hand over.
Activity Records
What it does
Append-only audit log of every compliance-relevant action. Filterable by action, actor, date. Exportable as CSV or JSON.
Common queries
- What happened today? — set Since to today's date, leave the rest blank.
- What did this teacher do this week? — Actor contains = their email, Since = 7 days ago.
- Where was content blocked? — Action filter =
TEXT_FILTER_HIT. - Who made age-band changes? — Action filter =
AGE_BAND_CHANGED. - What did the nightly retention run touch? — Action filter =
RETENTION_ACTION.
Click Apply Filter, then Download CSV (spreadsheet-friendly) or Download JSON (machine-readable).
District Privacy Packet
What it does
One-click ZIP containing the current compliance configuration, the last 90 days of Activity Records as CSV, all parent-request tickets, and a README pointing at Terms & Privacy and the District Addendum.
When to use it
Any time a district reviewer, parent committee, or compliance auditor asks "what does DrawSplat actually do with our students' data?" One click in the Console; emails are unnecessary.
Where to read more
- Texas Compliance — plain-language overview of SCOPE Act, FERPA, COPPA alignment.
- Terms & Privacy — formal policy.
- District Privacy Addendum — signature-ready DPA template.
- Apps Script Setup — first-time install.
- Compliance technical reference — for IT staff editing the config directly.
- Compliance Roadmap — what is built, deferred, and planned.