Tags: tina4stack/tina4-python
Tags
release: 3.13.136 — AI skills: journeys/flows/completeness net, + tin… …a4-design Architect skill now maps goals -> user journeys -> system flows before features, with a completeness net for what complex builds miss and a 🗺️ marker. The tina4-developer-python skill mirrors the build-to-journeys discipline. New tina4-design skill (brand identity + UI system) added and referenced. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-Authored-By: Tina4 <82961293+tina4stack@users.noreply.github.com>
test(auth): allow cryptography as an opt-in extra, not just absent The RS256 zero-dependency guard blanket-asserted "cryptography" appears nowhere in pyproject.toml. Feature 140 (Web Push) legitimately needs cryptography for P-256 ECDH / AES-GCM (the stdlib has neither) and declares it as the opt-in `push` extra, exactly like the optional database drivers -- a plain `uv sync` installs no extras, so the default install stays dependency-free. The guard predated Web Push and shipped red in 3.13.134. It now parses the manifest and enforces the real invariant: the CORE `dependencies` list is empty and never names cryptography; an opt-in extra naming it is allowed. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-Authored-By: Tina4 <82961293+tina4stack@users.noreply.github.com>
chore(release): bump CLAUDE.md version refs to 3.13.133 (version-cons… …istency guard) The 3.13.133 bump missed the CLAUDE.md version strings the version-consistency test checks (Node title + intro; Python/Ruby `- Version:` line), so CI Tests went red on versionConsistency while behavior tests passed. No code change. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-Authored-By: Tina4 <82961293+tina4stack@users.noreply.github.com>
release: 3.13.130 - skills objectivity + terse communication Carries the skill updates (objectivity on ideas, verified claims only, terse "chat not narrate" communication) into a tagged release so install-skills.sh can pin them. Version-only + skill md; no framework code logic changed since 3.13.129. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Co-Authored-By: Tina4 <82961293+tina4stack@users.noreply.github.com>
release: bump to 3.13.129 3.13.129 = generate-model reserved-word UX (#123): loud pluralise + a --table-name <name> escape hatch, and the agent-facing resolution envelope override hint repointed from a --table X --quote quoting path (rejected: Tina4 never quotes identifiers) to --table-name. Version-guard tests green. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
lint: resolve only the PROJECT's linter, never a global one The resolver preferred a linter on PATH, so a stray global ruff/rubocop made the on-demand install and the --no-install baseline non-deterministic: on the lab (which has a global rubocop) the Ruby install test failed (install skipped -> Gemfile unmutated) and 3 baseline tests skipped. Now only the project's own linter counts (.venv for Python, the bundled rubocop for Ruby) -- a global tool is never borrowed, so linting is reproducible from the project's pinned dev dependency and the tests are deterministic on any machine. Removed the Ruby spec's conditional skip guards (the baseline is always reachable now). Matches PHP (vendor/bin) and Node (node_modules), which were already project-scoped. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
PreviousNext