@nurix/etna 0.20.45 → 0.20.46

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.
@@ -1,5 +1,5 @@
1
1
  {
2
- "fingerprint": "17e5c42fa923",
2
+ "fingerprint": "22ef866caf5b",
3
3
  "harnesses": {
4
4
  "code": {
5
5
  "plugin": "code",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "harness": "code",
3
3
  "name": "code",
4
- "version": "3.20.15",
4
+ "version": "3.20.16",
5
5
  "files": [
6
6
  ".prettierignore",
7
7
  ".prettierrc.json",
@@ -29,5 +29,5 @@
29
29
  "origin": "https://cdn.nustack.io",
30
30
  "track": "latest"
31
31
  },
32
- "digest": "a95ada7dc2ef"
32
+ "digest": "594f92e92bbb"
33
33
  }
@@ -104,7 +104,7 @@ A document names the objects it designs in `objects:`, and a source file names t
104
104
  | Document a feature (LLD) | [`templates/feature.md`](templates/feature.md) |
105
105
  | Document a feature's data flow or state | The feature doc's Flows (behaviour) and Promises (guarantees); a persisted shape belongs in the API reference (style guide § State at persistence points); component and transient state are not documented |
106
106
  | Document a workspace package | [`templates/package.md`](templates/package.md), the residual owner of `packages/{name}/**` |
107
- | Document one concern the platform handles everywhere (authentication, storage, the API protocol) | [`templates/doctrine.md`](templates/doctrine.md): design and principles, no mechanism, owns no code; written through [`references/document-sets.md`](references/document-sets.md) |
107
+ | Document one concern the platform handles everywhere (authentication, storage, the API protocol) | [`templates/doctrine.md`](templates/doctrine.md): design and principles in general form, no mechanism, no project link, owns no code; written through [`references/document-sets.md`](references/document-sets.md) |
108
108
  | Write or rework several sibling documents at once (a doctrine folder, a family of features) | [`references/document-sets.md`](references/document-sets.md): usefulness test, term table, rule ledger, render, one cold read |
109
109
  | Document one system spanning packages | [`templates/system.md`](templates/system.md): one machine end to end, never a giant feature doc |
110
110
  | Record or revise an architecture decision | [`templates/architecture-decision.md`](templates/architecture-decision.md): one AD per subject, revised in place |
@@ -87,7 +87,7 @@ A finding names the file and line, quotes the text, names its class, and propose
87
87
  | No decision of its own | A document under about six owned decisions; a section, table or bullet that states nothing the principles do not |
88
88
  | Missing reason | A rule that meets a trigger of the style guide's § Sentences (a tempting alternative, a cost, an arbitrary value, an invisible failure) and carries no reason; in doctrine, a reason the reason check judged non-obvious and the document lacks |
89
89
  | Filler | A sentence carrying no fact, rule, boundary or reason: a scene-setting opener, a generic truth used as framing, a metaphor or slogan standing in for a rule, a question |
90
- | Wrong layer | Mechanism, a product's specifics or build state in doctrine; history in a truth document |
90
+ | Wrong layer | Mechanism, a product's specifics or build state in doctrine, or a project link: the repository's own domain example, vendor, stack or document by path; history in a truth document |
91
91
  | Fused reason | A rule and its reason joined into one sentence, so a reader cannot tell which half binds |
92
92
  | Two readings | A rule a reader could act on in two incompatible ways |
93
93
 
@@ -6,6 +6,8 @@ Truth document. Use for **one concern the platform handles everywhere**: authent
6
6
 
7
7
  **A doctrine document is a specification, not a description.** It states how every product handles the concern, so a product whose code differs has a gap to plan and build, and the document never records which product has built what: no `UNBUILT` marker, no "today the product…", no product's name, setting value or code root. When one product's posture against the doctrine matters, it is that product's own security overview, plan or backlog.
8
8
 
9
+ **A doctrine document is written in general form, never linked to the project that holds it.** It reads correctly when copied verbatim into any other product's repository. So it names nothing only that repository has: the product, its domain entities (a hiring product's candidates), its vendors and stack (a hosting platform, a database engine), its people, or its own documents by path (a feature document, a plan, a decision record). An example uses an object every product has (a member, an invoice, an uploaded file); where a domain object is unavoidable, it comes from a kind of product other than the repository's own. Its links reach only sibling doctrine documents and published standards. The project's own facts belong to its feature documents, system overview and decision records, which name this document in their Scope.
10
+
9
11
  **Earn the document before writing it.** List the decisions only this document would own, each checked against the documents that exist: a decision another document already states is a citation, not an owned decision. Fewer than about six owned decisions means the concern is a section of a neighbour, not a document (`references/document-sets.md` § Usefulness test).
10
12
 
11
13
  **Required:**
@@ -98,4 +100,5 @@ Principles are cited by number, sections by heading, always in parentheses: "(pr
98
100
  | The one feature that happens to use the concern most | That feature's own document, which names this document in its Scope |
99
101
  | The story of how the concern got this way | The subject's architecture decision (`decisions/`), whose Decision Changelog tail carries how it moved, and the changelog for the when |
100
102
  | A record of which product has built which part | That product's plan, backlog, or security overview |
103
+ | A description of the repository it sits in: its product, domain, stack or documents | That product's feature documents, system overview and decision records |
101
104
  | A restatement of a sibling's rule for completeness | A citation of the sibling's principle, with the one clause of context the sentence needs |
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "harness": "delivery",
3
3
  "name": "delivery",
4
- "version": "0.2.50",
4
+ "version": "0.2.51",
5
5
  "files": [
6
6
  ".prettierignore",
7
7
  ".prettierrc.json",
@@ -14,5 +14,5 @@
14
14
  "origin": "https://cdn.nustack.io",
15
15
  "track": "latest"
16
16
  },
17
- "digest": "3a2fc96cc22a"
17
+ "digest": "526d30e16b52"
18
18
  }
@@ -104,7 +104,7 @@ A document names the objects it designs in `objects:`, and a source file names t
104
104
  | Document a feature (LLD) | [`templates/feature.md`](templates/feature.md) |
105
105
  | Document a feature's data flow or state | The feature doc's Flows (behaviour) and Promises (guarantees); a persisted shape belongs in the API reference (style guide § State at persistence points); component and transient state are not documented |
106
106
  | Document a workspace package | [`templates/package.md`](templates/package.md), the residual owner of `packages/{name}/**` |
107
- | Document one concern the platform handles everywhere (authentication, storage, the API protocol) | [`templates/doctrine.md`](templates/doctrine.md): design and principles, no mechanism, owns no code; written through [`references/document-sets.md`](references/document-sets.md) |
107
+ | Document one concern the platform handles everywhere (authentication, storage, the API protocol) | [`templates/doctrine.md`](templates/doctrine.md): design and principles in general form, no mechanism, no project link, owns no code; written through [`references/document-sets.md`](references/document-sets.md) |
108
108
  | Write or rework several sibling documents at once (a doctrine folder, a family of features) | [`references/document-sets.md`](references/document-sets.md): usefulness test, term table, rule ledger, render, one cold read |
109
109
  | Document one system spanning packages | [`templates/system.md`](templates/system.md): one machine end to end, never a giant feature doc |
110
110
  | Record or revise an architecture decision | [`templates/architecture-decision.md`](templates/architecture-decision.md): one AD per subject, revised in place |
@@ -87,7 +87,7 @@ A finding names the file and line, quotes the text, names its class, and propose
87
87
  | No decision of its own | A document under about six owned decisions; a section, table or bullet that states nothing the principles do not |
88
88
  | Missing reason | A rule that meets a trigger of the style guide's § Sentences (a tempting alternative, a cost, an arbitrary value, an invisible failure) and carries no reason; in doctrine, a reason the reason check judged non-obvious and the document lacks |
89
89
  | Filler | A sentence carrying no fact, rule, boundary or reason: a scene-setting opener, a generic truth used as framing, a metaphor or slogan standing in for a rule, a question |
90
- | Wrong layer | Mechanism, a product's specifics or build state in doctrine; history in a truth document |
90
+ | Wrong layer | Mechanism, a product's specifics or build state in doctrine, or a project link: the repository's own domain example, vendor, stack or document by path; history in a truth document |
91
91
  | Fused reason | A rule and its reason joined into one sentence, so a reader cannot tell which half binds |
92
92
  | Two readings | A rule a reader could act on in two incompatible ways |
93
93
 
@@ -6,6 +6,8 @@ Truth document. Use for **one concern the platform handles everywhere**: authent
6
6
 
7
7
  **A doctrine document is a specification, not a description.** It states how every product handles the concern, so a product whose code differs has a gap to plan and build, and the document never records which product has built what: no `UNBUILT` marker, no "today the product…", no product's name, setting value or code root. When one product's posture against the doctrine matters, it is that product's own security overview, plan or backlog.
8
8
 
9
+ **A doctrine document is written in general form, never linked to the project that holds it.** It reads correctly when copied verbatim into any other product's repository. So it names nothing only that repository has: the product, its domain entities (a hiring product's candidates), its vendors and stack (a hosting platform, a database engine), its people, or its own documents by path (a feature document, a plan, a decision record). An example uses an object every product has (a member, an invoice, an uploaded file); where a domain object is unavoidable, it comes from a kind of product other than the repository's own. Its links reach only sibling doctrine documents and published standards. The project's own facts belong to its feature documents, system overview and decision records, which name this document in their Scope.
10
+
9
11
  **Earn the document before writing it.** List the decisions only this document would own, each checked against the documents that exist: a decision another document already states is a citation, not an owned decision. Fewer than about six owned decisions means the concern is a section of a neighbour, not a document (`references/document-sets.md` § Usefulness test).
10
12
 
11
13
  **Required:**
@@ -98,4 +100,5 @@ Principles are cited by number, sections by heading, always in parentheses: "(pr
98
100
  | The one feature that happens to use the concern most | That feature's own document, which names this document in its Scope |
99
101
  | The story of how the concern got this way | The subject's architecture decision (`decisions/`), whose Decision Changelog tail carries how it moved, and the changelog for the when |
100
102
  | A record of which product has built which part | That product's plan, backlog, or security overview |
103
+ | A description of the repository it sits in: its product, domain, stack or documents | That product's feature documents, system overview and decision records |
101
104
  | A restatement of a sibling's rule for completeness | A citation of the sibling's principle, with the one clause of context the sentence needs |
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "harness": "etna",
3
3
  "name": "etna",
4
- "version": "1.5.40",
4
+ "version": "1.5.41",
5
5
  "files": [
6
6
  ".prettierignore",
7
7
  ".prettierrc.json",
@@ -14,5 +14,5 @@
14
14
  "origin": "https://cdn.nustack.io",
15
15
  "track": "latest"
16
16
  },
17
- "digest": "dd5546415b1b"
17
+ "digest": "88e0c2a05497"
18
18
  }
@@ -104,7 +104,7 @@ A document names the objects it designs in `objects:`, and a source file names t
104
104
  | Document a feature (LLD) | [`templates/feature.md`](templates/feature.md) |
105
105
  | Document a feature's data flow or state | The feature doc's Flows (behaviour) and Promises (guarantees); a persisted shape belongs in the API reference (style guide § State at persistence points); component and transient state are not documented |
106
106
  | Document a workspace package | [`templates/package.md`](templates/package.md), the residual owner of `packages/{name}/**` |
107
- | Document one concern the platform handles everywhere (authentication, storage, the API protocol) | [`templates/doctrine.md`](templates/doctrine.md): design and principles, no mechanism, owns no code; written through [`references/document-sets.md`](references/document-sets.md) |
107
+ | Document one concern the platform handles everywhere (authentication, storage, the API protocol) | [`templates/doctrine.md`](templates/doctrine.md): design and principles in general form, no mechanism, no project link, owns no code; written through [`references/document-sets.md`](references/document-sets.md) |
108
108
  | Write or rework several sibling documents at once (a doctrine folder, a family of features) | [`references/document-sets.md`](references/document-sets.md): usefulness test, term table, rule ledger, render, one cold read |
109
109
  | Document one system spanning packages | [`templates/system.md`](templates/system.md): one machine end to end, never a giant feature doc |
110
110
  | Record or revise an architecture decision | [`templates/architecture-decision.md`](templates/architecture-decision.md): one AD per subject, revised in place |
@@ -87,7 +87,7 @@ A finding names the file and line, quotes the text, names its class, and propose
87
87
  | No decision of its own | A document under about six owned decisions; a section, table or bullet that states nothing the principles do not |
88
88
  | Missing reason | A rule that meets a trigger of the style guide's § Sentences (a tempting alternative, a cost, an arbitrary value, an invisible failure) and carries no reason; in doctrine, a reason the reason check judged non-obvious and the document lacks |
89
89
  | Filler | A sentence carrying no fact, rule, boundary or reason: a scene-setting opener, a generic truth used as framing, a metaphor or slogan standing in for a rule, a question |
90
- | Wrong layer | Mechanism, a product's specifics or build state in doctrine; history in a truth document |
90
+ | Wrong layer | Mechanism, a product's specifics or build state in doctrine, or a project link: the repository's own domain example, vendor, stack or document by path; history in a truth document |
91
91
  | Fused reason | A rule and its reason joined into one sentence, so a reader cannot tell which half binds |
92
92
  | Two readings | A rule a reader could act on in two incompatible ways |
93
93
 
@@ -6,6 +6,8 @@ Truth document. Use for **one concern the platform handles everywhere**: authent
6
6
 
7
7
  **A doctrine document is a specification, not a description.** It states how every product handles the concern, so a product whose code differs has a gap to plan and build, and the document never records which product has built what: no `UNBUILT` marker, no "today the product…", no product's name, setting value or code root. When one product's posture against the doctrine matters, it is that product's own security overview, plan or backlog.
8
8
 
9
+ **A doctrine document is written in general form, never linked to the project that holds it.** It reads correctly when copied verbatim into any other product's repository. So it names nothing only that repository has: the product, its domain entities (a hiring product's candidates), its vendors and stack (a hosting platform, a database engine), its people, or its own documents by path (a feature document, a plan, a decision record). An example uses an object every product has (a member, an invoice, an uploaded file); where a domain object is unavoidable, it comes from a kind of product other than the repository's own. Its links reach only sibling doctrine documents and published standards. The project's own facts belong to its feature documents, system overview and decision records, which name this document in their Scope.
10
+
9
11
  **Earn the document before writing it.** List the decisions only this document would own, each checked against the documents that exist: a decision another document already states is a citation, not an owned decision. Fewer than about six owned decisions means the concern is a section of a neighbour, not a document (`references/document-sets.md` § Usefulness test).
10
12
 
11
13
  **Required:**
@@ -98,4 +100,5 @@ Principles are cited by number, sections by heading, always in parentheses: "(pr
98
100
  | The one feature that happens to use the concern most | That feature's own document, which names this document in its Scope |
99
101
  | The story of how the concern got this way | The subject's architecture decision (`decisions/`), whose Decision Changelog tail carries how it moved, and the changelog for the when |
100
102
  | A record of which product has built which part | That product's plan, backlog, or security overview |
103
+ | A description of the repository it sits in: its product, domain, stack or documents | That product's feature documents, system overview and decision records |
101
104
  | A restatement of a sibling's rule for completeness | A citation of the sibling's principle, with the one clause of context the sentence needs |
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nurix/etna",
3
- "version": "0.20.45",
3
+ "version": "0.20.46",
4
4
  "description": "Bootstrap a project with a Nurix harness — writes the committed contract (CLAUDE.md, AGENTS.md, .claude/harness.json, settings.json, the mount hook) and mounts the harness itself, gitignored, from a bundled payload; sessions keep it current from the CDN.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -46,5 +46,5 @@
46
46
  "agent",
47
47
  "plugin"
48
48
  ],
49
- "etnaFingerprint": "17e5c42fa923"
49
+ "etnaFingerprint": "22ef866caf5b"
50
50
  }