This commit is contained in:
@@ -25,8 +25,10 @@ Do not claim API completeness or accuracy beyond tested contracts.
|
||||
- Use the ignored, repository-local `.hermes/` directory for plans, checklists,
|
||||
investigation notes, and handoff context. Create or update notes as useful;
|
||||
keep them concise and revalidate them against current files. Optional
|
||||
`.hermes/project-context.md` holds setup and review background. Do not store
|
||||
secrets, force-add this directory, or make builds or tests depend on it.
|
||||
`.hermes/README.md` indexes active notes and `.hermes/project-context.md` holds
|
||||
condensed implementation context. Treat `.hermes/archive/` as historical, not
|
||||
current instructions or status. Do not store secrets, force-add this directory,
|
||||
or make builds or tests depend on it.
|
||||
|
||||
## Working rules
|
||||
|
||||
@@ -67,10 +69,11 @@ Follow `.editorconfig`, not incidental style in unfinished code.
|
||||
Mathematically equivalent formulas can round differently.
|
||||
- State and verify algorithm preconditions, especially magnitude ordering for
|
||||
quick-sum transforms, normalization assumptions, and overflow/underflow limits.
|
||||
- The internal two-component `DoubleDouble` constructor currently does not normalize.
|
||||
Do not assume arbitrary pairs are canonical. Establish the intended normalization,
|
||||
NaN, infinity, and signed-zero contracts before changing construction, equality,
|
||||
hashing, ordering, or classification; keep those operations consistent.
|
||||
- The internal two-component `DoubleDouble` constructor does not normalize or
|
||||
validate. Use `FromComponents` for arbitrary pairs and reserve raw construction
|
||||
for proven normalized/canonical results. Preserve the documented normalization,
|
||||
NaN, infinity, and signed-zero contracts across construction, equality, hashing,
|
||||
ordering, and classification; do not change one in isolation.
|
||||
- For affected operations, cover cancellation, widely separated magnitudes, zero
|
||||
and signed zero, subnormals, extreme finite values, infinities, and NaNs. Check
|
||||
intermediate overflow/underflow even when the final result is representable.
|
||||
|
||||
Reference in New Issue
Block a user