BUILDING Parts of this page describe what is not built yet, and each says so.
AIPolicy
A AIPolicy as RunningLake's configuration repository declares it, at ai/policy.yaml. Generated from the Go types the control plane decodes this file into, so it checks the shape the gate reads — field names and types, and which fields may exist. The gate also applies rules no schema can express — required fields inside spec among them — so a file this schema accepts can still be refused by `rl diff`. Take #/properties/spec for the spec alone.
File: ai/policy.yaml
Fields
| Field | Type | Required | Meaning |
|---|---|---|---|
apiVersion |
string | Yes |
The config schema's version, which is independent of the HTTP API's (rule unsupported-api-version). Values: |
kind |
string | Yes |
The kind this file declares. A kind that disagrees with the file's path is refused (rule kind-mismatch). Values: |
metadata |
object | Yes |
No description
|
metadata. |
string | Yes |
The resource's name, which is also its path segment. It must be the name this file's path gives it (rule name-mismatch). |
metadata. |
map of string | No |
No description
|
metadata. |
map of string | No |
No description
|
spec |
object | No |
AIPolicySpec is what AI may do in one project, and for how long it may keep what it sees. One per project, named default, at ai/ |
spec. |
boolean | No |
Enabled turns AI on for the project. Left out, it follows the plan: on for a trial, off for a team. Turning it on needs an owner or admin to approve. |
spec. |
boolean | No |
Sampling lets AI read sample rows and column profiles. Default off. Turning it on needs an owner or admin to approve. |
spec. |
object | No |
PromptText keeps the prompts and replies of the project's AI tasks, for a few days. Default off, and never offered on a trial. Turning it on needs an owner or admin to approve, with a fresh sign-in. |
spec. |
boolean | No |
Enabled keeps prompt text. Default off. |
spec. |
integer | No |
RetentionDays is how many days prompt text is kept: 1 to 30. A longer period needs an owner or admin to approve. |
spec. |
array of string | No |
ExcludedLayers are the layers AI never reads. Left out, every restricted layer is excluded; written, the list is the whole exclusion, so an empty list excludes none. Removing a layer from it, and writing it where it was left out, need an owner or admin to approve. Once the project declares a layer, a name that no Layer declares is refused, because it would exclude nothing; before that, a name that is no layer excludes nothing. |
spec. |
string | No |
Release is the AI release the project uses: follow_ |
spec. |
boolean | No |
LogExcerpts lets a failed task's log lines be sent to the model. Default off. Turning it on needs an owner or admin to approve. |
A nested field is written with its parents, spec.a.b; an item of a list is
[] and a value of a map is *. Required means the
parent object must carry the field; the rules a schema cannot express, such as a field that
is required only inside spec, are checked by rl diff.
The schema
This page is read from the kind’s published schema, at
https://runninglake.com/schema/v1alpha1/aipolicy.json. An editor that follows it checks a file of this kind as you
type. To see the fields of a kind’s spec from the command line, run rl schema
with the kind’s name: it works offline and prints what the gate accepts. The
command reference has the rest.