Rechercher dans la documentation

Rechercher dans la documentation

Outils de dossier

Les 27 outils qui gardent trace de ce qui a été décidé sur un projet, et du document qu’il produit.

Une conversation disparaît, un projet dure des mois. Ces vingt-cinq outils permettent à votre agent d’écrire ce qui a été retenu dans un dossier que vous rouvrez, annotez et exportez depuis stratta.ch/dossiers, et de lire et faire tout ce que la page du dossier sait lire et faire sur une question.

Vous ne les appelez pas à la main. Votre agent le fait pendant qu’il travaille, en suivant la politique décrite dans get_methodology.

Ces outils sont ouverts à tout membre de l’organisation, contrairement aux outils d’ingestion réservés aux propriétaires et administrateurs. Un dossier est votre travail, pas le corpus partagé du bureau.


Ce qu’un dossier contient

Un dossier est un ensemble de questions à trancher, par exemple « Le pieu P38 peut-il être conservé ? » ou « Quel φ’k retenir pour le remblai ? ». C’est la question, et non l’entrée isolée, qui est l’unité de travail : c’est elle qu’on assigne, qu’on relit et qu’on clôt.

ÉlémentCe que c’estOutil
QuestionCe qui reste à trancheropen_question
PreuveCe qui appuie une réponse : citation, valeur retenue, observationsave_finding
OptionUne manière de trancher la question, nommée dès son ouverturelistée dans open_question
DécisionCe que vous avez confirmé, et pourquoirecord_decision

Une preuve peut être enregistrée avant même de savoir à quelle question elle sert : elle reste alors « à classer », et vous la rattachez ensuite depuis l’application. Trois types de preuve, et la distinction n’est pas décorative :

TypeCe que c’estChamps attendus
referenceCe que la norme ditnormCode, sectionPath, page
hypothesisLa valeur que vous retenez, et pourquoivalue, detail, confidence
observationCe que le terrain a montrédetail avec la date

En calcul de structure, une valeur retenue est le résultat d’une formule et se recalcule. En géotechnique, c’est un jugement posé entre trois sondages qui ne disent pas la même chose, et la seule chose relisible six mois plus tard est le raisonnement. D’où le champ confidence :

  • established : calculée, ou lue directement dans la norme
  • judgement : choisie par vous entre plusieurs valeurs possibles
  • to_confirm : provisoire, demande un essai ou une vérification

Confondre les trois est la faute professionnelle que ce champ existe pour éviter.


list_dossiers

Liste les dossiers de votre organisation, le plus récemment modifié en tête. Chaque ligne porte le nombre d’entrées et surtout le nombre de questions ouvertes : c’est ce qui désigne le dossier à reprendre.

Aucun paramètre.


open_dossier

Ouvre le dossier d’un projet, en le créant s’il n’existe pas encore.

namestringrequired

Le nom sous lequel vous parlez du projet, par exemple « Villa Morges, toiture ». C’est ce nom que vous emploierez pour le reprendre.

referencestring

Le numéro de projet de votre organisation, s’il y en a un.

Idempotent sur le nom. Appeler l’outil deux fois avec le même nom renvoie le même dossier plutôt que d’en créer un second qui couperait l’historique du projet en deux.

Renvoie { dossierId, created }.


open_question

Ouvre une question à trancher dans un dossier, avant de rassembler des preuves pour elle. Une question est l’unité de travail : « Le pieu P38 peut-il être conservé ? », « Quel φ’k retenir pour le remblai ? ». Les preuves enregistrées avec save_finding et l’éventuelle décision de record_decision s’y rattachent.

Une seule question par chose à trancher : une question dont le corps liste huit sous-questions ne peut être ni assignée, ni répondue, ni close une à une. Ouvrez huit questions.

dossierIdstringrequired

Renvoyé par open_dossier ou list_dossiers.

titlestringrequired

La question en une ligne, formulée comme une question.

bodystring

Ce qui est en jeu et pourquoi ce n’est pas tranché, en deux ou trois phrases. Pas une liste de sous-questions.

optionsarray

Les manières de trancher la question, quand la norme ou vous en mettez plusieurs sur la table : « abandonner le pieu », « le récupérer par reprise en sous-œuvre et essais d’intégrité », « redistribuer sur P37/P39 ». Un nom court par option, dix au maximum.

Idempotent sur le titre. Rouvrir la même formulation renvoie la question déjà ouverte, avec ses preuves.

Renvoie { questionId, created }.


list_attachments

Liste les pièces d’un dossier (rapports, forages, procès-verbaux, fiches techniques) avec l’état de leur extraction. Un agent les lit avant de répondre sur un projet.

dossierIdstringrequired

Le dossier.

attachmentsarray

id, name, mimeType, bytes, pageCount, status (pending, ready, failed), note, addedAt.


read_attachment

Lit le texte d’une pièce sous forme de document Markdown, page par page, par fenêtres.

attachmentIdstringrequired

Depuis list_attachments ou search_in_dossier.

fromnumberdefault: 1

Première page.

tonumberdefault: dernière

Dernière page.

maxCharsnumberdefault: 12000

Caractères par appel (500 à 40000). Quand truncated vaut true, rappeler avec from à nextPage.

markdownstring

Les pages lues, chacune sous un titre ## p. N. Un scan sans couche de texte le dit.


search_in_dossier

Recherche plein texte dans les pièces d’un dossier, accents et casse ignorés.

dossierIdstringrequired

Le dossier.

keywordstringrequired

Termes de recherche dans la langue des documents.

limitnumberdefault: 10

Nombre maximal de correspondances (1 à 30).

hitsarray

attachmentId, name, page, snippet.

Sur le serveur local seulement, add_attachment téléverse un fichier depuis la machine de l’utilisateur (PDF, DOCX, XLSX, PNG, JPEG, TXT, MD, CSV, 25 Mo au plus, 20 par dossier). Le connecteur distant n’a pas de disque : déposez la pièce depuis la page du dossier.


list_templates

Liste les gabarits de dossier de l’organisation : des listes de questions par type d’ouvrage, avec les clauses sur lesquelles chacune repose. Aucun paramètre.

templatesarray

id, name, description, questions, citations.


apply_template

Ouvre les questions d’un gabarit dans un dossier, avec leurs options, et dépose sous chacune une entrée reference pour chaque clause qui se résout dans le corpus. Une clause que l’organisation ne peut pas lire est écrite dans le corps de la question comme à établir. Appliquer deux fois n’ouvre rien deux fois.

dossierIdstringrequired

Le dossier.

templateIdstringrequired

Depuis list_templates.

resultobject

questionsOpened, referencesFiled, unresolved[] (question, normCode, sectionPath).


draft_deliverable

Ouvre le document que le dossier produit (base du projet, convention d’utilisation, rapport géotechnique, note de vérification, autre) et rend son plan : une section par chapitre, avec son chemin, son titre, une indication de ce qui y va, son état (à établir, à jour, à revoir, avec la raison quand une source a changé) et un extrait de ce qui est déjà écrit. Le plan est le plan validé du bureau pour ce type quand il existe (page Méthodes), sinon celui que Stratta propose. Rend aussi les décisions du dossier avec leurs identifiants, pour que write_section les cite, et le site quand il y en a un. Appeler deux fois sur le même dossier et le même type rend le même document, jamais un second.

dossierIdstringrequired

Le dossier.

kindstringrequired

project_basis, use_agreement, geotechnical_report, verification_note ou other.

titlestring

Le titre, quand l’utilisateur l’a nommé. Par défaut : le type et le nom du dossier.

resultobject

deliverableId, created, title, kind, status, templateName, sections[] (path, title, level, hint, state, staleReason, excerpt, sourceCount), decisions[] (entryId, question, title, value, clause), openQuestions[], siteId.


write_section

Écrit une section du document : le texte tel qu’il sera imprimé, et ce sur quoi il repose. Chaque phrase de fond vient d’une source que la section cite : une décision ou une preuve du dossier (entry, l’identifiant de l’entrée), un fait de site (fact, la clé du fait comme groundwater.level), une clause lue (clause, "SIA 267 s. 9.5.2"), une page d’une pièce (attachment, l’identifiant suivi de #p12), une lecture (reading). Une section sans source est refusée ; quand le dossier n’a rien pour elle, gap à true et un texte qui dit ce qui manque : la section est imprimée « à établir ». Remplace ce que la section contenait. Un document signé ne s’écrit plus. Quand une source change ensuite (décision reprise, entrée supprimée, relevé du site, nouvelle édition), la section passe « à revoir » avec la raison ; la réécrire, ou la garder depuis la page du dossier, la remet à jour.

deliverableIdstringrequired

Depuis draft_deliverable.

pathstringrequired

Le chemin de la section dans le plan, "2" ou "3.1".

bodystringrequired

Le texte, prose ou Markdown léger, 12 000 caractères au plus.

sourcesarrayrequired

Une liste de {kind, ref, label?}. Au moins une, sauf gap.

gapboolean

true quand le dossier n’a rien pour cette section.

resultobject

state : current ou gap.


save_finding

Enregistre une preuve dans un dossier. Votre agent l’appelle au fil du travail, pas en lot à la fin : une preuve consignée au moment où elle est trouvée garde le raisonnement qui l’a produite.

dossierIdstringrequired

Renvoyé par open_dossier ou list_dossiers.

questionIdstring

La question que cette preuve sert, renvoyée par open_question ou load_dossier. Omis uniquement quand vous ne savez pas encore laquelle : la preuve est enregistrée « à classer », et vous la rattachez plus tard depuis l'application.

kindstringrequired

reference, hypothesis ou observation. Voir le tableau plus haut.

titlestringrequired

Le fait en une ligne, comme vous l’écririez dans un rapport.

detailstring

Le raisonnement : pourquoi cette valeur, ce sur quoi elle repose, ce qui la contredit.

valuestring

La valeur retenue avec son unité, par exemple 30° ou 1,25 kN/m².

confidencestring

established, judgement ou to_confirm.

normCodestring

Norme d’origine, par exemple SIA 267.

sectionPathstring

Chemin de section exact, par exemple 9.5.2.1.

pagenumber

Page dans la norme, pour que vous puissiez le vérifier dans votre PDF.

normEditionstring

L’édition citée, par exemple « 2013 » ou « 2020 + rect. 2022 », quand list_norms la donne.


record_decision

Enregistre ce que vous avez retenu : la décision en une ligne, pourquoi, et l’article sur lequel cela repose. Deux façons de nommer la question : questionId quand elle existe déjà, ou dossierId et question (ce qui est réglé, en une ligne) et la question est ouverte tranchée dans le même geste. La question sort des points ouverts et garde ses preuves ; la décision devient l’entrée qu’un relecteur lit en premier.

Votre agent ne l’appelle qu’une fois que vous avez confirmé la décision, jamais sur son seul raisonnement.

questionIdstring

Renvoyée par open_question ou load_dossier, quand la question existe.

dossierIdstring

Sans questionId : le dossier auquel la décision appartient.

questionstring

Sans questionId : ce qui est réglé, en une ligne (« Angle de frottement de la moraine »). Les mêmes mots retrouvent une question déjà ouverte.

retainedOptionstring

L’option retenue, par son nom, quand la question en listait. Une option non listée jusque-là est créée à la volée.

titlestringrequired

La décision en une ligne.

detailstring

Le raisonnement.

valuestring

La valeur retenue avec son unité, quand la décision en porte une.

confidencestring

established, judgement ou to_confirm.

normCodestring

Norme d’origine.

sectionPathstring

Chemin de section exact.

pagenumber

Page dans la norme.

normEditionstring

L’édition citée.

Renvoie { entryId }.


load_dossier

Recharge tout ce qu’un dossier contient : ses questions avec leurs preuves, leurs options et leur décision, puis les preuves qui ne sont pas encore rattachées à une question, puis les commentaires. Les questions ouvertes viennent en premier : lisez-les avant tout le reste et dites à l’utilisateur ce qui est encore ouvert. Les textes longs sont coupés (le détail d’une pièce à 280 caractères, l’énoncé d’une question à 480) : get_question les rend entiers.

Dites simplement « reprends le dossier Villa Morges » : votre agent appelle cet outil avant de répondre quoi que ce soit sur le projet, et repart de ce qui a été décidé au lieu de le redécider.

dossierIdstring

À privilégier quand l’agent l’a déjà.

namestring

Le nom du projet, quand vous le nommez plutôt que de donner un identifiant. Correspondance exacte.

L’un des deux est nécessaire.


resolve_question

Clôt une question qui a cessé d’importer sans décision : la variante a été abandonnée, le client a retiré la demande, la question est devenue sans objet. La question reste dans le dossier, marquée close, avec ses preuves. Pour trancher une question avec une réponse, appelez record_decision.

questionIdstringrequired

Renvoyée par open_question ou load_dossier.

resolvedboolean

true par défaut. Passez false pour rouvrir une question.


Lire une question à la fois

load_dossier est la reprise : tout le dossier, en petit, questions ouvertes en tête. C’est le bon premier appel et le mauvais seul appel. Ce que la page du dossier montre et qu’il ne dit pas : à qui une question est assignée et pour quand, les identifiants qu’il faut pour agir sur une option ou une entrée, la citation d’une entrée champ par champ plutôt qu’en une ligne, les commentaires avec leur auteur, l’historique. Les quatre outils suivants servent cela, une page à la fois : quand nextCursor est présent, rappelez l’outil avec sa valeur en cursor.

list_questions

Les questions d’un dossier, avec leur statut, leur responsable, leur échéance, leurs options (et l’identifiant de chacune) et le titre de la décision quand il y en a une. L’énoncé est coupé à 240 caractères ; get_question le rend entier.

dossierIdstringrequired

Le dossier.

statusstring

open, decided ou closed. Omis : toutes.

limitnumberdefault: 50

Questions par page (1 à 200).

cursorstring

Le nextCursor de la page précédente.

get_question

Une question en entier : son énoncé, son statut, ses options avec leur description, sa décision, ses preuves avec chaque champ de citation (normCode, sectionPath, page, normEdition, attachmentId, attachmentPage) et l’option que chacune défend, et les commentaires laissés sur la question et sur ces entrées, chacun avec son auteur. À appeler avant d’ajouter quoi que ce soit à une question, pour ne rien y déposer deux fois.

questionIdstringrequired

Depuis list_questions, load_dossier ou open_question.

limitnumberdefault: 50

Preuves par page (1 à 200).

cursorstring

Le nextCursor de la page précédente.

get_dossier_activity

L’historique d’un dossier, le plus récent d’abord : qui a fait quoi et quand, depuis l’application ou depuis un agent, chaque ligne avec la question ou l’entrée qu’elle concerne.

dossierIdstringrequired

Le dossier.

limitnumberdefault: 15

Lignes par page (1 à 200).

cursorstring

Le nextCursor de la page précédente.

list_exports

Les notes de vérification et les journaux exportés d’un dossier, avec leur empreinte SHA-256, l’horodatage qualifié quand il a été obtenu et la version de méthodologie en vigueur. Le fichier se télécharge depuis la page du dossier ; l’outil dit qu’une note existe et permet de vérifier une empreinte reçue.

dossierIdstringrequired

Le dossier.


Agir sur une question

Tout ce que la page du dossier sait faire sur une question, votre agent le fait aussi, quand vous le lui demandez. Deux de ces outils sont irréversibles : delete_question et delete_option demandent votre confirmation dans le client avant de toucher quoi que ce soit, comme record_decision.

update_question

Reformule une question, réécrit son enjeu, l’assigne à un membre de l’organisation par son adresse e-mail, ou pose son échéance. Seuls les champs donnés changent ; null retire le responsable ou l’échéance. Le statut, lui, passe par record_decision et resolve_question.

questionIdstringrequired

La question.

titlestring

Le nouvel énoncé, en une ligne.

bodystring

Ce qui est en jeu, en deux ou trois phrases.

assigneeEmailstring | null

L’adresse d’un membre de l’organisation. null retire le responsable.

dueAtstring | null

Un jour ISO, par exemple 2026-10-15. null retire l’échéance.

add_option

Ajoute une manière de trancher la question quand une variante apparaît après son ouverture. Idempotent sur le nom : les mêmes mots renvoient l’option déjà listée. Dix options par question au plus. Renvoie { optionId, created }.

questionIdstringrequired

La question.

namestringrequired

L’option en quelques mots.

descriptionstring

Ce qu’elle implique, quand le nom ne suffit pas.

update_option

Renomme ou décrit une option, ou la marque comme retenue. En retenir une libère les autres : un choix n’a qu’une réponse. La retenir ici ne tranche pas la question ; c’est record_decision qui le fait, et qui nomme lui-même l’option retenue.

optionIdstringrequired

Depuis get_question, list_questions ou load_dossier.

namestring

Le nouveau nom.

descriptionstring

La nouvelle description.

retainedboolean

true pour la retenir, false pour la libérer.

delete_option

Retire une option d’une question. Les preuves classées sous elle restent sur la question. Irréversible : votre confirmation est demandée dans le client, sauf si confirmed vaut true parce que vous l’avez déjà donnée dans la conversation.

optionIdstringrequired

L’option.

confirmedboolean

true quand vous avez déjà confirmé dans la conversation.

delete_question

Supprime une question d’un dossier. Ses preuves restent dans le dossier, à classer ; ses options, ses commentaires et sa décision partent avec elle. Une question qui a cessé d’importer se clôt avec resolve_question ; on ne supprime qu’une question ouverte par erreur, et seulement quand vous le dites. Votre confirmation est demandée dans le client.

questionIdstringrequired

La question.

confirmedboolean

true quand vous avez déjà confirmé dans la conversation.

add_comment

Laisse une remarque sur le dossier, sur une question ou sur une entrée : un doute sur une valeur, une note pour un collègue, la raison pour laquelle une preuve a été écartée. Un commentaire est signé de l’utilisateur connecté et n’est pas une preuve : ce que la norme dit passe par save_finding. Un dossier visé accepte encore des commentaires.

dossierIdstringrequired

Le dossier.

bodystringrequired

Le commentaire.

questionIdstring

La question concernée, s’il y en a une.

entryIdstring

L’entrée concernée, s’il y en a une.

update_entry

Corrige une preuve ou une décision en place : son énoncé, sa valeur, sa confiance, ou la citation quand le mauvais article a été cité. Seuls les champs donnés changent ; page: null efface la page. Le type et la question ne changent pas ici.

entryIdstringrequired

Depuis get_question ou load_dossier.

titlestring

Le fait en une ligne.

detailstring

Le raisonnement.

valuestring

La valeur avec son unité.

confidencestring

established, judgement ou to_confirm.

normCodestring

La norme.

sectionPathstring

Le chemin de section.

pagenumber | null

La page. null l’efface.

normEditionstring

L’édition citée.

attach_entry

Classe une preuve sous une question, et si besoin sous l’une de ses options, ou la sort avec questionId: null. C’est ainsi que la pile « à classer » de load_dossier se vide : lire, trouver la question qu’elle sert, classer. Une décision ne se déplace pas : elle appartient à sa question.

entryIdstringrequired

L’entrée.

questionIdstring | nullrequired

La question sous laquelle la classer, ou null pour la laisser à classer.

optionIdstring | null

L’option de cette question que l’entrée défend, ou null.


Limites

Pour borner un agent qui boucle, sans que cela ne se facture :

LimiteValeur
Dossiers par organisation200
Questions par dossier200
Options par question10
Entrées par dossier500
Commentaires par dossier500

Un dossier visé n’accepte plus d’entrée ni de modification. Les commentaires, eux, restent ouverts : la clôture d’un dossier n’est pas la fin de la conversation à son sujet.


Ce que Stratta ne fait pas

Le dossier documente votre raisonnement, il ne le remplace pas. Stratta ne conclut jamais à la conformité d’un ouvrage, et un agent ne doit écrire aucune hypothèse que vous n’avez pas validée.