You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 5aa3718
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: CHANGELOG.md
+5-4Lines changed: 5 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -60,12 +60,13 @@ generator catalog and the Atlas evaluation are 1.2 work.
60
60
61
61
### Added
62
62
63
-
- **Agent skills: a cost test for owned generators.** The `metaobjects-codegen` skill now says when not to write a generator: only when generator plus
64
-
output is smaller than the hand-written code it replaces (generator code counted as
65
-
hand-written cost), more instances of the shape are expected, or drift protection is the
63
+
- **Agent skills: a cost test for owned generators.** The `metaobjects-codegen` skill now says when not to write a generator: only when generator code plus
64
+
its generated output and added metadata is fewer lines than the hand-written code it
65
+
replaces, more instances of the shape are expected, or drift protection is the
66
66
point; a general-shape generator belongs in the library. The `metaobjects-audit` skill applies
67
67
the same test: a one-off hand-written layer that fails it is reported as acceptable, and any
68
-
generated-share figure must carry the net hand-written line change and is never a target.
68
+
generated-share figure must carry the net hand-written line change (a figure to report, not
69
+
the test) and is never a target.
69
70
Documentation only; no code or generator changed.
70
71
- **TypeScript: the `cube-model` reference generator (FR-044 Plan 4).** `cubeModel()` writes the
71
72
reporting vocabulary as Cube data-model files, `model/cubes/<Cube>.yml`: a cube for each
Copy file name to clipboardExpand all lines: fixtures/agent-context-conformance/java-kotlin-react-tanstack/expected/.claude/skills/metaobjects-audit/SKILL.md
+6-4Lines changed: 6 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,8 +8,9 @@ description: Use when assessing how well a project has adopted MetaObjects — g
8
8
**Thesis.** Typed metadata is the durable spine; generated code is the disposable
9
9
artifact. Hand-writing a layer the metadata could own creates a second source of
10
10
truth for one fact — it will drift. This audit hunts those second sources of truth
11
-
and proposes folding them into the spine — where doing so costs fewer hand-written lines
12
-
than it saves, more of that shape are coming, or silent drift is the risk. A one-off layer
11
+
and proposes folding them into the spine — where the generator code plus its generated output
12
+
and added metadata is fewer lines than the hand-written code it replaces, more of that shape
13
+
are coming, or silent drift is the risk. A one-off layer
13
14
that fails that cost test is acceptable, not a defect.
Copy file name to clipboardExpand all lines: fixtures/agent-context-conformance/java-kotlin-react-tanstack/expected/.claude/skills/metaobjects-codegen/references/owning-generators.md
+2-4Lines changed: 2 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -55,10 +55,8 @@ written.
55
55
**Is it worth a generator? Run the cost test first.** Write an adopter-owned generator only
56
56
when at least one holds:
57
57
58
-
1.**It is smaller.** The generator plus its emitted output, plus the metadata it adds, is
59
-
fewer lines than the hand-written code it replaces. Count generator code as hand-written
60
-
cost: it is code the team reads, tests and maintains. A generated-line total does not
61
-
count; the emitted files cost nothing to write but the generator that makes them does.
58
+
1.**It is smaller.** The generator code plus its generated output, plus the metadata it
59
+
adds, is fewer lines than the hand-written code it replaces.
62
60
2.**More instances are coming.** The app will keep adding entities, routes or events of this
63
61
shape, so the generator's cost is paid back as the model grows.
64
62
3.**Drift protection is the point.** A change to the model could pass the compiler and go
Copy file name to clipboardExpand all lines: fixtures/agent-context-conformance/java-react/expected/.claude/skills/metaobjects-codegen/references/owning-generators.md
+2-4Lines changed: 2 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -55,10 +55,8 @@ written.
55
55
**Is it worth a generator? Run the cost test first.** Write an adopter-owned generator only
56
56
when at least one holds:
57
57
58
-
1.**It is smaller.** The generator plus its emitted output, plus the metadata it adds, is
59
-
fewer lines than the hand-written code it replaces. Count generator code as hand-written
60
-
cost: it is code the team reads, tests and maintains. A generated-line total does not
61
-
count; the emitted files cost nothing to write but the generator that makes them does.
58
+
1.**It is smaller.** The generator code plus its generated output, plus the metadata it
59
+
adds, is fewer lines than the hand-written code it replaces.
62
60
2.**More instances are coming.** The app will keep adding entities, routes or events of this
63
61
shape, so the generator's cost is paid back as the model grows.
64
62
3.**Drift protection is the point.** A change to the model could pass the compiler and go
Copy file name to clipboardExpand all lines: fixtures/agent-context-conformance/python/expected/.claude/skills/metaobjects-codegen/references/owning-generators.md
+2-4Lines changed: 2 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -55,10 +55,8 @@ written.
55
55
**Is it worth a generator? Run the cost test first.** Write an adopter-owned generator only
56
56
when at least one holds:
57
57
58
-
1.**It is smaller.** The generator plus its emitted output, plus the metadata it adds, is
59
-
fewer lines than the hand-written code it replaces. Count generator code as hand-written
60
-
cost: it is code the team reads, tests and maintains. A generated-line total does not
61
-
count; the emitted files cost nothing to write but the generator that makes them does.
58
+
1.**It is smaller.** The generator code plus its generated output, plus the metadata it
59
+
adds, is fewer lines than the hand-written code it replaces.
62
60
2.**More instances are coming.** The app will keep adding entities, routes or events of this
63
61
shape, so the generator's cost is paid back as the model grows.
64
62
3.**Drift protection is the point.** A change to the model could pass the compiler and go
0 commit comments