Skip to content

Help

Who sees what

Fourteen roles, enforced on the server. The two that matter commercially.

A production is not a team of equals, and a tool that treats it as one is a tool a producer will not use. ScriptLock has fourteen roles, and every check happens on the server — a screen hiding a button is a convenience, never the gate.

RoleThe short version
OwnerEverything, except writing the audit log — nobody can do that
ExecutiveThe script by link, and the budget topsheet only
WriterThe script. Never the budget — not the topsheet, not a total
DirectorThe script to comment on, shots in full, the schedule to read
Co-directorThe same, with shots to edit rather than own
Assistant directorBreakdown and schedule in full, the script to read
Script supervisorAnnotations and the take log in full
ArtistTheir own sides. Never the whole script, never a download
ProductionSchedule, budget, people, locations in full
TravelsSchedule, people, locations — no script at all, by design, because this is the role most often given to somebody outside the company
AccountsBudget and documents in full
CrewTheir department's scenes
PostPost in full, the script and the take log to read
GuestThe script by link, nothing else

The two that are not negotiable

An artist can never see more of the script than their own sides. Ask the engine to widen it and it refuses; ask the database and a constraint refuses; and the refusal itself is written to the audit log. Three layers for one promise, because that promise is what makes a producer willing to put a script on a platform at all.

Nobody can make the audit log writable, including the owner. The running service has no permission to delete a row from it.

Overrides

A production can raise or lower a role's level for one resource, with a reason, and it is an audited row rather than a setting. A document can override for itself. An override can never grant more than its author holds, and the three refusals above are refused whoever asks.

What a stranger gets

404, not 403. Somebody with a valid account who is not on your production is not told that it exists.


Wrong, or missing something? hello@scriptlock.app and say which page.