Skip to content

refactor: extract Meshy generator to standalone package - #132

Merged
jbdevprimary merged 4 commits into
mainfrom
codex/land-meshy-extraction
Aug 12, 2026
Merged

refactor: extract Meshy generator to standalone package#132
jbdevprimary merged 4 commits into
mainfrom
codex/land-meshy-extraction

Conversation

@jbdevprimary

@jbdevprimary jbdevprimary commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Outcome

Removes the duplicated in-monorepo Meshy client/package now that jbcom/meshy-content-generator is the standalone OSS owner and vendor-fabric owns provider transport. The retained brand pipeline is declarative and consumes the standalone CLI instead of carrying another client.

Evidence

  • Documentation build and 157 documentation tests pass
  • Credit-free brand dry-run expands all three brand items
  • History-preserving standalone repository and release workflow exist
  • Stacken consumes the immutable meshy-content-generator==0.2.0 pin
  • Diff check clean

Release order

vendor-fabric 2.2.0 is published. The standalone GitHub 0.2.0 release exists; its PyPI trusted publisher is the sole remaining publication step before consumer release closeout.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@coderabbitai

coderabbitai Bot commented Aug 12, 2026

Copy link
Copy Markdown

Important

Review skipped

Too many files!

This PR contains 109 files, which is 9 over the limit of 100.

To get a review, reduce the PR to 100 files or fewer by splitting it into smaller PRs or changing its base branch.

Upgrade to a paid plan to raise the limit.

This review couldn't start because sufficient usage credits or metered capacity aren't available. Add credits or update usage-based reviews in the billing tab, then retry.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: f7e9836c-3917-4f78-83a6-ff209032de98

📥 Commits

Reviewing files that changed from the base of the PR and between 0738081 and 8d75b8e.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (109)
  • .github/workflows/ci.yml
  • .github/workflows/release.yml
  • README.md
  • docs/astro.config.mjs
  • docs/src/content/docs/api/meshy/README.md
  • docs/src/content/docs/api/meshy/classes/PipelineRunner.md
  • docs/src/content/docs/api/meshy/functions/loadAnimationIds.md
  • docs/src/content/docs/api/meshy/functions/loadJsonDefinitions.md
  • docs/src/content/docs/api/meshy/functions/validateManifestAndPipeline.md
  • docs/src/content/docs/api/meshy/interfaces/DefinitionBundle.md
  • docs/src/content/docs/api/meshy/interfaces/DefinitionLoadOptions.md
  • docs/src/content/docs/api/meshy/interfaces/PipelineRunnerOptions.md
  • docs/src/content/docs/api/meshy/interfaces/RunOptions.md
  • docs/src/content/docs/api/meshy/interfaces/ValidationOptions.md
  • docs/src/content/docs/api/meshy/interfaces/ValidationResult.md
  • docs/src/content/docs/api/meshy/type-aliases/AssetManifest.md
  • docs/src/content/docs/api/meshy/type-aliases/InputBinding.md
  • docs/src/content/docs/api/meshy/type-aliases/OutputBinding.md
  • docs/src/content/docs/api/meshy/type-aliases/PipelineDefinition.md
  • docs/src/content/docs/api/meshy/type-aliases/PipelineStep.md
  • docs/src/content/docs/api/meshy/type-aliases/TaskDefinition.md
  • docs/src/content/docs/api/meshy/type-aliases/TaskState.md
  • docs/src/content/docs/api/meshy/variables/AssetManifestSchema.md
  • docs/src/content/docs/api/meshy/variables/TaskStateSchema.md
  • docs/src/content/docs/getting-started/introduction.md
  • docs/src/content/docs/guides/architecture.md
  • docs/src/content/docs/index.mdx
  • docs/src/content/docs/packages/agentic.md
  • docs/src/content/docs/packages/meshy-content-generator.md
  • docs/tests/unit/build-output.test.ts
  • docs/tests/unit/content-contract.test.ts
  • packages/agentic/tests/production-release.test.ts
  • packages/meshy-content-generator/LICENSE
  • packages/meshy-content-generator/README.md
  • packages/meshy-content-generator/e2e/fixtures/model.glb
  • packages/meshy-content-generator/e2e/playwright.config.ts
  • packages/meshy-content-generator/e2e/tests/preview.spec.ts
  • packages/meshy-content-generator/lookups/animation-library.json
  • packages/meshy-content-generator/lookups/animation-presets.json
  • packages/meshy-content-generator/package.json
  • packages/meshy-content-generator/pipelines/definitions/brand-image.pipeline.json
  • packages/meshy-content-generator/pipelines/definitions/character-full.pipeline.json
  • packages/meshy-content-generator/pipelines/definitions/character.pipeline.json
  • packages/meshy-content-generator/pipelines/definitions/prop.pipeline.json
  • packages/meshy-content-generator/project.json
  • packages/meshy-content-generator/sonar-project.properties
  • packages/meshy-content-generator/src/__tests__/api.test.ts
  • packages/meshy-content-generator/src/__tests__/cli.test.ts
  • packages/meshy-content-generator/src/__tests__/definitions.test.ts
  • packages/meshy-content-generator/src/__tests__/openapi-contract.test.ts
  • packages/meshy-content-generator/src/__tests__/openapi.test.ts
  • packages/meshy-content-generator/src/__tests__/pipeline.vcr.test.ts
  • packages/meshy-content-generator/src/__tests__/polly.ts
  • packages/meshy-content-generator/src/__tests__/runner.test.ts
  • packages/meshy-content-generator/src/__tests__/validator.test.ts
  • packages/meshy-content-generator/src/api/app.ts
  • packages/meshy-content-generator/src/api/openapi.ts
  • packages/meshy-content-generator/src/api/server.ts
  • packages/meshy-content-generator/src/cli/index.ts
  • packages/meshy-content-generator/src/content.config.ts
  • packages/meshy-content-generator/src/content/docs/api.mdx
  • packages/meshy-content-generator/src/content/docs/ci-setup.mdx
  • packages/meshy-content-generator/src/content/docs/cli.mdx
  • packages/meshy-content-generator/src/content/docs/getting-started.mdx
  • packages/meshy-content-generator/src/content/docs/index.mdx
  • packages/meshy-content-generator/src/content/docs/manifest.mdx
  • packages/meshy-content-generator/src/content/docs/mesh-ops.mdx
  • packages/meshy-content-generator/src/content/docs/meshy-api.mdx
  • packages/meshy-content-generator/src/content/docs/pipeline-walkthrough.mdx
  • packages/meshy-content-generator/src/content/docs/pipelines.mdx
  • packages/meshy-content-generator/src/content/docs/preview.mdx
  • packages/meshy-content-generator/src/content/docs/pricing.mdx
  • packages/meshy-content-generator/src/content/docs/providers.mdx
  • packages/meshy-content-generator/src/content/docs/rate-limits.mdx
  • packages/meshy-content-generator/src/content/docs/testing.mdx
  • packages/meshy-content-generator/src/content/docs/troubleshooting.mdx
  • packages/meshy-content-generator/src/content/docs/use-cases.mdx
  • packages/meshy-content-generator/src/core/definitions.ts
  • packages/meshy-content-generator/src/core/runner.ts
  • packages/meshy-content-generator/src/core/validator.ts
  • packages/meshy-content-generator/src/env.d.ts
  • packages/meshy-content-generator/src/index.ts
  • packages/meshy-content-generator/src/lookups/animation-ids.ts
  • packages/meshy-content-generator/src/meshy/meshy-client.ts
  • packages/meshy-content-generator/src/schemas/definitions.ts
  • packages/meshy-content-generator/src/schemas/manifest.ts
  • packages/meshy-content-generator/src/styles/global.css
  • packages/meshy-content-generator/src/utils/json.ts
  • packages/meshy-content-generator/src/utils/object-path.ts
  • packages/meshy-content-generator/src/utils/template.ts
  • packages/meshy-content-generator/tasks/definitions/animation.json
  • packages/meshy-content-generator/tasks/definitions/multi-image-to-3d.json
  • packages/meshy-content-generator/tasks/definitions/rigging.json
  • packages/meshy-content-generator/tasks/definitions/text-to-3d-preview.json
  • packages/meshy-content-generator/tasks/definitions/text-to-3d-refine.json
  • packages/meshy-content-generator/tasks/definitions/text-to-image-download.json
  • packages/meshy-content-generator/tasks/definitions/text-to-image.json
  • packages/meshy-content-generator/test/__recordings__/meshy-character-full_1171058505/recording.har
  • packages/meshy-content-generator/test/fixtures/character-full/manifest.json
  • packages/meshy-content-generator/tsconfig.json
  • packages/meshy-content-generator/tsup.config.ts
  • packages/meshy-content-generator/vitest.config.ts
  • scripts/brand-assets/README.md
  • scripts/brand-assets/catalogue.json
  • scripts/brand-assets/generate.sh
  • scripts/brand-assets/hero-image/manifest.json
  • scripts/brand-assets/icon-concept/manifest.json
  • scripts/brand-assets/og-background/manifest.json
  • scripts/brand-assets/pipeline.json

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@amazon-q-developer amazon-q-developer Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Review Summary

The refactoring to extract the Meshy generator into a standalone package is well-structured. The new declarative pipeline approach using the standalone CLI is cleaner than maintaining an in-monorepo client.

Critical Issue Found:

  • The shell script has a crash risk due to unbound variable expansion when no .env file exists

Once the shell script issue is resolved, this extraction should be safe to merge. The configuration files are properly structured, and the approach of using uvx with version pinning provides good reproducibility.


You can now have the agent implement changes and create commits directly on your pull request's source branch. Simply comment with /q followed by your request in natural language to ask the agent to make changes.


⚠️ This PR contains more than 30 files. Amazon Q is better at reviewing smaller PRs, and may miss issues in larger changesets.


echo "=== All brand assets generated ==="
echo "Check scripts/brand-assets/*/concept-*.png for results"
uvx "${ENV_ARGS[@]}" \

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🛑 Crash Risk: The array expansion "${ENV_ARGS[@]}" will cause the script to crash with "unbound variable" error when ENV_ARGS is empty due to set -u on line 2. When no .env file exists, ENV_ARGS remains uninitialized and bash's unbound variable protection triggers a fatal error.

Suggested change
uvx "${ENV_ARGS[@]}" \
uvx ${ENV_ARGS[@]+"${ENV_ARGS[@]}"} \

@sonarqubecloud

Copy link
Copy Markdown

@sonarqubecloud

Copy link
Copy Markdown

@sonarqubecloud

Copy link
Copy Markdown

@jbdevprimary
jbdevprimary merged commit 89c9782 into main Aug 12, 2026
13 checks passed
@jbdevprimary
jbdevprimary deleted the codex/land-meshy-extraction branch August 12, 2026 15:31
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