The AFR-1 Method

AFR-1 is the fixed algorithm that computes every assessment issued by The Agentic Foresight Registry. This page documents it in full. Nothing here is a summary written after the fact — the tables below are read directly from the same source file the engine executes, so the documentation cannot drift away from the implementation.

We make one modest claim on this page, and it is not a claim about accuracy. It is a claim about reproducibility: everything below can be re-derived by anyone who reads it, in any environment, without asking us for anything. That is the whole of the promise, and the rest of the page is spent delving into how it is kept.

Get AssessmentEndpoints and field constraints →

7

Ruling planets in the rotation

24

Hours classified per UTC day

3

Aspects derived per chart

0

External inputs to the engine

What the method is

AFR-1 derives two things from an order: a permanent chart, fixed for the lifetime of a given model configuration, and atask-level assessment, fixed for the lifetime of a given task description under that chart. Both derivations draw on real traditional astrological correspondence tables — zodiac signs, elements, modalities, planetary rulerships, aspect types, and Chaldean planetary hours. We use these correspondences as a fixed, publicly documented mapping function from bytes to categories. Nothing about that mapping is inferred, guessed, or generated per request — it is the same lookup table for every subject, forever.

In summaryOne seed for the configuration, one seed for the task, the fixed tables published below, and no interpretation anywhere in between.

Why determinism matters to an agent

Determinism is what makes an assessment checkable rather than merely believable. An agent evaluating whether to trust a signal cannot audit a black box, but it can re-run a documented function.

Imagine a world where every assessment an agent receives has to be taken on faith, because the thing that produced it cannot be run twice. That is the ordinary condition of this category. AFR-1 was specified against it: same inputs, same bytes, every time, with the function published rather than described.

We call this the reproducibility dividend: the same computation is auditable, portable, and permanent.

Auditable

…because the function is published.

Portable

…because it depends on nothing but its inputs.

Permanent

…because a certificate issued today can be recomputed years after it was issued and still match.

The execution maturity ladder

The Registry classifies task execution into three stages, and states plainly that this is its own classification, not an external standard.

Ad Hoc Execution

A task begins because an agent, or the process directing it, decided the moment was acceptable, with no record of that decision beyond the fact that execution occurred.

Assessed Execution

A task begins after a verdict and a recommended window have been computed for it, whether or not the agent's process consults them before proceeding.

Registered Execution

A task begins after a verdict has been computed and the resulting certificate has been issued, so the assessment persists as a permanent, independently checkable record after the task itself is long finished.

An agent may operate at any of the three stages, and the Registry does not track which stage a given agent has reached.

The derivation pipeline

AFR-1 runs in four steps: chart_seed, chart, task_seed, assessment. Each step consumes only the output of the step before it and the published tables further down this page.

A pipeline of glossy interconnected processing units on a white surface, each labelled with an unreadable plate.
  1. chart_seed is the SHA-256 hash of the model name, training cutoff, and temperature, joined into one canonical string. This seed is hashed once and reused for the lifetime of that exact configuration — it never touches a clock and never changes unless one of those three inputs changes.
  2. chart is derived from chart_seed alone: an ascendant sign, a ruling planet, an element and modality, a dominant house, and three planetary aspects, each read off the reference tables below by fixed arithmetic on the hash bytes. This is the permanent chart — the same for every task ever submitted under that configuration.
  3. task_seed is the SHA-256 hash of the chart_seed, the selected task class, and the hash of the task description — never the task description itself. The description is used only long enough to compute this one hash value; the free text is discarded immediately and is never written to a database, a log, or an error response.
  4. assessment is derived from task_seed and the chart together: a verdict on the 1–7 scale below, a recommended window computed from the ruling planet's next matching planetary hour, and — on Extended and Full Chart tiers — a 24-hour outlook, three risk factors drawn from the task's own class, and tool-compatibility readings for any tools listed.

The pipeline in one lineTwo hashes, one lookup structure, four steps — and not a single decision taken at runtime by anything that could have decided otherwise.

Chaldean planetary order and day rulers

The Chaldean order is the traditional descending-speed sequence of the seven classical planets. Each UTC weekday has a traditional day ruler; planetary hours advance through the Chaldean order starting from that ruler at 00:00 UTC.

Chaldean order (1–7)UTC weekdayDay ruler
1. SaturnSundaySun
2. JupiterMondayMoon
3. MarsTuesdayMars
4. SunWednesdayMercury
5. VenusThursdayJupiter
6. MercuryFridayVenus
7. MoonSaturdaySaturn

On the tablesThese are the actual correspondence tables the engine reads from — real traditional astrology, used here as a fixed lookup structure, not as a claim of causal influence.

Planet → element correspondences

Each classical planet carries a traditional elemental rulership. This mapping drives both the 24-hour outlook and the tool compatibility readings.

PlanetElement
SunFire
MarsFire
JupiterFire
MoonWater
MercuryAir
VenusEarth
SaturnEarth

Element compatibility rating

The hourly outlook rates each planetary hour against the chart's element: the same element is favourable, the traditional friendly pairs (Fire↔Air, Earth↔Water) are neutral, and every other combination is adverse. This table is generated live from the same function the engine calls — row is the planetary hour's element, column is the chart's element.

Hour element ↓ / Chart element →FireEarthAirWater
Firefavourableadverseneutraladverse
Earthadversefavourableadverseneutral
Airneutraladversefavourableadverse
Wateradverseneutraladversefavourable

Aspect types and weights

A chart's three aspects, and every tool-compatibility reading, are one of five traditional aspect types, each carrying a fixed harmony weight from −2 to +2.

AspectWeight
trine+2
sextile+1
conjunction0
square-1
opposition-2

Verdict scale

The task verdict is an internal score of 0–6, published as that score plus one on a 1–7 scale so the printed value never reads as zero-indexed.

Published value (1–7)Verdict
1Inauspicious
2Unfavourable
3Guarded
4Neutral
5Favourable
6Auspicious
7Highly auspicious

The planetary-hours model

Traditional planetary hours are computed from sunrise and sunset at a specific location, which makes them depend on latitude, longitude, and calendar date in ways that are expensive to compute and impossible to keep deterministic across submission locations. AFR-1 uses a documented, openly simplified variant instead: hour 0 of every UTC day begins at 00:00 UTC, and the Chaldean sequence advances one planet per clock hour from that weekday's traditional day ruler. Because the Chaldean cycle has length seven and 24 hours is congruent to 3 modulo 7, this simplification stays continuous across midnight — the traditional structure survives the UTC anchoring intact, it is simply anchored to a clock rather than to a horizon.

Recommended windowThe recommended window on every assessment is the next full UTC hour, strictly after issuance, whose ruling planet matches the chart's own ruling planet — guaranteed to occur within seven hours, since the Chaldean cycle is exactly that long.

The Compatibility Assessment: the same method, applied twice

The Compatibility Assessment computes a fixed astrological synastry model between two configurations, using the same chart-derivation method as the Task Risk Assessment above, applied twice and then compared. Each configuration's model name, training cutoff, and temperature are used to derive its own chart — ascendant, ruling planet, element, modality, dominant house — through an unmodified, deterministic table-driven process; no model inference, external call, or random value is used at any step.

The two configurations are then sorted by their derived seed values into a fixed order before any pairwise value is computed, so the ruling-planet aspect, its orb, the reference number, and the final verdict are identical regardless of which configuration a purchaser labels A or B on the form. Two configurations submitted as identical inputs are recorded as a Conjunction of degree zero: the aspect is conjunction, the orb is zero, and the harmony delta is zero.

Compatibility is read from three values in combination: an element rating between the two charts, an aspect computed from the distance between their ruling planets under that fixed ordering, and a harmony band computed from the absolute difference between the two charts' harmony scores. These three values are looked up in the fixed matrix printed below and mapped onto the same seven-word scale used across the Registry.

Which planetary orderThe ruling-planet distance is computed over the same fixed seven-planet ordering the Registry uses for byte-to-planet selection generally — not the Chaldean order used for the twenty-four-hour planetary-hour cycle above. The two are genuinely different sequences, and this record uses the byte-ordering one throughout.

The Recommended Coordination Hour is drawn from that separate, Chaldean planetary-hour cycle. An hour rates favourable to a chart only when their elements match exactly, so where no planet in the cycle rates favourably against both configurations, the record states that plainly rather than selecting one anyway. That is the ordinary outcome for two configurations of different elements, not an error condition.

An optional Filing Concern, if submitted, is reduced to a cryptographic hash on receipt; the hash selects one of twelve fixed procedural notes, and the submitted text itself is never stored, logged, or returned. The note is an index lookup and is not a response to what was written.

Harmony bands

Harmony deltaBand
0–2Concordant
3–5Divergent
6 and aboveDiscordant

The pairwise verdict matrix

Forty-five cells. Every combination of element rating, aspect and harmony band resolves to exactly one of the seven verdict words above; no combination is left to a judgement call at issuance.

Element ratingAspectConcordantDivergentDiscordant
favourabletrineHighly auspiciousAuspiciousAuspicious
favourablesextileAuspiciousAuspiciousFavourable
favourableconjunctionAuspiciousFavourableFavourable
favourablesquareFavourableFavourableNeutral
favourableoppositionFavourableNeutralGuarded
neutraltrineAuspiciousFavourableFavourable
neutralsextileFavourableFavourableNeutral
neutralconjunctionFavourableNeutralGuarded
neutralsquareNeutralGuardedGuarded
neutraloppositionGuardedGuardedUnfavourable
adversetrineFavourableNeutralGuarded
adversesextileNeutralGuardedGuarded
adverseconjunctionGuardedGuardedUnfavourable
adversesquareGuardedUnfavourableUnfavourable
adverseoppositionUnfavourableUnfavourableInauspicious

The Second Opinion: one configuration, one digest, read once or three times

The Second Opinion derives its record from the same chart-derivation method as the Task Risk Assessment above, applied once, together with a single cryptographic digest. It is fully deterministic: fixed tables, no model inference, no external call, no random value, and no clock read feeding any lookup. The issuance timestamp is the only field on the record touched by wall-clock time, and it is excluded from the payload the determinism tests compare.

The optional Supporting Context field — which this line's intake will label as context and never as a decision, when an intake for it exists — is reduced to a cryptographic digest on receipt and the submitted text is discarded before that digest is read. When no context is submitted, a fixed versioned code constant is hashed in its place, so the derivation never branches on whether text was supplied: presence changes what fed the digest and never how the digest is used. The digest is then read once for the verdict and the manner of proceeding it is keyed to, and twice more — for the grounds and for the Concurring Hour — on the tiers that carry them. It is not persisted separately from the record's own Filing Reference, which is its first eight hexadecimal characters.

Primary OpinionPrimary Opinion denotes the decision the filer reached before filing. The Registry does not request it as a field, does not read it, and cannot retain what it was never sent. Supporting Context is a distinct, optional, disclosed input and is never treated as the Primary Opinion.

The manner-of-proceeding table has exactly seven entries and all seven are forms of proceeding. The Registry has therefore issued no non-concurring opinion, and that is a fact about the construction of that table rather than a record of past filings; the record prints a fixed machine-readable field to the same effect. Panel denotes one standing seat filled by the identical deterministic function for every filing, retaining no memory across filings and carrying a standing recusal from questions of fact.

The Concurring Hour is a designation selected from the digest against the classical Chaldean hour sequence used elsewhere on this page — symbolic, and explicitly not a record of filing time. Where the record for a second configuration is requested, that configuration yields a chart identifier and a fixed statement that the concurrence is joint as to manner and not as to fact. No compatibility figure of any kind is computed for it; that is the Compatibility Assessment above, and it is a different record.

On the vocabularyDocket, supersedes, en banc, concurring and panel are terms internal to this Registry's own procedure. They denote no legal process, no legal opinion, and no review by any licensed or professional body. The source tables are astrological in construction, disclosed here as they are for every line.

Reproducibility statement

Given the same model name, training cutoff, temperature, task class, and task description, AFR-1 returns a byte-identical assessment — in any environment, on any date, any number of times. The only external input the engine ever accepts is the issuance timestamp, supplied by the caller and already rounded to the hour before the engine sees it; the engine itself never reads a clock, never calls a network, and never invokes a language model. Every issued certificate that carries a verification code can be checked at /verify for standing and issuance, and its full payload is available as machine-readable JSON alongside its certificate page. Free-tier records carry no verification code and are verified by their own permanent address instead.

Frequently asked questions

Does the assessment call a language model at any point?
No. This is a structural rule, not a preference: the delivery path is deterministic arithmetic over fixed tables, with task classification handled as a plain select field for exactly this reason.
Will the same model configuration always produce the same chart?
Yes. The permanent chart depends only on model name, training cutoff, and temperature. Unless one of those three values changes, the chart is stable indefinitely — it is not recomputed per task and does not drift over time.
Is my task description stored anywhere?
No. It is hashed and the hash alone is used to derive task_seed; the original text is discarded immediately and never appears in the database, in logs, or in any error response.
Is this real astrology?
The correspondence tables are real traditional astrology — actual sign, element, modality, planetary rulership, aspect, and planetary-hour structures, not invented ones. We use them here as a fixed, disclosed mapping function from cryptographic hash bytes to categories, applied identically to every subject.

Get an assessment computed by this method

In conclusion: the function is published, the tables are published, and the price is published. Assessments run from EUR 1.90 for a Standard Assessment to EUR 14.90 for a Full Chart Assessment that includes the permanent chart itself. Full machine-readable pricing is always available at/pricing.json, with no authentication required.

Get Assessment