COR Audit Interviews
Your call time
All times are Mountain (Edmonton). Find your name.
The four you will almost certainly get
If you only have twenty minutes, drill these.
Questions and answers by role
Tap your role, then tap any question.
Answers describe how Knights Spraying actually works. Nothing here asks you to describe something that did not happen. If paperwork went in late, say what actually happened and that the paperwork was written up late.
Managers, senior management and committee members: some answers are marked Read the prep pack. Those have a second half that is not in the app — get the printed pack from Terrence before your call.
Is anyone hurt or needing medical help?
If yes — call 911 now. Everything else waits.
CALL 911Freeze the scene. Do not move anything unless there is imminent danger to the crew.
Which site are you on?
Pick the client so we load the right call chain.
What happened?
Pick the incident type.
Emergency procedure
Call these contacts, in order
Opens your Messages app with all numbers filled in and a template message you can edit.
What are you sending?
Photograph the receipt
Fill the frame and keep the total readable. Bookkeeping reads the vendor, amount, date and GST straight off the picture.
Send this receipt
Expense account Required
Pick an expense account — bookkeeping needs it to code the transaction in QuickBooks.
Customer Optional
Job / PO / Site Optional
Submitted by Optional
Photo attached as a real file to info@knightsspraying.ca. Vendor, amount, date and GST are read from the image.
Sent to bookkeeping
Reimbursement
For things you paid for out of your own pocket. Personal card, cash, or e-transfer. If it went on a company card, use Credit Card Receipt instead.
You will need a photo of the receipt. No photo means no reimbursement. Janine keys in the amount and GST from the picture, so keep the vendor, total, date and GST readable in the frame.
Approved claims are paid into your bank account with your regular pay, at the end of the next pay period.
Claim submitted
Janine will review it and enter the amount from your photo.
Photograph the fuel receipt
Fill the frame and keep the total, litres and date readable. The next screen lets you fix anything the OCR missed.
Check and file
seasonal rental (May–August only)
Fuel receipt filed
Inventory
Take a fresh count on a truck, or see what is on the fleet right now.
Receive shipment
Adds to what's already counted at the location. No full recount.
Received by Required
Pick from this section's list, or type a new name.
How many arrived. Not the new total.
Recent shipments
What has landed at each location lately. Newest first.
Shipment log
Every shipment received, newest first. PIN-gated for the bookkeeper.
Find an item
Type any part of the name. Tap a result to see which units are carrying it right now.
Pick a unit
Which truck (or the trailer) are you counting?
Update inventory
Change only what has changed since the last count. Blank means zero.
Submitted by Required
Live inventory
Latest count from each unit. Tap a unit to see the full list.
Unit
Combine units
Tap the units to include. Combined total updates below.
Recent submissions
Last 20 receipts you've submitted from this phone.
Ask Signet
Ask about a herbicide, a program mix, or how part of this app works. Signet answers from its own reference data only — if it does not know, it says so.
Reading Signet’s reference data…
Signet Bot never does your mixing math — the Herbicide Calculator does. Every question is logged so the office can check what the bot is telling the crew.
Ideas
A place for the crew to say what would make the field job easier. Post an idea, or vote on the others.
Submit an idea
Short title, then a couple sentences on what and why. Real name, no anonymous posts.
Submitted by Required
Crew ideas
Sorted by net votes. Tap the arrows to up-vote or down-vote. Tap an idea for detail.
You are voting as
Safety Tickets
Your safety tickets, uploads, and compliance.
My Tickets
Employee Required
Your current safety tickets.
Upload Ticket
Add the latest card or certificate. A new upload replaces the previous ticket of the same type.
Tickets are visible to KSI leadership. Metadata is visible to the crew. Do not upload documents showing your SIN or home address.
Compliance Table
Role Requirements
Set requirement per course per role. R = Required, O = Orientation-only, L = Limited access, N = Not required. Changes save when you click Save Matrix.
Ticket Binder — Step 1 of 3: Pick who
Use your own tickets, or select crew members for a shared binder.
Requires Leadership — other employees’ ticket photos are protected.
Step 2 of 3: Pick tickets
Step 3 of 3: Review and generate
Preview downloads the PDF. Email opens your mail app with the destination filled in.
My Tickets
No current tickets for this person.
Tools
Utilities the crew needs in the field. More coming soon.
Lightning Watch
10 km radius · 30-min rolling shutdown · Canadian Lightning Detection Network
The app must stay open on your screen for this watch to keep running. Strikes are detected by the Canadian Lightning Detection Network on a 2.5 km grid, updated every 10 minutes.
Turn the phone sideways — site photos are taken landscape.
Site Photo
Saved on this device
Site Photos
No photos yet.
LSD Tracker
Pick or type an LSD. Opens the location in Google Maps.
Or type it
LSD History
Recent lookups you opened in Maps. Tap a row to load it back into the picker.
No history yet.
Tap Open pin or Navigate to on a lookup to save it here.
Reverse Lookup
Tap the button to grab your current GPS and see the approximate LSD.
—
—
Herbicide Calculator
Rates come from the KSI cocktail book. Field crew never overrides label — this is a mixing helper, not a label lookup.
Hand Sprayer
—
How much finished spray you need in the tank. Amount below is the herbicide to dump in.
| Herbicide | Rate | Amount to add |
|---|
Industry Insights (tap to expand)
Backpack Mix
Presets come from the Herbicide Master. Percent mixes are KSI house standards; foliage-tier rates (Weed / Low Brush / High Brush) are label rates.
—
Industry Insights (tap to expand)
Packing List
Jug counts always round UP. If a herbicide has no jug data, load the closest larger multiple by hand.
| Herbicide | Rate | Total needed | Jug | # Units |
|---|
Industry Highlights
What the crew has learned about each product in the field, alongside the label facts. Read anything; submissions go to the office for review before anyone else sees them.
Industry Highlights
Viewing as
So your own submissions still awaiting review show below. Everyone else only ever sees approved highlights.
Submit a Highlight
Plain language, 250 characters. The office reviews it before it reaches the rest of the crew.
Submitted by Required
Type Required
Pending Highlights
Oldest first. Nothing here is visible to the crew yet. Approve puts it into View All and the rotating training card immediately; Reject keeps the row for audit but never shows it again.
Reviewing as Required
Employee Roster
This is the single list every name picker in Signet reads — receipts, inventory, ideas, highlights and safety tickets. Add someone here and they appear everywhere. Deactivate them and they disappear everywhere, without losing their records.
Use their full legal name. This is what safety records show.
Only if the crew calls them something else — Will for William. Their legal name stays as entered above.
Employee Record
Loading…
Accommodation
Setting Active on a currently-inactive record starts a new accommodation. Setting Not active on a currently-active record ends it.
What the person can and cannot do at work. No medical reason for the restriction.
Optional. When leadership should review whether the accommodation still applies.
Return-to-work status
Setting Active on a currently-inactive record starts a new RTO plan. Setting Not active on an active record ends it.
What the plan is, in operational terms. No medical reason.
When the plan takes effect. Defaults to today if left blank on a new plan.
Optional. When leadership should review the plan.
Medical detail (HR-designate)
File discipline entry
Praise and coaching are not disciplinary. Investigation is a placeholder while facts are gathered.
When the event, conversation or recognition happened.
Required for written, final, investigation and for any verbal after the first entry.
Preferred: Field-App-Files/HR/Discipline/<employee>/<event>-signed.pdf. Required for written and final warnings.
Change role
Current role: —
Type the role as it should appear on records going forward. Keep it short and consistent with existing titles.
Written into the role-history entry and the event log. Anyone reviewing this record later reads this line.
Terminate employment
This sets the employee to archived and closes their current role. Their record and history stay intact and can still be opened from the roster.
The termination date on the record. Uses YYYY-MM-DD.
Written into the record and the event log. Keep it factual.
Edit HR fields
Change org unit, hire date, HR notes or the timesheet pointer. Only changed fields are filed — blank a value to clear it.
Which side of the business the person reports through.
YYYY-MM-DD. Used for anniversary and tenure calculations.
External identifier used by the timesheet system. Leave blank if not applicable.
Anyone with Leadership PIN reads this. No medical detail: use the Stage 2 medical endpoint once it ships.
Read-only for most fields. Role changes, termination and HR field edits can be filed here; discipline, accommodation and RTO remain Leadership-only via curl until per-flow forms ship.
Admin
Company-wide records and configuration. Changes here reach every device.
The Ledger
Every submission this month. Populated in real time by the Signet event log.
Truncated buckets show capped when a month exceeds 500 events of one type — the count is a floor, not a total. Timestamps are Alberta time (America/Edmonton).
Settings
Local preferences for this phone.
Reference Data
Each dataset can be uploaded, exported, and rolled back. Uploads push through the Worker to every device on next launch. Requires executive sign-in.
Dataset
Version history
Appearance
Colour scheme
Saved locally — other devices keep their own choice.
Customize your palette
Pick a colour for every token. Saved on this device only.
Text size
Affects the whole app. Handy in bright sun.
Default Options
Pre-select values so shared devices are faster to use.
Home tiles
Hide tiles this user never touches.
Diagnostics
App
Storage
Network
Permissions
Offline queue
Actions
Force app update unregisters the service worker, wipes the cache, and reloads. Data is preserved.
Activity & Cache
Recent activity
Last 50 actions this device performed.
Cached photos
Weather captures
Click Counters
How often each part of Signet actually gets used. Counters are cumulative and never reset.
Per-person numbers are for leadership. Unlock with the 6-digit Leadership PIN — the same one Safety Tickets uses.
Fuel Admin
Last 20 filed fuel receipts on this device. Cross-device history is a PR #3 follow-up.
No receipts filed on this device yet.
Orphaned uploads
R2 objects with no matching D1 row. Every entry is a driver whose review screen crashed before they hit File.
No orphans.
Export Backup
Downloads every setting, history entry, activity log, weather capture, and offline queue item on this device as a JSON file. Read-only — nothing on this phone is changed.
Restoring a snapshot lives in Admin › Restore from Backup, because it overwrites this device.
Restore from Backup
Reloads a snapshot onto this device. Everything currently on this phone is replaced, including any receipts or counts still waiting in the offline queue.
This cannot be undone. Export a backup first if there is unsent work on this phone.
Document Consolidator
Turns a ZIP of documents into one indexed Markdown file with a table of contents and a chapter per original file — so a whole records folder can be read, or uploaded for analysis, in one go.
Nothing is uploaded. The ZIP is read inside this browser tab and the report comes back as a download. This screen does need a connection the first time it runs, to fetch the document readers.
Options
Leave this off for documents that were created digitally. Turn it on for photographed or scanned paper — bills of sale, dealer invoices, signed forms — which otherwise come through blank. OCR only runs on files that gave no text, and it is slow: allow a few seconds per page.
A cap keeps a run finishing. When a file is cut short the report says so on that chapter.
Past this the report splits into numbered volumes with an INDEX.md. Chapter numbers stay continuous across them.
Only useful when one long document would otherwise crowd out the rest.
Comma-separated patterns matched against the whole path. * matches anything.
Starting…
Reading the result
Check Files needing attention in the report before trusting any total — a scan run without OCR is listed there, not hidden. Anything OCR’d is labelled three ways, because OCR is transcription and not truth: no OCR’d dollar figure, VIN or serial should reach a capital asset schedule, an insurance schedule or an audit binder without someone checking the original. The report itself is a reading copy generated from files in OneDrive — do not file it as the record.
Past a few hundred documents, or a ZIP over about 300 MB, use tools/consolidate_zip.py on an office PC instead. It produces the same report with no browser limits.
About & Support
Quick actions
Latest changelog
Report a bug
A short title and what went wrong. Your name goes on it so the office can ask a follow-up. This posts to Slack #ksi-signet and lands in the Signet–Sandbox “Reported Bugs” register for triage.
Reported by Required
Device info is attached automatically: app version, build, URL, and whether you were online.
Submit an app idea
Something Signet should do that it doesn’t yet. Short title, then the why. Real name only. Posts to Slack #ksi-signet and lands in the Signet–Sandbox “Future Ideas” register.
Submitted by Required
Capture Weather
Grabs your GPS and pulls live conditions from Environment Canada. Works offline — pending captures fetch when signal returns.
—
SYNCED—
Weather captures
Last 50 on this device. Pending captures fetch conditions when signal returns.