backend-skeleton 1.0.0-beta.5 → 1.0.0-beta.6
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/README.md +16 -8
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -5,11 +5,19 @@
|
|
|
5
5
|
[](https://www.npmjs.com/package/backend-skeleton)
|
|
6
6
|
[](https://github.com/popixoxipop-collab/backend-skeleton/releases)
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
`bskel` is a deterministic gate layer for AI-assisted (and human) backend work: before a change is
|
|
9
|
+
allowed to count as done, `bskel` checks it against disk — not against what an agent or a person
|
|
10
|
+
claims. Is this branch actually based on the real default branch? Does this "new" module collide
|
|
11
|
+
with one that already exists elsewhere in the codebase? Does the emitted contract still match the
|
|
12
|
+
source it claims to describe? Did a hand-finished file just get silently overwritten? Every one of
|
|
13
|
+
those is a gate backed by a `content-hash` on disk, not a prompt instruction a future session could
|
|
14
|
+
ignore, forget, or talk itself past.
|
|
15
|
+
|
|
16
|
+
Scaffolding codegen — Java/Spring Boot, Python/FastAPI, and TypeScript/JavaScript Express repos,
|
|
10
17
|
feature_id-scoped machine-readable contracts, UUID-addressable field handles, and stack-choice
|
|
11
|
-
(e.g. ngrok) wiring —
|
|
12
|
-
|
|
18
|
+
(e.g. ngrok) wiring — rides on top of that same gate machinery. It's useful on its own, but the
|
|
19
|
+
reason the gates exist first is what makes the codegen safe to trust in a brownfield repo, instead
|
|
20
|
+
of just another thing to double-check by hand.
|
|
13
21
|
|
|
14
22
|
`bskel` exists because a previous ad-hoc agent-driven scaffolding attempt branched a worktree 658
|
|
15
23
|
commits behind the real default branch and never noticed. Every gate in this tool is a regression
|
|
@@ -231,10 +239,10 @@ audited, never silent.
|
|
|
231
239
|
## Security model
|
|
232
240
|
|
|
233
241
|
`bskel` generates code that runs in production, so it was put through an adversarial security
|
|
234
|
-
review (Codex, security-only lens, independent of the build process) —
|
|
235
|
-
with an inline `D-security-N` comment at its exact location in the code
|
|
236
|
-
|
|
237
|
-
section):
|
|
242
|
+
review (Codex, security-only lens, independent of the build process) — 10 numbered items, all
|
|
243
|
+
fixed, each with an inline `D-security-N` comment at its exact location in the code (the last item
|
|
244
|
+
bundles three additional lower-priority fixes from Codex's own broader "other things worth
|
|
245
|
+
checking" pass). Highlights (full record in `DECISIONS.md`'s "Security hardening pass" section):
|
|
238
246
|
|
|
239
247
|
- **Prototype-pollution guards** everywhere a user-controlled string indexes a plain object
|
|
240
248
|
(`operation_id` values like `"constructor"`/`"__proto__"` are rejected, not silently resolved via
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "backend-skeleton",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.6",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"description": "
|
|
5
|
+
"description": "Deterministic gate layer for AI-assisted backend changes -- blocks brownfield collisions and contract/handle drift via disk-hash checks before code ships. Scaffolding codegen included (Java/Spring, Python/FastAPI, TypeScript/Express).",
|
|
6
6
|
"license": "AGPL-3.0-or-later",
|
|
7
7
|
"repository": {
|
|
8
8
|
"type": "git",
|