mammoth-cli 2.2.86__tar.gz → 2.2.88__tar.gz
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.
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/PKG-INFO +2 -2
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/__init__.py +1 -1
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/SKILL.md +2 -2
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/capabilities.md +1 -1
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/command-index.md +2 -2
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dataset.md +10 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/dashboards.md +12 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/resources.md +6 -3
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/rest-api-import.md +4 -2
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/scheduling.md +7 -3
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/dashboard.py +11 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/dataset.py +40 -4
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/help_summaries.json +1 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/registry.py +1 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/schema.py +1 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/state.py +20 -2
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/command_contract.py +1 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/listing.py +19 -1
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/pyproject.toml +2 -2
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/dashboard.yaml +3 -2
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/dataset.yaml +47 -1
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/view.yaml +3 -1
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/edits-target.source.yaml +1 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/sdk-catalog.source.yaml +7 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/sdk-methods.yaml +17 -4
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/.gitignore +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/LICENSE +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/README.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/__main__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/app.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/about-mammoth.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/auth.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/capabilities-misc.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/activity.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/addon.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/agent.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/ai.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/annotation.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/auth.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/automation.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/batch.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/billing.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/browse.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/calc.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/capabilities.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/capability.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/client-app.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/collection.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/completion.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/config.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/connector.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/context.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-embed.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-published.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-qa.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-style.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard-template.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/dashboard.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/data-app.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/doctor.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/external-key.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/file.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/folder.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/how.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/job.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/link.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/log.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/notification.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/parameter.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/project.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/report.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/resolve.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/schedule.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/schema.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/skill.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/snippet.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/support.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/template.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/token.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/trash.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/upgrade.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/user.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/version.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/view-transform.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/view.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/webhook.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/workflow.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/commands/workspace.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/handoff.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/input.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/jobs-drafts.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/machine-output.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/operations.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/auth-scope.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/build-an-agent.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/cleanup.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/database-import.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/end-to-end.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/exports.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/file-import.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/index.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/need-action.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/transforms.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recipes/typed-etl-discovery.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/recovery.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/report-checklist.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/retention.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/safety.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/task-start.md +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/_lazy.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/activity.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/addon.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/agent.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/ai.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/annotation.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/auth.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/automation.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/batch.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/billing.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/browse.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/calc.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/capabilities.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/capability.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/client_app.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/completion.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/config.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/connector.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/context.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/data_app.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/doctor.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/external_key.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/file.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/folder.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/how.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/job.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/link.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/notification.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/parameter.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/project.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/report.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/resolve.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/schedule.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/skill.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/snippet.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/support.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/template.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/trash.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/upgrade.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/user.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/view.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/view_drivers.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/view_explore.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/view_forecast.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/view_ops.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/view_profile.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/webhook.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/workflow.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/commands/workspace.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/context/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/context/credentials.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/context/endpoint.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/context/keyring_backend.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/context/oauth.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/context/profiles.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/context/resolver.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/contracts/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/contracts/auth.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/discovery/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/discovery/limitations.json +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/discovery/next_commands.json +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/discovery/recipes.json +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/embed.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/errors/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/errors/envelope.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/manifest/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/manifest/loader.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/messages/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/output/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/output/envelope.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/output/normalize.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/output/policy.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/output/progress.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/output/render.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/py.typed +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/compact.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/confirm.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/dataset_health.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/dryrun.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/dryrun_targets.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/embedded.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/executor.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/input_loader.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/intent_only.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/invocation.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/labels.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/locked_files.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/new_data.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/next_commands.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/opens.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/options.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/parents.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/runlog.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/session.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/shared.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/strict.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/token_scope.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/updates.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/validate.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/runtime/verify.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/append_blank_columns.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/argspec.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/board_values.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/coerce.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/column_type_guard.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/conditional_format.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/conditions.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/dashboard_figures.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/dashboard_filters.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/dashboard_pages.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/dashboard_review.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/data_profile.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/data_quality.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/delete_check.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/dispatch.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/explore_card_edit.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/explore_cards.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/explore_to_figure.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/explore_to_image.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/factory.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/field_enums.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/folder_ids.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/input_fields.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/job_outcome.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/local_files.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/local_time.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/mapping.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/openapi_types.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/paging.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/period_analysis.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/positionals.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/protocol.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/read_memo.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/read_queries.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/schema_diff.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/sdk_service.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/sql_check.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/stored_stats.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/suggest.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/testing.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/text_dates.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/type_system.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/view_analysis.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/view_variants.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/services/write_impact.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/skills/__init__.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/skills/installer.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/skills/steering.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/testing.py +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/activity.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/addon.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/agent.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/ai.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/annotation.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/auth.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/automation.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/batch.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/billing.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/browse.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/calc.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/capabilities.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/capability.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/client-app.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/collection.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/completion.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/config.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/connector.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/context.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/data-app.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/doctor.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/external-key.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/file.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/folder.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/how.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/job.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/link.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/log.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/notification.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/parameter.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/project.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/report.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/resolve.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/schedule.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/schema.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/skill.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/snippet.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/support.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/template.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/token.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/trash.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/upgrade.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/user.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/version.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/webhook.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/workflow.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/commands/workspace.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/openapi-operations.yaml +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/manifests/schema-v1.json +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/openapi/metadata.json +0 -0
- {mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/spec/openapi/openapi.json +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: mammoth-cli
|
|
3
|
-
Version: 2.2.
|
|
3
|
+
Version: 2.2.88
|
|
4
4
|
Summary: Command-line interface for the Mammoth Analytics platform
|
|
5
5
|
Project-URL: homepage, https://mammoth.io
|
|
6
6
|
Project-URL: repository, https://github.com/EdgeMetric/mammothsdk
|
|
@@ -18,7 +18,7 @@ Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
|
18
18
|
Requires-Python: <3.15,>=3.12
|
|
19
19
|
Requires-Dist: jsonschema>=4.20
|
|
20
20
|
Requires-Dist: keyring<26,>=25.7
|
|
21
|
-
Requires-Dist: mammoth-io<0.9,>=0.8.
|
|
21
|
+
Requires-Dist: mammoth-io<0.9,>=0.8.45
|
|
22
22
|
Requires-Dist: platformdirs<5,>=4.10
|
|
23
23
|
Requires-Dist: pydantic<3,>=2.12.5
|
|
24
24
|
Requires-Dist: pyyaml<7,>=6
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: mammoth-cli
|
|
3
|
-
version: 2.2.
|
|
3
|
+
version: 2.2.88
|
|
4
4
|
description: "Use Mammoth Analytics from a terminal: install or authenticate the CLI, discover its live command contract, and safely manage projects, data, views, pipelines (join, merge, pivot, filter, clean), dashboards, exports, and handoffs."
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -90,7 +90,7 @@ mammoth schema find "join two datasets; remove duplicates; build a dashboard"
|
|
|
90
90
|
| Rank, running total, previous row | `view transform window` |
|
|
91
91
|
| A dashboard, or its PDF or slides | `dashboard v3 generate`, then `chat edit` ([dashboards](references/recipes/dashboards.md)) |
|
|
92
92
|
| Deliver the rows | `view export csv`, `view export postgres`, `view export dataset` |
|
|
93
|
-
| Run something on a schedule or on new data (refresh, append, alert) | `automation create`: a condition (`at_specific_time`, new file in a folder, ...) and tasks (`run_data_retrieval`, `append_data`, `send_an_alert`, `pull_cloud_files`). `schedule create` only pulls a connector's data.
|
|
93
|
+
| Run something on a schedule or on new data (refresh, append, alert) | `automation create`: a condition (`at_specific_time`, new file in a folder, ...) and tasks (`run_data_retrieval`, `append_data`, `send_an_alert`, `pull_cloud_files`). `schedule create` only pulls a connector's data. An upload can't refresh; a URL dataset: `dataset refresh` on demand, never on a schedule; say so. Recipe: [recurring work](references/recipes/scheduling.md) |
|
|
94
94
|
|
|
95
95
|
Call a find result (or `suggestions` entry) from its `accepted_fields` and
|
|
96
96
|
`agent_example`. Before concluding the CLI cannot do something the web app
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# What is proven on release
|
|
2
2
|
|
|
3
3
|
Generated from `docs/release-capability-matrix.json`; do not edit by hand.
|
|
4
|
-
The CLI publishes
|
|
4
|
+
The CLI publishes 782 commands. 516 of them bind one of the 545 API operations in the matrix; the remainder are local commands (`schema`, `auth`, `doctor`, `log`, ...) or typed variants that share an operation (`view transform *` commands submit through `view.task.add`, except `rename-columns` and `sort`, which set view display properties through `view.update`). 262 bound commands ran once successfully on release, 1 are not supported there, and the rest are untried. Untried is not broken: discover the contract with `mammoth schema get COMMAND_ID`, run it, and treat the structured error envelope as the answer. Use an untried command normally: confirm a write with the user first, check its result with a read afterwards, and never refuse a command only because it is untried.
|
|
5
5
|
|
|
6
6
|
Status meanings:
|
|
7
7
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Published CLI command catalog
|
|
2
2
|
|
|
3
|
-
This generated catalog is a lookup table for every command in the published CLI manifest, currently
|
|
3
|
+
This generated catalog is a lookup table for every command in the published CLI manifest, currently 782; each entry carries its release status line. It is a command-contract index, not an assertion that every backend/OpenAPI operation has a CLI binding. For an exact local CLI contract, run `mammoth schema get COMMAND_ID`; `mammoth capability list` is an API-binding inventory and can omit typed/local CLI routes. For focused workflows, read the [recipes index](recipes/index.md). Sensitive structured input must come from a private file or pipe; never put secrets in literal argv.
|
|
4
4
|
|
|
5
5
|
Load only the applicable domain file:
|
|
6
6
|
|
|
@@ -30,7 +30,7 @@ Load only the applicable domain file:
|
|
|
30
30
|
- [dashboard-published](commands/dashboard-published.md) — 8 published commands
|
|
31
31
|
- [dashboard](commands/dashboard.md) — 104 published commands
|
|
32
32
|
- [data-app](commands/data-app.md) — 12 published commands
|
|
33
|
-
- [dataset](commands/dataset.md) —
|
|
33
|
+
- [dataset](commands/dataset.md) — 28 published commands
|
|
34
34
|
- [doctor](commands/doctor.md) — 1 published commands
|
|
35
35
|
- [external-key](commands/external-key.md) — 4 published commands
|
|
36
36
|
- [file](commands/file.md) — 11 published commands
|
|
@@ -212,6 +212,16 @@ Result: `DatasetListResult`; mutation `read`, confirmation `none`, wait policy `
|
|
|
212
212
|
|
|
213
213
|
Status on release: ran once on CLI 2.0.28 — ILG simulation 2026-09-19: exit 0 on release with CLI 2.0.28. Listed the datasets the sends created in the target project. Single invocation only.
|
|
214
214
|
|
|
215
|
+
### `dataset.refresh`
|
|
216
|
+
|
|
217
|
+
Run: `mammoth dataset refresh`. Exact input fields: `mammoth schema get dataset.refresh`.
|
|
218
|
+
|
|
219
|
+
Example: `mammoth dataset refresh 123 --yes`. Illustrative only: append `--yes` after observing an owned target.
|
|
220
|
+
|
|
221
|
+
Result: `DatasetRefreshResult`; mutation `benign_mutation`, confirmation `prompt_or_yes`, wait policy `always_wait`.
|
|
222
|
+
|
|
223
|
+
Status on release: untried; no live run recorded.
|
|
224
|
+
|
|
215
225
|
### `dataset.rename`
|
|
216
226
|
|
|
217
227
|
Run: `mammoth dataset rename`. Exact input fields: `mammoth schema get dataset.rename`.
|
|
@@ -59,6 +59,13 @@ tile they do not want), say so in the next `chat edit` prompt in the user's
|
|
|
59
59
|
words ("show revenue in pounds", "remove the Key insights tile"); the builder
|
|
60
60
|
decides how.
|
|
61
61
|
|
|
62
|
+
## A month axis
|
|
63
|
+
|
|
64
|
+
To chart by month from a date, extract `year_month_number` ("2026-10") with
|
|
65
|
+
`view transform extract-date`: it sorts in time order. `year_month`
|
|
66
|
+
("2026, October") is text and a chart axis sorts it alphabetically, April
|
|
67
|
+
before August; use it only when the user asks for that wording.
|
|
68
|
+
|
|
62
69
|
## "Per region", "per month", "for each X": one board and a filter control
|
|
63
70
|
|
|
64
71
|
A request for a board "per <dimension>" (per region, per month, per rep, by
|
|
@@ -185,6 +192,11 @@ not publish: `was_published` stays false until you also run
|
|
|
185
192
|
`dashboard action` with `publish-data` on a board that was never published
|
|
186
193
|
publishes the presentation instead and says so. `share` and `action` print the
|
|
187
194
|
deliverable check in their confirmation text.
|
|
195
|
+
Auto-publish (`auto_publish: true`) republishes **data refreshes only**. A chat
|
|
196
|
+
edit or any other layout change stays in the draft, and `dashboard get` shows
|
|
197
|
+
`is_publish_presentation_pending: true`, until you run `publish-presentation`.
|
|
198
|
+
After editing a live board with auto-publish on, tell the user the layout
|
|
199
|
+
change is not live yet, and publish only if they asked for it.
|
|
188
200
|
Only then do `dashboard published canvas URL`, `published data URL`,
|
|
189
201
|
`job-by-url URL JOB_ID` and the other `/dashboards/url/...` routes answer;
|
|
190
202
|
before that they return 404 `DASHBOARD_NOT_FOUND`. Legacy widget routes
|
|
@@ -127,6 +127,9 @@ not sufficient. `dataset.create` waits for its asynchronous work; only the
|
|
|
127
127
|
If the schema does not accept a URL,
|
|
128
128
|
report URL import unsupported; do not silently substitute local processing. A
|
|
129
129
|
4/5/7 envelope is a failed or uncertain operation, not a usable dataset. A
|
|
130
|
-
`weburl` dataset
|
|
131
|
-
|
|
132
|
-
|
|
130
|
+
`weburl` dataset keeps its link and can be refreshed on demand (`dataset refresh
|
|
131
|
+
DATASET_ID --yes`, or "Refresh from URL" in the web app; a single CSV only), but
|
|
132
|
+
never on a schedule: `run_data_retrieval` cannot refresh it (see
|
|
133
|
+
[recurring work](scheduling.md)). `dataset list` shows such a dataset as
|
|
134
|
+
`url: <host>`. For a scheduled pull from a URL, use the REST
|
|
135
|
+
API connector. Say so rather than promising a scheduled refresh.
|
|
@@ -31,8 +31,10 @@ does not include this connector (or its paid addon is not active).
|
|
|
31
31
|
|
|
32
32
|
## 2. Try the data-source config (creates no dataset)
|
|
33
33
|
|
|
34
|
-
`
|
|
35
|
-
|
|
34
|
+
Sample a REST source with `connector ds-config create` and `"data_sample":
|
|
35
|
+
true`, as below. It creates no dataset. Do not use `connector connection query`
|
|
36
|
+
for a REST source: it runs only one read-only SQL `SELECT` and refuses the
|
|
37
|
+
endpoint config.
|
|
36
38
|
|
|
37
39
|
`query` is a **JSON string** (not an object) of the data-source config:
|
|
38
40
|
`endpoint_path`, `http_method` (`GET|POST`), `request_body`, `query_params`,
|
|
@@ -48,9 +48,13 @@ mammoth automation create 'Nightly refresh' --yes --input '{
|
|
|
48
48
|
}'
|
|
49
49
|
```
|
|
50
50
|
|
|
51
|
-
`run_data_retrieval` only refreshes a cloud-connected dataset
|
|
52
|
-
from an uploaded file
|
|
53
|
-
|
|
51
|
+
`run_data_retrieval` only refreshes a cloud-connected dataset. A dataset made
|
|
52
|
+
from an uploaded file has no source to refresh from. A URL (`weburl`) dataset
|
|
53
|
+
keeps its link and can be refreshed on demand (`dataset refresh DATASET_ID
|
|
54
|
+
--yes`, or "Refresh from URL" in the web app; a single CSV only), but
|
|
55
|
+
not on a schedule. For a
|
|
56
|
+
scheduled pull from a URL, use the REST API connector. Say so rather than
|
|
57
|
+
scheduling a refresh.
|
|
54
58
|
|
|
55
59
|
That is not the same as "this dataset can never be recurring." A
|
|
56
60
|
file-backed dataset's pipeline re-runs on new data exactly like any other
|
|
@@ -631,9 +631,20 @@ def dashboard_share(invocation: Invocation) -> HandlerResult:
|
|
|
631
631
|
+ _board_findings(invocation, service, auth, dashboard_id),
|
|
632
632
|
)
|
|
633
633
|
data = service.call(_symbol(invocation), **kwargs)
|
|
634
|
+
if data is None:
|
|
635
|
+
# The route answers 200 with no body, so the result was ``data: null`` and
|
|
636
|
+
# the caller could not see whether the share took. Read it back.
|
|
637
|
+
data = _share_readback(service, dashboard_id)
|
|
634
638
|
return data, _meta(invocation, auth.workspace_id)
|
|
635
639
|
|
|
636
640
|
|
|
641
|
+
def _share_readback(service: Any, dashboard_id: int) -> dict[str, Any]:
|
|
642
|
+
"""The board's share state as ``dashboard get`` reports it after a share."""
|
|
643
|
+
board = _dump_model(service.call(_DASHBOARD_GET, dashboard_id=dashboard_id))
|
|
644
|
+
board = board if isinstance(board, dict) else {}
|
|
645
|
+
return {"dashboard_id": dashboard_id, "share": board.get("share")}
|
|
646
|
+
|
|
647
|
+
|
|
637
648
|
def _was_published(service: Any, dashboard_id: int) -> bool:
|
|
638
649
|
"""Whether the board was ever published; ``dashboard get`` carries ``was_published``."""
|
|
639
650
|
board = _dump_model(service.call(_DASHBOARD_GET, dashboard_id=dashboard_id))
|
|
@@ -755,6 +755,8 @@ def dataset_list(invocation: Invocation) -> HandlerResult:
|
|
|
755
755
|
only the cheap fields, so it holds no row counts or column names: ``view list
|
|
756
756
|
DATASET_ID`` shows a dataset's columns, and ``dataset find --input '{"columns":
|
|
757
757
|
[...]}'`` finds the dataset that has given columns.
|
|
758
|
+
The result carries ``total``, the project's whole dataset count, so "how many
|
|
759
|
+
datasets" never needs paging: read ``total`` with the first page's newest names.
|
|
758
760
|
``full: true`` returns the raw ``{id, name}`` list instead. ``name`` keeps only datasets
|
|
759
761
|
whose name contains it (case-insensitive) across every page, as short rows without
|
|
760
762
|
column lists; ``limit``/``offset`` then page over the matches.
|
|
@@ -772,13 +774,26 @@ def dataset_list(invocation: Invocation) -> HandlerResult:
|
|
|
772
774
|
kwargs["fields"] = DATASET_ROW_FIELDS
|
|
773
775
|
with open_service(invocation) as (service, auth):
|
|
774
776
|
data = service.call(_symbol(invocation), **kwargs)
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
777
|
+
if compact:
|
|
778
|
+
data = _compact_dataset_list(
|
|
779
|
+
data, kwargs.get("offset", 0), kwargs.get("sort"), kwargs.get("limit", 100)
|
|
780
|
+
)
|
|
781
|
+
if isinstance(data, dict) and "shown" in data:
|
|
782
|
+
data["total"] = _dataset_total(service, project_id, data, kwargs.get("offset", 0))
|
|
779
783
|
return data, _meta(invocation, auth.workspace_id, project_id)
|
|
780
784
|
|
|
781
785
|
|
|
786
|
+
def _dataset_total(service: Any, project_id: int, page: dict[str, Any], offset: int) -> int:
|
|
787
|
+
"""The project's whole dataset count. The list route sends none, so a page that
|
|
788
|
+
is the last one counts itself; otherwise the ids are read once, here, in one call."""
|
|
789
|
+
if not page.get("more"):
|
|
790
|
+
return int(offset) + page["shown"]
|
|
791
|
+
everything = service.call(
|
|
792
|
+
"mammoth.api.datasets.DatasetsAPI.list_all", project_id=project_id, fields="id"
|
|
793
|
+
)
|
|
794
|
+
return len(everything.get("datasets", []))
|
|
795
|
+
|
|
796
|
+
|
|
782
797
|
def _dataset_name_search(
|
|
783
798
|
invocation: Invocation, project_id: int, name: str, document: dict[str, Any]
|
|
784
799
|
) -> HandlerResult:
|
|
@@ -1481,6 +1496,27 @@ def dataset_rename(invocation: Invocation) -> HandlerResult:
|
|
|
1481
1496
|
return data, _meta(invocation, auth.workspace_id, project_id)
|
|
1482
1497
|
|
|
1483
1498
|
|
|
1499
|
+
def dataset_refresh(invocation: Invocation) -> HandlerResult:
|
|
1500
|
+
"""Fetch a URL dataset's link again into the same dataset. Prompt or ``--yes`` required.
|
|
1501
|
+
|
|
1502
|
+
The server refuses a dataset not made from a URL and a URL that serves JSON; its
|
|
1503
|
+
reason reaches the caller. Waits for the job (honoring ``--job-timeout``).
|
|
1504
|
+
"""
|
|
1505
|
+
project_id = require_project(invocation)
|
|
1506
|
+
dataset_id = _require_int_positional(invocation, "dataset id")
|
|
1507
|
+
enforce_confirmation(
|
|
1508
|
+
invocation,
|
|
1509
|
+
policy=POLICY_PROMPT_OR_YES,
|
|
1510
|
+
action=f"fetch the link of dataset {dataset_id} again and update its data",
|
|
1511
|
+
)
|
|
1512
|
+
with open_service(invocation) as (service, auth):
|
|
1513
|
+
handle = service.call(_symbol(invocation), dataset_id=dataset_id, project_id=project_id)
|
|
1514
|
+
service.wait_if_job(handle)
|
|
1515
|
+
return {"dataset_id": dataset_id, "refreshed": True}, _meta(
|
|
1516
|
+
invocation, auth.workspace_id, project_id
|
|
1517
|
+
)
|
|
1518
|
+
|
|
1519
|
+
|
|
1484
1520
|
def dataset_trash(invocation: Invocation) -> HandlerResult:
|
|
1485
1521
|
"""Move one dataset to the project trash (reversible)."""
|
|
1486
1522
|
project_id = require_project(invocation)
|
|
@@ -377,6 +377,7 @@
|
|
|
377
377
|
"dataset.interpretation.confirm": "Preview or confirm how a file that can be read several ways is interpreted.",
|
|
378
378
|
"dataset.interpretation.preview": "Preview or confirm how a file that can be read several ways is interpreted.",
|
|
379
379
|
"dataset.list": "List datasets in the active project, newest first, each with what tells them apart.",
|
|
380
|
+
"dataset.refresh": "Fetch a URL dataset's link again into the same dataset. Prompt or '--yes' required.",
|
|
380
381
|
"dataset.rename": "Rename a dataset. Dataset id is positional; new name comes from '--input'.",
|
|
381
382
|
"dataset.restore": "Restore a trashed dataset.",
|
|
382
383
|
"dataset.schema-diff": "Compare two datasets' columns and propose the 'batch create' mapping.",
|
|
@@ -382,6 +382,7 @@ _TARGETS: dict[str, str] = {
|
|
|
382
382
|
"dataset.interpretation.confirm": "mammoth_cli.commands.dataset:dataset_interpretation",
|
|
383
383
|
"dataset.create": "mammoth_cli.commands.dataset:dataset_create",
|
|
384
384
|
"dataset.create-from-pdf": "mammoth_cli.commands.dataset:dataset_create_from_pdf",
|
|
385
|
+
"dataset.refresh": "mammoth_cli.commands.dataset:dataset_refresh",
|
|
385
386
|
"dataset.rename": "mammoth_cli.commands.dataset:dataset_rename",
|
|
386
387
|
"dataset.trash": "mammoth_cli.commands.dataset:dataset_trash",
|
|
387
388
|
"dataset.restore": "mammoth_cli.commands.dataset:dataset_restore",
|
|
@@ -106,6 +106,7 @@ _FIXED_EXAMPLES: dict[str, tuple[tuple[str, ...], dict[str, Any]]] = {
|
|
|
106
106
|
{"term": "late", "definition": "delivered more than 5 days after shipped_date"},
|
|
107
107
|
),
|
|
108
108
|
"dataset.definition.remove": (("123", "a1b2c3d4"), {}),
|
|
109
|
+
"dataset.refresh": (("123",), {}),
|
|
109
110
|
"view.data.drivers": (
|
|
110
111
|
("123",),
|
|
111
112
|
{
|
|
@@ -115,6 +115,25 @@ def _unfinished_state(data: dict[str, Any]) -> dict[str, Any] | None:
|
|
|
115
115
|
}
|
|
116
116
|
|
|
117
117
|
|
|
118
|
+
#: Backend codes a get answers for an id a delete just removed, besides a 404. The
|
|
119
|
+
#: dashboard get route checks permission before existence, and a missing dashboard
|
|
120
|
+
#: has no one who may view it: ``dashboard get`` on a deleted id answers ``4PERM002``.
|
|
121
|
+
#: Read straight after OUR successful delete of that id, it means gone; anywhere else
|
|
122
|
+
#: it keeps meaning "no permission".
|
|
123
|
+
_GONE_AFTER_DELETE: dict[str, frozenset[str]] = {
|
|
124
|
+
"dashboard.delete": frozenset({"4PERM002", "4DASH001"}),
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
|
|
128
|
+
def _proves_gone(invocation: Invocation, exc: Exception) -> bool:
|
|
129
|
+
if not isinstance(exc, CliError):
|
|
130
|
+
return False
|
|
131
|
+
if exc.code == CODE_RESOURCE_NOT_FOUND:
|
|
132
|
+
return True
|
|
133
|
+
backend_code = (exc.details or {}).get("backend_code")
|
|
134
|
+
return backend_code in _GONE_AFTER_DELETE.get(invocation.command_id, frozenset())
|
|
135
|
+
|
|
136
|
+
|
|
118
137
|
def _build_state(
|
|
119
138
|
invocation: Invocation, data: dict[str, Any], readback: dict[str, Any]
|
|
120
139
|
) -> dict[str, Any]:
|
|
@@ -150,8 +169,7 @@ def _build_state(
|
|
|
150
169
|
read_by = _read_by_label(read_command_id, resolved_ids)
|
|
151
170
|
if (
|
|
152
171
|
invocation.command_id.endswith(".delete")
|
|
153
|
-
and
|
|
154
|
-
and exc.code == CODE_RESOURCE_NOT_FOUND
|
|
172
|
+
and _proves_gone(invocation, exc)
|
|
155
173
|
and kind == "object"
|
|
156
174
|
and resolved_ids
|
|
157
175
|
):
|
|
@@ -15,6 +15,7 @@ from __future__ import annotations
|
|
|
15
15
|
import json
|
|
16
16
|
from collections.abc import Callable
|
|
17
17
|
from typing import Any
|
|
18
|
+
from urllib.parse import urlsplit
|
|
18
19
|
|
|
19
20
|
from mammoth_cli.services.stored_stats import stored_facts
|
|
20
21
|
|
|
@@ -75,11 +76,28 @@ def compact_columns(columns: list[tuple[str, Any]], limit: int | None = _MAX_COL
|
|
|
75
76
|
return ", ".join(shown) + (f" (+{extra} more)" if extra > 0 else "")
|
|
76
77
|
|
|
77
78
|
|
|
79
|
+
def _url_host(info: Any) -> str | None:
|
|
80
|
+
"""The host of the link a fetch-from-URL dataset was made from, or None.
|
|
81
|
+
|
|
82
|
+
The backend stores such a dataset as source type ``file`` and keeps the link in
|
|
83
|
+
``additional_info.ORIGINAL_FILE_PROPS.URL``. Only the host is returned: the path
|
|
84
|
+
and query can carry secrets.
|
|
85
|
+
"""
|
|
86
|
+
original = info.get("ORIGINAL_FILE_PROPS") if isinstance(info, dict) else None
|
|
87
|
+
url = original.get("URL") if isinstance(original, dict) else None
|
|
88
|
+
return urlsplit(url).hostname if isinstance(url, str) and url else None
|
|
89
|
+
|
|
90
|
+
|
|
78
91
|
def source_of(dataset: dict[str, Any]) -> str:
|
|
79
|
-
"""How the dataset's data arrived: the stored source type and, for a file, its name.
|
|
92
|
+
"""How the dataset's data arrived: the stored source type and, for a file, its name.
|
|
93
|
+
|
|
94
|
+
A dataset fetched from a link reads ``url: <host>``.
|
|
95
|
+
"""
|
|
80
96
|
info = dataset.get("additional_info")
|
|
81
97
|
if isinstance(info, dict) and info.get("DATAVIEW_ID") is not None:
|
|
82
98
|
return f"export of view {info['DATAVIEW_ID']}"
|
|
99
|
+
if host := _url_host(info):
|
|
100
|
+
return f"url: {host}"
|
|
83
101
|
sources = dataset.get("sources")
|
|
84
102
|
first = sources[0] if isinstance(sources, list) and sources else None
|
|
85
103
|
if not isinstance(first, dict):
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
[project]
|
|
2
2
|
name = "mammoth-cli"
|
|
3
|
-
version = "2.2.
|
|
3
|
+
version = "2.2.88"
|
|
4
4
|
description = "Command-line interface for the Mammoth Analytics platform"
|
|
5
5
|
authors = [{name = "Mammoth Analytics", email = "support@mammoth.io"}]
|
|
6
6
|
readme = "README.md"
|
|
7
7
|
license = "LicenseRef-Proprietary"
|
|
8
8
|
requires-python = ">=3.12,<3.15"
|
|
9
9
|
dependencies = [
|
|
10
|
-
"mammoth-io (>=0.8.
|
|
10
|
+
"mammoth-io (>=0.8.45,<0.9)",
|
|
11
11
|
"typer (>=0.27,<0.28)",
|
|
12
12
|
"rich (>=15,<16)",
|
|
13
13
|
"platformdirs (>=4.10,<5)",
|
|
@@ -942,8 +942,9 @@ commands:
|
|
|
942
942
|
pagination_policy: none
|
|
943
943
|
acceptance_evidence: contract_only_no_disposable_fixture
|
|
944
944
|
readback:
|
|
945
|
-
command: dashboard.
|
|
946
|
-
ids:
|
|
945
|
+
command: dashboard.get
|
|
946
|
+
ids:
|
|
947
|
+
dashboard_id: positional.0
|
|
947
948
|
kind: object
|
|
948
949
|
live_test: null
|
|
949
950
|
live_exemption_reason: Dashboard mutation has contract coverage but no automated disposable-dashboard
|
|
@@ -247,7 +247,7 @@ commands:
|
|
|
247
247
|
- CT-DATASET-CREATE-ERROR
|
|
248
248
|
draft_test: null
|
|
249
249
|
undo_test: null
|
|
250
|
-
known_restrictions: 'ds_creation_type=weburl (dataset_spec.url), clone, or cloud (a file, REST API or database query from a connection); the command waits for the job and returns the new dataset_id. A weburl dataset
|
|
250
|
+
known_restrictions: 'ds_creation_type=weburl (dataset_spec.url), clone, or cloud (a file, REST API or database query from a connection); the command waits for the job and returns the new dataset_id. A weburl dataset keeps its link and can be refreshed on demand (dataset refresh DATASET_ID --yes, or Refresh from URL in the web app; a single CSV only), but never on a schedule: automation''s run_data_retrieval task cannot refresh it (only a cloud-connected dataset can be refreshed); for a scheduled pull from a URL use the REST API connector. Say so rather than scheduling a refresh for it. The result''s name is the dataset''s real name; when the requested name was taken the server adds a suffix, and requested_name and note say so. Use name, not the name you asked for. To copy a dataset as a new independent one: {"ds_creation_type": "clone", "dataset_spec": {"ds_name": NEW_NAME, "source_ds_id": ID, "clone_dataview_ids": [DEFAULT_VIEW_ID], "exclude_data": false}}, DEFAULT_VIEW_ID being the id in dataset''s `default_view` from view list (other views only when asked); an empty clone_dataview_ids is refused here because it makes a blank view. A clone waits and returns the new dataset_id; never use view export dataset for a plain copy, which leaves a live export on the source. A weburl import names the dataset after the downloaded file: follow it with dataset rename to the name the user picked. To import a file from an SFTP server (or another file connector) as a new dataset: connector connection create sftp, then {"ds_creation_type": "cloud", "dataset_spec": {"connector_key": "sftp", "connection_key": KEY, "query_properties": {"ds_name": NAME, "file_path": PATH_ON_SERVER, "data_pull_file": "Pull same file"}}}. data_pull_file is a string and may be left out, which means "Pull same file" (what the web app does); its only other value is "Pull next file based on name pattern", which also needs folder_path and name_pattern. A pull that finds no file at the path fails the create with the server''s reason; the recipe is recipes/file-import.md. To import from a REST API or Elasticsearch: the connection must exist first (connector connection create generic_rest_api, in the same project); try the query with connector ds-config create (data_sample, creates no dataset; connector connection query takes SQL only and refuses a REST config); then {"ds_creation_type": "cloud", "dataset_spec": {"connector_key": "generic_rest_api", "connection_key": KEY, "query_properties": {"ds_name": NAME, "table_name": TABLE, "query": "<JSON string of the endpoint config>"}, "schedule_properties": {"schedule_type": "moment", "first_pull_at": "now", "on_refresh_action": "replace"}, "recurrence_info": {"interval": 1, "start_at": "<future ISO time>"}}}. schedule_properties and recurrence_info are required (without them the job fails with Invalid parameters); on_refresh_action combine appends every refresh, so rows duplicate. The recipe is recipes/rest-api-import.md. To make a dataset from a database query (SQL Server, MySQL, Postgres, ...): connector connection create for the database, try the SELECT with connector connection query (read-only, saves nothing), then connector ds-config create CONNECTOR_KEY CONNECTION_KEY with {"query": SELECT, "table": NAME}; the recipe is recipes/database-import.md. Other ds_creation_type values and dataset_spec shapes: variants beyond the documented path are not qualified.'
|
|
251
251
|
reviewed_by: primary
|
|
252
252
|
- command_id: dataset.create-from-pdf
|
|
253
253
|
command_path: dataset create-from-pdf
|
|
@@ -766,6 +766,52 @@ commands:
|
|
|
766
766
|
cols; no column lists) with matched, and more with next_offset when cut; limit and offset then
|
|
767
767
|
page over the matches. limit must be at most 100. Without a project use dataset find NAME_SUBSTRING.'
|
|
768
768
|
reviewed_by: primary
|
|
769
|
+
- command_id: dataset.refresh
|
|
770
|
+
command_path: dataset refresh
|
|
771
|
+
disposition: command
|
|
772
|
+
alias_of: null
|
|
773
|
+
operation_ids:
|
|
774
|
+
- UpdateDataset
|
|
775
|
+
positionals:
|
|
776
|
+
- name: dataset_id
|
|
777
|
+
type: int
|
|
778
|
+
required: true
|
|
779
|
+
metavar: DATASET_ID
|
|
780
|
+
falls_back_to_field: null
|
|
781
|
+
help: ID of the dataset.
|
|
782
|
+
options: []
|
|
783
|
+
sdk_symbol: mammoth.api.datasets.DatasetsAPI.refresh_from_url
|
|
784
|
+
sdk_conversion: Call mammoth.api.datasets.DatasetsAPI.refresh_from_url with validated request fields.
|
|
785
|
+
request_model: DatasetRefreshRequest
|
|
786
|
+
result_model: DatasetRefreshResult
|
|
787
|
+
mutation_class: benign_mutation
|
|
788
|
+
edits_target: true
|
|
789
|
+
confirmation: prompt_or_yes
|
|
790
|
+
wait_policy: always_wait
|
|
791
|
+
pagination_policy: none
|
|
792
|
+
acceptance_evidence: contract_only_no_disposable_fixture
|
|
793
|
+
readback:
|
|
794
|
+
command: dataset.get
|
|
795
|
+
ids:
|
|
796
|
+
dataset_id: positional.0
|
|
797
|
+
kind: object
|
|
798
|
+
live_test: null
|
|
799
|
+
live_exemption_reason: No automated disposable-project fixture wired into tests/live yet for this command.
|
|
800
|
+
contract_fixture: null
|
|
801
|
+
required_fixture_guard: null
|
|
802
|
+
secret_fields: []
|
|
803
|
+
human_example: mammoth dataset refresh DATASET_ID --help
|
|
804
|
+
agent_example: mammoth dataset refresh 123 --yes
|
|
805
|
+
unit_tests:
|
|
806
|
+
- UT-DATASET-REFRESH
|
|
807
|
+
contract_tests:
|
|
808
|
+
- CT-DATASET-REFRESH-HUMAN
|
|
809
|
+
- CT-DATASET-REFRESH-JSON
|
|
810
|
+
- CT-DATASET-REFRESH-ERROR
|
|
811
|
+
draft_test: null
|
|
812
|
+
undo_test: null
|
|
813
|
+
known_restrictions: Fetches the link of a dataset made from a URL (dataset create with ds_creation_type weburl; dataset list shows it as source url with the link host) again into the same dataset, and waits for the job. Whether the new data replaces or adds to the old follows the dataset's own data addition setting. A dataset not made from a URL is refused, and so is a URL that serves JSON; the server's reason is shown. A single CSV only. It never refreshes on a schedule, and automation run_data_retrieval cannot refresh it; for a scheduled pull from a URL use the REST API connector.
|
|
814
|
+
reviewed_by: primary
|
|
769
815
|
- command_id: dataset.rename
|
|
770
816
|
command_path: dataset rename
|
|
771
817
|
disposition: command
|
|
@@ -5176,7 +5176,9 @@ commands:
|
|
|
5176
5176
|
draft_test: LT-VIEW-TRANSFORM-EXTRACT-DATE-DRAFT
|
|
5177
5177
|
undo_test: LT-VIEW-TRANSFORM-EXTRACT-DATE-UNDO
|
|
5178
5178
|
known_restrictions: 'Observe first: `view get VIEW_ID` to confirm the column type is DATE (run convert-type
|
|
5179
|
-
first if TEXT) and `view data get` to check a few values.
|
|
5179
|
+
first if TEXT) and `view data get` to check a few values. For a month bucket use `year_month_number`
|
|
5180
|
+
("2026-10"), which sorts in time order; `year_month` ("2026, October") sorts alphabetically on a chart
|
|
5181
|
+
axis.'
|
|
5180
5182
|
reviewed_by: primary
|
|
5181
5183
|
- command_id: view.transform.fill-missing
|
|
5182
5184
|
command_path: view transform fill-missing
|
|
@@ -3010,6 +3010,13 @@ sdk_methods:
|
|
|
3010
3010
|
wait_policy: null
|
|
3011
3011
|
pagination_policy: null
|
|
3012
3012
|
openapi_operation_ids: []
|
|
3013
|
+
- sdk_symbol: mammoth.api.datasets.DatasetsAPI.refresh_from_url
|
|
3014
|
+
canonical_command: dataset.refresh
|
|
3015
|
+
alias_of: null
|
|
3016
|
+
mutation_class: benign_mutation
|
|
3017
|
+
wait_policy: always_wait
|
|
3018
|
+
pagination_policy: none
|
|
3019
|
+
openapi_operation_ids: []
|
|
3013
3020
|
- sdk_symbol: mammoth.api.datasets.DatasetsAPI.rename
|
|
3014
3021
|
canonical_command: dataset.rename
|
|
3015
3022
|
alias_of: null
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
manifest_schema_version: 1
|
|
2
|
-
method_count:
|
|
2
|
+
method_count: 801
|
|
3
3
|
generator_version: '1'
|
|
4
4
|
methods:
|
|
5
5
|
- sdk_symbol: mammoth._mixins._advanced_ops.AdvancedOpsMixin.add_sql
|
|
@@ -3256,9 +3256,9 @@ methods:
|
|
|
3256
3256
|
reviewed_by: primary
|
|
3257
3257
|
- sdk_symbol: mammoth.api.dashboards.DashboardsAPI.embed_config_set
|
|
3258
3258
|
implementation_origin: mammoth.api.dashboards.DashboardsAPI.embed_config_set
|
|
3259
|
-
signature: 'embed_config_set(self, dashboard_id: ''int'', mode: "Literal[''key'', ''signed'']
|
|
3260
|
-
allow_any_origin: ''bool'' =
|
|
3261
|
-
Any] | None'' = None, snippet: ''dict[str, Any] | None'' = None) -> ''EmbedConfigResponse'''
|
|
3259
|
+
signature: 'embed_config_set(self, dashboard_id: ''int'', mode: "Literal[''key'', ''signed''] | None"
|
|
3260
|
+
= None, allow_any_origin: ''bool | None'' = None, allowed_origins: ''_list[str] | None'' = None, appearance:
|
|
3261
|
+
''dict[str, Any] | None'' = None, snippet: ''dict[str, Any] | None'' = None) -> ''EmbedConfigResponse'''
|
|
3262
3262
|
openapi_operation_ids:
|
|
3263
3263
|
- PutEmbedConfig
|
|
3264
3264
|
canonical_command: dashboard.embed.config.set
|
|
@@ -5501,6 +5501,19 @@ methods:
|
|
|
5501
5501
|
pagination_policy: null
|
|
5502
5502
|
secret_fields: []
|
|
5503
5503
|
reviewed_by: primary
|
|
5504
|
+
- sdk_symbol: mammoth.api.datasets.DatasetsAPI.refresh_from_url
|
|
5505
|
+
implementation_origin: mammoth.api.datasets.DatasetsAPI.refresh_from_url
|
|
5506
|
+
signature: 'refresh_from_url(self, dataset_id: ''int'', workspace_id: ''int | None'' = None, project_id:
|
|
5507
|
+
''int | None'' = None) -> ''dict[str, Any]'''
|
|
5508
|
+
openapi_operation_ids: []
|
|
5509
|
+
canonical_command: dataset.refresh
|
|
5510
|
+
alias_of: null
|
|
5511
|
+
no_command_reason: null
|
|
5512
|
+
mutation_class: benign_mutation
|
|
5513
|
+
wait_policy: always_wait
|
|
5514
|
+
pagination_policy: none
|
|
5515
|
+
secret_fields: []
|
|
5516
|
+
reviewed_by: primary
|
|
5504
5517
|
- sdk_symbol: mammoth.api.datasets.DatasetsAPI.remove_definition
|
|
5505
5518
|
implementation_origin: mammoth.api.datasets.DatasetsAPI.remove_definition
|
|
5506
5519
|
signature: 'remove_definition(self, dataset_id: ''int'', definition_id: ''str'', workspace_id: ''int
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{mammoth_cli-2.2.86 → mammoth_cli-2.2.88}/mammoth_cli/bundled_skill/mammoth-cli/references/auth.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|