Skip to content

Detect declared config contract manifests - #29

Merged
fqjony merged 3 commits into
latestfrom
fix/declared-config-contracts
Jul 8, 2026
Merged

Detect declared config contract manifests#29
fqjony merged 3 commits into
latestfrom
fix/declared-config-contracts

Conversation

@fqjony

@fqjonyfqjony commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

Summary

  • discover root YAML manifests from explicit top-level contract / contracts markers or typed kind + version metadata
  • satisfy config contract detection from arbitrary filenames such as work-conf.yaml by combining typed manifest metadata with existing config.env / config.secrets shape detection
  • remove the deprecated worker-deployment deploy.yml surface from this repo and from legacy test fixtures
  • add env-interface.yaml as the explicit repo-owned dev.kit environment interface so config coverage comes from a declared contract
  • bump the package to 0.20.0 as a milestone release for the manifest/interface shift after 0.14.0
  • add release strategy/pre-action docs and lightweight workflow-manifest refs to the owning docs
  • add regression coverage for typed root manifests, marker-only contract: root manifests, and source/header comments that should not promote ordinary YAML into a contract

Scope

Changed: repo context contract manifest discovery, manifest-root detection signals, release metadata/docs, generated context, env tool recommendations, docker test entrypoints, and test fixtures.
Not changed: no worker.yaml, Worker-specific filename, deprecated deploy.yml, or UDX repo-specific allowlist was added.

Validation

  • bash tests/suite.sh --only repo-contract
  • make test
  • git diff --check
  • temp-copy smoke: worker-php reports config: present from worker.yaml via generic typed manifest + config shape detection

CopilotAI review requested due to automatic review settings July 8, 2026 10:50

CopilotAI 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.

Pull request overview

This PR updates repo contract discovery to detect root YAML manifests that declare config contracts via contract/contracts metadata (instead of relying on filename-specific allowlists), and adds regression coverage ensuring config contract detection works with arbitrary filenames like work-conf.yaml.

Changes:

  • Add scanning of root-level YAML files for explicit contract/contracts markers and include them as contract manifests.
  • Add regression tests verifying filename-agnostic config contract detection and context.yaml manifest inventory.
  • Update changelog and regenerate .rabbit/context.yaml timestamp.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.

FileDescription
tests/suite.shAdds a new fixture repo (declared-config-repo) and assertions proving config contracts are detected from arbitrary root YAML filenames.
lib/modules/repo_scaffold.shAdds root YAML scanning for manifests that declare contract/contracts metadata and includes them in the manifest discovery surface.
changes.mdDocuments the shift from filename allowlists to explicit contract metadata detection for config contracts.
.rabbit/context.yamlUpdates generated timestamp to reflect the new context generation.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment threadlib/modules/repo_scaffold.sh Outdated
Comment threadtests/suite.sh Outdated
Comment threadtests/suite.sh Outdated
@fqjony
fqjonyforce-pushed the fix/declared-config-contracts branch from 76338b2 to f995e5aCompareJuly 8, 2026 14:20
CopilotAI review requested due to automatic review settings July 8, 2026 14:20

CopilotAI 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.

Pull request overview

Copilot reviewed 5 out of 5 changed files in this pull request and generated 3 comments.

Comment threadlib/modules/repo_scaffold.sh
Comment threadtests/suite.sh
Comment thread.rabbit/context.yaml
@fqjonyfqjony self-assigned this Jul 8, 2026
@fqjonyfqjony added bug Something isn't working documentation Improvements or additions to documentation enhancement New feature or request labels Jul 8, 2026
@fqjony
fqjony requested review from a team, Copilot and udx-githubJuly 8, 2026 14:33
@fqjony
fqjonyforce-pushed the fix/declared-config-contracts branch from f995e5a to 8a7870aCompareJuly 8, 2026 14:34

CopilotAI 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.

Pull request overview

Copilot reviewed 9 out of 10 changed files in this pull request and generated 3 comments.

Comment threadtests/suite.sh
Comment threadtests/suite.sh
Comment threadtests/suite.sh
CopilotAI review requested due to automatic review settings July 8, 2026 14:50
@fqjony
fqjonyforce-pushed the fix/declared-config-contracts branch from 8a7870a to d849272CompareJuly 8, 2026 14:50

CopilotAI 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.

Pull request overview

Copilot reviewed 23 out of 24 changed files in this pull request and generated 1 comment.

Comment threadpackage.json
CopilotAI review requested due to automatic review settings July 8, 2026 14:57
@fqjony
fqjonyforce-pushed the fix/declared-config-contracts branch from d849272 to 29e6111CompareJuly 8, 2026 14:57

CopilotAI 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.

Pull request overview

Copilot reviewed 23 out of 24 changed files in this pull request and generated 3 comments.

Comment threadlib/modules/repo_scaffold.sh Outdated
Comment threadlib/modules/repo_scaffold.sh Outdated
Comment threadtests/suite.sh
CopilotAI review requested due to automatic review settings July 8, 2026 15:07

CopilotAI 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.

Pull request overview

Copilot reviewed 23 out of 24 changed files in this pull request and generated 2 comments.

Comment threadlib/modules/repo_scaffold.sh
Comment threadlib/modules/repo_scaffold.sh
CopilotAI review requested due to automatic review settings July 8, 2026 15:16
@fqjony
fqjony merged commit 3f82ee0 into latestJul 8, 2026
10 checks passed
@fqjony
fqjony deleted the fix/declared-config-contracts branch July 8, 2026 15:21

CopilotAI 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.

Pull request overview

Copilot reviewed 23 out of 24 changed files in this pull request and generated 2 comments.

Comment on lines +312 to +314
done <<EOF
$(find "$repo_root" -maxdepth 1 -type f \( -name '*.yaml' -o -name '*.yml' \) 2>/dev/null | sort)
EOF
Comment on lines 8 to 10
on:
push:
workflow_dispatch:
Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugSomething isn't workingdocumentationImprovements or additions to documentationenhancementNew feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@fqjony@udx-github