@monosmith/plugin-sdk 2.0.0-beta.12 → 2.0.0-beta.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@monosmith/plugin-sdk",
3
- "version": "2.0.0-beta.12",
3
+ "version": "2.0.0-beta.13",
4
4
  "description": "The TypeScript SDK for writing smith plugins: the protocol's types, the serve loop, a test host, the conformance checks, templating and key-order-keeping JSON editing. No runtime dependencies.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -1307,15 +1307,28 @@ export const protocolSchema = {
1307
1307
  ]
1308
1308
  },
1309
1309
  "Finding": {
1310
- "description": "Finding is one check. Every failed finding names its remedy.",
1310
+ "description": "Finding is one check. Every failed finding names its problem and its remedy.",
1311
1311
  "type": "object",
1312
1312
  "properties": {
1313
1313
  "check": {
1314
- "type": "string"
1314
+ "type": "string",
1315
+ "description": "Check is the rule, stated as it should hold (\"golangci-lint is 2.15.0, as in CI\"). A passing finding is listed by it."
1315
1316
  },
1316
1317
  "ok": {
1317
1318
  "type": "boolean"
1318
1319
  },
1320
+ "problem": {
1321
+ "type": "string",
1322
+ "description": "Problem is what is wrong, in one line (\"golangci-lint is 2.14.0, CI uses 2.15.0\"). A failed finding is listed by it; one without it is listed by its Check."
1323
+ },
1324
+ "project": {
1325
+ "type": "string",
1326
+ "description": "Project is the project the finding is about, as the workspace names it (\"web\"); empty for a finding about the workspace itself. The host files a finding under its project, so the Check, Problem and Detail need not name it."
1327
+ },
1328
+ "area": {
1329
+ "type": "string",
1330
+ "description": "Area is the part of the workspace a workspace-wide finding is about, in one lowercase word: \"toolchain\", \"ci\", \"lint\", \"dependencies\", \"release\", \"git\" or \"config\". A finding with a Project has none."
1331
+ },
1319
1332
  "detail": {
1320
1333
  "type": "string"
1321
1334
  },
@@ -602,10 +602,31 @@ export interface FileEdit {
602
602
  content?: string;
603
603
  delete?: boolean;
604
604
  }
605
- /** Finding is one check. Every failed finding names its remedy. */
605
+ /** Finding is one check. Every failed finding names its problem and its remedy. */
606
606
  export interface Finding {
607
+ /**
608
+ * Check is the rule, stated as it should hold ("golangci-lint is 2.15.0, as in CI"). A passing
609
+ * finding is listed by it.
610
+ */
607
611
  check: string;
608
612
  ok: boolean;
613
+ /**
614
+ * Problem is what is wrong, in one line ("golangci-lint is 2.14.0, CI uses 2.15.0"). A failed
615
+ * finding is listed by it; one without it is listed by its Check.
616
+ */
617
+ problem?: string;
618
+ /**
619
+ * Project is the project the finding is about, as the workspace names it ("web"); empty for a
620
+ * finding about the workspace itself. The host files a finding under its project, so the Check,
621
+ * Problem and Detail need not name it.
622
+ */
623
+ project?: string;
624
+ /**
625
+ * Area is the part of the workspace a workspace-wide finding is about, in one lowercase word:
626
+ * "toolchain", "ci", "lint", "dependencies", "release", "git" or "config". A finding with a
627
+ * Project has none.
628
+ */
629
+ area?: string;
609
630
  detail?: string;
610
631
  remedy?: string;
611
632
  /** Warning true reports a problem without failing doctor. */
@@ -1,3 +1,3 @@
1
1
  export { scaffoldProject } from './scaffold-project.use-case.ts';
2
2
  export type { ScaffoldOptions } from './scaffold-project.use-case.ts';
3
- export { scaffoldData } from './scaffold-data.mapper.ts';
3
+ export { scaffoldData } from './template-fields.mapper.ts';
package/scaffold/index.js CHANGED
@@ -1,2 +1,2 @@
1
1
  export { scaffoldProject } from './scaffold-project.use-case.js';
2
- export { scaffoldData } from './scaffold-data.mapper.js';
2
+ export { scaffoldData } from './template-fields.mapper.js';
@@ -1,5 +1,5 @@
1
1
  import { writeTemplates } from '../templating/index.js';
2
- import { scaffoldData } from './scaffold-data.mapper.js';
2
+ import { scaffoldData } from './template-fields.mapper.js';
3
3
  /**
4
4
  * The answer to `generate` for a scaffold: renders the templates into the new
5
5
  * project, never overwriting a file, and reports what it wrote. A language