@palbase/backend 39.1.1 → 39.1.2

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/docs/README.md CHANGED
@@ -265,6 +265,35 @@ group these into namespaced calls — `pb.todos.list()`, `pb.todos.create(...)`,
265
265
  `pb.todos.get(id:)`. Rename the class or the method and the operationId (and the
266
266
  generated client surface) changes; the verb/path do not affect it.
267
267
 
268
+ ### What the CLI writes into your repository
269
+
270
+ ONE directory, and everything in it is committed:
271
+
272
+ ```text
273
+ palbase/
274
+ project.json which project this checkout is bound to
275
+ palbase-env.d.ts generated from your db/*.ts — types Database.public.*
276
+ .gitattributes marks the generated files so they stay out of review diffs
277
+ environments/
278
+ local/ the stack `palbase start` runs on this machine
279
+ openapi.json the contract
280
+ roles.json the role definitions
281
+ main/ the deployed environment, same shape
282
+ ```
283
+
284
+ There is nothing to ignore. Anything that belongs to YOUR MACHINE rather than to
285
+ the project — the stack `palbase start` put in front of you, and the measurement
286
+ `palbase plan` made — lives outside the checkout, beside your credentials in
287
+ `~/.palbase/checkouts/<hash>/`. A repository that had to carry ignore rules for
288
+ generated files is a repository where nobody can see those files drift.
289
+
290
+ A checkout still holding the retired layout (`.palbase/`, or a `palbase/` with
291
+ `Generated/`, `Config/` or a root `openapi.json` in it) is REFUSED by
292
+ `palbase link`, which names what it found. There is no migration: a tree holding
293
+ both layouts carries two contracts and two clients, and nothing can say which one
294
+ a build read. Delete the old files, commit that deletion, and link again —
295
+ everything there is regenerated from the project.
296
+
268
297
  ### CLI workflow
269
298
 
270
299
  - `palbase build` — validate the tree locally exactly the way a deploy would
@@ -273,6 +273,35 @@ group these into namespaced calls — `pb.todos.list()`, `pb.todos.create(...)`,
273
273
  `pb.todos.get(id:)`. Rename the class or the method and the operationId (and the
274
274
  generated client surface) changes; the verb/path do not affect it.
275
275
 
276
+ ### What the CLI writes into your repository
277
+
278
+ ONE directory, and everything in it is committed:
279
+
280
+ ```text
281
+ palbase/
282
+ project.json which project this checkout is bound to
283
+ palbase-env.d.ts generated from your db/*.ts — types Database.public.*
284
+ .gitattributes marks the generated files so they stay out of review diffs
285
+ environments/
286
+ local/ the stack `palbase start` runs on this machine
287
+ openapi.json the contract
288
+ roles.json the role definitions
289
+ main/ the deployed environment, same shape
290
+ ```
291
+
292
+ There is nothing to ignore. Anything that belongs to YOUR MACHINE rather than to
293
+ the project — the stack `palbase start` put in front of you, and the measurement
294
+ `palbase plan` made — lives outside the checkout, beside your credentials in
295
+ `~/.palbase/checkouts/<hash>/`. A repository that had to carry ignore rules for
296
+ generated files is a repository where nobody can see those files drift.
297
+
298
+ A checkout still holding the retired layout (`.palbase/`, or a `palbase/` with
299
+ `Generated/`, `Config/` or a root `openapi.json` in it) is REFUSED by
300
+ `palbase link`, which names what it found. There is no migration: a tree holding
301
+ both layouts carries two contracts and two clients, and nothing can say which one
302
+ a build read. Delete the old files, commit that deletion, and link again —
303
+ everything there is regenerated from the project.
304
+
276
305
  ### CLI workflow
277
306
 
278
307
  - `palbase build` — validate the tree locally exactly the way a deploy would
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@palbase/backend",
3
- "version": "39.1.1",
3
+ "version": "39.1.2",
4
4
  "description": "Palbase Backend SDK — class controllers (@Controller/@Get/@Post + @Body/@QueryParams/@Param), error classes, schema DSL",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -110,7 +110,7 @@
110
110
  "typescript": "^5.7.0",
111
111
  "unplugin-swc": "^1.5.11",
112
112
  "vitest": "^3.0.0",
113
- "@palbase/core": "^2.4.1"
113
+ "@palbase/core": "^2.4.2"
114
114
  },
115
115
  "publishConfig": {
116
116
  "access": "public",