v3.1.9 - Install and Git policy hardening
v3.1.9 - Safer install, update, and Git policy
Historical install note: For installation, use the uploaded GitHub Release asset attached to this release. Do not use GitHub "Download ZIP" or autogenerated "Source code" archives as install packages. New installs should prefer the latest release.
v3.1.9 makes .knowledge safer to install, update, package, and commit.
Added
tools/package-release.jsbuilds the curated install artifactdist/knowledge-v3.1.9.zipwith.knowledge/as the archive root.tools/install-check.jsvalidates fresh installs, detects nested.knowledge/.git, identifies accidental source-repo copies, and emits JSON for agents and CI.tools/update-system-files.jsupdates only framework and system files while preserving project-specific knowledge.tools/git-policy.js,docs/git-policy.md, and Git policy templates for installed.knowledge/.gitignoreand optional.gitattributes.tools/self-test-install-policy.jsprovides reproducible install, update, and Git policy checks.
Changed
- Release packaging now excludes source metadata, runtime state, logs, generated reports, caches, temp files, local archives, and backups.
- Installed
.knowledge/.gitignorenow comes fromtemplates/git-policy/.knowledge.gitignore, separate from the source repository.gitignore. - Packaged text files are LF-normalized.
READMEandQuick-Startnow document fresh install, existing.knowledgeupdate, and migration from non-.knowledge.- Version and seed schema markers are updated to
3.1.9.
Fixed
install-check --fix --yesnow reports consistent post-fix status and writespre_fix,fixes_applied, andpost_fix.- Nested
.knowledge/.gitrepair is explicit and backup-based, not a silent deletion. - Generated and runtime files are ignored by default in installed repositories.
Upgrade
Do not overwrite an existing .knowledge/ folder. Extract the new release artifact to a temporary folder and run:
node .knowledge/tools/update-system-files.js --from <new-knowledge-root> --dry-run
node .knowledge/tools/update-system-files.js --from <new-knowledge-root> --apply --yes
The updater preserves project knowledge and trust state unless the user explicitly chooses a reset.
QA
- JavaScript syntax checks
- JSON parse checks
- Package release build
- Install policy self-test
- Fresh artifact smoke test
- Bad install repair smoke test
- Existing update preservation smoke test
git addsmoke test
Assets
knowledge-v3.1.9.zipknowledge-v3.1.9.zip.sha256
Known Limitations
update-system-files.jsintentionally does not prune deprecated system files automatically. Safe pruning should be done as a separate reviewed cleanup.