Skip to content

Align delivery onboarding and branding with the CompleteTech Skills package - #1

Merged
romgenie merged 3 commits into
mainfrom
chore/skills-package-20260922
Sep 22, 2026
Merged

romgenie merged 3 commits into
mainfrom
chore/skills-package-20260922

Conversation

@CompleteDotTech

Copy link
Copy Markdown
Contributor

Summary

Part of the coordinated package review: CompleteTech-LLC/agentic-services-orchestrator-skill#1.

  • Add the shared CompleteTech LLC Skills navigation while preserving the existing README and logo.
  • Add specialist onboarding with full-checkout setup, correct activation key, Windows guidance, and a synthetic demo that writes to output/ instead of committed previews.
  • Add skill-package.json, shared contributor guidance, a read-only standard-library validator, 16 regression tests, and separate least-privilege package CI.

Compatibility

No existing generator, template, SKILL.md, dependency, approval rule, brand asset, registry version, or runtime/network behavior changes. The existing quality workflow is retained unchanged. Structural validation does not certify a document's facts, visual quality, acceptance, or launch readiness.

Validation

The shared 16-test synthetic suite passed locally. Full-checkout package validation and existing quality checks run in this PR; they must pass before merge. The execution environment cannot clone GitHub, so local full-repository or visual-render verification is not claimed.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 22, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-22T22:41:08.181654Z 6c547d3 New commits
🔒 Security Review ✅ Completed 2026-09-22T20:35:59.686922Z 7989209 PR opened
ℹ️ 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" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

Copy link
Copy Markdown
Contributor Author

Second pass is pushed at 131ecc3: same eight shared package files as the hub, including BRANDING.md, AGENTS.md, contributor/PR/editor guidance, stronger file/link/PNG checks and Linux/Windows/macOS CI. Existing delivery runtime, templates, onboarding commands, dependencies and approval boundaries remain unchanged. The revised synthetic common suite passed locally (10 parameterized test methods); full checkout and original Quality must pass on this head. No new visual-render review is claimed.

@codex review

@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: 131ecc34ce

ℹ️ 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 scripts/validate_package.py Outdated
errors.append(str(exc))
skill = local_file(root, "SKILL.md").read_text(encoding="utf-8")
header = re.match(r"\A---\n(.*?)\n---(?:\n|\Z)", skill, re.S)
names = re.findall(r'''(?m)^name:\s*['"]?([a-z0-9-]+)['"]?\s*$''', header.group(1)) if header else []

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 Require matching quotes around the frontmatter name

When SKILL.md contains malformed YAML such as name: "agentic-delivery-skill', the two independent optional quote groups still capture the expected slug, so validate_package.py and the package-contract workflow report success even though the activation metadata cannot be parsed. Require matching quotes with a backreference, or validate the scalar another way, so this check actually protects the activation key.

AGENTS.md reference: AGENTS.md:L5-L5

Useful? React with 👍 / 👎.

Comment thread scripts/validate_package.py Outdated
errors.append("invalid schema_version or family")
if not isinstance(name, str) or not re.fullmatch(r"[a-z0-9]+(?:-[a-z0-9]+)*", name) or len(name) > 64:
errors.append("invalid skill_name")
if not isinstance(repo, str) or repo not in (f"CompleteTech-LLC/{name}", f"CompleteTech-LLC/{name}-skill"):

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 Reject the doubled skill suffix in repository names

For this package, whose activation name already ends in -skill, the alternate repository expression accepts CompleteTech-LLC/agentic-delivery-skill-skill. A typo to that nonexistent repository therefore passes validation even though the onboarding clone URL and other package metadata still identify agentic-delivery-skill; only allow the appended suffix for exceptional activation names that do not already have it. CONTRIBUTING.mdL22-L22

Useful? React with 👍 / 👎.

Comment thread scripts/validate_package.py Outdated
Comment on lines +92 to +93
if manifest["kind"] == "config-generator":
paths.append("config.ini")

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 Do not require config.ini from every config generator

When this shared validator runs in a config-generator sibling whose canonical input is YAML, JSON, or a differently located file, it fails solely because the kind triggers an undeclared root-level config.ini requirement, even when every manifest-declared entry point and example exists. This imposes one generator layout on the whole family; model package-specific required files in the manifest or per-package policy instead.

AGENTS.md reference: AGENTS.md:L5-L5

Useful? React with 👍 / 👎.

Comment thread CONTRIBUTING.md Outdated
python scripts/validate_package.py
```

Also run the existing quality and regression commands in [README.md](README.md). Package checks are read-only and do not execute specialist generators. They validate metadata, required files, local documentation links and PNG chunk integrity, not decoded artwork or document truth. Do not weaken original Quality checks to obtain a green result.

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 Point contributors to the actual Quality command

After the two package checks, this directs contributors to README for the existing quality and regression commands, but README contains no such commands; the repository documents python3 scripts/validate_quality.py in QUALITY.md instead. A contributor following this new guide therefore omits the required runtime, parser, renderer, and diagram gate, so link to QUALITY.md or include the command directly.

AGENTS.md reference: AGENTS.md:L7-L7

Useful? React with 👍 / 👎.

Comment thread ONBOARDING.md
A missing module usually means the active interpreter differs from the one used for `pip`; use `python -m pip` in the same environment and this repository's `requirements.txt`. Missing logos or references usually indicate a partial/text-only installation or the wrong working directory; use a full checkout and run from its root. Do not download replacement branding from unrelated sources.

```bash
python -m unittest discover -s tests -p test_package_contract.py -v

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

P3 Badge Run every package-contract test from onboarding

The onboarding command restricts discovery to test_package_contract.py, whereas the package CI and maintainer command intentionally use test_package_*.py. As soon as another contract test module is added under that established naming convention, users following onboarding will silently skip it; use the same wildcard command as CI.

AGENTS.md reference: AGENTS.md:L7-L7

Useful? React with 👍 / 👎.

@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: 6c547d35ba

ℹ️ 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".

remain outside this checkout contract. Quoted titles and angle destinations
are supported, including spaces in angle-delimited local filenames.
"""
text = re.sub(r"(?ms)^([`~]{3,})[^\n]*\n.*?^\1[^\n]*(?:\n|$)", "", text)

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 Recognize valid indented fenced code blocks

When one of the four scanned documents contains a valid CommonMark fenced block indented by one to three spaces, this expression does not remove the block, so a sample such as [Example](not-a-file.md) inside it is treated as a live link and incorrectly fails package validation. Allow the permitted leading indentation on opening and closing fences before scanning links.

Useful? React with 👍 / 👎.

"""
text = re.sub(r"(?ms)^([`~]{3,})[^\n]*\n.*?^\1[^\n]*(?:\n|$)", "", text)
text = re.sub(r"(`+).*?\1", "", text)
pattern = r'''\[[^\]\n]*\]\([ \t]*(?:<([^>\n]+)>|([^\s()]+))(?:[ \t]+(?:"[^"\n]*"|'[^'\n]*'|\([^\n)]*\)))?[ \t]*\)'''

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 Scan balanced inline-link destinations

When a scanned document uses a valid inline-link destination containing balanced parentheses, such as [Guide](guides/setup(v2).md), this pattern returns no target, so deleting or renaming that local file does not fail the package contract. Parse balanced destination parentheses, or otherwise ensure these ordinary inline links are passed to local_file().

Useful? React with 👍 / 👎.

@romgenie
romgenie merged commit a878001 into main Sep 22, 2026
8 checks passed
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.

2 participants