@meltstudio/meltctl 4.157.1 → 4.159.0
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/index.js +53 -3
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -14,7 +14,7 @@ var CLI_VERSION;
|
|
|
14
14
|
var init_version = __esm({
|
|
15
15
|
"src/utils/version.ts"() {
|
|
16
16
|
"use strict";
|
|
17
|
-
CLI_VERSION = "4.
|
|
17
|
+
CLI_VERSION = "4.159.0";
|
|
18
18
|
}
|
|
19
19
|
});
|
|
20
20
|
|
|
@@ -1067,6 +1067,26 @@ function createPmResource(config) {
|
|
|
1067
1067
|
const res = await apiFetch(config, `/pm/projects/${projectId}/roadmap`);
|
|
1068
1068
|
return unwrap("get roadmap", res);
|
|
1069
1069
|
},
|
|
1070
|
+
// ─── Client portal ────────────────────────────────────────────────────
|
|
1071
|
+
/**
|
|
1072
|
+
* Composite snapshot that backs the per-project client portal page. Wraps
|
|
1073
|
+
* the roadmap with project identity + PM contact + a single `lastUpdated`
|
|
1074
|
+
* timestamp. Auth-only (any @meltstudio.co JWT) in v1; the external-auth
|
|
1075
|
+
* variant will mount on a different route with the same response shape.
|
|
1076
|
+
*/
|
|
1077
|
+
async getPortal(projectId) {
|
|
1078
|
+
const res = await apiFetch(config, `/pm/projects/${projectId}/portal`);
|
|
1079
|
+
return unwrap("get portal", res);
|
|
1080
|
+
},
|
|
1081
|
+
/**
|
|
1082
|
+
* Fire-and-forget portal view log. Called once per page mount from the
|
|
1083
|
+
* dashboard. The server stamps `viewer_email` from the JWT, so the only
|
|
1084
|
+
* thing the client supplies is the project id.
|
|
1085
|
+
*/
|
|
1086
|
+
async logPortalView(projectId) {
|
|
1087
|
+
const res = await apiFetch(config, `/pm/projects/${projectId}/portal-view`, { method: "POST" });
|
|
1088
|
+
return unwrap("log portal view", res, 201);
|
|
1089
|
+
},
|
|
1070
1090
|
// ─── Project settings ─────────────────────────────────────────────────
|
|
1071
1091
|
async getProjectSettings(projectId) {
|
|
1072
1092
|
const res = await apiFetch(config, `/pm/project-settings/${projectId}`);
|
|
@@ -3996,6 +4016,26 @@ function createPmResource2(config) {
|
|
|
3996
4016
|
const res = await apiFetch2(config, `/pm/projects/${projectId}/roadmap`);
|
|
3997
4017
|
return unwrap2("get roadmap", res);
|
|
3998
4018
|
},
|
|
4019
|
+
// ─── Client portal ────────────────────────────────────────────────────
|
|
4020
|
+
/**
|
|
4021
|
+
* Composite snapshot that backs the per-project client portal page. Wraps
|
|
4022
|
+
* the roadmap with project identity + PM contact + a single `lastUpdated`
|
|
4023
|
+
* timestamp. Auth-only (any @meltstudio.co JWT) in v1; the external-auth
|
|
4024
|
+
* variant will mount on a different route with the same response shape.
|
|
4025
|
+
*/
|
|
4026
|
+
async getPortal(projectId) {
|
|
4027
|
+
const res = await apiFetch2(config, `/pm/projects/${projectId}/portal`);
|
|
4028
|
+
return unwrap2("get portal", res);
|
|
4029
|
+
},
|
|
4030
|
+
/**
|
|
4031
|
+
* Fire-and-forget portal view log. Called once per page mount from the
|
|
4032
|
+
* dashboard. The server stamps `viewer_email` from the JWT, so the only
|
|
4033
|
+
* thing the client supplies is the project id.
|
|
4034
|
+
*/
|
|
4035
|
+
async logPortalView(projectId) {
|
|
4036
|
+
const res = await apiFetch2(config, `/pm/projects/${projectId}/portal-view`, { method: "POST" });
|
|
4037
|
+
return unwrap2("log portal view", res, 201);
|
|
4038
|
+
},
|
|
3999
4039
|
// ─── Project settings ─────────────────────────────────────────────────
|
|
4000
4040
|
async getProjectSettings(projectId) {
|
|
4001
4041
|
const res = await apiFetch2(config, `/pm/project-settings/${projectId}`);
|
|
@@ -4729,7 +4769,7 @@ function registerProjectTools(server, getClient2) {
|
|
|
4729
4769
|
"get_project_settings",
|
|
4730
4770
|
{
|
|
4731
4771
|
title: "Get project settings",
|
|
4732
|
-
description: 'Returns the project\'s PM-skills settings: cadence (weekly/biweekly/monthly), start_day, demo_day, team_size, velocity_override, Linear workspace, Notion URLs, code repo path, tech-support contact, default language, project glossary, project stage. Includes a `warnings` array flagging settings whose absence breaks downstream behavior (e.g., "calculator: missing teamSize"). Returns sensible defaults if no settings row exists yet (cadence=weekly, start_day=Monday, demo_day=Friday, defaultLanguage=English).',
|
|
4772
|
+
description: 'Returns the project\'s PM-skills settings: cadence (weekly/biweekly/monthly), start_day, demo_day, team_size, velocity_override, Linear workspace, Notion URLs, code repo path, tech-support contact, default language, project glossary, project stage, default jump duration weeks. Includes a `warnings` array flagging settings whose absence breaks downstream behavior (e.g., "calculator: missing teamSize"). Returns sensible defaults if no settings row exists yet (cadence=weekly, start_day=Monday, demo_day=Friday, defaultLanguage=English, defaultJumpDurationWeeks=1).',
|
|
4733
4773
|
inputSchema: {
|
|
4734
4774
|
projectId: z22.number().int().positive().describe("Strapi project id from list_projects.")
|
|
4735
4775
|
}
|
|
@@ -4765,6 +4805,9 @@ function registerProjectTools(server, getClient2) {
|
|
|
4765
4805
|
projectGlossary: z22.string().nullable().optional().describe(
|
|
4766
4806
|
"Free-text project glossary surfaced to skills as context. Pass null to clear."
|
|
4767
4807
|
),
|
|
4808
|
+
defaultJumpDurationWeeks: z22.number().positive().optional().describe(
|
|
4809
|
+
"Project-wide default weeks per maturity jump. New phases inherit this on insert; PMs override per phase via update_phase. Used by the maturity-jumps calculator: total_jumps \xD7 jumpDurationWeeks \xD7 teamSize = total_weeks. Tighter values (0.25-0.5) model fast iteration; longer values (2-3) model robust hardening. NOT NULL with default 1; omit to leave the existing value in place."
|
|
4810
|
+
),
|
|
4768
4811
|
projectStage: z22.enum(PROJECT_STAGE_VALUES).nullable().optional().describe(
|
|
4769
4812
|
"Canonical PM-owned project stage that drives audit calibration: prototype | early_revenue | growth | scale. The server stamps projectStageSetBy + projectStageSetAt automatically. Pass null to clear."
|
|
4770
4813
|
)
|
|
@@ -4817,7 +4860,8 @@ var createPhaseInputSchema = z3.object({
|
|
|
4817
4860
|
targetShape: z3.enum(SHAPE_VALUES).default("walking"),
|
|
4818
4861
|
isPrimary: z3.boolean().optional(),
|
|
4819
4862
|
createdAt: z3.string().datetime().optional(),
|
|
4820
|
-
closedAt: z3.string().datetime().nullable().optional()
|
|
4863
|
+
closedAt: z3.string().datetime().nullable().optional(),
|
|
4864
|
+
jumpDurationWeeks: z3.number().positive().optional()
|
|
4821
4865
|
});
|
|
4822
4866
|
function registerPhaseTools(server, getClient2) {
|
|
4823
4867
|
server.registerTool(
|
|
@@ -4849,6 +4893,9 @@ function registerPhaseTools(server, getClient2) {
|
|
|
4849
4893
|
),
|
|
4850
4894
|
closedAt: z3.string().datetime().nullable().optional().describe(
|
|
4851
4895
|
"ISO 8601 timestamp. When set, the phase is created as historical (isActive=false, isPrimary=false). Use to backfill phases that closed months ago."
|
|
4896
|
+
),
|
|
4897
|
+
jumpDurationWeeks: z3.number().positive().optional().describe(
|
|
4898
|
+
"Override the project default jump duration for this phase, in weeks. Tighter (0.25-0.5) for fast iteration / proof-of-concept; longer (2-3) for hardening. Omit to inherit pm_project_settings.defaultJumpDurationWeeks."
|
|
4852
4899
|
)
|
|
4853
4900
|
}
|
|
4854
4901
|
},
|
|
@@ -4886,6 +4933,9 @@ function registerPhaseTools(server, getClient2) {
|
|
|
4886
4933
|
),
|
|
4887
4934
|
closedAt: z3.string().datetime().nullable().optional().describe(
|
|
4888
4935
|
"ISO 8601 timestamp or null. When set non-null, forces isActive=false + isPrimary=false. When null, clears the closed-at stamp."
|
|
4936
|
+
),
|
|
4937
|
+
jumpDurationWeeks: z3.number().positive().optional().describe(
|
|
4938
|
+
"Override the project default jump duration for this phase, in weeks. Tighter (0.25-0.5) for fast iteration / proof-of-concept; longer (2-3) for hardening. The audit will eventually flag mismatches between jump duration and per-feature target stages."
|
|
4889
4939
|
)
|
|
4890
4940
|
}
|
|
4891
4941
|
},
|
package/package.json
CHANGED