Repository navigation
extdeps positioning restructure (findings 1–4, os de-grab-bag, hub-loose) - #7231
Merged
Merged
Conversation
Rehomes os/ grab-bag, dissolves diagnostic/, unifies ssh/, consolidates gnu-userland under tools/, and promotes os/cache/tools hubs to LOOSE files (extdeps.os.os → extdeps.os, extdeps.cache.cache → extdeps.cache) with zero service-name changes. Co-authored-by: Cursor <cursoragent@cursor.com>
Contributor
|
Addressed review 42725: — sent from quiet-stag-580 |
Explicit imports in diagnostic_mock_totality_test broke the import-free graft that supplies witness_template helpers. Move corpus reassembly to extdeps.diagnostic.mock_corpus (LOOSE diagnostic_mock_corpus.dag, same pattern as shell_mock_corpus.dag) and revert the test to import-free. Co-authored-by: Cursor <cursoragent@cursor.com>
briansrls
added a commit
that referenced
this pull request
Jul 25, 2026
…y; meta-exec roster 3->0 + per-PR emptiness wall; census true-up - host_runner_memory_cap_verify probed_at: retained_runtime shell.Exec.Run(date -Iseconds) -> typed extdeps.clock Clock.Now via gunbc.clock_read (host_converge_slice1 precedent). extdeps.shell import, retained_shell_script bridge and the transport-script scaffold all deleted. Refusal decision refactored to runner_memory_cap_verify_result_from_live_read so the read-absent arm is executable hermetically; RED control proves a widen fails. - meta_exec_confinement_exception_roster 3 -> 0: tools/review.dag and ci_deploy_target_host.dag verified stale (0 shell.Exec); host_runner_memory_cap_verify dissolved above. - Per-PR enforcement is a construction wall (empty roster => stale_count 0, no scan); live receipt measured 13.5s cold vs a 5s fast-lane budget, homed in the long lane with a non-degeneracy control. - Census section 4/5 + ledger trued up to main (#7184/#7192/#7193/#7194/#7215/#7231/#7233). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
briansrls
added a commit
that referenced
this pull request
Jul 25, 2026
…; meta-exec roster 3→0 + per-PR emptiness wall (#7241) * WIP: shell→dag bucket A cleanup (one PR): (1) host_runner_memory_cap_verify 2 * WIP: shell→dag bucket A cleanup (one PR): (1) host_runner_memory_cap_verify 2 * WIP: shell→dag bucket A cleanup (one PR): (1) host_runner_memory_cap_verify 2 * WIP: shell→dag bucket A cleanup (one PR): (1) host_runner_memory_cap_verify 2 * WIP: shell→dag bucket A cleanup (one PR): (1) host_runner_memory_cap_verify 2 * shell->dag bucket A: last shell.Exec off host_runner_memory_cap_verify; meta-exec roster 3->0 + per-PR emptiness wall; census true-up - host_runner_memory_cap_verify probed_at: retained_runtime shell.Exec.Run(date -Iseconds) -> typed extdeps.clock Clock.Now via gunbc.clock_read (host_converge_slice1 precedent). extdeps.shell import, retained_shell_script bridge and the transport-script scaffold all deleted. Refusal decision refactored to runner_memory_cap_verify_result_from_live_read so the read-absent arm is executable hermetically; RED control proves a widen fails. - meta_exec_confinement_exception_roster 3 -> 0: tools/review.dag and ci_deploy_target_host.dag verified stale (0 shell.Exec); host_runner_memory_cap_verify dissolved above. - Per-PR enforcement is a construction wall (empty roster => stale_count 0, no scan); live receipt measured 13.5s cold vs a 5s fast-lane budget, homed in the long lane with a non-degeneracy control. - Census section 4/5 + ledger trued up to main (#7184/#7192/#7193/#7194/#7215/#7231/#7233). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Brian Searls <briansrls@gunb.ai> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
gunbai-bot Bot
pushed a commit
that referenced
this pull request
Sep 3, 2026
…ero-consumer ruling request The census's §5.A table still read `extdeps.os.id` as a NEW op at `dag/extdeps/os/id.dag` -- the stale row a survey read as "still pending". The op landed on #7194 at its post-#7231 home `dag/extdeps/tools/id.dag` (module `extdeps.tools.id`, service `os.Id`, ops `Uid`/`Gid`/`Lookup`), hermetic witness `test.claim.shell_dag_census_5a_typed_ops_witness` (`witness_os_id_uid_realizes_hermetically`, `witness_os_id_gid_realizes_hermetically`, `witness_os_id_lookup_realizes_hermetically`). The row now says so, cited by module and symbol rather than position, and the consumer column states the true status: `host_effect_realize`'s ssh probes already consume the typed argv rows `id_uid_argv`/`id_gid_argv` (absolute-path variants), and `fleet_posix_accounts` `probe_command` is NOT-a-shell-site (census §4 row) -- authored provenance, live proof `deploy_access_check_observed`. The same PR files a ruling request, not a deletion: `id_lookup_argv` (the `id <user>` verb) has zero production references -- measured denominator, grep of `dag/` + `src/v2/test/` at `75873c2897`: the definition, the hermetic-witness call, and service-name rows in the effect-plan tests, nothing more. Zero references is not deadness in this repo (env-gated and emitted-path consumers exist that grep does not see), and the row's named consumers are reclassified (`fleet_posix_accounts` -- NOT-a-shell-site) or deferred (`spark/managed_access_apply` create-script bodies -- dissolve-on marker, no operator verdict). Retain-as-reserved or retire is the operator's call; the row records the measured denominator and asks for it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
gunbai-bot Bot
pushed a commit
that referenced
this pull request
Sep 3, 2026
…ero-consumer ruling request The census's §5.A table still read `extdeps.os.id` as a NEW op at `dag/extdeps/os/id.dag` -- the stale row a survey read as "still pending". The op landed on #7194 at its post-#7231 home `dag/extdeps/tools/id.dag` (module `extdeps.tools.id`, service `os.Id`, ops `Uid`/`Gid`/`Lookup`), hermetic witness `test.claim.shell_dag_census_5a_typed_ops_witness` (`witness_os_id_uid_realizes_hermetically`, `witness_os_id_gid_realizes_hermetically`, `witness_os_id_lookup_realizes_hermetically`). The row now says so, cited by module and symbol rather than position, and the consumer column states the true status: `host_effect_realize`'s ssh probes already consume the typed argv rows `id_uid_argv`/`id_gid_argv` (absolute-path variants), and `fleet_posix_accounts` `probe_command` is NOT-a-shell-site (census §4 row) -- authored provenance, live proof `deploy_access_check_observed`. The same PR files a ruling request, not a deletion: `id_lookup_argv` (the `id <user>` verb) has zero production references -- measured denominator, grep of `dag/` + `src/v2/test/` at `739f1a548f` (post-#10211): the definition, the hermetic-witness call, and service-name rows in the effect-plan tests, nothing more. Zero references is not deadness in this repo (env-gated and emitted-path consumers exist that grep does not see), and the row's named consumers are reclassified (`fleet_posix_accounts` -- NOT-a-shell-site) or deferred (`spark/managed_access_apply` create-script bodies -- dissolve-on marker, no operator verdict). Retain-as-reserved or retire is the operator's call; the row records the measured denominator and asks for it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
briansrls
pushed a commit
that referenced
this pull request
Sep 3, 2026
…ero-consumer ruling request (#10233) * Mark the §5.A extdeps.os.id row landed, and file the id_lookup_argv zero-consumer ruling request The census's §5.A table still read `extdeps.os.id` as a NEW op at `dag/extdeps/os/id.dag` -- the stale row a survey read as "still pending". The op landed on #7194 at its post-#7231 home `dag/extdeps/tools/id.dag` (module `extdeps.tools.id`, service `os.Id`, ops `Uid`/`Gid`/`Lookup`), hermetic witness `test.claim.shell_dag_census_5a_typed_ops_witness` (`witness_os_id_uid_realizes_hermetically`, `witness_os_id_gid_realizes_hermetically`, `witness_os_id_lookup_realizes_hermetically`). The row now says so, cited by module and symbol rather than position, and the consumer column states the true status: `host_effect_realize`'s ssh probes already consume the typed argv rows `id_uid_argv`/`id_gid_argv` (absolute-path variants), and `fleet_posix_accounts` `probe_command` is NOT-a-shell-site (census §4 row) -- authored provenance, live proof `deploy_access_check_observed`. The same PR files a ruling request, not a deletion: `id_lookup_argv` (the `id <user>` verb) has zero production references -- measured denominator, grep of `dag/` + `src/v2/test/` at `75873c2897`: the definition, the hermetic-witness call, and service-name rows in the effect-plan tests, nothing more. Zero references is not deadness in this repo (env-gated and emitted-path consumers exist that grep does not see), and the row's named consumers are reclassified (`fleet_posix_accounts` -- NOT-a-shell-site) or deferred (`spark/managed_access_apply` create-script bodies -- dissolve-on marker, no operator verdict). Retain-as-reserved or retire is the operator's call; the row records the measured denominator and asks for it. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> * Retire id_lookup_argv on structural ruling, and correct the overstated §5.A row RULING (2026-09-03): retire extdeps.tools.id.id_lookup_argv. No measured production consumer; the semantic os.Id.Lookup already names the intended request; a future consumer should consume IdLookup/IdInvocation and choose an SSH realization, not resurrect a raw List<String> argv helper. Keeping it "reserved" would preserve the lower-level interface the migration exists to make unavailable — a future need is the trigger to add a typed remote realization, not evidence that the helper should survive. Deleted from dag/extdeps/tools/id.dag. The module's sole production import (dag/gunbc/host/host_effect_realize.dag:69) imports id_uid_argv, id_gid_argv and id_binary_path only — no reference to id_lookup_argv exists in the code tree. The witness (test.claim.shell_dag_census_5a_typed_ops_witness, witness_os_id_lookup_realizes_hermetically) exercises os.Id.Lookup, the semantic op — NOT the deleted argv helper — and is unchanged. CORRECTION (second finding): the §5.A row overstated by claiming "Done" when the hermetic operation witnesses had landed but the model-before-implement scope (call-site migration a later lane, the superseded argv/string path still standing, remaining SSH callers dispositioned independently) does not support that word. The row now says honestly: "operation model + hermetic operation witnesses have landed" and explicitly what is NOT done instead of claiming closure. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> * Fix ruling record: point future consumers at the real canonical symbol The ruling record directed future consumers to `IdLookup`/`IdInvocation`, neither of which exists in the tree. `os.Id.Lookup` is the actual semantic operation — cite it directly, with the two plausible typed SSH-realization paths (`ssh.Session.ExecArgv` on `id <user>`, or a full `IdLookup` invocation modeled on the `os.Hostname.Set`/`HostnameSetInvocation` pattern) so a migration worker is not left to guess. No changed symbols or fabricated interfaces. DESIGN §3 single-authority and "cite the symbol" rules satisfied. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> --------- Co-authored-by: Brian Searls <briansearls1@gmail.com> Co-authored-by: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Pure
git mv+ import repoint perdocs/plans/extdeps-positioning-restructure.md— zero behavior change, zero service-name changes.systemd/extracted;hostname/free/id→tools/;proc_meminfo→linux/;ubuntu_*install_media*→provisioning/;exec_arg_limit→exec/;os/retains identity taxonomy only.extdeps/ssh/(access/ssh+diagnostic/ssh).diagnostic/dissolved (edac→linux/,ipmi→bmc/); mock_corpus siblings split to match.gnu_coreutils/diffutils→tools/;shell/shrinks to exec/credentials seam;shell.dag+shell_mock_corpus.dagpromoted LOOSE.tools.dag,os.dag(extdeps.os.os→extdeps.os),cache.dag(extdeps.cache.cache→extdeps.cache).Rails honored:
shell/exec.dagandshell/credentials.daguntouched; no service renames.Test plan
extdeps.os.os,extdeps.cache.cache,extdeps.diagnostic.*, orextdeps.access.sshimport paths remainshell/={exec,credentials}only;os/= identity leaves +ubuntu_autoinstall