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.1.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.1-py3-none-any.whl (1.7 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: thresholdfloor-0.1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 6c7887c50bdc1d58cf152ce73ea517ed6c2cbcf34b1d4e442154af4dd5a7c618
MD5 435c3b9f8dc2a20bf27e71986b316006
BLAKE2b-256 af5274ca8c1ccb02642062c9fc9afeff5afa81197e38687f24fb6d5564b3f37c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: thresholdfloor-0.1.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 eb82ab4040c09a0e7bec7ae6b39d8ec7846109b32b3ce03c07455125ae8b8f5f
MD5 97c9c5a2d685d16f1882f8d62311177b
BLAKE2b-256 a68e75f9fbde9d867f07e3beb4921f152903a37294800e527f7b4879da27e111

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