# configuration/strings/finding.strings.ts

> 66 lines of code and 15 definitions.

Tree: GovLab Docs
Language: typescript
Layer: product
Canonical: https://banes-lab.com/anatomy/docs#file-docs-configuration-strings-finding-strings-ts
Source text: https://banes-lab.com/source/docs/configuration/strings/finding.strings.ts.txt

Listed in [configuration/strings](https://banes-lab.com/api/source/docs/configuration/strings.md), after [configuration/strings/figure.strings.ts](https://banes-lab.com/source/docs/configuration/strings/figure.strings.ts.md) and before [configuration/strings/governance.strings.ts](https://banes-lab.com/source/docs/configuration/strings/governance.strings.ts.md).

## Definitions

- `barePathFix` (lexical_declaration, line 1, exported)
- `unlabeledFenceFix` (lexical_declaration, line 8, exported)
- `findingLine` (lexical_declaration, line 12, exported)
- `pathCollision` (lexical_declaration, line 26, exported)
- `scriptSummary` (lexical_declaration, line 34, exported)
- `fixedDocument` (lexical_declaration, line 38, exported)
- `fixSummary` (lexical_declaration, line 42, exported)
- `deadScriptsFailure` (lexical_declaration, line 46, exported)
- `strictFailure` (lexical_declaration, line 50, exported)
- `validateSummary` (lexical_declaration, line 54, exported)
- `UNTAGGED_FENCE_FIX` (lexical_declaration, line 5, exported)
- `brokenPathText` (lexical_declaration, line 22, exported)
- `deadScriptPath` (lexical_declaration, line 30, exported)
- `tallyPart` (lexical_declaration, line 58, exported)
- `SUMMARY_LABELS` (lexical_declaration, line 62, exported)

## Contained in

- [configuration/strings](https://banes-lab.com/anatomy/docs/folder-docs-configuration-strings.md)

## Used by

- [core/coordinators/markdown.coordinator.ts](https://banes-lab.com/source/docs/core/coordinators/markdown.coordinator.ts.md)
- [core/coordinators/validation.coordinator.ts](https://banes-lab.com/source/docs/core/coordinators/validation.coordinator.ts.md)
- [core/formatters/finding.formatter.ts](https://banes-lab.com/source/docs/core/formatters/finding.formatter.ts.md)
- [runtime/entrypoints/document.entrypoint.ts](https://banes-lab.com/source/docs/runtime/entrypoints/document.entrypoint.ts.md)

## Linked from

- [core/coordinators](https://banes-lab.com/anatomy/docs/folder-docs-core-coordinators.md)
- [core/formatters](https://banes-lab.com/anatomy/docs/folder-docs-core-formatters.md)
- [runtime/entrypoints](https://banes-lab.com/anatomy/docs/folder-docs-runtime-entrypoints.md)

## Source

````typescript
export const barePathFix = function barePathFix(token: string): string {
    return `path in prose must be a code span — expected: \`${token}\``;
};

export const UNTAGGED_FENCE_FIX =
    "code fence must declare a language — expected: ```<lang>  (code fences add an intent label: ```<lang> API:|EXAMPLE:|CODE:|CONFIG: <detail>)";

export const unlabeledFenceFix = function unlabeledFenceFix(token: string): string {
    return `a ${token} fence needs an intent label — expected: \`\`\`${token} <API|EXAMPLE|CODE|CONFIG>: <detail>`;
};

export const findingLine = function findingLine(
    rel: string,
    line: number,
    col: number,
    code: string,
    text: string,
): string {
    return `✖ ${rel}:${line}:${col} [${code}] ${text}`;
};

export const brokenPathText = function brokenPathText(path: string): string {
    return `"${path}" does not exist`;
};

export const pathCollision = function pathCollision(path: string, count: number, sources: string): string {
    return `✖ ${path}:1:1 [path-collision] ${count} documents route here: ${sources}`;
};

export const deadScriptPath = function deadScriptPath(rel: string, script: string, path: string): string {
    return `✖ ${rel} [dead-script-path] script "${script}" runs "${path}" — does not exist`;
};

export const scriptSummary = function scriptSummary(dead: number, manifests: number): string {
    return `package scripts: ${dead} dead path(s) across ${manifests} manifest(s)`;
};

export const fixedDocument = function fixedDocument(rel: string): string {
    return `✓ ${rel}`;
};

export const fixSummary = function fixSummary(count: number): string {
    return `govlab.docs fix: backticked bare paths in ${count} document(s)`;
};

export const deadScriptsFailure = function deadScriptsFailure(count: number): string {
    return `govlab.docs: ${count} dead package-script path(s) — failing`;
};

export const strictFailure = function strictFailure(count: number): string {
    return `govlab.docs: ${count} doc finding(s) — failing (--strict)`;
};

export const validateSummary = function validateSummary(scanned: number, withFindings: number, parts: string): string {
    return `govlab.docs validate: scanned ${scanned} document(s) — ${parts} across ${withFindings} doc(s)`;
};

export const tallyPart = function tallyPart(count: number, label: string): string {
    return `${count} ${label}`;
};

export const SUMMARY_LABELS = {
    agentSchema: "agent-schema",
    broken: "broken path",
    collision: "path-collision",
    conventions: "convention",
    deadEdge: "dead-edge",
    docStatus: "doc-status",
    location: "doc-location",
    mermaid: "mermaid-hardening",
    name: "doc-name",
    ontologyRefs: "ontology-ref",
    refs: "ref-construct",
    refsResolved: "ref",
    sections: "section-spine",
    slotRefs: "slot-ref",
    smell: "history-smell",
    spine: "spine",
    syntax: "mermaid-syntax",
} as const;
````
