Files
krow_backend/knowledge/conduct-and-venue-standards.md
Aravind a222dcd3e4
Some checks failed
CI / test (push) Has been cancelled
CI / fixture (push) Has been cancelled
Add evals for every shipped agent, a policy corpus, and CI
§9 says no agent ships without evals. Eight of the nine had none: the two
other suites in evals/ are harness fixtures rather than agents in the
registry, so the rule was being met by one agent in nine.

Evals — 40 new cases, five per agent, every one carrying mustNotLeak:

  - the agent is loaded from its real spec in agents/*.md rather than
    written out again in Go. A hand-copied agent tests the copy: it keeps
    passing after somebody edits the spec, which is the moment it most
    needed to fail.
  - callNamed calls the tool a case names. toolThenAnswer always called
    tools[0], so seven of positions-agent's eight tools were unreachable,
    and a boundary nothing calls is a boundary nothing tests.
  - seedWorkspace fills BOTH tenants. A leak test against an empty second
    tenant cannot fail.

Verified by breaking workersByScore's org predicate: six cases across four
agents fail with LEAKED "RIVAL".

Knowledge — six policy documents, taking the corpus from 2 to 8 (34
chunks). Three restricted to admin and employer, five tenant-wide. They
cover what the tools cannot: a tool reports how many shifts went unworked,
a policy says what cover costs inside 24 hours.

corpus_test.go treats those documents as product rather than fixtures. The
first version was tautological — it read audience: from a file and checked
that file's audience was enforced, so opening a restricted document passed.
mustNotBeTenantWide now holds that judgement apart from the files, with the
reason recorded for each.

CI — the checks this repository already had, made unskippable. testutil
calls t.Skipf on an unreachable database, so a dead service container would
produce a green build over a suite that ran almost nothing. Simulated: go
test exits 0 with 74 tests skipped, including every tenant-isolation test.
The guard exits 1 and names them, while still allowing TestLive* to skip
without a model key.

This CI tests; it does not deploy. The README's claim that migrations are
run by CI against the target database remains aspirational.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0186JgqQUCDS8ZwGmyw3ymWu
2026-08-28 13:52:46 +05:30

48 lines
1.8 KiB
Markdown

---
source: policy_docs
audience: tenant
title: Conduct and Venue Standards
---
# Arriving for a shift
Arrive fifteen minutes before the scheduled start, changed and ready to be
briefed. The scheduled start is when work begins, not when you walk in.
Sign in through the app on site. Signing in from elsewhere, or asking somebody
to sign in for you, is treated as a falsified record rather than a shortcut.
# Uniform
Black trousers or skirt, plain black shoes with a closed toe, and the venue's
own top unless told otherwise. Where a venue supplies a top it is returned
laundered at the end of the assignment.
Jewellery is limited to a plain band and small studs in kitchen and bar roles.
Long hair is tied back for any role handling food or working near equipment.
# Alcohol and drugs
No alcohol is consumed on shift, including at the end of an event while the bar
is still open to guests. A worker who appears impaired is stood down for the
shift and paid for the hours already worked; the conversation happens the next
working day, not on the floor.
Staff may refuse service to a guest they judge to be intoxicated, and that
judgement is supported by the venue. A worker overruled by a client on this
point should record it and tell the venue manager.
# Phones
Phones stay out of sight in service areas. Checking a rota or responding to an
operational message is fine on a break or with a supervisor's nod.
# Speaking about the venue and its guests
Nothing about a guest, a client or an event goes outside the shift. This
includes naming a venue alongside a guest on social media, which is the form
this usually takes and the one people do not think of as a disclosure.
Photographs at private events need the client's permission, which the venue
manager holds or does not — ask rather than assume.