Print residue with insertion code#546
Conversation
Also got doxygen helped which was erratic on a separation of the ID with a colon.
also now falling back to getFullName method
The enum element ADD_VARIANT_EXTENSIONS_AND_ID_AND_INSERTION_CODE was
not seen, so it became the default.
/homeLvm/moeller/alioth/debian-med-git/ball/source/PYTHON/EXTENSIONS/BALL/residue.sip: In function âObject* slot_Residue___str__(PyObject*)â/homeLvm/moeller/alioth/debian-med-git/ball/source/PYTHON/EXTENSIONS/BALL/residue.sip:96:51: error: âD_VARIANT_EXTENSIONS_AND_ID_AND_INSERTION_CODEâas not declared in this scope
+ sipCpp->getFullName(ADD_VARIANT_EXTENSIONS_AND_ID_AND_INSERTION_CODE)
|
I think this looks pretty good. One suggestion I would like to make though is to use the FullNameType enum as bitflags that are used to build the combined flags: enum FullNameType {
NO_VARIANT_EXTENSIONS = 0,
ADD_VARIANT_EXTENSIONS = 1,
ADD_RESIDUE_ID = 2,
// ADD_VARIANT_EXTENSIONS | ADD_RESIDUE_ID
ADD_VARIANT_EXTENSIONS_AND_ID = 3,
ADD_INSERTION_CODE = 4,
// ADD_INSERTION_CODE | ADD_RESIDUE_ID
ADD_RESIDUE_ID_AND_INSERTION_CODE = 5,
// ADD_INSERTION_CODE | ADD_RESIDUE_ID | ADD_VARIANT_EXTENSIONS
ADD_VARIANT_EXTENSIONS_AND_ID_AND_INSERTION_CODE = 6
}The combined flags can stay for convenience (and API compatibility), the checks for building the full name would be a lot easier to read though... @anhi What would you say about that proposal? |
|
An ABI incompatibility sounds like a close-to-perfect motivation to perform a library jump from 1.4 to 1.5 :) I was just saying that to satisfy my ambitions for Debian. I have not fully grasped what exactly you were commenting, but if manually assigning values, then the value of ADD_INSERTION_CODE | ADD_RESIDUE_ID | ADD_VARIANT_EXTENSIONS I propose to be 7, not 6 - should also help simplifying the implementation quite a bit. |
Adds Phase 5.2 as a new in-scope item with per-PR disposition matrix: - #640 FindXDR refactor: investigate-then-close-or-rebase (XDR may be gone post-Phase-4) - #600 Travis-CI integration: close .travis.yml part (Travis dead), cherry-pick 4 orthogonal files - #554 Omega torsion: extract C++ slice (residueRotamerSet, residue.C), defer .sip to Phase 6 - #550 HYP residue: rebase + merge in v1.6.1 (no Python parts, pure C+++data gap fix) - #546 Insertion code printing: extract C++ slice (residue.{h,C}), defer .sip to Phase 6 Plan breakdown (A/B/C/D) sequenced to avoid residue.C merge conflicts (C bundles #554+#546; D HYP runs after C OR merges into it). Release criterion 4 added: each open PR must reach a recorded disposition. Open question 3 added: XDR-still-used grep verifies #640's path. Open question 4 added: maintainer policy on cherry-picking from departed contributors. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ficant, 5 notable findings Critical: 1. release.yml still uses Qt 5; will fail on v1.6.1 (codex) 2. PRs #554 + #546 partially-implemented in current Residue; cherry-pick = duplicate API (codex) 3. v1.6.1 scope drifted into minor-release shape (codex + claude) 4. Phase 5.1 verification basis on 54da903 is unproven (codex) Actions to apply: - Move Phase 5.2 PR triage to v1.6.2 (use existing Phase 999.5 slot) - Add release.yml Qt 6 repair as v1.6.1 critical pre-tag fix - Make B3 C4251 measurement explicit pre-Phase-5.2 step - Sync ROADMAP progress table (5/8, 13/14 -> 8/8, 14/14) - Promote Phase 999.7 Linux part to active (commit 54da903 = 999.7 work) - Expand release criteria (published-not-draft, exact-tag, codesign verify, supersede notes) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
CRITICAL (from codex): - Move PR triage (Phase 5.2) OUT of v1.6.1, defer to v1.6.2 via Phase 999.5 (PRs #554/#546 partially-implemented in current Residue; archaeology required before cherry-pick — not patch-release work) - Add release.yml Qt 6 repair as a pre-tag fix item (release.yml still installs qt@5 / calls qt@5/bin/macdeployqt — v1.6.0 tagged on Qt 5 codebase but Phase 5 migrated to Qt 6 without updating release.yml; any v1.6.1 release attempt will fail at CMake configure) SIGNIFICANT (claude + codex): - Make B3 C4251 baseline measurement explicit pre-tag step (UAT requires post-pragma count from first clean tri-OS CI run before further source merges clobber the baseline) - Promote Phase 999.7 Linux part to active (commit 54da903 aqtinstall fix is partial 999.7 work) - Expand release criteria: published-not-draft, exact-tag-build, codesign verify after zip, supersede v1.6.0 release notes NOTABLE (codex): - Sync ROADMAP progress table: Phase 5 5/8→8/8 Complete, Phase 5.1 13/14→14/14 Complete (table was stale despite phase headers being correct) Source: .planning/REVIEW-v1.6.1.md (full synthesis review) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
…ygiene audit (3-round Codex-reviewed) Cross-checks ROADMAP.md against MILESTONE-CONTEXT.md, CONCERNS.md, recent commits, debug sessions, planning artifacts, and open issues/PRs to surface items deferred to v1.6.2 (or "v1.6.x housekeeping") that never made it into the backlog, plus hygiene fixes for stale entries. Three rounds of adversarial Codex review (v1 REJECT-AND-REWORK → v2 APPROVE-WITH-FIXES → v3 APPROVE-AS-IS). Key Codex catches: - v1 claimed 6 forgotten items: 2 were false positives (ContourSurface bug from stale CONCERNS.md; B3 baseline already recorded). 2 were tracking-fixes-not- backlog (Phase 9 progress-table row; glwidget debug doc reconcile). - v2 added Phase 999.21 Qt 6 regressions (CR-01/02/03) based on stale 05-VERIFICATION.md — all three are actually fixed in current code (HTMLPage.C:36, molecularControl.C:500, PresentaBALLView.C:41, pyWidget.C:349). REMOVED in v3. - v2 also overstated 999.7 remaining scope — gl_profile landed in 7b28685. NARROWED in v3 to Windows driver capture only. Net findings: - 2 real source-level additions for v1.6.2 backlog: A1: 999.22 Tier-C warning census + (a)-subset (NOT wholesale ~3700 cleanup) A3: 999.21 DockResultFile QtXml dead-code cleanup (1 hour) - 1 stretch addition: A4: 999.23 CIF Bison grammar audit (defer to v1.7 if v1.6.2 fills up) - 1 progress-cleanup not a backlog item: A2: Phase 9 close — CI wiring already in tree (b2bb718 + 61bf5a7), only 3 baseline failures need triage + flip gatekeeper to blocking - §B PR triage decision: use 999.14 with named "5-PR legacy bundle" (#640, #600, #554, #550, #546); NOT a new Phase 5.2 unless triage turns into real merge code work - 5 hygiene fixes (§C2/C3/C4 + §D1/D2/D4/D5): - Mark Phase 999.4 as COMPLETED via Phase 4.1 - Narrow Phase 999.7 scope to Windows driver capture only - Mark Phase 5.1 B3 baseline carry-forward as RESOLVED (run 25953405453) - Remove false ContourSurface bug from CONCERNS.md - Update ROADMAP Phase 9 row to reflect partial completion - Reconcile glwidget-port-misprojection debug session status - Add "Updates / Resolution log" pointer on 05-VERIFICATION.md → 05-HUMAN-UAT.md (the recurring trap of stale planning docs misleading future audits) - §E workflow gap: no v1.6.2 MILESTONE-CONTEXT.md yet; create when v1.6.1 tags - §F recommended v1.6.2 shape: 5 build-accel/CI-hygiene phases + Phase 9 close + 999.14 PR triage + 999.21 dead-code; ~7-11 days core effort (patch shape) Audit is approve-as-is; §G action items totaling ~2 hours of edits can apply in a separate follow-up commit. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Co-Authored-By: Codex (GPT-5.5) <noreply@openai.com>
… + 3 new backlog entries) Follow-up commit to 11c8e0f. Applies all 8 §G action items from the audit in a single focused change. ROADMAP.md hygiene (§C2/C3/C4 + §D2): - Phase 9 row: 0/0 Not started → (partial) In Progress (v1.6.2); CI wiring + coverage + JUnit reporter landed in b2bb718 + 61bf5a7; 3 baseline failures remain (Directory_test, AmberFF_test, AssignBondOrderProcessor_test2). - Phase 5.1 row: B3 carry-forward marked RESOLVED — 3495 → 0 on run 25953405453 per 05.1-08-SUMMARY.md + 05.1-UAT.md. - Phase 999.4 header: "PROMOTED to Phase 4.1" → "COMPLETED via Phase 4.1 (2026-05-15)" with completion citation. - Phase 999.7 entry: scope-narrowed per audit §C3. Build-system pain (SEED-005-1 Linux aqtinstall, SEED-005-2 Windows vcpkg baseline) and macOS gl_profile=(compatibility|none) relaxation all CLOSED by other phases (commit 54da903, run 25953405453, commit 7b28685). Only SEED-005-3 Windows VM driver-behaviour capture remains; defer to v2.0 post-PIPE-01 unless Windows-access contributor surfaces sooner. - Phase 999.5 (Open-PR triage): closed as superseded by Phase 999.14. ROADMAP.md backlog (§B): - Phase 999.14: added named "5-PR legacy bundle" subtask per audit §B + MILESTONE-CONTEXT.md:270-279 (#640 FindXDR, #600 Travis-CI, #554 Omega torsion, #550 hydroxyproline AA, #546 residue insertion code). Table per-PR with likely category. Bundle-escape clause: spin out as Phase 5.2 if rebase work exceeds ~3 days. Target milestone explicit: v1.6.2. ROADMAP.md new backlog entries (§A1/A3/A4): - Phase 999.21 (DockResultFile QtXml dead-code cleanup, v1.6.2, 1 hour) — was Phase 5.1 BLOCKER-A2, never picked up. - Phase 999.22 (warning census + (a)-subset, v1.6.2, ≤2 weeks) — recast from "clean ~3700 warnings wholesale" to census + small-subset-only, per Codex correction. Includes residual Windows C4910/C4834. - Phase 999.23 (CIF Bison grammar audit, v1.6.2 or v1.7, 1-2 days) — scope narrowed to CIF only (count 3 vs 5 reconcile during phase); other 7 Bison grammars out of scope. Doc hygiene (§D1/D4/D5): - CONCERNS.md ContourSurface entry: marked NOT-A-BUG with audit citation (implementation at contourSurface.h:302-306 is correct; original audit inspected only the declaration). Includes lesson-for-future-audits. - 05-VERIFICATION.md: added "⚠ STALE FINDINGS" banner pointing readers at 05-HUMAN-UAT.md as the rolling-resolution source of truth + new `resolution_log:` frontmatter field. Two roadmap audits (v1 + v2) were misled by reading this snapshot without cross-checking HUMAN-UAT. - glwidget-port-misprojection.md: added `audit_notes:` frontmatter citing audit §D4 — status stays awaiting_human_verify (cannot be auto-closed; needs interactive macOS visual recheck), with explicit action for whoever runs the recheck. §E (v1.6.2 MILESTONE-CONTEXT.md creation) deferred — appropriate trigger is "v1.6.1 has tagged + shipped," not yet true. Net ROADMAP delta: - Active phases unchanged. - Backlog: 5 v1.6.2 phases → 8 (added 999.21/22/23). - 999.5 closed (superseded), 999.4 closed (promoted+completed), 999.7 narrowed. - Progress table reflects current state for Phase 5.1 (B3 done) and Phase 9 (CI wiring landed, 3 failures remain). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Co-Authored-By: Codex (GPT-5.5) <noreply@openai.com>
Three remaining v1.6.2 PLAN.md execution prompts, written via /gsd-plan-phase pattern to complete the milestone planning round: - 999.22 (WARN-CENSUS-01, CENSUS-ONLY per 2026-05-16 Open Q3): Pull tri-OS green CI build logs, build CENSUS.md per-warning x file x cause classification tagged (a)/(b)/(c), file three deferral backlog stubs (999.22a v1.7 mechanical, 999.22b v2.0 blocked-by-999.6, 999.22c v1.7 per-site). Zero source-code changes. - Phase 9 close (TEST-CLOSE-01 + TEST-CLOSE-02): Six tasks. Triage the 3 baseline failures (Directory_test, AmberFF_test with Linux cross-check for FP-precision-vs-regression diagnosis, AssignBondOrderProcessor_test2 fine-penalty), pre-flip green-list verification, flip macOS+Linux gatekeeper continue-on-error true->false in ci.yml + release.yml mirror, file Phase 999.24 Windows-test-gatekeeper backlog stub. Disposition heuristic: <2h -> FIX, 2-8h or FP-driven -> QUARANTINE, v2.0-architectural -> KNOWN-CASUALTY. - 999.14 triage (TRIAGE-01 + TRIAGE-02 + TRIAGE-03): Five tasks. Snapshot open issues+PRs to JSON baselines, categorize per 5-category rubric with templated close comments + decisions.md audit trail, stale-docs audit applying f176b8b pattern (banner + resolution_log frontmatter) to VERIFICATION.md files with stale rows resolved in sibling HUMAN-UAT.md, 5-PR legacy bundle (#640 FindXDR / #600 Travis-CI / #554 Omega / #550 HYP / #546 InsertionCode) with per-PR scope-check + rebase-or-close + 3-day bundle-escape clause routing spillover to Phase 5.2, wire 999.5 <-> 999.14 supersedes pointer. All three closes the v1.6.2 milestone planning round; execution can now proceed via /gsd-execute-phase 999.16 (and others) without re-planning. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This was a bit of a technical exercise while continuing the thoughts expressed in issue #544 on the visibility of the insertion code. The getFullName method is extended respectively and the python_toString routine falls back to it. The patch required to also update and extend the FullnameType enum for Python.