hanoman 0.1.51 → 0.1.53
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.
- package/dist/build-info.json +3 -3
- package/dist/cli.js +50 -4
- package/dist/server.js +1647 -591
- package/package.json +1 -1
- package/prisma/migrations/20260819140000_portal_chat/migration.sql +31 -0
- package/prisma/schema.prisma +44 -0
- package/web/assets/{index-DO2CrTjU.js → index-fCgQsVLZ.js} +1545 -1545
- package/web/index.html +1 -1
package/dist/build-info.json
CHANGED
package/dist/cli.js
CHANGED
|
@@ -4413,7 +4413,7 @@ var init_auto_merge = __esm({
|
|
|
4413
4413
|
});
|
|
4414
4414
|
|
|
4415
4415
|
// ../shared/src/entities.ts
|
|
4416
|
-
var zProject, zBriefPayload, zQaPayload, zGoalPayload, zSpecBlocker, zSourceChange, zManualDone, zSpec, NOTIFY_SOUNDS, zCodex, CODEX_DEFAULTS, zSourceCommon, zScheduler, SCHEDULER_DEFAULTS, zGoal, GOAL_DEFAULTS, zConflict, CONFLICT_DEFAULTS, CHANGELOG_ENGINE_DEFAULTS, zLeadEngine, zLead, LEAD_DEFAULTS, zSetting, zNotification, zDocFile, zDeviceTokenView;
|
|
4416
|
+
var zProject, zBriefPayload, zQaPayload, zGoalPayload, zSpecBlocker, zSourceChange, zManualDone, zSpec, NOTIFY_SOUNDS, zCodex, CODEX_DEFAULTS, zSourceCommon, zScheduler, SCHEDULER_DEFAULTS, zGoal, GOAL_DEFAULTS, zConflict, CONFLICT_DEFAULTS, CHANGELOG_ENGINE_DEFAULTS, zLeadEngine, zLead, LEAD_DEFAULTS, zPortalChat, PORTAL_CHAT_DEFAULTS, zSetting, zNotification, zDocFile, zDeviceTokenView;
|
|
4417
4417
|
var init_entities = __esm({
|
|
4418
4418
|
"../shared/src/entities.ts"() {
|
|
4419
4419
|
"use strict";
|
|
@@ -4608,6 +4608,15 @@ var init_entities = __esm({
|
|
|
4608
4608
|
engine: zLeadEngine.default({})
|
|
4609
4609
|
});
|
|
4610
4610
|
LEAD_DEFAULTS = zLead.parse({});
|
|
4611
|
+
zPortalChat = external_exports.object({
|
|
4612
|
+
enabled: external_exports.boolean().default(false),
|
|
4613
|
+
brainstormPerMonth: external_exports.number().int().min(0).max(1e3).default(2),
|
|
4614
|
+
askPerMonth: external_exports.number().int().min(0).max(1e4).default(30),
|
|
4615
|
+
model: external_exports.string().default("claude-opus-5"),
|
|
4616
|
+
effort: external_exports.string().default("high"),
|
|
4617
|
+
timeoutSec: external_exports.number().int().min(10).max(900).default(180)
|
|
4618
|
+
});
|
|
4619
|
+
PORTAL_CHAT_DEFAULTS = zPortalChat.parse({});
|
|
4611
4620
|
zSetting = external_exports.object({
|
|
4612
4621
|
model: external_exports.string().default("claude-opus-5"),
|
|
4613
4622
|
effort: external_exports.string().default("xhigh"),
|
|
@@ -4646,8 +4655,10 @@ var init_entities = __esm({
|
|
|
4646
4655
|
// SPEC-409 · ADR-0091 · hanoman-lead (default mati)
|
|
4647
4656
|
telegram: zTelegramSettings.default(TELEGRAM_DEFAULTS),
|
|
4648
4657
|
// SPEC-476 · ADR-0096 · gateway Telegram (default mati)
|
|
4649
|
-
changelog: zAgentEngine.default(CHANGELOG_ENGINE_DEFAULTS)
|
|
4658
|
+
changelog: zAgentEngine.default(CHANGELOG_ENGINE_DEFAULTS),
|
|
4650
4659
|
// SPEC-518 · agen pembuat changelog (opt-in, mati)
|
|
4660
|
+
portalChat: zPortalChat.default(PORTAL_CHAT_DEFAULTS)
|
|
4661
|
+
// SPEC-854 · ADR-0130 · chat portal klien (opt-in, mati)
|
|
4651
4662
|
});
|
|
4652
4663
|
zNotification = external_exports.object({
|
|
4653
4664
|
id: external_exports.string(),
|
|
@@ -5600,9 +5611,20 @@ var init_api = __esm({
|
|
|
5600
5611
|
// SPEC-255 · ADR-0064 · rename slug project (efek: DSN, Help Center, sync).
|
|
5601
5612
|
projectRename: (id) => `${API}/projects/${encodeURIComponent(id)}/rename`,
|
|
5602
5613
|
branches: (id) => `${API}/projects/${id}/branches`,
|
|
5603
|
-
// SPEC-360 · ADR-0077 · branch
|
|
5604
|
-
|
|
5614
|
+
// SPEC-360 · ADR-0077 · daftar branch (nilai turunan git) + hapus batch local/origin.
|
|
5615
|
+
// SPEC-859 · `include=all` memuat branch yang belum ter-merge; tanpa itu hanya yang ter-merge.
|
|
5616
|
+
branchesUnused: (id, base, include) => {
|
|
5617
|
+
const q = new URLSearchParams();
|
|
5618
|
+
if (base) q.set("base", base);
|
|
5619
|
+
if (include) q.set("include", include);
|
|
5620
|
+
const s2 = q.toString();
|
|
5621
|
+
return `${API}/projects/${id}/branches/unused${s2 ? `?${s2}` : ""}`;
|
|
5622
|
+
},
|
|
5605
5623
|
branchesDelete: (id) => `${API}/projects/${id}/branches/delete`,
|
|
5624
|
+
// SPEC-861 · ADR-0132 · worktree HIDUP (nilai turunan git) + sinyal mahal per baris + hapus batch.
|
|
5625
|
+
worktrees: (id) => `${API}/projects/${id}/worktrees`,
|
|
5626
|
+
worktreeStats: (id, name) => `${API}/projects/${id}/worktrees/stats?name=${encodeURIComponent(name)}`,
|
|
5627
|
+
worktreesDelete: (id) => `${API}/projects/${id}/worktrees/delete`,
|
|
5606
5628
|
// SPEC-217 · path per-mesin (LocalBinding, tak disync) + clone dari gitRemote
|
|
5607
5629
|
binding: (id) => `${API}/projects/${id}/binding`,
|
|
5608
5630
|
clone: (id) => `${API}/projects/${id}/clone`,
|
|
@@ -5900,6 +5922,24 @@ var init_portal = __esm({
|
|
|
5900
5922
|
}
|
|
5901
5923
|
});
|
|
5902
5924
|
|
|
5925
|
+
// ../shared/src/portal-chat.ts
|
|
5926
|
+
var PORTAL_CHAT_TYPES, zPortalChatType, zAgentReply;
|
|
5927
|
+
var init_portal_chat = __esm({
|
|
5928
|
+
"../shared/src/portal-chat.ts"() {
|
|
5929
|
+
"use strict";
|
|
5930
|
+
init_zod();
|
|
5931
|
+
PORTAL_CHAT_TYPES = ["brainstorm", "tanya"];
|
|
5932
|
+
zPortalChatType = external_exports.enum(PORTAL_CHAT_TYPES);
|
|
5933
|
+
zAgentReply = external_exports.object({
|
|
5934
|
+
balasan: external_exports.string(),
|
|
5935
|
+
keluar_topik: external_exports.boolean(),
|
|
5936
|
+
prd_siap: external_exports.boolean(),
|
|
5937
|
+
prd: external_exports.string().nullable(),
|
|
5938
|
+
ringkasan: external_exports.string()
|
|
5939
|
+
});
|
|
5940
|
+
}
|
|
5941
|
+
});
|
|
5942
|
+
|
|
5903
5943
|
// ../shared/src/session-kind.ts
|
|
5904
5944
|
var SESSION_KINDS, zSessionKind;
|
|
5905
5945
|
var init_session_kind = __esm({
|
|
@@ -7264,6 +7304,7 @@ var init_src = __esm({
|
|
|
7264
7304
|
init_coverage();
|
|
7265
7305
|
init_ticket_status();
|
|
7266
7306
|
init_portal();
|
|
7307
|
+
init_portal_chat();
|
|
7267
7308
|
init_prd_status();
|
|
7268
7309
|
init_session_kind();
|
|
7269
7310
|
init_session_end();
|
|
@@ -29273,6 +29314,11 @@ var init_migrate_pg = __esm({
|
|
|
29273
29314
|
"Session",
|
|
29274
29315
|
"DeviceToken",
|
|
29275
29316
|
"AgentToken",
|
|
29317
|
+
// SPEC-854 · ADR-0129 · PortalChatSession sesudah User DAN Project (FK ke keduanya);
|
|
29318
|
+
// PortalChatMessage sesudah sesinya (FK sessionId, cascade). Keduanya LOCAL-only dan lazimnya
|
|
29319
|
+
// TIDAK ada di sumber Postgres lama — jalur 42P01 memperlakukannya sebagai nol baris.
|
|
29320
|
+
"PortalChatSession",
|
|
29321
|
+
"PortalChatMessage",
|
|
29276
29322
|
"Vps",
|
|
29277
29323
|
"VpsAuditSnapshot",
|
|
29278
29324
|
"VpsItemState",
|