# tools/core/strings/conduct.strings.ts

> 28 lines of code and 5 definitions.

Tree: Coordination tree
Language: typescript
Layer: product
Canonical: https://banes-lab.com/anatomy/coordination#file-coordination-tools-core-strings-conduct-strings-ts
Source text: https://banes-lab.com/assets/sources/source.070bc7dfcf980b8796ca6785dbcbacec8fe2485559b08936054da52387be4600.generated.txt

## Definitions

- `rosterMissing` (lexical_declaration, line 1, exported)
- `undeclaredHalf` (lexical_declaration, line 5, exported)
- `rowMissing` (lexical_declaration, line 13, exported)
- `rowMalformed` (lexical_declaration, line 20, exported)
- `halfStated` (lexical_declaration, line 27, exported)

## Used by

- [tools/core/runners/conduct.runner.ts](https://banes-lab.com/source/coordination/tools/core/runners/conduct.runner.ts.md)

## Source

```typescript
export const rosterMissing = function rosterMissing(target: string): string {
    return `REFUSED  ${target} does not exist, so there is no roster to write.\n`;
};

export const undeclaredHalf = function undeclaredHalf(value: string, questions: readonly string[]): string {
    return (
        `REFUSED  ${value} is not a value the third cell accepts. The cell takes the id of a registered check that ` +
        "observes the half; `none` when the half could be checked and no check exists yet; `—` when the " +
        `entry has no checkable half; or the question the half fails (${questions.join(", ")}).\n`
    );
};

export const rowMissing = function rowMissing(slug: string, target: string): string {
    return (
        `REFUSED  ${slug} has no row on ${target}. The coverage check only reads rules the roster lists, so add the ` +
        "row first.\n"
    );
};

export const rowMalformed = function rowMalformed(slug: string): string {
    return (
        `REFUSED  The row for ${slug} does not have the roster's columns, so the tool cannot find the third cell ` +
        "without risking the evidence cell beside it. Correct the row by hand, then run the command again.\n"
    );
};

export const halfStated = function halfStated(slug: string, value: string): string {
    return (
        `HALF  ${slug} now states ${value} in its third cell. A row with an empty third cell has not been assessed ` +
        "yet, so the remaining assessments can be counted from the table.\n"
    );
};
```
