Skip to content

docs: describe demo.script as an executable path - #2464

Merged
codeforester merged 5 commits into
mainfrom
documentation/2459-20261004-document-demo-script-executable-path
Oct 5, 2026
Merged

codeforester merged 5 commits into
mainfrom
documentation/2459-20261004-document-demo-script-executable-path

Conversation

@codeforester

Copy link
Copy Markdown
Collaborator

Summary

Correct the Python manifest guide to describe demo.script as a relative executable file path, not a shell command string, and link the complete demo contract.

Issue

Fixes #2459

Validation

  • git diff --check
  • BASE_BASH_LIBS_DIR=/Users/rameshhp/work/base-bash-libs/lib/bash bats cli/bash/commands/basectl/tests/docs.bats (6 passing)

Dependencies

None.

@codeforester
codeforester requested a review from a team as a code owner October 4, 2026 06:32
Comment thread docs/python-manifest.md
@codeforester

Copy link
Copy Markdown
Collaborator Author

Code-review finding (cross-file consistency gap — not an inline comment because the file is outside this diff):

docs/command-reference.md lines 413-414 still groups demo.script with the trusted command-string surfaces, the same mischaracterization issue #2459 is about:

Manifest-declared commands are trusted project code. Base executes
test.command, build.targets.*.command, commands.*, demo.script, and
activate.source entries from the project root.

This PR correctly distinguishes demo.script in docs/python-manifest.md as a validated executable file path (must exist, be executable, and stay inside the project root — see cli/python/base_setup/demo.py::resolve_demo_script_path), not an arbitrary trusted shell command string. docs/command-reference.md still implies it's just another trusted command string executed like the others, with no such distinction. Consider applying the same clarification there (or a cross-reference to the corrected python-manifest.md section / project-demo-workflow.md) so the fix for #2459 is consistent across docs.

@codeforester
codeforester force-pushed the documentation/2459-20261004-document-demo-script-executable-path branch from 01a05e2 to b9d3a1c Compare October 5, 2026 10:35
@codeforester

Copy link
Copy Markdown
Collaborator Author

Addressed the cross-file documentation consistency finding in b9d3a1c. docs/command-reference.md now distinguishes trusted shell command strings from the validated relative executable path in demo.script, links the complete Project Demo Workflow contract, and retains the review-before-running guidance.

The branch was rebased onto current main. Validation: docs.bats 6/6; targeted documentation/workflow tests 34 passed; Python compile, git diff --check, and the existing docs validation passed.

@codeforester

Copy link
Copy Markdown
Collaborator Author

Follow-up on current head b9d3a1c: the command reference now explicitly distinguishes command strings from demo.script executable paths, documents the project-root containment validation, and links the complete contract. The docs test suite passes.

@codeforester

Copy link
Copy Markdown
Collaborator Author

Addressed the remaining #2459 acceptance gaps in 7716ecfc:

  • Added the demo.script contract row to docs/contracts.md, linked to the existing demo-resolution tests.
  • Documented quoted demo.script paths containing spaces.
  • Documented that compound shell logic belongs inside the executable script and that arguments after -- are forwarded unchanged.

Validation: tests/contracts/run.sh, focused docs/contract tests, and the docs BATS suite pass locally. Hosted checks for the new head are running.

@codeforester
codeforester merged commit faea91a into main Oct 5, 2026
22 checks passed
@codeforester
codeforester deleted the documentation/2459-20261004-document-demo-script-executable-path branch October 5, 2026 13:15
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.

Correct the Python manifest guide to describe demo.script as an executable path

1 participant