v0.1 draft · standard ouvert · un projet personnel de antferr
En couture, l’agio est l’aisance ménagée entre le corps et le vêtement. Ici, c’est un standard ouvert : trois documents JSON, un algorithme de référence et une règle — le profil reste à vous ; par défaut, une boutique reçoit une taille et son degré de certitude, jamais vos mesures.
01 · Le vocabulaire
Tout le standard tient en trois schémas JSON. Le premier vous appartient, le second est publié par le vendeur, et le troisième est la seule chose qui circule entre les deux. Ouvrez les exemples pour voir la forme réelle des données.
fit-profile.schema.json
Votre profil : mensurations (chacune avec source et observed_at obligatoires, tolerance fortement recommandée), préférences de coupe et — le signal le plus fort — l’historique de la façon dont les vêtements passés vous sont réellement allés.
Extrait simplifié : une entrée d'historique complète exige aussi occurred_at et source.
cut-profile.schema.json
Comment le vêtement est coupé, et non comment la marque nomme la taille : mesures par taille, aisance prévue (intended_ease), élasticité. Le champ measurement_method est obligatoire, sans valeur par défaut.
match-report.schema.json
La réponse. Sa forme est la partie normative du standard : confiance exposée, explication par zone, avertissements explicites. Le niveau de divulgation décide du détail qu’elle contient.
Un nom n’entre dans la liste standard que si la spécification sait dire où placer le mètre ruban, assez précisément pour que deux personnes qui mesurent le même vêtement arrivent au même chiffre. La spécification en définit seize ; une chemise en utilise cinq. Choisissez-en un pour le voir sur le vêtement.
Une chemise posée à plat avec cinq points de mesure : 1 tour de col, 42 cm ; 2 largeur d’épaules, 46,5 cm ; 3 largeur de poitrine, 58 cm ; 4 largeur de taille, 54 cm ; 5 longueur de manche, 65 cm.
La fin de chaque nom dit ce que l’on fait avec le mètre ruban, et si le chiffre est la moitié d’une circonférence :
Les définitions sont traduites : seul le texte anglais de la spécification fait foi.
Ces définitions ne sont pas encore éprouvées. Elles ont été écrites à partir de la façon dont le métier publie ses propres mesures et de leur cohérence interne, pas d’une table avec un mètre ruban posé dessus. Elles n’ont pas été vérifiées par la pratique de la couture ni du patronage. Si deux personnes mesurent le même vêtement et obtiennent des chiffres différents, c’est cet échec qui compte, et le signaler est la contribution la plus utile que cette version puisse recevoir.
02 · Essayez-le
Ci-dessous, les réponses réelles de l’implémentation de référence (python -m agiofit.cli), générées pour les deux profils d’exemple à chaque niveau de divulgation. Choisissez un profil et un niveau, et regardez ce qui sort, et surtout ce qui ne sort pas. Le vêtement et les profils sont les exemples réels du dépôt : la Classic Oxford de Sartoria Esempio (marque fictive), tailles 39–42.
Profil
Niveau de divulgation
Le simulateur nécessite JavaScript.
Ce qui circule · le rapport exact
03 · La confidentialité comme design
L’appelant ne décide pas de ce qu’il voit : c’est le niveau de divulgation qui décide, et les chiffres sont supprimés à la sérialisation, pas par bonne volonté. Un test le vérifie.
Taille, confiance et les avertissements sur la réponse. Tout ce qu’il faut à une boutique pour vous vendre une chemise.
Ajoute le jugement par zone (bon, attention…) mais sans centimètres. Avec lui viennent les alternatives, ce sur quoi repose la réponse et ce qui l’améliorerait.
Ajoute l’aisance de chaque zone en centimètres, d’où se déduisent vos mesures pour ce vêtement. Pour les services de plus grande confiance.
Ajoute l’aisance prévue de chaque zone, que vos préférences et votre historique ont pu déplacer. Il devrait être rare, et qui le demande devrait le justifier.
Les mesures du vêtement sont publiques (elles vivent dans le Cut Profile). Si la recommandation publiait aussi l’aisance en centimètres, n’importe qui pourrait faire :
116 cm de vêtement moins 16 cm d’aisance font un tour de poitrine de 100 cm.
Une soustraction reconstruit la mensuration. C’est pourquoi, aux niveaux bas, l’aisance existe dans le calcul mais ne survit pas à la sérialisation — essayez-le dans le simulateur en passant de scoped à explained.
04 · Sur votre machine
L’implémentation de référence est du Python pur, sans dépendances. Après avoir cloné github.com/agiofit/agiofit :
# installation et vérification (101 tests, tous doivent passer) $ cd agiofit/reference $ pip install -e ".[dev]" $ pytest 101 passed # profil mature : sans niveau, c’est celui de la personne qui s’applique (result_only), ici on demande explained $ python -m agiofit.cli ../examples/profile-mature.json ../examples/cut-shirt.json explained { "recommended_size": "41", "confidence": 0.84, ... } # cold start, résultat seul $ python -m agiofit.cli ../examples/profile-cold-start.json ../examples/cut-shirt.json result_only { "recommended_size": "41", "confidence": 0.25, ... }
05 · À défendre en public
Le seul champ qui enregistre un compromis accepté. Sans lui, le système apprend que vous refusez les épaules serrées ; avec lui, il apprend que vous acceptez une taille ample pour avoir les épaules justes. Dans l’implémentation de référence, un défaut déjà accepté compte pour moitié quand on choisit la taille, et le jugement sur la zone reste ce qu’il est.
Les mesures à plat sont des demi-circonférences. C’est l’erreur la plus répandue du secteur, et elle produit des recommandations fausses d’un facteur deux, en silence. Ici, si vous ne le déclarez pas, le document ne valide pas.
Une marque qui « taille petit » taille petit au buste. Appliquer le même décalage en centimètres au col — où 1 cm est une taille entière — transforme une correction utile en une réponse fausse. L’historique s’applique par zone : 1.0 sur la poitrine, 0.2 sur le col. Et la correction ne va qu’aux zones que l’historique désigne comme fausses : un retour pour des épaules serrées n’élargit pas la poitrine.
Zéro mensuration, un seul vêtement gardé de la même marque : le système répond quand même, avec une confiance plafonnée à 0.40, refuse l’inférence entre marques et vous dit quoi ajouter pour progresser. L’historique vaut plus que les centimètres.