Rename starter placeholder to Piper - #60
Merged
Merged
Conversation
…files - Created `TODOS.md` with implementation plan for renaming and README improvements. - Added `__init__.py` to `piper` package. - Implemented `cli.py` for the `piper` CLI, including commands for extracting entities, summarizing PDFs, and generating images. - Added error handling in `errors.py` for SDK errors. - Created example modules for `extract_entities`, `generate_image`, and `summarize_pdf`. - Implemented file input handling in `file_input.py`. - Added method definitions in `methods` directory for each example. - Updated `runner.py` to handle execution modes for the CLI. - Created end-to-end tests for `extract_entities`.
…including README, CLI commands, and package structure. Update all relevant imports and references in the code and tests. Adjust project metadata in pyproject.toml and regenerate lock file. Ensure all instances of the old project name are replaced with the new name, maintaining functionality and consistency across the application.
Phases 1 (piper rename sweep) and 2 (bootstrap rework) are committed (97a28b2 + 6d5adbf). Reconcile TODOS.md so a fresh session resumes at Phase 3 without being misled by the original future-tense framing: - add a "START HERE" banner (status, commits, still-open questions, the uncommitted cross-repo doc loose end) - update "Current git state" + CHECKPOINT 1 STATUS (committed, tree clean, 3 ahead of main) — was "Nothing committed / mixed staging" - mark the discovered drift RESOLVED and Q2 (branch strategy) resolved - refresh the Key files map to post-rename reality (setuptools not hatch; three name forms; test_extract_entities.py; README is the Phase 3 target with the bootstrap anchor coupling called out) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SVcEMuFTCU6iAmi3PP3hho
Rework the starter README so a newcomer sees a real product, not a template: - Frame `uv run` as Python's `npx` before the first command; keep the activate-venv note as the fallback. - Show real, captured expected-output JSON in Quick start and in a new "Try the demos" section (one block per demo: command, output, teaching point). - Lead "Use this template" with the /bootstrap skill; manual steps as the fallback (now naming [project.scripts] + [tool.setuptools] packages, which the old list missed). - Add Mermaid diagrams: a flowchart of how a run works (bundle sent as content, not code), and a sequence diagram of the durable-vs-blocking execution modes (the ~30s cap shown as a lost-message cross). Validated with mmdc. The bootstrap strip/rename anchors (### Use this template, the *Replace "… line, [MIT license](LICENSE)) are preserved; verified the reworded README still strips + renames cleanly with zero surviving placeholder tokens. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SVcEMuFTCU6iAmi3PP3hho
Greptile SummaryThis PR renames the starter placeholder to
Confidence Score: 5/5Safe to merge with minimal risk. The changes are a coordinated rename plus demo and documentation updates. Bootstrap tests cover the prior survivor-check issue and the renamed CLI paths are covered by unit tests. No files require special attention.
What T-Rex did
Important Files Changed
Sequence Diagram%%{init: {'theme': 'neutral'}}%%
sequenceDiagram
participant User as User / CLI
participant Piper as piper Typer app
participant Runner as piper.runner
participant API as Hosted Pipelex API
participant Parser as piper.examples parser
User->>Piper: "uv run piper <demo> inputs"
Piper->>Piper: read .mthds bundle and build inputs
alt blocking mode
Piper->>Runner: run_blocking(pipe_code, bundle, inputs)
Runner->>API: execute(mthds_contents, inputs)
API-->>Runner: resolved main_stuff
else durable attended/default
Piper->>Runner: run_durable_attended(pipe_code, bundle, inputs)
Runner->>API: start(mthds_contents, inputs)
API-->>Runner: run id
Runner->>API: wait_for_result(run id)
API-->>Runner: resolved main_stuff
else durable detached
Piper->>Runner: start_detached(pipe_code, bundle, inputs)
Runner->>API: start(mthds_contents, inputs)
API-->>Runner: run id
Runner-->>User: print run id for later piper runs wait
end
Runner-->>Piper: RunResults
Piper->>Parser: parse(results.main_stuff)
Parser-->>User: JSON output
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
sequenceDiagram
participant User as User / CLI
participant Piper as piper Typer app
participant Runner as piper.runner
participant API as Hosted Pipelex API
participant Parser as piper.examples parser
User->>Piper: "uv run piper <demo> inputs"
Piper->>Piper: read .mthds bundle and build inputs
alt blocking mode
Piper->>Runner: run_blocking(pipe_code, bundle, inputs)
Runner->>API: execute(mthds_contents, inputs)
API-->>Runner: resolved main_stuff
else durable attended/default
Piper->>Runner: run_durable_attended(pipe_code, bundle, inputs)
Runner->>API: start(mthds_contents, inputs)
API-->>Runner: run id
Runner->>API: wait_for_result(run id)
API-->>Runner: resolved main_stuff
else durable detached
Piper->>Runner: start_detached(pipe_code, bundle, inputs)
Runner->>API: start(mthds_contents, inputs)
API-->>Runner: run id
Runner-->>User: print run id for later piper runs wait
end
Runner-->>Piper: RunResults
Piper->>Parser: parse(results.main_stuff)
Parser-->>User: JSON output
Reviews (3): Last reviewed commit: "Refactor placeholder survivor check with..." | Re-trigger Greptile |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Verification
Release cut is left for a later batch.