Repository navigation
feat: F10 round shape and F13 every calculation named, validated - #192
Merged
Merged
Conversation
The round shape is an ellipse drawn by four cubic sides; the decisions the Product Owner left open are taken by the agent and shown at VAL-012. Refs: F10 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ADR-0048 Research note 0015, DERIV-round-shape-curve, ADR-0048; the round shape in the domain; the ellipse element of SVG 2 added to REF-SVG2-SHAPES. Refs: SP-013.T1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: SP-013.T1 Closes: SP-013 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…versions A round shape fills its box; its 4 points, top, right, bottom and left, carry handles of 4(√2 − 1)/3 of the half axis (DERIV-round-shape-curve). It converts to those points, unmoved, or to its box rounded by half its smaller side rounded up. Refs: EN-027.T1 Refs: EN-027.T2 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: EN-027.T2 Closes: EN-027 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A round shape has width, height, angle and position, no radius nor anchor; its 4 points are shown in Points mode, not edited. The model tells the free shape from the others (isFreeShape). Refs: US-029.T1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: US-029.T1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The verifier's findings: the radius fields left alone and the point's radius hidden on a round shape; tests for the greyed point controls, the radius back after Round and a refused round shape. Refs: US-029.T1 Closes: US-029 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: CHK-012.T1 Closes: CHK-012 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: CHK-012.T1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… rectangle Convert to free shape now converts a polygon or a round shape, unmoved; Convert to rounded rectangle shows for a round shape only; both greyed for a box of width or height 0. Refs: US-030.T1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: US-030.T1 Closes: US-030 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: AUD-013.T1 Closes: AUD-013 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Seven steps, one per option of the round shape, tested end to end; the demo page lists the options and what the agent decided. Refs: VAL-012.T1 Refs: VAL-012.T2 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Two passes over the code base, every drawing identical; started from F10's validation branch so that F10's code is named too. Refs: F13 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Research note 0016 from two math-expert inventories: what each pass names, the sources, what stays inline and why; Q35 asked. Refs: SP-014.T1 Closes: SP-014 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Distance, rotate, Hadamard product, opposite, scalar projection, quarter turns, degrees and radians, direction at an angle, polar, signed and central angles, modulo, average, discriminant, Bernstein weights, box size and polygonal chain end replace their inline formulas, each with its source; new folders rotation, interpolation, arithmetic and polynomial. A golden file of 400 results is unchanged bit for bit. Refs: EN-028.T1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: EN-028.T1 Closes: EN-028 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Has area, half size, half the smaller side, explement, clamp and the degrees of a quarter and a half turn; the model and the playground call add, subtract, opposite, modulo, box size and box centre instead of writing them out. The golden file is unchanged bit for bit. Refs: EN-029.T1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: EN-029.T1 Closes: EN-029 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: CHK-013.T1 Closes: CHK-013 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Regular partition, zero vector, reduced radius, the midpoint as an average; one empty corner and one set of empty handles in geometry; the shape kinds told apart by model predicates; the playground's greyed state read by a shared action. The golden file is unchanged. Refs: EN-030.T1 Refs: EN-030.T2 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: EN-030.T2 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: EN-030.T2 Closes: EN-030 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: AUD-014.T1 Closes: AUD-014 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: VAL-013.T1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refs: VAL-013.T1 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
ADR-0049: a calculation or a process that a field names is a function of that name with its source; the auditor looks for unnamed ones at each story, and a NAM story goes over the whole code twice before each epic's review. backlog.test.ts requires it from E15 on; the status line and the metrics read NAM ids. Refs: VAL-013 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…ngle removed At VAL-012 the Product Owner found it destructive: an ellipse rounded as its box becomes a capsule, so it only kept the drawing for a circle. Only Convert to free shape stays; F10.AC5 now proves that no such button is offered. roundShapeAsRoundedRectangle and halfSmallerSide, used by it alone, are removed; the guided test loses its sixth step. Refs: VAL-012 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
VAL-012: the Product Owner accepted the round shape and the agent's decisions, and removed the conversion to a rounded rectangle. VAL-013: F13 accepted without remark. Both features done; the criteria of F13 and F10.AC6 traced to tests, one of them a fitness test that keeps each named calculation in its own function. Refs: VAL-012.T3, VAL-013.T2 Closes: VAL-012, VAL-013, F10, F13 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
F10 (round shape) and F13 (every calculation named), validated together by the Product Owner on 2026-10-14. This branch holds both features, so it replaces the F10 validation branch.
F10 — Round shape
Validation: accepted. The agent's decisions stand (four cubic sides, point 1 at the top, Convert to free shape). Convert to rounded rectangle was removed: for an ellipse it gives a capsule, so it keeps the drawing only for a circle. F10.AC5 now proves that the button is absent.
roundShapeAsRoundedRectangleandhalfSmallerSidewere removed with it.F13 — Every calculation named
Evidence: 33 named modules. A golden file of 400 results was identical after each story, and the auditor compared 70,970 results with 0 differences. No expected test value was edited. A new fitness test,
tests/named-calculations.test.ts, keeps each named calculation in its own function (mutation-checked).Validation: accepted without remark. The Product Owner made the work a standing rule in ADR-0049: every calculation named, and a
NAMnaming pass over the whole code closing each epic.tests/backlog.test.tsenforces it from E15 on.check:allis green at the push.🤖 Generated with Claude Code