diff --git a/src/__tests__/bot-commands.test.ts b/src/__tests__/bot-commands.test.ts
index e9ed3a1..e2720eb 100644
--- a/src/__tests__/bot-commands.test.ts
+++ b/src/__tests__/bot-commands.test.ts
@@ -1,6 +1,7 @@
// src/__tests__/bot-commands.test.ts
import { describe, it, expect } from "vitest";
import { createdMessage, launchMessage, normalizeTelegramCommandText, parseCommand } from "../bot/commands.js";
+import { previewReadyMessage } from "../bot/i18n.js";
describe("parseCommand", () => {
it("parses /start", () => {
@@ -49,14 +50,11 @@ describe("parseCommand", () => {
});
describe("bot messages", () => {
- it("createdMessage (ru) includes bootstrap steps and links", () => {
+ it("createdMessage (ru) includes bootstrap steps without links", () => {
const message = createdMessage(
"ru",
"demo-app",
"npx @spawn-dock/create --token pair_demo",
- "https://spawn-dock.example/preview/demo-app",
- "https://t.me/TMASpawnerBot/tma?startapp=demo-app",
- "https://spawn-dock.example/tma?tgWebAppStartParam=demo-app",
);
expect(message).toContain("Проект demo-app создан.");
@@ -65,9 +63,10 @@ describe("bot messages", () => {
expect(message).toContain("Эту команду можно запускать повторно для этого проекта.");
expect(message).toContain("2. После bootstrap запусти:");
expect(message).toContain("pnpm run dev");
- expect(message).toContain("Preview URL:");
- expect(message).toContain("Telegram Link:");
- expect(message).toContain("TMA URL:");
+ expect(message).not.toContain("Preview URL:");
+ expect(message).not.toContain("Telegram Link:");
+ expect(message).not.toContain("TMA URL:");
+ expect(message).not.toContain("Ссылки:");
});
it("createdMessage (en) uses English bootstrap copy", () => {
@@ -75,9 +74,6 @@ describe("bot messages", () => {
"en",
"demo-app",
"npx @spawn-dock/create --token pair_demo",
- "https://spawn-dock.example/preview/demo-app",
- "https://t.me/TMASpawnerBot/tma?startapp=demo-app",
- "https://spawn-dock.example/tma?tgWebAppStartParam=demo-app",
);
expect(message).toContain("Project demo-app created.");
@@ -85,9 +81,10 @@ describe("bot messages", () => {
expect(message).toContain("npx @spawn-dock/create --token pair_demo");
expect(message).toContain("2. After bootstrap, run:");
expect(message).toContain("pnpm run dev");
+ expect(message).not.toContain("Links:");
});
- it("includes TMA and preview links in launchMessage", () => {
+ it("includes TMA, preview, and telegram links in launchMessage", () => {
const message = launchMessage(
"en",
"demo-app",
@@ -103,4 +100,18 @@ describe("bot messages", () => {
expect(message).toContain("Tunnel status:");
expect(message).toContain("npm run agent");
});
+
+ it("previewReadyMessage keeps all links", () => {
+ const message = previewReadyMessage(
+ "ru",
+ "demo-app",
+ "https://example.com/preview/demo-app",
+ "https://t.me/rustgpt_bot/tma?startapp=demo-app",
+ "https://example.com/tma?tgWebAppStartParam=demo-app",
+ );
+
+ expect(message).toContain("Preview URL:");
+ expect(message).toContain("Telegram Link:");
+ expect(message).toContain("TMA URL:");
+ });
});
diff --git a/src/bot/i18n.ts b/src/bot/i18n.ts
index 96739ac..ca2a870 100644
--- a/src/bot/i18n.ts
+++ b/src/bot/i18n.ts
@@ -100,9 +100,6 @@ export function createdMessage(
locale: BotLocale,
slug: string,
bootstrapCmd: string,
- previewUrl: string,
- telegramMiniAppUrl: string,
- tmaUrl: string,
): string {
if (locale === "ru") {
return [
@@ -115,11 +112,6 @@ export function createdMessage(
"",
"2. После bootstrap запусти:",
"pnpm run dev",
- "",
- "Ссылки:",
- `Preview URL: ${renderLink(previewUrl)}`,
- `Telegram Link: ${renderLink(telegramMiniAppUrl)}`,
- `TMA URL: ${renderLink(tmaUrl)}`,
].join("\n");
}
return [
@@ -132,11 +124,6 @@ export function createdMessage(
"",
"2. After bootstrap, run:",
"pnpm run dev",
- "",
- "Links:",
- `Preview URL: ${renderLink(previewUrl)}`,
- `Telegram Link: ${renderLink(telegramMiniAppUrl)}`,
- `TMA URL: ${renderLink(tmaUrl)}`,
].join("\n");
}
diff --git a/src/bot/polling.ts b/src/bot/polling.ts
index 00ba26c..7756251 100644
--- a/src/bot/polling.ts
+++ b/src/bot/polling.ts
@@ -159,13 +159,10 @@ async function processUpdate(cfg: ReturnType, update: Tele
const slug = data.project.slug;
const token = data.pairingToken.token;
const bootstrapCmd = `npx @spawn-dock/create --token ${token}`;
- const previewUrl = data.launchUrl;
- const tmaUrl = buildGatewayMiniAppUrl(previewUrl, slug);
- const telegramMiniAppUrl = buildTelegramMiniAppUrl(cfg.telegramBotUsername, cfg.telegramMiniAppShortName, slug);
await sendMessage(
cfg.telegramBotToken,
msg.chat.id,
- createdMessage(locale, slug, bootstrapCmd, previewUrl, telegramMiniAppUrl, tmaUrl),
+ createdMessage(locale, slug, bootstrapCmd),
);
return;
}