synthesisui 0.16.460 → 0.16.461

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -262,7 +262,7 @@ async function askWhichAgents(pre) {
262
262
  ? fmt(say("{dir} is here"), { dir: agent.evidence })
263
263
  : fmt(say("no {dir} in this repo"), { dir: agent.evidence }),
264
264
  })),
265
- picked: pre,
265
+ picked: preselectedAgents(pre),
266
266
  });
267
267
  return picked;
268
268
  }
@@ -863,11 +863,36 @@ export async function connect(opts) {
863
863
  .join("\n"));
864
864
  }
865
865
  }
866
+ /**
867
+ * A RESPOSTA DA PERGUNTA DO ENVIO - Enter é SIM desde 27/09.
868
+ *
869
+ * O padrão era NÃO (`[y/N]`), com o motivo "enviar é a mudança, e uma mudança de promessa pede um sim
870
+ * dito". O dono, na rodada 1 do refinamento, olhando a tela: *"a parte do sync estava como default N, acho
871
+ * que o correto aqui seria default Y"*. Desde a jornada "o sistema só muda com commit" o envio do fim do
872
+ * turno manda só as checagens - o sistema não muda por ele -, e é isso que a própria pergunta diz. Um não
873
+ * dito continua sendo não, nas duas línguas.
874
+ */
875
+ export function sendsAtTurnEnd(answer) {
876
+ const said = answer.trim();
877
+ if (said === "")
878
+ return true;
879
+ return !/^(n(o)?|n[aã]o)$/i.test(said);
880
+ }
881
+ /**
882
+ * OS AGENTES QUE COMEÇAM MARCADOS - a evidência do repositório, ou todos quando ele não prova nenhum.
883
+ *
884
+ * Num projeto novo, sem `.claude` nem `.codex`, a lista abria sem nada marcado e o Enter confirmava
885
+ * nenhum. O dono, na rodada 1 do refinamento (27/09): *"por padrão dá para deixar os 2 selecionados"*.
886
+ * Onde o repositório prova um agente, continua marcado só o que ele prova - ali a evidência é melhor que
887
+ * um padrão.
888
+ */
889
+ export function preselectedAgents(proven) {
890
+ return proven.length > 0 ? [...proven] : AGENTS.map((agent) => agent.id);
891
+ }
866
892
  /**
867
893
  * Pergunta uma vez, e só num terminal de verdade - o mesmo molde do `askToOverwrite` do `sync`.
868
894
  *
869
- * Sem TTY devolve `null`: não há quem responder, e nada é gravado. O padrão do terminal é NÃO
870
- * (`[y/N]`), porque enviar é a mudança, e uma mudança de promessa pede um sim dito.
895
+ * Sem TTY devolve `null`: não há quem responder, e nada é gravado. Ver `sendsAtTurnEnd` para o padrão.
871
896
  */
872
897
  async function askToSendAtTurnEnd() {
873
898
  if (!process.stdin.isTTY || !process.stdout.isTTY)
@@ -875,8 +900,8 @@ async function askToSendAtTurnEnd() {
875
900
  const { createInterface } = await import("node:readline/promises");
876
901
  const rl = createInterface({ input: process.stdin, output: process.stdout });
877
902
  try {
878
- const answer = await rl.question(` ${say("send what the check records to your dashboard at the end of each turn? Your system itself changes only from a commit on a clean main.")} [y/N]: `);
879
- return /^(y(es)?|s(im)?)$/i.test(answer.trim());
903
+ const answer = await rl.question(` ${say("send what the check records to your dashboard at the end of each turn? Your system itself changes only from a commit on a clean main.")} [Y/n]: `);
904
+ return sendsAtTurnEnd(answer);
880
905
  }
881
906
  catch {
882
907
  return null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "synthesisui",
3
- "version": "0.16.460",
3
+ "version": "0.16.461",
4
4
  "description": "Bring SynthesisUI design systems into any project - tokens, typed components, whole pages and an agent-ready CLAUDE.md manifest.",
5
5
  "type": "module",
6
6
  "bin": {