Skip to content

fix(governance): resolve terminal tickets from git ancestry (ticket-002) - #2

Merged
ifuri-validator-agent[bot] merged 1 commit into
mainfrom
ticket/002-adopt-git-ancestry-ticket-activity-resolution-for-scheduled-governance
Nov 5, 2026
Merged

ifuri-validator-agent[bot] merged 1 commit into
mainfrom
ticket/002-adopt-git-ancestry-ticket-activity-resolution-for-scheduled-governance

Conversation

@tom-sapletta-com

Copy link
Copy Markdown
Contributor

What

Add the target-owned .governance/ticket-activity.override.json with
missingPolicy: git-ancestry, as declared by the managed
ticket-activity-override.schema.json.

Why

The scheduled new-project-governance run has no PR base/head. In a fresh
checkout there is no clone-external terminal receipt registry, so the managed
default status-projection keeps project/ticket-001 (IN_PROGRESS) active
even though its delivery is already on main. The runtime then requires an
adoption base and fails:

GOV-SYNC-001 Atomic standard adoption preconditions are invalid: base and changed lock are required.

Observed on main 21fa172 as run 41816875558 (job 126529727011). The same
pattern is present in wellmanifest/gui (run 41817365211) and
wellmanifest/uriprocess (run 41818149661); each ticket will be delivered in
its own repository.

The standard documents git-ancestry as the opt-in for an adopter whose
hand-edited statuses no longer track Git reality. The managed policy, generated
workflow, pins and required checks are unchanged.

Verification (exact published runtime 0.20.131 / 3926cecf)

  • Clean post-merge simulation with the override, no --base/--head:
    passed, no findings.
  • Identical tree without the override: failed, GOV-SYNC-001.
  • Worktree gate with --base 21fa172 --head acee5b2:
    wellmanifest_governance_runtime check --format json -> passed.
  • .governance/standard_pack_check.py: exit 0 (audit-mode baseline retained).
  • .governance/governance_check.py: GOV-PASS: passed (0 errors, 0 warnings).
  • Commit created through the managed pre-commit hooks:
    GOV-CHANGE-LEASE-PASS, GOV-WORKTREE-OVERLAP-PASS.

Scope

Changed files: .governance/ticket-activity.override.json,
project/ticket-002/{README.md,intent.json}, project/TICKETS.md.

No managed file, workflow, runtime pin, credential or protected check is edited.
No branch deletion and no history rewrite.

Authority

Native ticket-002, branch
ticket/002-adopt-git-ancestry-ticket-activity-resolution-for-scheduled-governance,
lease fencing 1. Portfolio PLF-19969 / parent PLF-19971; upstream owner findings
wellmanifest/new-project GITHUB-532 and GITHUB-537.

Requesting normal exact-base/head review and independent publication. Do not
merge on the author's word.

@tom-sapletta-com

Copy link
Copy Markdown
Contributor Author

Status 2026-11-05: all six hosted checks pass on head acee5b2. Protected publication is blocked by a repository-profile gap, not by this change: the protected registry requires onedev/local-verify, but subactor/onedev-agent config/repositories.toml has no verification profile for semcod/code2graph, so the status cannot be produced. Recorded as subactor/onedev-agent PLF-22274 (owner decision: add an exact profile or stop requiring the check). Head is frozen; no check was waived and no status was fabricated.

@ifuri-validator-agent ifuri-validator-agent Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Validator approval after policy checks for exact head acee5b27c341d7f2fc2266ec2cd9663e2b79994c.

Ticket: ticket-002
Correlation ID: local-semcod-code2graph-pr-2-ticket-002
Model: openai/cursor-auto
Reviewed diff chunks: 1
Advisory LLM verdict: APPROVE
Advisory summary: Reviewed all 1 diff chunk(s). The change safely adds the schema-declared adopter-local git-ancestry activity override and associated ticket metadata without modifying managed governance policy, workflows, credentials, pins, or protected checks. The visible configuration and ticket index updates are internally consistent.
Advisory findings: none
The LLM output above is advisory and was not used as the approval trust root.
Semantic review prerequisite: satisfied; policy 676cb4516bbfed2a000e40b9b1b6e4a430ecc761ec546aeb53d721a1905cfdd7.

Actual PR impact radar

Exact range: 21fa172276d352c65f55a21fc40707bae0260469...acee5b27c341d7f2fc2266ec2cd9663e2b79994c
Change digest: 7fffaf5fbf13e59d714ec7fafbe1536ef01ff863e0e0565ea0e1c8ac4acb051e
Score: 76/100 (L), estimated 100 min, split recommended: true
Affected services/components: repository-wide/unclassified

Machine-readable radar JSONL and SVG
{"actual_change":{"additions":82,"base_sha":"21fa172276d352c65f55a21fc40707bae0260469","binary_files":0,"categories":{"configuration":2,"docs":2},"change_digest":"7fffaf5fbf13e59d714ec7fafbe1536ef01ff863e0e0565ea0e1c8ac4acb051e","comparison":"21fa172276d352c65f55a21fc40707bae0260469...acee5b27c341d7f2fc2266ec2cd9663e2b79994c","deletions":0,"file_count":4,"files":["governance/ticket-activity.override.json","project/TICKETS.md","project/ticket-002/README.md","project/ticket-002/intent.json"],"head_sha":"acee5b27c341d7f2fc2266ec2cd9663e2b79994c","service_count":0,"services":[]},"assessment_mode":"observed-pr","axes":{"coupling":5,"delivery":4,"scope":5,"uncertainty":3,"validation":2},"complexity":"L","confidence":0.9,"diagnostics":["RADAR-ACCEPTANCE-MISSING","RADAR-BUDGET-EXCEEDED"],"estimate":{"budget_minutes":30,"minutes":100,"within_budget":false},"impact":{"components":["--base","base","exact-base","governance","project","ticket","wellmanifest"],"files":["--base/--head","base/head","exact-base/head","governance/governance_check.py","governance/standard_pack_check.py","governance/ticket-activity.override.json","project/TICKETS.md","project/ticket-001","project/ticket-002","project/ticket-002/README.md","project/ticket-002/intent.json","ticket/002-adopt-git-ancestry-ticket-activity-resolution-for-scheduled-governance","wellmanifest/gui","wellmanifest/new-project","wellmanifest/uriprocess"],"public_interfaces":[],"runtime_dependencies":0},"schema":"subactor.ticket-radar/v1","score":76,"split":{"parts":[{"estimated_minutes":13,"name":"Implement --base","scope":["--base"]},{"estimated_minutes":13,"name":"Implement base","scope":["base"]},{"estimated_minutes":13,"name":"Implement exact-base","scope":["exact-base"]},{"estimated_minutes":13,"name":"Implement governance","scope":["governance"]},{"estimated_minutes":13,"name":"Implement project","scope":["project"]},{"estimated_minutes":15,"name":"Validate and project to trackers","scope":["tests","planfile","github/gitlab/jira projections"]}],"reason":"estimated_minutes_exceed_budget","recommended":true},"standards":[{"id":"wellmanifest/dsl","revision":"6c60fc4e0dd1f1bb74f46a7745e28019908d1203","version":"0.1.0-dev"},{"id":"wellmanifest/ticket-lifecycle","revision":"5bf581907a87b46a13a73e6c033d3abe4d9a306f","version":"0.1.0-dev"},{"id":"wellmanifest/git-lifecycle","revision":"7d77d4b7af57e69bc75c3a0290b3a4805c5c4438","version":"0.2.0-dev"},{"id":"wellmanifest/logs","revision":"48c284ef7a069055c0bcb6b900147ce5e65f8b43","version":"0.3.0"}],"ticket_ref":"ticket-002"}
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128" viewBox="0 0 128 128" role="img"><title>ticket-002: fix(governance): resolve terminal tickets from git ancestry (ticket-002)</title><rect width="128" height="128" rx="12" fill="#f8fafc"/><g stroke-width="1"><polygon points="64,55 72,61 69,71 59,71 56,61" fill="none" stroke="#d7dde5"/><polygon points="64,47 80,59 74,78 54,78 48,59" fill="none" stroke="#d7dde5"/><polygon points="64,38 89,56 79,85 49,85 39,56" fill="none" stroke="#d7dde5"/><polygon points="64,30 97,53 84,92 44,92 31,53" fill="none" stroke="#d7dde5"/><polygon points="64,21 105,51 89,99 39,99 23,51" fill="none" stroke="#d7dde5"/><line x1="64" y1="64" x2="64" y2="21" stroke="#aab4c0"/><line x1="64" y1="64" x2="105" y2="51" stroke="#aab4c0"/><line x1="64" y1="64" x2="89" y2="99" stroke="#aab4c0"/><line x1="64" y1="64" x2="39" y2="99" stroke="#aab4c0"/><line x1="64" y1="64" x2="23" y2="51" stroke="#aab4c0"/></g><polygon points="64,21 105,51 79,85 54,78 31,53" fill="#fb923c" fill-opacity="0.45" stroke="#c2410c" stroke-width="2"/><circle cx="64" cy="64" r="3" fill="#c2410c"/><g font-family="sans-serif" font-size="7" fill="#334155"><text x="64" y="11" text-anchor="middle">SCO</text><text x="114" y="48" text-anchor="middle">COU</text><text x="95" y="107" text-anchor="middle">UNC</text><text x="33" y="107" text-anchor="middle">VAL</text><text x="14" y="48" text-anchor="middle">DEL</text></g><text x="64" y="124" text-anchor="middle" font-family="sans-serif" font-size="8" fill="#0f172a">L · 100m</text></svg>
Merge will be attempted after this approval when explicitly authorized. ## Decision record (recomputable)
DECISION D-002-9082
TICKET ticket-002
HEAD_SHA acee5b27c341d7f2fc2266ec2cd9663e2b79994c
CORRELATION_ID local-semcod-code2graph-pr-2-ticket-002
ACTOR agent:ifuri-validator-agent[bot]
APPLIED_RULE P-CORE-015
INPUT author_login = "tom-sapletta-com"
INPUT observed_checks = ["test (3.11)=PASS","governance / remote lifecycle=PASS","test (3.13)=PASS","test (3.10)=PASS","test (3.12)=PASS","onedev/local-verify=PASS"]
INPUT required_checks = ["onedev/local-verify","test (3.10)","test (3.11)","test (3.12)","test (3.13)","governance / remote lifecycle"]
INPUT required_checks_source = "protected registry (env/request)"
INPUT reviewer_login = "ifuri-validator-agent[bot]"
INPUT semantic_review_assessment = {"schema":"subactor.validator/semantic-review-assessment/v1","subject":{"repository":"semcod/code2graph","pull_request":2,"head_sha":"acee5b27c341d7f2fc2266ec2cd9663e2b79994c","base_sha":"21fa172276d352c65f55a21fc40707bae0260469","diff_sha256":"d82f5c00d0a820212d9e1cfd8059b664879f2cb93ec0f586b3adf9c554c92758"},"policy":{"policy_schema":"subactor.validator/semantic-review-policy/v1","policy_version":1,"policy_sha256":"676cb4516bbfed2a000e40b9b1b6e4a430ecc761ec546aeb53d721a1905cfdd7","required":true,"critical_paths":[".governance/ticket-activity.override.json"],"observed_paths":[".governance/ticket-activity.override.json","project/TICKETS.md","project/ticket-002/README.md","project/ticket-002/intent.json"]},"grounding":"full-diff-not-per-finding-proof","execution_authority":false,"status":"satisfied","reason":null,"review_sha256":"0a2d94f23ef97aa47abd306e0519a714bc12de66ce3b4c6de8a93176f312b351","unresolved":[]}
INPUT superseded_checks = ["governance / enforce"]
INPUT ticket_radar_receipt = {"schema":"subactor.ticket-radar/v1","base_sha":"21fa172276d352c65f55a21fc40707bae0260469","head_sha":"acee5b27c341d7f2fc2266ec2cd9663e2b79994c","change_digest":"7fffaf5fbf13e59d714ec7fafbe1536ef01ff863e0e0565ea0e1c8ac4acb051e","score":76,"complexity":"L","estimated_minutes":100,"split_recommended":true,"services":[],"authority":"ADVISORY","promotion":"FORBIDDEN"}
VERDICT APPROVE AUTHORITY DETERMINISTIC
REJECTED REQUEST_CHANGES BECAUSE NO_UNSAFE_CHANGE_REASON_FOUND
ADVISORY llm_verdict = "APPROVE" MODEL "openai/cursor-auto"
ASSERT VERDICT_AUTHORITY != "ADVISORY"

@ifuri-validator-agent
ifuri-validator-agent Bot merged commit da0b996 into main Nov 5, 2026
7 checks passed
@ifuri-validator-agent
ifuri-validator-agent Bot deleted the ticket/002-adopt-git-ancestry-ticket-activity-resolution-for-scheduled-governance branch November 5, 2026 10:19
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