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.0.0.tar.gz (29.9 kB view details)

Uploaded Source

Built Distribution

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

thresholdfloor-0.0.0-py3-none-any.whl (31.2 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for thresholdfloor-0.0.0.tar.gz
Algorithm Hash digest
SHA256 f66df59be14abba57319866fbea4fa5c3fb88fe7880a7a2a477a8c9a1966561f
MD5 26fa7ccd1ee1dc661d9b5bc4d6f3e2f3
BLAKE2b-256 d3a7b28a97982efd2bbc99a25429706e3f9590b23613f0a9672fc0d8ccc9d612

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for thresholdfloor-0.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5ebfeab2518a28c29750984e6283a854f7f4b482ddf2940fb00df78fc76a0a50
MD5 484fa9677c8b9b0f9dc779ee949851e4
BLAKE2b-256 3dacae1ab07147035295d0cfd74a2bfc20685a10eed1cf5b0dbe0f71f012eb7d

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