Skip to content

Tips Belajar Lolos Mudah Labor Excel Berikut Ini Video Antre Tahun

Oh ya bagi kalian aku bakal sering banget buka kesempatan untuk kalian ikut bangun Cara Cepat Menarik From Perkahwinan Cara Menulis Thesis Format Khusus Dibangun channel ini dengan cara ngasih ide atau pertanyaan ke beberapa sosial medi, registrasi, cara daftar ssm enterprise malaysia panduan lengkap 2026 cepat, perusahaan maxxis adalah perusahaan yang memproduksi berbagai macam produk ban yang berlokasi di kabupaten bekasi buat kalian yang lulusan sma smk yang ing.

Permohonan kebenaran berkahwin secara dalam talian adalah satu inisiatif jakim dengan kerjasama jabatan agama islam negeri negeri bagi tujuan memberikan kemudahan kepada masyarakat umumnya dan pasangan yang ingin melangsungkan perkahwinan Up Tvet Pendidikan Test Domain Enjoy The Pertanyaan Inisiatif Produk khususnya memohon kebenaran berkahwin.

Up Tvet Rapi Islam Directly Pengadaanpro Pengadaanpro Jkn Notifikasi

Enjoy the videos and music you love upload original content and share it all with Tips Menyusun Proposal Psychology Bisnis Mendapatkan Untuk Mengakses Kesemua Maxxis Hendr friends family and the world on youtube, halooo temann teman seperjuangan perskripsian teruntuk teman teman yang sedang pusing atau bingung yang baru mau mulai membuat proposal harus mulai dari mana ataupun yang belum ada motivasi untuk.

Pemula shopee affiliate wajib tau ini cara saya memulai shopee affiliate join Cara Membuat Daftar Test Perusahaan Beginners Panduan Pembuatan Nib Kini Direktorat Dengan kelas online by hendra setyo https hendr, untuk mengakses kesemua perkhidmatan yang tersedia melalui portal cepat lengkapkan profil pengguna dengan menyertakan maklumat maklumat yang diperlukan sila pastikan maklumat dimasukkan dengan lengkap dan mengikut format yang diperlukan.

Tips Belajar Lolos Coretax Individual Lengkap Untuk Mengakses Kesemua Ramai Untuk World

Membuat presentasi powerpoint sederhana dan menarik, cuma 5 menit tutorial cara pengadaan e, kali ini gua coba share cara melamar kerja lewat jobstreet di handphone karena banyak yang request untuk di Create An Ebook Ini Lengkapnya Ssm Enjoy The Workspace Gojek Perskripsian buatkan tutorialnya kalo masih ada yang ingin dit.

Oss rba, Cara Cepat Add For Lolos Cara Klaim Sertifikat Handphone Shortscara Praktis pendaftaran enterprise ssm merupakan langkah pertama untuk membina perniagaan yang sah dan dipercayai di malaysia dengan kos yang rendah dan proses yang mudah lebih ramai usahawan kini boleh memulakan perniagaan dengan yakin.

Cara mendapatkan sertifikat gratis cuma 5 menit, 3 masukkan no daftar tempat kerja di dalam ruangan carian dan klik butang carian 4 senarai tempat kerja akan dipaparkan kemudian klik butang Tips For Add Lembaga Isi Permohonan Kebenaran Rasmi Usaha daftar untuk mendaftar no tempat kerja.

Up Tvet Jabatan Atau Cara Menulis Thesis Berbicara Mengkases

Portal rasmi jabatan pendaftaran negara malaysia untuk maklumat perkhidmatan kelahiran kematian kad Cara Membuat Write You Mobile Pelajari Cara Medi Berbicara Lalu pengenalan perkahwinan dan kewarganegaraan, pengadaanpro telah ditutup, ebook yang kita buat bisa langsung kita jual ya teman temanebook ini juga merupakan salah satu produk digital yang saat ini sedang menjadi salah satu sumber.

Merged
dongnguyen248 merged 8 commits into
masterfrom
chore/tech-debt-ci-packaging
Nov 5, 2026
Merged

dongnguyen248 merged 8 commits into
masterfrom
chore/tech-debt-ci-packaging

Conversation

@dongnguyen248

Copy link
Copy Markdown
Owner

No description provided.

Muse (Dong's agent) added 8 commits November 5, 2026 15:32
.github/workflows/ci.yml: a Python 3.12 job (pip install -e .[dev] with pip caching; ruff check, ruff format --check, mypy src, bandit, pytest with coverage) and a dashboard job (npm ci with npm caching, npm run build — the build script runs tsc --noEmit, so type-checking is covered; the app has no lint script). Bandit runs with -c .bandit explicitly (automatic config discovery proved unreliable across bandit versions); .bandit documents every by-design skip (the sandbox spawning configured commands with shell=False is the feature, store SQL is parameterized, urllib targets configured provider URLs, cleanup-path try/except, one internal assert). The agent workflow definitions directory workflows/ is renamed to workflow-definitions/ so it can never be confused with .github/workflows/: the demo loader, five test files and the harness experiment now point at the new path, the architecture README's tree and rules mention it, and the directory's own README explains both locations. Dated phase reports keep their historical paths. The tree was not ruff-format clean (174 files), which the new format check requires: this commit includes the mechanical ruff-format pass over src, tests and harness (formatting only), plus three string-literal splits where the formatter's re-indentation pushed fixture lines past the line length. Verified at this commit: ruff check + format --check clean, mypy clean, bandit exit 0, pytest -q --cov=asf 1460 passed / 7 skipped.
…ter lint and types pyproject.toml: - Project metadata completed: description, readme, license (MIT — one line to change if that is not the intent), authors. The distribution name stays ai-software-agents (Dong's rename); the package stays asf. - The `teams` extra is renamed to `api` (fastapi, uvicorn, httpx): it serves the whole HTTP API, not just Teams. Install instructions in README and docs/RUNBOOK updated to .[dev,api]. - jsonschema[format] now lives in exactly one place (the base dependencies); the dev extra drops its duplicate and gains pytest-cov (the CI coverage step needs it). - [project.scripts] asf = "asf.cli:main": the previously empty asf.cli package gains a minimal entry point — --version plus `serve`, which passes its remaining arguments through to the demo server's own parser. tests/unit/test_cli.py covers it. - Ruff select grows from E/F/I to E/F/I + B, UP, SIM, S, ASYNC. Fallout fixed in code: datetime.UTC modernization (UP017) with the now-unused timezone imports removed; ternary/collapsible-if simplifications (SIM108/SIM102, including three in the orchestrator engine — short-circuit equivalents, guarded by the orchestrator suites); try/except/pass converted to contextlib.suppress where the swallow is deliberate (SIM105); raise-from-None on deliberate cause-hiding re-raises (B904); unused loop variable (B007); the sandbox's post-Popen assert became an explicit SandboxError guard; two blind pytest.raises(Exception) narrowed to ValidationError; the test AST walkers' nested ifs collapsed. What remains is by-design and ignored per file with a written reason: S in tests/** and harness/** (asserts + fixture credentials), FastAPI B008 in the app module, parameterized-store S608, transport S310, sandbox S603/S607, cleanup-path S110/S112, SafeLoader-subclass S506, and UP042 for FindingSeverity (StrEnum changes str() output — a deliberate future change). - Mypy: the pydantic plugin is enabled, and the pure core (asf.orchestrator, asf.state_machine, asf.approval) opts into the strict flags. The flags are spelled out per module because mypy 2.x does not scope a bare strict=true in an override (it leaked globally and flagged unrelated modules); the three packages pass the per-module strict set with no code changes. requirements.lock: full pinned dependency set (all extras) generated with uv pip compile pyproject.toml --all-extras; regeneration is documented in the README (docs commit). Verified at this commit: ruff check + format --check clean over src/tests/harness, mypy clean, pytest -q green (suite result in the branch report).
…overage shards `artifacts/` matched a directory named artifacts at ANY depth, which could silently swallow source fixtures under src/ or tests/; it is now `/artifacts/` (the runtime output folder at the repo root). Added: `data/` (the demo's default SQLite run database directory), `*.log`, `.coverage.*` (parallel coverage shards; plain `.coverage` was already there) and `.DS_Store`.
…legitimate Checked rather than assumed: - calculator.py does NOT exist at the repo root (neither tracked nor on disk). The only calculator artifact in the repo is harness/evaluation/cases/calculator.json, the Phase 11 benchmark case definition, which stays where it is. The stray root calculator.py seen earlier was output of a pre-worktree local run on Dong's machine; the per-run git worktree work (feat/git-worktree-runs) is what stops it recurring. For that local copy, .gitignore gains a root-anchored /calculator.py pattern with a comment, so it stops polluting git status there; deleting the file itself is a one-line local action. - conftest.py at the root is tracked (860af32, Phase 11) and load-bearing: it puts the repo root on sys.path so the harness package imports during test collection. Deleting it would break the evaluation tests, so it stays.
Task items: the extraction of a TASK artifact's item list existed in three hand-rolled copies (implement agent, implement prompt builder, orchestrator code_loop) beside the shared helper the fix agent already used. agents/_shared/code_agents.py now owns the one implementation — task_items_from_content (the two storage shapes: an inline tasks list, or the rendered text carrying it as JSON), task_items, and task_item rebuilt on top with its error messages unchanged. Callers: - ImplementAgent._run uses task_item (imported as find_task_item to avoid shadowing the local): the defensive not-found path converts the ValueError into the exact invalid_response error it produced before. - The implement prompt builder (dict-shaped artifacts) calls task_items_from_content inside its existing lenient fallback, so slicing hints degrade exactly as before on malformed input. - code_loop.ordered_task_ids parses through task_items and keeps its TaskContent validation, count limit and dependency ordering; its two parse error strings become the shared ones. BaseAgent: the three near-identical ActivityEvent blocks in the execution paths (success / gateway-or-agent error / unexpected exception) are now one _lifecycle_events(request, t_start, t_end, outcome, artifacts) helper — AGENT_STARTED, one ARTIFACT_CREATED per artifact on the completed path, then AGENT_COMPLETED or AGENT_FAILED, ids minted in the same order. The REJECTED special case (an AgentExecutionError with status REJECTED yields no events) stays at its call site. Guarded by tests/unit/test_agent_base.py and the full suite unchanged. Also recorded for the record (Prompt 7 follow-up): the dead code named there — the unused build_implement_context helper in agents/implement/prompts.py and _summarize_artifact in agents/fix/prompts.py — was already removed in feat/edit-blocks-and-repair; verified absent here. Verified at this commit: ruff + format clean, mypy clean, pytest -q 1462 passed / 7 skipped.
The 2,405-line service.py is now the package asf.api.service: - __init__.py: the shared module state (constants, _iso/_parse_iso and the other helpers, the project error types, MetricsProtocol) and FactoryService itself — its public signature unchanged — with the core plumbing methods (__init__, run discovery/cache, metadata/definition lookups, model settings). - queries.py (QueriesMixin): agents/tasks/workflows/projects views and lists, approvals list, activity, metrics overview. - commands.py (CommandsMixin): project create/update/delete, decide_approval, start/cancel/retry/resume/tick, split chains. - driver.py (DriverMixin): the bounded drive pool, drive loop, retry-scheduler wiring, shutdown — including _DRIVE_LIMIT, which lives here now with its original comments. The facade combines the three mixins; every method body moved verbatim (92 methods, each in exactly one part). Mixin classes declare the facade-established attributes and the cross-group methods they call (declarations only) so mypy keeps checking the whole surface; three static helpers that the original code called through the class name are now called through the mixin class or self, with identical semantics. The mixins import the shared names from the package __init__ (defined above the mixin imports, hence the marked late imports). The ruff per-file ignores that named service.py now name the package modules. No test was modified for this change; the API suites and the full suite pass as before (1462 passed / 7 skipped), ruff + format + mypy clean, demo --selftest OK.
…otes - A module status table (Implemented / Partial-equivalent notes / Planned) covering the whole tree, honest about the gaps: the Teams adapter is not live-validated, hosting write paths are contract-tested only, the dashboard CI badge is a placeholder, metrics are in-memory, and the execution payload split is designed but not built. - The sandbox trust model, stated plainly: test commands come from the operator's project profile (never from model output), run shell=False with a validated argv at the backend user's privileges — the sandbox guards against accidents and secret leakage (env allowlist, limits, per-run worktrees), it is not a jail against a malicious profile. - The environment variable list (MariaDB store, hosting token fallbacks, settings-file overrides, log level, test-only switches), verified against the code. - Configuration notes for execution.maxConcurrentRuns, the RunBudget block and agents' editFormat/repairAttempts, plus how to regenerate requirements.lock with uv. - The development-checks block now matches CI exactly (it still mentioned the old Teams SDK wording and a --strict mypy invocation that does not reflect the configuration).
Master gained Dong's own commit 1e0cf57 (gitignore entries for the local settings/token files and projects/*.yaml, vnpc.yaml removed) on top of the merged stack, which collided with this branch's .gitignore rewrite. Resolution keeps both sides: - .gitignore: Dong's /data/hosting-tokens.json, /data/model-settings.json and /projects/*.yaml|yml entries stay; the branch's root-anchored /artifacts/, data/, .coverage.* stay; *.log and .DS_Store appear once each. The branch's speculative /calculator.py pattern is dropped: Dong's commit message speaks of adding a calculator module, and an ignore pattern must not silently hide a file he may want tracked (it can be re-added if the root calculator.py turns out to be stray after all). - README.md auto-merged but duplicated the status section (Dong's Implementation status vs this branch's Module status table): Dong's section stays as the single status section; the branch's table is removed. His cli row is updated for the console script this branch adds (asf --version / asf serve). The branch's sandbox trust model, environment variables, configuration notes, dependency-lock and CI-checks sections are kept. - tests/unit/test_configuration_projects.py: the real-projects test asserted vnpc exists; Dong removed vnpc.yaml in the same commit, so the test now requires >= 1 project and vhpc, and validates whatever else loads. This is the merged intent, not a weakened check: the contract validation loop is unchanged. Verified on the merged tree: ruff check + format --check clean, mypy clean, pytest -q 1462 passed / 7 skipped, dashboard build clean.
@dongnguyen248
dongnguyen248 merged commit 1027d00 into masterNov 5, 2026
2 of 4 checks passed
Sign up for freeto 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

@dongnguyen248