@cmpose/core 0.7.0 → 0.8.0
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 +1 -1
- package/src/backend/describe.js +4 -2
- package/src/pins.js +2 -2
package/package.json
CHANGED
package/src/backend/describe.js
CHANGED
|
@@ -51,7 +51,7 @@ function describeBackend({ sharing } = {}) {
|
|
|
51
51
|
'src/main/kotlin/<package>/auth': 'token verification and requireUser()',
|
|
52
52
|
'src/main/kotlin/<package>/users': 'GET and DELETE /api/v1/me, PUT /api/v1/me/profile',
|
|
53
53
|
'src/main/kotlin/<package>/files': 'uploads and downloads',
|
|
54
|
-
'src/main/kotlin/<package>/feature/sample': 'the sample feature (/api/v1/items): the shape to copy (sample only)',
|
|
54
|
+
'src/main/kotlin/<package>/feature/sample': 'the sample feature (/api/v1/items paged, /api/v1/items/recent one bounded array): the shape to copy (sample only)',
|
|
55
55
|
'src/main/kotlin/<package>/sharing': 'spaces, roles and invitations (sharing only)',
|
|
56
56
|
'src/main/kotlin/<package>/openapi': 'the API description, served at /api/v1/openapi.json',
|
|
57
57
|
'src/main/resources/db/migration': 'Flyway migrations (V<n>__<name>.sql)',
|
|
@@ -71,7 +71,9 @@ function describeBackend({ sharing } = {}) {
|
|
|
71
71
|
'answers 404 NOT_FOUND exactly like a missing row: never 403. Every query filters by the owner (owner_id, or space_id with sharing) in the same query.',
|
|
72
72
|
newFeature: 'Put a new feature under src/main/kotlin/<package>/feature/<name>/ (table, repository, routes, DTOs) ' +
|
|
73
73
|
'copying feature/sample when present, otherwise the shape of files/; ' +
|
|
74
|
-
'add a new migration V<n>__<name>.sql (never edit one that has run), its tests (IDOR and validation included) and its routes in openapi/OpenApiSpec.kt.'
|
|
74
|
+
'add a new migration V<n>__<name>.sql (never edit one that has run), its tests (IDOR and validation included) and its routes in openapi/OpenApiSpec.kt. ' +
|
|
75
|
+
'A list that can grow pages with limit and an opaque cursor (as the sample\'s GET /api/v1/items, when the sample feature is present); ' +
|
|
76
|
+
'a small list with a fixed upper bound may answer in one array (as the sample\'s GET /api/v1/items/recent); never an unbounded list.',
|
|
75
77
|
newTable: 'Every new table points at its owner with REFERENCES users(id) ON DELETE CASCADE (with sharing: spaces(id) ON DELETE CASCADE), ' +
|
|
76
78
|
'so account deletion removes its rows.',
|
|
77
79
|
securityChecklist: 'Go through SECURITY-CHECKLIST.md for every new route or table: authorization, owner filter, validation at the boundary, ' +
|
package/src/pins.js
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
module.exports = Object.freeze({
|
|
4
4
|
cmp: Object.freeze({ repo: 'whinstudio/cmpose-template', ref: 'template-2026.10.21' }),
|
|
5
5
|
// The release step replaces the placeholder with the game template's tag
|
|
6
|
-
game: Object.freeze({ repo: 'whinstudio/cmpose-game-template', ref: 'game-template-2026.10.
|
|
6
|
+
game: Object.freeze({ repo: 'whinstudio/cmpose-game-template', ref: 'game-template-2026.10.21' }),
|
|
7
7
|
// The release step replaces the placeholder with the backend template's tag
|
|
8
|
-
backend: Object.freeze({ repo: 'whinstudio/cmpose-backend-template', ref: 'backend-template-2026.10.21' })
|
|
8
|
+
backend: Object.freeze({ repo: 'whinstudio/cmpose-backend-template', ref: 'backend-template-2026.10.21.1' })
|
|
9
9
|
});
|