CVTas Release Notes - Late January/February 2026

Version 0.9.0 | Released: January 27, 2026

This release introduces the Unified Property Scoring System - a major architectural enhancement that provides structured, hierarchical criteria evaluation for properties. The system enables transparent, auditable property scoring with weighted sub-criteria and automatic score calculation.


Highlights

Unified Property Scoring System (Phases 1-8)

A complete rewrite of the property evaluation framework:

  • Hierarchical Criteria Structure: Dimensions → Sub-Criteria → Individual Criteria
  • 5 Scoring Dimensions: Location, Self-Sustainability, Cost/Value/Opportunity, Robustness, Glamor
  • Weighted Scoring: Each sub-criterion and criterion has configurable weights
  • Multiple Evaluation Types: Boolean, Numeric, Rating (1-10), Categorical, Distance
  • Mandatory Criteria: Deal-breaker criteria that can disqualify properties
  • Multi-Evaluator Support: Different evaluators can score independently
  • Auto-Calculation: Criterion scores roll up automatically to dimension scores

Frontend Criteria Evaluation Interface

Interactive UI for scoring properties:

  • Expandable Hierarchy: Click dimensions to see sub-criteria, click sub-criteria to see individual criteria
  • Real-Time Updates: Changes save automatically and recalculate all scores
  • Type-Specific Controls: Toggle switches for boolean, sliders for ratings, dropdowns for categorical
  • Visual Feedback: Saving/saved/error states with color-coded badges
  • Criterion Weights Display: See how much each criterion contributes to the score
  • Mandatory Failure Highlighting: Failing deal-breaker criteria are auto-expanded and highlighted

Scoring Profiles & Rankings

Configurable weighting schemes for comparing properties:

  • Multiple Profiles: Create different weighting schemes (e.g., "Food Security Focus", "Budget Conscious")
  • Ranked Property Lists: See properties sorted by weighted score
  • Site vs Region Weights: Balance site-specific and regional factors
  • Evaluator Comparison: See how different evaluators' scores affect rankings
  • Click-Through Navigation: Jump directly from rankings to property details

New Features

Property Management

  • Summary Columns: Property list now shows Remoteness, Food Production, and Building Quality scores
  • Horizontal Filters: Filter properties by region, price range, score threshold, status, and evaluator
  • Completion Badges: See evaluation progress (X% criteria evaluated)
  • Mandatory Failure Display: Properties failing deal-breaker criteria are flagged prominently

Food Planning

  • Visual Production Timeline: Interactive chart showing crop yields over time
  • Financial Timeline Integration: Link food plans to capital scenarios
  • Crop Auto-Suggest: Get recommendations based on region and available land
  • Food Reserves: Track stored and purchased food alongside production

Scenario Planning

  • Multi-Event System: Model multiple simultaneous events with interaction effects
  • Arrival Waves: Explicit planning for phased population arrivals
  • Admin Interface: Full CRUD operations for events and interactions
  • Comprehensive Tests: Validated calculation logic with edge cases

Supply List Budget Integration

  • 659 supply items across 17 categories imported from static JS supply list
  • 5 scaling types matching JS calcQuantity logic (base as minimum floor)
  • 4 cost tiers: expected, upper 95%, lower new, lower secondhand
  • PropertySupplyPlan with importance filtering and scenario tag filtering
  • Budget line generation with [Supply] prefix alongside [BOM] lines
  • Per-item overrides for exclusions, cost adjustments, deferred installation years
  • Gunns Plains added as 4th property showcase (Medium scale)
  • Grouped Navigation Menus: Reorganized navbar with logical dropdown groups
  • Footer Quick Links: Access key pages from any page footer
  • Sitemap Page: Complete overview of all available pages
  • Auto-Expand Failures: Property detail auto-shows failing criteria

Technical Improvements

Database

  • PostgreSQL Migration: Infrastructure updated for PostgreSQL deployment
  • New Models: CriterionEvaluation, RegionCriterionEvaluation, ArrivalWave, FoodReserve
  • Scoring Profiles: ScoringProfile model with dimension weights

API

  • Unified Scores Endpoint: /api/properties/unified-scores/ with breakdown actions
  • Criterion Evaluation: /api/properties/criterion-evaluations/evaluate/
  • Batch Operations: Evaluate multiple criteria in single request
  • Recalculation: Force score recalculation with optional profile

Infrastructure

  • Backup Scripts: Updated for PostgreSQL backups
  • Deployment: Improved deployment scripts with migration ordering
  • Monitoring: Enhanced health checks and logging

Migration Guide

Database Migrations

Run the following after pulling this release:

python manage.py migrate properties
python manage.py migrate food
python manage.py migrate scenarios

Data Seeding

If starting fresh, seed the criteria data:

python manage.py seed_criteria
python manage.py load_crop_data

Breaking Changes

  • PropertyScore: Now calculated from CriterionEvaluation records rather than stored directly
  • Scoring API: New endpoints replace legacy scoring methods

Infrastructure Hardening (February 17, 2026)

Deploy Workflow Refactor

  • Replaced SSH heredoc pattern with copy-then-execute (scp + ssh)
  • Eliminates stdin-consumption vulnerability where pg_dump/git rebase could eat the deploy script
  • Added commit hash verification via /health/ endpoint
  • Added pre-deploy disk space check (aborts if root < 500MB)

Database Backups (Now Working)

  • Pre-deploy pg_dump backups to /mnt/cvtas-data/backups/
  • Last 5 backups retained automatically
  • Fixed: backups had been silently failing since deploy automation was added

Virtualenv Migration

  • Moved venv from root disk to data volume (/mnt/cvtas-data/cvtas-venv)
  • Project venv/ is now a symlink — transparent to source venv/bin/activate
  • Auto-detection and recreation of broken venvs (PEP 668 / stale shebangs)
  • gunicorn added to requirements.txt (was previously manual-only)

Showcase Completeness Checks

  • Showcase detail page now shows completeness warnings (missing food/supply plans, over-allocation, etc.)
  • Cost summary card: Capital Budget + Food Production + Supply List = Total Non-Human Outlay
  • Supply budget line deduplication (excludes "Supply - " prefixed auto-generated lines)

New Tooling

  • scripts/deploy-remote.sh — Standalone deploy script
  • scripts/disk-diagnostic.sh — Server disk usage diagnostic
  • .github/workflows/server-diagnostic.yml — On-demand diagnostic workflow

What's Next

  • Issue #98: Django production security settings audit (HIGH PRIORITY)
  • Issue #96: Server disk capacity / DreamCompute sizing (HIGH PRIORITY)
  • Issue #97: Deploy script failure mode audit
  • Issue #68: Evaluator scoring workflow with multi-level granularity
  • Issue #66: Enhanced permission system for criteria scoring
  • Issue #67: Weather descriptions and climate data per region
  • Issue #24: Full integration of criteria into scenario planning

Contributors

  • Development: Claude Code (Anthropic)
  • Direction & Testing: Pip Foweraker
  • Domain Expertise: CVTas Team