Releases: m0n0x41d/quint-code
v4.1.1
v4.1.0
Added
-
DRR Linking (FPF E.9): Decision records now create graph relations to hypotheses.
quint_decideaccepts newrejected_idsparameter for rejected alternatives.- Creates
selectsrelation: DRR → winner hypothesis. - Creates
rejectsrelations: DRR → each rejected alternative. - Enables queries: "What alternatives were considered for this DRR?"
-
Context Markdown Formatting:
quint_record_contextnow normalizes input to proper markdown.- Vocabulary entries formatted as definition list (
- **Term**: definition). - Invariants formatted as numbered list with line breaks.
- Vocabulary entries formatted as definition list (
-
Audit Tree Shows MemberOf Relations:
quint_audit_treenow displaysmemberOfgroupings.- Decision context alternatives are shown under
[members]section. - Member R scores displayed for comparison (no WLNK propagation per FPF spec).
- Decision context alternatives are shown under
-
Improved Tool Descriptions:
quint_proposeparameters now have actionable descriptions.depends_on: Explains WLNK impact and when to use.decision_context: Explains grouping purpose and when to use.q1-hypothesize.md: Added "Linking Checklist" before proposing hypotheses.
-
Merged
/q-auditinto/q-query: Simplified command set./q-querynow shows R_eff and dependency trees for found holons.- Removed standalone
/q-auditutility (redundant with enhanced/q-query). /q4-audit(FPF phase) remains unchanged.
-
sqlc Integration: Type-safe database queries generated from SQL.
- All database operations now use sqlc-generated code with proper type safety.
- New
db/store.gowrapper provides clean API while preserving schema bootstrap. - Added comprehensive test suite for database operations (
db/store_test.go).
-
GetHolon Query: Added query to fetch hypothesis metadata by ID (foundation for future Kind-CAL work).
-
New MCP Tools for Trust Calculus (B.3):
quint_audit_tree: Visualize assurance tree with R scores, dependencies, and CL penalties.quint_calculate_r: Compute R_eff with detailed breakdown (self score, weakest link, decay penalties).quint_check_decay: Identify holons with expired evidence (epistemic debt detection).
-
Parent ID Chain (FPF Enforcement):
- Added
parent_idforeign key to holons table for L0→L1→L2 progression tracking. - New queries:
GetHolonsByParent,GetHolonLineagefor traversing hypothesis chains. CreateHolonnow accepts parent_id parameter for linking hypothesis progression.- Enables auditable chain from L2 decision back to original L0 hypothesis.
- Added
-
Derived Phase (FPF Enforcement):
- Phase is now computed from holons.layer data instead of stored in state.json.
- New
DerivePhase()method computes phase from database state. - New
GetPhase()returns derived phase when DB available, falls back to State.Phase. - Prevents AI bypass of FPF phase controls via direct file manipulation.
-
Audit Logging (FPF Enforcement):
- New
audit_logtable tracks all MCP tool invocations. - Captures: tool name, operation, actor, target ID, input hash, result, and details.
- Instrumented tools:
quint_propose,quint_verify,quint_decide,quint_move. - Enables detection of FPF bypasses through audit trail analysis.
- Context-aware logging supports multi-session isolation.
- New
-
Self-Healing Signed Projections (FPF Enforcement):
- All hypothesis/evidence/DRR files now include
content_hashin YAML frontmatter. - New
WriteWithHash()function adds cryptographic hash (SHA-256 truncated) on write. - New
ValidateFile()detects tampering by comparing stored vs computed hash. - New
ReadWithValidation()on Tools automatically detects and logs tampering. - When tampering detected: regenerates file from DB (DB is source of truth).
- Tampering events logged to audit_log for violation tracking.
- All hypothesis/evidence/DRR files now include
-
DRR Holon Tracking:
FinalizeDecisionnow creates DRR holon in database (enables derived phase detection).- DRR holons linked to winner hypothesis via parent_id.
-
Tool Preconditions (FPF Enforcement):
- All MCP tools now validate preconditions before execution.
quint_propose: Validates title, content, and kind fields.quint_verify: Confirms hypothesis exists in L0, validates verdict.quint_test: Ensures hypothesis is in L1 (not L0), validates verdict.quint_audit: Confirms hypothesis is in L2 before audit.quint_decide: Requires L2 hypotheses exist, validates winner_id and title.quint_calculate_r/quint_audit_tree: Validates holon existence in DB.- Precondition failures logged to audit_log with BLOCKED status.
- Each error includes actionable suggestion for the user.
-
Command Contracts (FPF Enforcement):
- All FPF command prompts (q0-q5) now include formal enforcement contracts.
- YAML frontmatter with
pre,post,invariant, andrequired_toolsfields. - RFC 2119 bindings (MUST, MUST NOT, SHALL) for mandatory behaviors.
- "Invalid Behaviors" section explicitly lists protocol violations.
- "Checkpoint" section with verification checklist before phase transition.
- Success/failure path examples with few-shot learning.
- "State machine executor" mechanical persona to reduce AI improvisation.
- Defense in depth: soft gate (prompts) + hard gate (preconditions).
-
Inline Schema Migrations:
- Existing databases automatically upgraded on startup.
- Adds
parent_idandcached_r_scorecolumns to existingholonstable. - Safe to run multiple times (idempotent).
-
Holon Linking in
quint_propose:- New
depends_onparameter to declare dependencies on other holons. - New
decision_contextparameter to group alternatives under a decision. - New
dependency_clparameter (1-3) for congruence level of dependencies. - Creates
ComponentOfrelations for system holons,ConstituentOffor episteme. - Creates
MemberOfrelations for decision grouping (no R propagation). - Added SQL indexes for efficient WLNK traversal.
- Documented structural relations (B.1.1) in CLAUDE.md.
- New
-
Evidence Freshness Management (FPF B.3.4):
- New
waiverstable for tracking temporary risk acceptance with full audit trail. quint_check_decaynow supports three modes:- Report mode (default): Shows freshness report with STALE/FRESH/WAIVED holons.
- Deprecate mode: Downgrades hypothesis (L2→L1 or L1→L0) when evidence is terminally stale.
- Waive mode: Records explicit risk acceptance with rationale and expiration date.
quint_testnow accepts L2 hypotheses for evidence refresh (L2 + PASS stays L2 with fresh evidence).- Freshness report now shows individual evidence IDs (not just counts) for actionable output.
- Implements WLNK principle: one expired evidence item = entire holon is STALE.
- Natural language support: users can say "waive the benchmark until February" and the agent handles ID resolution.
- New documentation:
docs/evidence-freshness.md— practical guide to managing stale evidence. - Updated command documentation:
q-decay.mdandq3-validate.md.
- New
-
CI/CD Pipeline:
- New GitHub Actions workflow (
.github/workflows/ci.yml) for pull requests. - Triggers on PRs and pushes to
mainanddevbranches. - Runs tests with race detector and coverage reporting.
- Runs
golangci-lintfor code quality (errcheck, govet, staticcheck, unused, misspell). - Uses
golangci-lint-action@v7with golangci-lint v2 config schema. - Added
.golangci.ymlconfiguration for consistent linting.
- New GitHub Actions workflow (
-
Pre-commit Hooks:
- Added
.pre-commit-config.yamlfor use with pre-commit tool. - Added
.githooks/pre-commitfor simple git-native hooks (no dependencies). - Hooks include: gofmt, goimports, go build, go test, golangci-lint.
- Setup via
./scripts/setup-hooks.shor./scripts/setup-hooks.sh --precommit. - Also checks: trailing whitespace, end-of-file, yaml syntax, large files, merge conflicts, private keys.
- Added
Changed
-
Updated FPF Commands: Commands now leverage new MCP tools for computed data:
/q4-audit: Now callsquint_calculate_randquint_audit_treebefore recording findings./q5-decide: Now usesquint_calculate_rfor final R_eff comparison before decision./q-audit: Updated to use visualization tools./q-decay: Updated to usequint_check_decayfor proactive decay detection./q-status: Now proactively checks for expired evidence.
-
SQLite Driver Migration: Replaced CGO-based
mattn/go-sqlite3with pure Gomodernc.org/sqlite.- Enables
CGO_ENABLED=0builds for simplified cross-compilation. - Cross-compilation now works for linux/amd64, linux/arm64, darwin/*, windows/amd64.
- Unblocks single-runner GoReleaser builds.
- No functional changes to database behavior.
- Enables
-
FSM Phase Derivation:
CanTransition()now usesGetPhase()(derived from DB) instead ofState.Phase.- Phase transitions are validated against actual database state.
- Hardens FPF enforcement against state.json manipulation.
Fixed
-
Evidence Decay Bug: Evidence was stored with
NULLvalid_until, making/q-decayalways report "no expired evidence."ManageEvidencenow sets a default 90-day validity period whenvalidUntilis empty.- Affects all evidence added via
quint_verify,quint_test, andquint_audit.
-
Go Module Import Paths: Standardized import paths to use the correct module name across all packages. (PR #16, @blib)
v4.0.0
Added
- MCP Server Architecture:
- This release introduces the MCP (Model Context Protocol) server as the core of Quint Code, replacing the previous prompt-only approach. The server provides structured tools for AI assistants to interact with the FPF knowledge base.
- The MCP server has been restructured into
cmdandinternalpackages for better organization and maintainability.
- New Commands:
/q-audit: Visualize assurance tree with R-scores./q-decay: Calculate epistemic debt from expired evidence.
- Command Updates:
/q-actualize: Reconcile the knowledge base with recent code changes. This command has been updated for better performance and accuracy.
- Renamed Commands:
/q2-checkis now/q2-verify./q3-researchand/q3-testare consolidated into/q3-validate./q1-addhas been added for manually adding hypotheses.
- SQLite Database (
quint.db):- The project now uses SQLite for deterministic FPF, ensuring consistency and reproducibility.
holonstable now includesscope,kind, andcached_r_scorecolumns to support advanced FPF features.evidencetable now includes avalid_untilcolumn for evidence decay tracking.relationstable now includes acongruence_levelcolumn for WLNK calculation.
- Trust & Assurance Calculator (B.3):
- Implemented the FPF B.3 standard for calculating trust and assurance.
- Weakest Link (WLNK): R-score is now capped by the lowest-scoring dependency in the evidence chain.
- Congruence Penalty: Low-congruence relations between artifacts now reduce the overall reliability score.
- Evidence Decay: Expired evidence, as determined by the
valid_untilfield, now penalizes the R-score, introducing the concept of "epistemic debt." - Cycle Detection: The calculator now detects and flags circular dependencies in the evidence graph.
- Typed Reasoning (Kind-CAL):
- Hypotheses are now classified by
kindas eithersystem(for code and architecture) orepisteme(for knowledge and theory). - Validation logic now branches based on the hypothesis kind, allowing for more targeted and relevant analysis.
- Hypotheses are now classified by
- Characteristic Space (C.16):
- Success metrics are now defined upfront, before testing, as part of the
Characteristic Space. - These metrics are measured during the induction phase (
/q3-validate). - The results are recorded in the Design Rationale Record (DRR) for full traceability.
- Success metrics are now defined upfront, before testing, as part of the
- CI/CD:
- A new GitHub Actions workflow has been added to automate the build and release process.
- Testing:
- Added integration tests for the assurance calculator to ensure correctness and stability.
- Error Handling:
- Improved error handling to surface previously-silent errors with warnings.
Changed
- Project Directory: Renamed from
.fpfto.quint. Migration: run/q-actualizeto migrate, then delete.fpf. - Multi-platform Support:
- Installer now supports Claude Code, Cursor, Gemini CLI, and Codex CLI.
- Commands are now sourced from
src/commands/and built to platform-specific formats indist/.
Removed
- Redundant Agents: Removed legacy standalone agent files for a cleaner codebase.
Release: 3.2.0
Added: Process Hardening & Flexibility
Strict Phase Gating (FPF Integrity)
- Hard Block in
/q1-hypothesize: Explicitly forbids generating new hypotheses if the cycle has passed Deduction. This prevents the "Helpfulness Bias" vulnerability where AI assistants might break process integrity to be "nice". - Conditional Logic in
/q2-check: The cycle phase now only advances toDEDUCTION_COMPLETEwhen all active L0 hypotheses are resolved. If any remain unchecked, the door stays open for extensions.
New Command: /q1-extend
- Legitimate Extension Path: A dedicated command to add a missed hypothesis during the
ABDUCTION_COMPLETEphase. - Safety Rails: Strictly blocked once
DEDUCTION_COMPLETEis reached, ensuring evidence integrity (WLNK validity) during testing.
Changed
- Updated
/q-status: State machine visualization now includes the(q1-extend)loop. - Refined
/q3-test&/q3-research: Reinforced checks to ensure testing only happens after deduction is fully complete.
Release 3.1.0
Accumulated release.
-
Major up to 3.0.0 due to rebranding of tool and commands (read the changelog for details)
-
Release 3.1.0
Added: Deep Reasoning Capabilities
- Context Slicing (A.2.6)
Structured Context: .fpf/context.md is now structured into explicit slices:
- Slice: Grounding (Infrastructure, Region)
- Slice: Tech Stack (Language, Frameworks)
- Slice: Constraints (Compliance, Budget, Team)
Context-Aware Init: /q0-init now scans package.json, Dockerfile, etc., to auto-populate slices.
- Explicit Role Injection (A.2)
Role-Swapping Prompts: Commands now enforce specific FPF roles to prevent "AI drift":
- /q1-hypothesize: ExplorerRole (Creative, Abductive)
- /q2-check: LogicianRole (Strict, Deductive)
- /q4-audit: AuditorRole (Adversarial, Normative)
Context Drift Analysis
- New Audit Step: /q4-audit now includes a mandatory Context Drift Check.
- Validation: Verifies that hypotheses generated in step 1 still match the constraints in step 4 (preventing "works on my machine" architecture).
Changed
Command Prompts: Updated q0, q1, q2, q4 to enforce the new reasoning standards.
Release: 2.2.0
Multi-Platform Support 🔥
Crucible Code now works with four AI coding tools:
- Claude Code
- Cursor
- Gemini CLI
- Codex CLI
One-Liner Install
Global (all projects)
curl -fsSL https://raw.githubusercontent.com/m0n0x41d/crucible-code/main/install.sh | bash -s -- -g
Per-project (commit to repo)
curl -fsSL https://raw.githubusercontent.com/m0n0x41d/crucible-code/main/install.sh | bash
Interactive TUI lets you pick which platforms to install.
What's New
Multi-Platform Architecture
- Adapter-based build: src/commands/ → dist/{platform}/
- Platform-specific formats (TOML for Gemini, Markdown for others)
- CI/CD ensures dist/ stays in sync
TUI Installer
- Interactive platform selection with arrow keys or vim motions (j/k)
- Global (-g) or per-project install
- Bash 3.x compatible (works on macOS out of the box)
- Uninstall support (--uninstall)
Visual Refresh
- Melted steel gradient (red → white) for ASCII banner
- New SVG banner for GitHub README
Upgrade
Just re-run the installer to get the latest commands. No breaking changes to .fpf/ structure.
Release: 2.1.0
Release v2.1.0 Summary
Here is what has been upgraded in your codebase:
-
Agentic Initialization (
/fpf-0-init)- Now scans the repo (package.json, Dockerfile, etc.) to infer the Tech Stack.
- Interviews the user to fill in the gaps (Scale, Budget).
- Creates a living .fpf/context.md file that acts as the "Base Slice" for all future reasoning.
-
Strict Method/Work Distinction (
/fpf-1-hypothesize)- The hypothesis template is now split into "1. The Method" (Plan) and "2. The Validation" (Execution).
- This enforces FPF Pattern A.15 without forcing the user to learn the ontology.
-
NQD & Formality Tracking
- Hypotheses now carry formality: [0-9] and novelty/complexity tags in frontmatter.
- /fpf-status (via the logic update we discussed earlier) will calculate Min/Max Formality and Trust Index.
-
Context Awareness
- Research and Test commands now automatically read .fpf/context.md to ensure evidence congruence is calculated against the actual project
reality, not an abstract one.
- Research and Test commands now automatically read .fpf/context.md to ensure evidence congruence is calculated against the actual project
Release: 2.0.0
Version 2.0.0 is a major release that transforms FPF from advisory guidance into an enforced reasoning framework. The core change: phases are now gates, not suggestions.
Headline Changes
1. Phase Gate Enforcement
- Commands now block invalid phase transitions. You can't
/fpf-2-checkwithout hypotheses, can't gather evidence without L1 claims. - The ADI cycle is strictly sequential for phases 1→2→3. Audit (phase 4) can be skipped to go directly to
/fpf-5-decide, but this is not recommended.
2. Transformer Mandate Enforcement
- Explicit "AWAIT HUMAN INPUT" sections at all decision points
- Claude generates options, presents analysis, then stops and waits
- No more implicit decisions buried in command output
3. Quantitative WLNK Analysis
R_eff = R_base - Φ(CL)formula now calculated in audit- Evidence chain tables show exactly where your argument is weakest
- Congruence penalties formalized: High=0.00, Medium=0.15, Low=0.35
4. Plausibility Filters
- Hypotheses assessed against four filters: Simplicity, Explanatory Power, Consistency, Falsifiability
- Clear verdicts: PLAUSIBLE / MARGINAL / IMPLAUSIBLE
- Ranking table for comparison
5. Better Learning Preservation
/fpf-discardnow captures key insights before cleanup- Evidence validity windows mandatory
- Epistemic debt tracking in
/fpf-decay
Breaking Changes
None. Existing .fpf/ directories work without modification.
Recommended migration:
- Run
/fpf-decayto identify evidence needing validity dates - Add congruence assessment to existing external evidence
- Existing DRRs remain valid
What's New in Documentation
- README updated with phase strictness explanation and visual diagram annotations
- Commands Reference table now shows which phases are required vs optional
- "Common Mistakes to Avoid" sections in each command
- Anti-pattern tables with explanations
Upgrade Path
cd crucible-code
git pull origin main
./install.sh /path/to/your/projectExisting FPF sessions continue working. New sessions get enforced gates
Release: 1.0.0
First, the somehow stable release of crucible-code includes a basic ADI reasoning cycle from FPF, which has proven to be valuable for engineering work.