Publisher: AETHERCORE, the research and business organization behind GenesisCore.
What we build: an analysis system combining Western astrology, Jyotish, AI-assisted interpretation, numerical processing, interactive results, and PDF reports.
What we will publish here: data structures, reproducible code, statistical design, failed tests, product boundaries, and new research results.
Hello. We are AETHERCORE.
Our main project is GenesisCore. It is both an astrology-analysis product and a research program. Users can receive a free result, explore a paid detailed analysis interface, and obtain an extended PDF report by email.
The subject is astrology. The work we want to discuss with the developer community is broader: how to turn a large symbolic rule system into structured data, how to connect it to auditable real-world records, how to limit researcher freedom, and how to release a result that another person can recalculate.
This first post introduces the organization, the product, the reason for the research, the failed steps from v1 through v5, and the new v7 result. Later posts will examine the implementation in detail.
Table of contents
- What GenesisCore provides
- Why developers may care
- What we mean by a route
- From a chart to a public matrix row
- How the research reached v7
- The question and result in plain language
- How M0, M3, and maxT differ
- What is in the public package
- How the result can enter the product
- What we will publish next
What GenesisCore provides
GenesisCore calculates Western and Jyotish structures from birth date, birth time, and birthplace. It then organizes many interacting rules into explanations, scores, graphs, timelines, and thematic analyses.
The current user-facing surfaces are:
- a free result interface;
- a paid detailed analysis interface;
- a long-form PDF report delivered by email.
The image below shows verified GenesisCore product surfaces. It is not a generated product mockup.
Why developers may care
A large symbolic system creates a technical and epistemic problem. When hundreds of rules can apply to one person, it is easy to select a convincing interpretation after seeing the outcome.
This is a familiar engineering problem in an unusual domain: a flexible rule engine can produce plausible outputs while making its own error rate hard to measure. We therefore separate two activities.
The product calculates and explains a chart. The research layer asks whether a frozen group of astrological chains has a measurable relationship with documented activity across people.
The questions include:
- Do different chart expressions converge on the same real-world function?
- Can one function be reached through several mechanisms?
- Does a result persist after accounting for era and data-collection differences?
- Does it survive correction across a declared family of tests?
- What should happen when a selected route fails on unused people?
What we mean by a route
A route is not a single placement-to-job lookup. It is a structured chain of chart factors that can converge on a documented social function.
chart factors
-> frozen relationship pattern
-> route surface (present / absent)
-> documented social function (present / absent)
-> person-level analysis row
The current research focuses on five non-exclusive functions:
- advocacy or public-cause action;
- authored symbolic production;
- organized collective realization;
- technology or product implementation;
- embodied competitive performance.
A person may express several functions. We code documented activity, not an occupation label inferred from a chart.
From a chart to a public matrix row
The public package reduces each person to an anonymous row. observed_functions records the real-world side from fixed evidence. surfaces records whether the frozen chart-side chains were present. This is an abridged public row:
{
"analysis_order": 14,
"release_id": "R0001",
"birth_era": "BEFORE_1900",
"observed_functions": [
"AUTHORED_SYMBOLIC_PRODUCTION",
"KNOWLEDGE_OR_DISCOVERY_PRODUCTION",
"ORGANIZED_COLLECTIVE_REALIZATION"
],
"surfaces": {
"AUTHORED_SYMBOLIC_PRODUCTION": {
"any_tier_jyotish": true,
"any_tier_western": false,
"primary_jyotish": true,
"primary_western": false
}
}
}
The release ID and analysis order replace a personal name. The public package contains no identity lookup table.
How the research reached v7
The history matters because v7 was not our first attempt.
v1: the first measurement method failed
A 12-person pilot tested whether real-world activity could be labelled consistently from public evidence. It did not meet the predefined standard, so we stopped before chart comparison and recorded the failure.
v2: five functions in 420 people
We built an anonymous, duplicate-free development set of 420 people. Five social functions and related astrological candidates were organized into a person-level matrix.
v3–v5: selected candidates did not reproduce on separated people
We tested selected authorship, collective-realization, and competitive-performance candidates on people who were not used to select them. None produced a clear positive result. Those results remain public.
v6: multiple paths and failed tests were integrated
We integrated five functions, 136 groups of related meanings, person-level paths, and the v3–v5 results. This made room for several mechanisms leading toward the same function while preserving the failed tests.
v7: a different question
v7 does not rerun the failed person-out tests with new thresholds. It asks whether the five development-set results survive measured external factors and a declared multiple-testing family.
The question and result in plain language
The core question is:
Among people whose charts contained the corresponding frozen chains, was the documented social function more common than among people whose charts did not? Did the difference remain after adding birth era, measurement regime, and collection source? Did it remain when 22 testing surfaces were evaluated together?
M0 is the raw difference between the two rates. M3 is the adjusted difference after adding birth era, evidence-measurement regime, and collection source.
| Function | Chains present | Chains absent | M0 | M3 | maxT p | Simultaneous 95% lower |
|---|---|---|---|---|---|---|
| Advocacy / public cause | 74.65% (71) | 37.82% (349) | +36.83 | +33.60 | 0.0001 | +18.48 |
| Authored symbolic production | 89.41% (85) | 50.45% (335) | +38.96 | +39.08 | 0.0001 | +27.79 |
| Collective realization | 82.50% (120) | 55.00% (300) | +27.50 | +27.95 | 0.0001 | +16.01 |
| Technology / product | 64.71% (34) | 27.46% (386) | +37.24 | +32.49 | 0.0008 | +9.64 |
| Competitive performance | 64.00% (25) | 18.48% (395) | +45.52 | +32.14 | 0.0047 | +6.93 |
The primary multiplicity control used 9,999 person-package maxT draws across a fixed 22-surface family. All five simultaneous lower bounds remained above zero.
The result is strong inside the defined development study. It is not an independent person-out replication. It does not establish causality, universal validity, or deterministic career and future prediction.
How M0, M3, and maxT differ
M0 through M3 add measured factors in stages:
- M0: chain presence only;
- M1: add birth era;
- M2: add evidence-measurement regime;
- M3: add collection source.
Multiple-testing control is a separate layer. The fixed 22 surfaces share the same person-level sign flips in each draw, preserving dependence among surfaces. The following is a shortened version of the public implementation's core idea:
import numpy as np
rng = np.random.default_rng(20260821)
shared_signs = rng.choice((-1.0, 1.0), size=(9_999, len(rows)))
influence_matrix = np.column_stack(surface_influences)
null_max_t = np.max(shared_signs @ influence_matrix, axis=1)
critical_95 = np.quantile(null_max_t, 0.95)
adjusted_p = (1 + np.sum(null_max_t >= observed_t)) / 10_000
Using a shared 420-person sign package for every surface keeps cross-surface dependence in the null distribution. The complete calculation, including studentization and simultaneous bounds, is in scripts/reproduce_v7.py.
What is in the public package
The repository contains more than a narrative README:
- methods and function definitions;
- an anonymous 420-person analysis matrix;
- machine-readable
RESULTS.json; - a machine-readable claim boundary;
- failure and limitation history;
- a reproduction script;
- a public-privacy validator;
- SHA-256 checksums.
From the repository root:
python3 -m pip install -r independent_social_expression_v7/requirements.txt
PYTHONDONTWRITEBYTECODE=1 python3 independent_social_expression_v7/scripts/reproduce_v7.py
PYTHONDONTWRITEBYTECODE=1 python3 independent_social_expression_v7/scripts/validate_public_v7_privacy.py
(cd independent_social_expression_v7 && sha256sum -c CHECKSUMS.sha256)
How the result can enter the product
AETHERCORE operates both the research and the GenesisCore service. We disclose that commercial relationship.
v7 can support explanation, hypothesis formation, and dialogue. It cannot currently serve as a validated predictor of occupation, behavior, or future events. Product UI must display the research status and the open replication boundary.
Readers can evaluate the public package without using or purchasing the product.
What we will publish next
The next DEV post will explain the shared-sign person-package maxT design and why multiplicity and measured-confound adjustment are separate layers.
Later posts will cover:
- public-data privacy and anonymous reproducibility;
- the v3–v5 failed person-out tests;
- Western-only and Jyotish-only ablations;
the claim boundary between research output and product UI.


Top comments (0)