Skip to content

feat!: cut over to the four-tool v2 interface - #39

Closed
jack-arturo wants to merge 7 commits into
mainfrom
feat/pirsch-v2-public-cutover
Closed

feat!: cut over to the four-tool v2 interface#39
jack-arturo wants to merge 7 commits into
mainfrom
feat/pirsch-v2-public-cutover

Conversation

@jack-arturo

Copy link
Copy Markdown
Member

Summary

  • switch the stdio executable to the schema-validated MCP v2 server
  • publish the four-tool, explicit-domain public interface
  • remove the legacy dispatcher/client/tests and obsolete package dependencies
  • update the registry manifest, setup docs, and contributor contract

Validation

  • npm run typecheck
  • npm run lint
  • npm test
  • npm run build
  • npm run test:release-workflow
  • MCP Inspector tools/list (exactly four tools)

Part 5 of the Pirsch MCP v2 stack; depends on #38. Large by necessity: 3,561 of 3,824 changed lines are legacy removals and their generated lockfile cleanup.

@jack-arturo jack-arturo added the babysit:waiting-codex 👀 Codex reviewing current head label Aug 23, 2026
@jack-arturo
jack-arturo force-pushed the refactor/pirsch-v2-four-tool-server branch from 5c28eb0 to 664357f Compare August 23, 2026 14:23
@jack-arturo
jack-arturo force-pushed the feat/pirsch-v2-public-cutover branch from 4e28f2f to 9ae1d2d Compare August 23, 2026 14:23
@jack-arturo
jack-arturo force-pushed the refactor/pirsch-v2-four-tool-server branch from 664357f to aff7e51 Compare August 23, 2026 14:41
@jack-arturo
jack-arturo force-pushed the feat/pirsch-v2-public-cutover branch from 9ae1d2d to 7cb67e7 Compare August 23, 2026 14:41
@jack-arturo

Copy link
Copy Markdown
Member Author

@codex review

@jack-arturo jack-arturo added babysit:waiting-codex 👀 Codex reviewing current head and removed babysit:waiting-codex 👀 Codex reviewing current head labels Aug 23, 2026
@jack-arturo
jack-arturo force-pushed the refactor/pirsch-v2-four-tool-server branch from aff7e51 to a32f0e2 Compare August 23, 2026 14:46
@jack-arturo
jack-arturo force-pushed the feat/pirsch-v2-public-cutover branch from 7cb67e7 to 3c2db90 Compare August 23, 2026 14:46

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 3c2db9096d

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/index.ts
@jack-arturo
jack-arturo force-pushed the refactor/pirsch-v2-four-tool-server branch from a32f0e2 to 35c082a Compare August 23, 2026 15:01
@jack-arturo
jack-arturo force-pushed the feat/pirsch-v2-public-cutover branch from 3c2db90 to 7007538 Compare August 23, 2026 15:05
@jack-arturo
jack-arturo force-pushed the refactor/pirsch-v2-four-tool-server branch from 35c082a to e63b835 Compare August 23, 2026 15:11
@jack-arturo
jack-arturo force-pushed the feat/pirsch-v2-public-cutover branch from 7007538 to 9f5ffc9 Compare August 23, 2026 15:12

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 9f5ffc912f

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread README.md
@jack-arturo
jack-arturo force-pushed the refactor/pirsch-v2-four-tool-server branch from e63b835 to 446692e Compare August 23, 2026 15:27
@jack-arturo
jack-arturo force-pushed the feat/pirsch-v2-public-cutover branch from 9f5ffc9 to c8669c7 Compare August 23, 2026 15:29

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: c8669c71f7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/server.ts Outdated
* chore(runtime): stage Node 22 and MCP v2 dependencies

* feat(client): add isolated Pirsch API v1 read foundation

* feat!: cut over to the four-tool v2 interface

* chore(runtime): stage Node 22 and MCP v2 dependencies

* feat!: cut over to the four-tool v2 interface

* chore: align Pirsch with 2026 toolchain
@jack-arturo
jack-arturo force-pushed the refactor/pirsch-v2-four-tool-server branch from 446692e to 2ce09fe Compare August 23, 2026 15:47
@jack-arturo
jack-arturo force-pushed the feat/pirsch-v2-public-cutover branch from 6679263 to e8cc8a9 Compare August 23, 2026 15:48

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e8cc8a9065

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/server.ts
Comment on lines +100 to +103
if (input.period) {
const range = getDateRange(input.period);
const current = { from: isoDate(range.start), to: isoDate(range.end) };
return { current, previous: previousRange(current.from, current.to) };

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Resolve named periods in the requested timezone

When pirsch_compare_periods is called with a named period and either an input timezone or configured PIRSCH_TIMEZONE, this computes today, yesterday, week, and month boundaries from the host's UTC calendar instead. Near midnight, a domain such as America/Los_Angeles can therefore query the next local date (and compare the wrong periods) even though that timezone is forwarded to Pirsch. Derive the named range using the effective request/domain timezone before issuing the four queries.

Useful? React with 👍 / 👎.

Comment thread src/schemas.ts
Comment on lines +66 to +68
if (input.from && input.to && input.from === input.to && input.fromTime && input.toTime && input.fromTime > input.toTime) {
ctx.addIssue({ code: 'custom', path: ['toTime'], message: 'toTime must be on or after fromTime for a same-day range.' });
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Validate clock order after resolving named periods

For a same-day named period such as { period: "today", fromTime: "18:00", toTime: "09:00" }, this check is skipped because the caller did not supply from and to; resolveComparisonRanges later injects the same date for both bounds and sends the reversed time range upstream. Apply the same same-day clock validation after resolving today/yesterday, or make the refinement account for those named periods.

Useful? React with 👍 / 👎.

@jack-arturo jack-arturo added babysit:active Babysit agent is actively working this PR and removed babysit:waiting-codex 👀 Codex reviewing current head labels Aug 23, 2026
@jack-arturo

Copy link
Copy Markdown
Member Author

Babysit stopped — size. This PR is 7,299 changed lines against refactor/pirsch-v2-four-tool-server (the safety limit is 700). It needs a further split before I can safely push the conflict resolution and direct review fixes; please authorize an oversized PR with --allow-large or choose the split boundary.

@jack-arturo jack-arturo added babysit:blocked Babysit stopped; unresolved blocker needs human and removed babysit:active Babysit agent is actively working this PR labels Aug 23, 2026
Base automatically changed from refactor/pirsch-v2-four-tool-server to main August 23, 2026 20:08
@jack-arturo

Copy link
Copy Markdown
Member Author

Superseded by the merged v2 stack: #52 (legacy dispatcher retirement), #54 (legacy client retirement), and #53 (v2 stdio cutover). The final main-branch audit verified the four-tool v2 surface, documentation, lifecycle handling, client retirement, and release workflow. Closing this conflicted monolith without merging it.

@jack-arturo jack-arturo removed the babysit:blocked Babysit stopped; unresolved blocker needs human label Aug 25, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant