Skip to content

MBTI64-ZH32-EN32-V8_5-V5-SEARCH-FRESHNESS-GATE-01#2569

Merged
fermatmind merged 1 commit into
mainfrom
codex/mbti64-zh32-en32-v8-5-v5-search-freshness-gate-01
Jul 1, 2026
Merged

MBTI64-ZH32-EN32-V8_5-V5-SEARCH-FRESHNESS-GATE-01#2569
fermatmind merged 1 commit into
mainfrom
codex/mbti64-zh32-en32-v8-5-v5-search-freshness-gate-01

Conversation

@fermatmind

Copy link
Copy Markdown
Owner

What changed

  • Added a fixed --v8-5-v5-bilingual-64 mode to personality:agent-post-promotion-search-gate.
  • The gate now fail-closes unless the locked V8.5/V5 bilingual package file hash, embedded package hash, artifact/version, summary counts, and exact 64 MBTI A/T URL set match.
  • Added focused coverage for the 64-page gate and a malformed package fail-closed case.

Why

After V8.5/V5 promotion, the search-release gate needs a bounded 64-page path before URL Truth refresh / IndexNow dry-run decisions. This keeps post-promotion search checks scoped to the approved bilingual MBTI64 package and prevents accidental package drift, comparison pages, private paths, or arbitrary URL subsets from entering the search-release planning path.

Validation

  • php -l app/Console/Commands/PersonalityAgentPostPromotionSearchGateCommand.php
  • php -l tests/Feature/SeoIntel/PersonalityAgentPostPromotionSearchGateCommandTest.php
  • php artisan test tests/Feature/SeoIntel/PersonalityAgentPostPromotionSearchGateCommandTest.php --display-warnings
  • bash backend/scripts/ci_verify_mbti.sh
  • git diff --check

Deferred

  • No production deploy.
  • No URL Truth import/write.
  • No Search Queue enqueue/approve/submit.
  • No CMS draft/write/promotion.
  • No sitemap/llms mutation.

Repository rule impact

Backend remains the authority for URL Truth, Search Queue planning, CMS promotion, and public content state. This PR adds a bounded read-only gate contract only; it does not move content/search authority to frontend or local files.

@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: 133ea11ba7

ℹ️ 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 on lines +83 to +85
$fixedSubsetIssues = $this->fixedV85V5Bilingual64Issues($targets);
if ($fixedSubsetIssues !== []) {
return $this->finish($this->payload('NO_GO_SAFETY_VIOLATION', $fixedSubsetIssues));

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 Validate fixed-package input before empty-target return

When --v8-5-v5-bilingual-64 is used with a missing/unreadable/malformed package, or a package that contains no valid recommendations[*].target_url, targets() returns an empty list and the method has already returned target_urls_missing before this fixed-package contract check runs. finish() treats that non-safety NO_GO as exit code 0, so a CI/release script relying on the command status can proceed without ever validating the locked package hash or exact URL contract. Move this validation ahead of the empty-target return, or make empty targets in fixed mode a safety violation.

Useful? React with 👍 / 👎.

@fermatmind fermatmind merged commit 11b219c into main Jul 1, 2026
15 checks passed
@fermatmind fermatmind deleted the codex/mbti64-zh32-en32-v8-5-v5-search-freshness-gate-01 branch July 1, 2026 03:28
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.

1 participant