docs: stamp memory version 0.5.0 and add memory versioning policy
This commit is contained in:
1 parent
0e595d8b17
commit
8c2ee5b5b2
1 file changed
+37
@@ -4,6 +4,8 @@ This guide consolidates the durable project knowledge used to develop, test,
|
||||
package, and maintain MeatSlicer. When this guide and the implementation
|
||||
disagree, the implementation and configuration files are the source of truth.
|
||||
|
||||
**Memory version: 0.5.0**
|
||||
|
||||
## Architecture
|
||||
|
||||
MeatSlicer is an endless top-down arena roguelite built with plain JavaScript
|
||||
@@ -308,6 +310,38 @@ When changing the version:
|
||||
4. Run `npm run dist`.
|
||||
5. Verify the packaged executable with `MS_VERIFY_OUT`.
|
||||
|
||||
## Memory versioning
|
||||
|
||||
The project knowledge ("memories") — this guide and the player-facing documents
|
||||
under `docs/` — carries its own `X.Y.Z` version, tracked independently of the
|
||||
game release version in `package.json`:
|
||||
|
||||
- `X` — a major milestone. Changed by the project owner only; a routine update
|
||||
or bump rule never raises it.
|
||||
- `Y` — a major feature push: a large content expansion, a major mechanic, or a
|
||||
significant restructure of the knowledge base.
|
||||
- `Z` — a small addition, a bug fix, or a single new small feature (a new
|
||||
gotcha, a corrected formula, a changed workflow, or the documentation sync
|
||||
that follows a gameplay change).
|
||||
|
||||
Components are independent counters and never roll over: `0.999.999` and
|
||||
`0.42.677` are perfectly valid, and bumping `Z` on `0.999.999` gives
|
||||
`0.999.1000`. Only `X` is exempt from automatic increases — it changes by
|
||||
explicit human edit.
|
||||
|
||||
The current version is the `**Memory version:**` stamp at the top of this
|
||||
guide; that stamp is the single source of truth.
|
||||
|
||||
When a change to durable knowledge lands (anywhere under `docs/`):
|
||||
|
||||
1. Edit the stamp: bump `Z` for a small addition or fix, `Y` for a major push,
|
||||
or — for a milestone — the project owner raises `X` by hand.
|
||||
2. Run `npm test` (docs are not loaded by the game, so the suite is unaffected)
|
||||
and commit with an imperative message naming the bump, e.g.
|
||||
`docs: record Iron Lung synergy (memory 0.5.0 -> 0.5.1)`.
|
||||
3. No `?v=` cache bump is needed — `docs/` is not served through `index.html`
|
||||
script tags; it only ships inside packages.
|
||||
|
||||
## Git workflow
|
||||
|
||||
Every completed change should be committed:
|
||||
@@ -334,3 +368,6 @@ Player-facing mechanics belong in the relevant files under `docs/`. Keep those
|
||||
documents synchronized with gameplay changes. This development guide should be
|
||||
updated whenever the build, packaging, asset, audio, release, or contribution
|
||||
workflow changes.
|
||||
|
||||
Keep the `**Memory version:**` stamp at the top of this guide current: any
|
||||
durable-knowledge change bumps it per `## Memory versioning`.
|
||||
Reference in new issue
Block a user