Scope the builder Pre-Execution Protocol to task shape
Les mainteneurs répondent en général sous 1 jour
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Accessibilité débutants
- 66/100
- Type d'issue
- Fonctionnalité
- Clarté
- Plutôt claire
- Activité
- Active
- Stack technique
- sql, typescript
- Domaine
- cli, developer-experience
Piste de recherche
Commencez par packages/opencode/src/altimate/prompts/builder.txt et examinez le précédent existant de SessionTermination.completionInstruction pour l’injection de prompt spécifique au mode d’exécution. Suivez la manière dont sont déterminés headless mode, le builder agent et la présence d’un projet dbt. Le travail est terminé lorsque le Pre-Execution Protocol est omis uniquement pour les exécutions de headless builder sans projet dbt et reste présent dans tous les autres cas, y compris les workspaces non classifiés.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Problem
packages/opencode/src/altimate/prompts/builder.txt carries a ## Pre-Execution Protocol section that makes sql_analyze + altimate_core_validate mandatory before every sql_execute. builder is a PRIMARY agent, so that section reaches every builder surface at once: dbt authoring, interactive chat, and headless question-answering runs.
An internal pre-registered paired prompt ablation (540 trials on a public data-question benchmark, one binary across both arms, per-trial system prompts verified by sha256) measured what the section costs on the question-answering surface:
| macro Pass@1 | |
|---|---|
| control | 0.6667 |
| treatment (protocol removed, among other changes) | 0.6807 |
| delta | +0.0140 |
- query-blocked sign-flip permutation, 20,000 resamples: p = 0.7358
- cluster-bootstrap 95% CI: [-0.0400, +0.0674]
That is a null on score. The point estimate is positive and the interval comfortably contains zero — it is not an improvement and must not be reported as one.
What did move:
| control | treatment | delta | |
|---|---|---|---|
| wall clock per trial (restricted mean) | 440.9s | 319.4s | -27.6% |
| model turns per trial | 11.9 | 8.6 | -27.7% |
| generation seconds per trial | 187.6 | 127.2 | -32.2% |
altimate_core_validate calls (arm total) |
1,476 | 0 | -1,476 |
sql_analyze calls (arm total) |
1,329 | 0 | -1,329 |
sql_execute calls (arm total) |
1,716 | 2,554 | +49% |
| trials hitting the 900s timeout | 27 | 16 | -11 |
The 2,805 ritual tool calls going to zero is the number directly attributable to this text. The ritual is prompt-ordered: deleting the order deletes it completely, not partially. The freed budget went into actual querying (sql_execute +49%).
Why not just delete it
Two reasons, both from the experiment's own caveats:
- The latency win is not attributable to this section alone. The treatment arm bundled five coupled changes; the experiment explicitly declined to attribute and a factorial was not run.
- The measurement covers data questions only. dbt authoring and interactive chat are unmeasured builder surfaces where a pre-execution discipline may genuinely earn its place. Deleting on this evidence would over-generalise from one workload.
Proposal
Scope the section to task shape rather than delete it, following the precedent already in the tree: SessionTermination.completionInstruction moved a run-mode-only instruction out of builder.txt and injects it only when headless AND the agent is builder.
Drop the protocol only in the cell that was measured (headless + builder + no dbt project in the workspace) and keep it everywhere else, including whenever the workspace cannot be classified. The cost of keeping it is 27% latency on one workload; the cost of wrongly dropping it is unmeasured.
Out of scope
main also carries a ## Finish Protocol section (shipped in #1171) — a second mandatory ritual in the same family, added after the binary the ablation measured was built. No measurement covers it and this issue does not propose touching it.
A follow-up measurement on dbt tasks is needed before the gate could be widened, or the section deleted outright.
- Langage dominant
- TypeScript
- Étoiles
- 815
- Forks
- 135
- Merge moyen
- 1 j 18 h
- PR mergées (30 j)
- 59
Préparer son environnement
Lance le conteneur de développement du projet dans votre navigateur, avec votre propre compte GitHub.
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de AltimateAI/altimate-code
-
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
AltimateAI/altimate-code#1378 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
AltimateAI/altimate-code#1359 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
AltimateAI/altimate-code#1323 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 86/100
AltimateAI/altimate-code#1288 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 1/5 Moins d'une heure Accessibilité débutants 92/100
AltimateAI/altimate-code#1285 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de AltimateAI/altimate-code
Issues similaires
-
documentation
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
inu-appcenter/memorIN-frontend#106 ·
Les mainteneurs répondent en général sous 1 jour
-
kind/bug
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 7 jours
-
[Bug] @deck.gl/arcgis dist import resolves to unpublished @deck.gl/core source path (9.3.11, 9.4.0)Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
Les mainteneurs répondent en général sous 1 jour
-
fix: CopyFilters ignores tabOuvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 82/100
CSCfi/sd-search-ui#145 ·
Les mainteneurs répondent en général sous 1 jour
-
Add: Cbeebies pl SDOuvertecheck:passed streams:add
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
Les mainteneurs répondent en général sous 1 jour