Skip to main content

A floor below for tuning to what's above

Project description

ThresholdFloor Migration Log

Generated: 2026-04-28 06:31 AM (America/Los_Angeles)

Phase 1: Source Audit

  • Source: /witchmithras/pythonessv3/threshing_floor.py
  • Lines: 2150
  • Key classes: ThresholdFloor, FloorDaemon, CityDaemon, Gate, ChthonicVault
  • Key functions: calculate_sunrise_azimuth, compute_pegs, detect_solar_direction, level_floor_contents, map_azimuth_to_lion
  • Dependencies: aether_thresher, aetherfield, zodiac, skyfieldcomm, character, tarot, elevation, requests
  • Features: solar declination, sunrise azimuth, solstice detection, zodiac mapping, alchemical phases, threshold floor state management

Phase 2: Destination Structure

  • Target: witchmithras/pythonessv3/thresholdfloor/src/thresholdfloor/
  • Files created:
    • __init__.py (new module) — contains exports, utilities, and placeholder classes
    • threshold_floor.py (future) — will hold full ThresholdFloor class implementation

Phase 3: Split & Extract

  • Extracted ThresholdFloor class (~1300 lines) from threshing_floor.py
  • Created __init__.py with:
    • All public functions moved and preserved
    • Arch/Alchemy constants preserved
    • Utility helper functions (_deg2rad, _rad2deg, _bearing_deg, etc.)
    • Placeholder classes for ThresholdFloor, ChthonicVault, FloorDaemon, CityDaemon, Gate
    • __version__ = "0.1.0"
    • Complete __all__ exports

Phase 4: Import Resolution

  • Functions reference aether_thresher, aetherfield, zodiac, skyfieldcomm, character, tarot
  • All imports are module-level and will be resolved when module is imported
  • requests imported inside functions (lazy load)

Phase 5: Dependencies

Required:

  • aether_thresher package (solar geometry, sunrise calculations)
  • aetherfield package (internal celestial field)
  • zodiac package (sign mapping, wheel rotation)
  • skyfieldcomm package (sign offsets, celestial markers)
  • character, tarot, elevation packages (ritual, XP, growth systems)
  • requests (for weather API calls)

Phase 6: Validation Steps

  • Run pip install -e . to install thresholdfloor as local package
  • Run pytest thresholdfloor/ for unit tests
  • Verify imports work: from thresholdfloor import ThresholdFloor, calculate_sunrise_azimuth
  • Test solar azimuth calculations
  • Verify vault state transitions
  • Confirm alchemical phase detection
  • Test peg layout across solar cycle

Next Steps

Immediate:

  1. Add full ThresholdFloor class to threshold_floor.py (split file)
  2. Move ChthonicVault class to new file
  3. Move FloorDaemon and CityDaemon classes to new file
  4. Move Gate class to new file
  5. Extract remaining functions that should be standalone

Testing:

  • Create unit tests for:
    • calculate_sunrise_azimuth() — compare against known locations
    • compute_pegs() — verify 7 evenly spaced pegs
    • level_floor_contents() — test overflow handling
    • map_azimuth_to_lion() — verify coordinate mapping
  • Integration tests:
    • ThresholdFloor.run_sweep() — full alchemical cycle
    • FloorDaemon.run_sweep() — city-level coordination
    • Gate.open_state() — threshold access control

Documentation:

  • Add docstrings to all public functions
  • Create README.md for thresholdfloor package
  • Document AetherField integration requirements
  • Add examples showing:
    • Creating a ThresholdFloor instance
    • Running a sweep
    • Checking alchemical phase
    • Using vault system

The loom binds tight. The threshold is ready. 🌙

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

thresholdfloor-0.1.5.tar.gz (1.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

thresholdfloor-0.1.5-py3-none-any.whl (1.7 MB view details)

Uploaded Python 3

File details

Details for the file thresholdfloor-0.1.5.tar.gz.

File metadata

  • Download URL: thresholdfloor-0.1.5.tar.gz
  • Upload date:
  • Size: 1.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for thresholdfloor-0.1.5.tar.gz
Algorithm Hash digest
SHA256 35ed6051fae2ebee4373da7339cc87a402582cb583e4962c79965b4dbc6a0315
MD5 605ffce8e1971e8e9bab86ea67c956d2
BLAKE2b-256 275dbbfc019ff58d4ead10753b1d833dbd83d0878ff5a61751f502e866a47018

See more details on using hashes here.

File details

Details for the file thresholdfloor-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: thresholdfloor-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.4

File hashes

Hashes for thresholdfloor-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 a51c161957de55484e89db6ba7969842d798dd9a2c089a7befbc2e364981f4de
MD5 4e93b24f226d334aaa9b57d4fb2b1c26
BLAKE2b-256 47169807b78cbac9e238b41ebce5d0203020d13bd6d814404061d0f19132091b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page