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 classesthreshold_floor.py(future) — will hold full ThresholdFloor class implementation
Phase 3: Split & Extract
- Extracted
ThresholdFloorclass (~1300 lines) fromthreshing_floor.py - Created
__init__.pywith:- 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
requestsimported inside functions (lazy load)
Phase 5: Dependencies
Required:
aether_thresherpackage (solar geometry, sunrise calculations)aetherfieldpackage (internal celestial field)zodiacpackage (sign mapping, wheel rotation)skyfieldcommpackage (sign offsets, celestial markers)character,tarot,elevationpackages (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:
- Add full
ThresholdFloorclass tothreshold_floor.py(split file) - Move
ChthonicVaultclass to new file - Move
FloorDaemonandCityDaemonclasses to new file - Move
Gateclass to new file - Extract remaining functions that should be standalone
Testing:
- Create unit tests for:
calculate_sunrise_azimuth()— compare against known locationscompute_pegs()— verify 7 evenly spaced pegslevel_floor_contents()— test overflow handlingmap_azimuth_to_lion()— verify coordinate mapping
- Integration tests:
ThresholdFloor.run_sweep()— full alchemical cycleFloorDaemon.run_sweep()— city-level coordinationGate.open_state()— threshold access control
Documentation:
- Add docstrings to all public functions
- Create
README.mdfor 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
Release history Release notifications | RSS feed
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.0.tar.gz
(1.7 MB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file thresholdfloor-0.1.0.tar.gz.
File metadata
- Download URL: thresholdfloor-0.1.0.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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fcdd946e2c30d4d36a29fbd5568853a06795587c585c38751d97f406f83870bc
|
|
| MD5 |
679e1596139c9a5e34e0b5f752cd49c5
|
|
| BLAKE2b-256 |
b7955fa141a58c2c48c5e9aee7a42c8cb61d674b01a67b4531cff817d82d554f
|
File details
Details for the file thresholdfloor-0.1.0-py3-none-any.whl.
File metadata
- Download URL: thresholdfloor-0.1.0-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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
44c452674697e4f4aaf037edf1d7200abc11d38eeea659324a8c9e636a97409d
|
|
| MD5 |
27a063357db07982bd93344e45fb60ce
|
|
| BLAKE2b-256 |
9ce5e28573f4e596e57eae62cb3e2861c8b8b8a06b1a30756ad599b791437bf4
|